The purpose of this activity is to further refine the requirements in order to capture the consensus understanding of the
system definition.
Relationships
Parent Activities
Elaboration Iteration
Description
This activity addresses detailing the requirements. It furthers the understanding of project scope reflected
in the set of prioritized product features (often described in the Vision) that
it is believed can be achieved by fairly firm budgets and dates. The output is a more in-depth understanding of system
functionality expressed in refined, detailed requirements in specification artifacts and outlined behavioral
prototypes. The specification artifacts can take the form of detailed Use Cases
(see Detail a Use Case) and Supplementary Specifications (see Develop Supplementary Specifications), and in some cases a formal Software Requirements Specification may be developed (see Detail the Software Requirements). This work typically starts by
reviewing the existing actor definitions and if necessary least briefly describing the actors, then continues with
detailing the use cases that have been previously outlined for each actor.
Whenever requirements are changed, regular reviews and updates to the associated requirements attributes should be done
as described in the Manage Changing Requirements activity.
Properties
Event Driven
Multiple Occurrences
Ongoing
Optional
Planned
Repeatable
Staffing
The Requirements Specifier role is primarily involved in performing this
work. The most important skills required to conduct this work include information elicitation & communication.
Staff responsible for specifying requirements should be skilled in expressing themselves in writing, and need to
develop a good understanding of the problem domain.
Usage
Usage Guidance
This activity is primarily performed during Elaboration, though may be performed in some capacity from late Inception
through Construction.
Key Considerations
It should be noted that activities being performed in this capability pattern are not performed in sequence. In
fact, it is more-often the case that these activities are performed concurrently. For example, while identifying actors
and use cases (Find Actors and Use Cases), we may encounter requirements that do not
naturally align with a particular use case, in which case the requirement may be defined in the Supplementary
Specifications (Develop Supplementary Specifications). Conversely, while identifying
non-use-case-specific requirements (e.g., system-wide requirements), we may encounter requirements that only apply to a
particular use case, in which case the requirement is associated with the use case.
Although much of the work is done individually, frequent reviews (i.e. walk-throughs) should be performed to calibrate
work products across team members and ensure the team is in sync.