Is widely know for software developer , if we build software, we are going through 6 steps common in SDLC (Software developmet life cycle). SDLC will look like this :
at this time, we don’t describe about SDLC deeply. even there are vary definition about steps in SDLC, but the first step is always about analysis, gain user needs and find requirement.
this SRS is produce in this step of SDLC. SRS is Document of all software requirement. before we talk about what to describe in SRS and how to create it, first we must understand how to gather right requirement in software.
actually what the meaning by ‘requirement’?
Requirements are the voice of the customer. They’re hard to get right
we also can say that requirement is set of all user needs, and are the basis for later development. developer often get hard to get requirement right . why ? coz, the user doesn’t always know what they want exactly.
to make easy when we gather user requirement. there are some types of requirements :
we can start find requirement from user who use the software later, or called ‘actor’ . we define all actor that involved in software, each actor have its interest in software. it can be conclude, there are 5 easy ways to gather requirement from the beginning , namely :
- define all the actor who have interest in software
- for each actor breakdown its need of software, for example : the actor of e-learning software is “student”, student have interest in e-learning to see the courses offered in next semester. later on, we draw that in Use Case Diagram (in UML, Unified Modelling Language)
- after we got all the function from each actor, we start to maping the function to entity that’s common in use for all actor. from previous example, we can map the function ‘see the courses offered in next semester’ become entity ‘courses’.
- since all the entity complete, we start to make relation between entity, we called it entity relationship diagram (ERD). ERD is the raw model of database design.
- each entity in ERD must be detailed in component. every component has it’s type of data. for example : courses entity have component of : courses ID, courses Name, courses class, etc.
beside that steps above, there are supporting tools to help we gain requirement.
- External interfaces.
- Design constraints imposed on an implementation.
You can complete SRS Documentation by it’s Content like this :