Thursday, February 23, 2012

Good Practices for Requirements Engineering (2)


Requirements Management
        Once you have the initial requirements for a body of work in hand, you must cope with the inevitable changes during development.
        Effective change management demands a process for proposing changes and evaluating their potential cost and impact on the project.
        Tracking the status of each requirement as it moves through development and system testing provides insight into overall project status.

  Good practices for requirements management include:
        Define a requirements change-control process. 
        Establish a change control board (team). 
        Perform requirements-change impact analysis. 
        Establish a baseline and control versions of requirements documents.
        Maintain a history of requirements changes.
        Track the status of each requirement. (e.g. proposed, approved, implemented, or verified),
        Measure requirements volatility. (e.g. the number of proposed and approved changes (additions, modifications, deletions)
        Use a requirements management tool.  Create a requirements traceability matrix.



Project Management
        Base your project resources, schedules, and commitments on the requirements that are to be implemented.
        Because changes in requirements will affect those project plans, the plans should anticipate some requirements change and scope growth.

Good practices for project management include:
§  Select an appropriate software development life cycle. 
§  Base project plans on requirements.
+        Develop plans and schedules for your project iteratively as the scope and detailed requirements become clear.
§  Renegotiate project commitments when requirements change. 
+        As you incorporate new requirements into the project, evaluate whether you can still achieve the current schedule and quality commitments with the available resources.
§  Document and manage requirements-related risks. 
§  Track the effort spent on requirements engineering. 
+        Record the effort your team expends on requirements development and management activities.
§  Review lessons learned regarding requirements on other projects.



Impact and difficulty of practices implementation


Requirements development process

        In practice, requirements development activities of elicitation, analysis, specification, and validation in a linear, are interleaved, incremental, and iterative (see figure).

Framework for requirements development

        The figur suggests a process framework for requirements development that will work—with sensible adjustments—for many projects.
        These steps are generally performed approximately in numerical sequence, but the process is not strictly sequential.
        The first seven steps are typically performed once early in the project (although the team will need to revisit priorities periodically).
        The remaining steps are performed for each release increment or iteration.


 the end

No comments:

Post a Comment