Software Requirements are the elicitation, analysis, specification, and validation of requirements for software. A requirement itself is a singular documented physical and functional need that a particular solution or service must be or must perform.
The following information should always be provided when putting together proper software requirements within a software requirements specification (SRS) document.
|Requirement Type||The type of requirement.|
|Event / Use Cases||List of events / use cases that need this requirement.|
|Description||Describe the requirement being requested within the project. Additional requirements should be inclusive of additional secondary headers (for table of contents tracking in documentation).|
|Justification||Describe the justification of the requirement.|
|Measurement||Describe the measurement of the requirement such that it is possible to test if the solution matches the original requirement.|
|Source||Who raised this requirement?|
|Customer Satisfaction||Degree of stakeholder happiness if this requirement is successfully implemented. Scale from 1 = uninterested to 5 = extremely pleased.|
|Customer Dissatisfaction||Measure of stakeholder unhappiness if this requirement is not part of the final product. Scale from 1 = hardly matters to 5 = extremely displeased.|
|Dependencies||A list of other requirements that have some dependency on this one.|
|Conflicts||Other requirements that cannot be implemented if this one is.|
|Supporting Materials||This is a pointer to documents that illustrate and explain this requirement|