|
Requirements management is composed of four major activities: capturing the
requirements, organizing them, reviewing them, and controlling them. Each of these
activities provides benefits to both the customer and developer in ensuring the
project is moving in the right direction. All of these activities occur in conjunction
with the requirement definition and analysis phase of the software development life
cycle (SDLC). This includes establishing and implementing a process for maintaining
control of the requirements for the remainder of the SDLC.
The working definition of each of the four activities in this section provides a starting
place for understanding requirements management.
Capturing Requirements
To take a product from concept to reality, the expertise and desires of the client are
conveyed to the system analyst. The system analyst in turn must assess the
information in relationship to the desired technology and then prepare a feasible
customer and developer plan for product development. The feasibility plan is used as
the basis for discussions. The requirements are the output product from these
discussions wherein the customer and development experts expose the must have vs.
the it would be nice to have items while considering the available schedule and
budget.
Organizing Requirements
Organizing the requirements by project, system, and subsystem gives both the
customer and the developer clear requirements that should be tracked during the
development effort. Organizing the requirements in this manner supports
simultaneous development work in multiple functional areas, which increases
productivity and improves quality. Organizing requirements within these
classifications additionally ensures that potential risks to the project can be identified
and assigned more easily to the right people, ensuring that viable mitigation of the
risks are planned. Organizing the requirements by project, system, and subsystem
also helps control change, provides a better definition of what must be tested, and
makes sure necessary functionality does not fall through the cracks.
Reviewing Requirements
It is important that the requirements be reviewed by the right personnel to ensure
that all of the necessary items have been included and planned for development.
When the requirements are organized, the selection of review groups is easier and
the review will be better because the right people are assigned to evaluate and
approve the requirements. It is during the review of the requirements that the
customer gains significant insight as to the developer’s true understanding of the
properties the product must possess to ensure success in the marketplace. Skewed
perceptions can be corrected at minimal cost at this point in the project.
Controlling Requirements
Once the initial set of requirements has been evaluated and approved, the course of
action for moving the project to completion can be planned meaningfully. Impacts to
the project plan are minimized by controlling changes to the requirements. The value
in controlling changes to the requirements is that the project stays on course,
thereby reducing or eliminating cost overruns and schedule delays. The other
significant benefit occurs as the system is tested because everyone who has been
involved in the project has been able to understand what requirements will be tested
and what the product will have, do, and use. In other words, the boundaries
established by the requirements can be used to measure the success of the
development effort. |