Task: Detail the Software Requirements
This task describes how to detail the software requirements of the system.
Purpose

The purpose of this task is to collect, detail and organize the set (package) of work products that completely describe the software requirements of the system.

Relationships
RolesMain: Additional: Assisting:
InputsMandatory: Optional: External:
  • None
Outputs
Main Description
Detailing the software requirements involves detailing the use cases and supplemental specification for the requirements that are to be delivered in the current release.  For more information, see Detail a Use Case and Develop Supplementary Specifications.
Steps
Detail the Software Requirements

Make sure that all requirements are specified to the level of detail needed to hand off to designers, testers and documentation writers. Review the checklists associated with the work products being produced

If requirements are traced or otherwise formally managed, make sure that each requirement is clearly identified and labeled.

Generate Supporting Reports

Requirements are often stored and managed using one or more tools. For example, tools for:

  • graphical requirements modeling
  • traceability and overall requirements management
  • other textual and graphical documentation.

This step generates documentation from these tools so that the information can be easily reviewed. If specialized tools are not used for capturing the requirements, then this step is not applicable (all software requirements would be written directly in the documentation).

For information on reports supporting the production of the work products, see the work product content pages.

Package the Requirements for Review

This step is where a complete definition of the software requirements to be delivered in the current development cycle is produced so that requirements can be effectively reviewed.  All requirements work products are assembled, and any additional information is supplied.  

For less formal projects, this step consists of bundling the relevant reports and hand-generated documentation, with sufficient supporting material .

On more formal projects, one or more Software Requirements Specifications (SRS) may be produced that collect and organize all requirements surrounding the project. For example, a separate SRS may describe the complete software requirements for each feature in a particular release of the product. This may include requirements that are documented in other requirements work products.  In such cases, the SRS may refer to the requirements documented in the other work products.  This allows you to have a formal SRS without having to duplicate the information in the other work products. Using an appropriate Software Requirements Specification template, assemble the pieces of the SRS package and supply the remaining information in order to have a complete definition of the software requirements for this subsystem or feature.

Properties
Multiple Occurrences
Event-Driven
Ongoing
Optional
Planned
Repeatable
Key Considerations

The User-Interface Prototype can be an excellent source of detailed requirements that may have been missed during initial requirements elicitation.  If the user accepts the prototype, it is important to explicitly document any detailed requirements needed to implement the prototype.

More Information