Requirements Management


What is Requirements Management?

As an example, CMMI(1)indicates that the purpose of Requirements Management (REQM) is to manage requirements of the project's products and product components and to ensure alignment between those requirements and the project's plans and work products.

 

Activities in the Requirements Management lifecycle

To fulfil this goal, there are several practices that need to be accomplished: 

  • UNDERSTAND REQUIREMENTS

This activity consist of understanding the requirements and the stakeholders that originated them. In many cases, requirements management is jeopardized by ambiguity and misunderstandings. For instance, "The system shall provide a usable interface" does not mean anything, but if we rephrase it in terms of the maximum number of clicks to reach any option in the menu, we will be able to overcome ambiguity and understand the requirement.

  • OBTAIN COMMITMENT TO REQUIREMENTS

Requirements are the contractual basis of the product or system to be built. It is therefore necessary that both parties understand and accept the requirements. It is also important to define acceptance criteria associated to each requirement to be able to achieve and demonstrate the acceptance of the system.

  • MANAGE REQUIREMENTS CHANGES

Requirements change and evolve throughout the project lifecycle, and trying to avoid change is a fatal error. The longer the lifecycle is, the more changes we will find. We therefore need to be prepared for changes, and to manage them appropriately through specific techniques such as document history, versioning, impact analysis and track changes.

  • MANTAIN BIDIRECTIONAL TRACEABILITY OF REQUIREMENTS

Traceability is the cornerstone of Requirements Management. It allows tracing requirements to other artifacts in the project and answer questions such as:

- Are we testing all the system?

- Are we meeting all the stakeholder requirements?

- What's the cost of this change?

- Is our solution complete?

Thanks to traceability, we can answer these and other questions. Otherwise, tasks such as change impact analysis would be completely random activities.

(1)CMMI is a process improvement model that describes the aspects of product development that are to be covered by organizational processes.