Activity: Refine the System Definition
This activity details the requirements to be developed in the current development cycle.
DescriptionWork Breakdown StructureTeam AllocationWork Product Usage
Purpose
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
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
PlannedYes
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.