Requirements management

 

Why bother with requirements management?

Well-defined requirements are a key element in the success of any project.

 

An analysis carried out by the Standish Group, an American research firm specialized in project and value performance assessment, shows that 13% of all projects fail due to inefficient requirements management.  Many experts believe that as many as 40-60% of software defects and failures can be attributed to badly-defined requirements.

 

Effective requirements management helps guarantee the success of a project, since by definition, a project which respects and fulfils identified requirements is a project whose end-product will satisfy the user.

 

The benefits of developing clear requirements before the design and coding phases include the following:

·         development of a thorough understanding of user needs and wants

·         elaboration of a clearly-defined solution to meet the user's needs

·         identification of the benchmark against which implementation success can ultimately be measured

·         smooth flow into the design phase

·         improved testability and maintainability

·         improved customer satisfaction and overall product quality

 

 

And what exactly are requirements?

A requirement can be described as "something which is wanted or needed in the context of a project".

 

However, simply defining requirements is not enough.  These requirements must then be structured within requirement containers, which group together requirements of a similar type.

 

Requirements are usually organized into functional requirements (which state what the product or service must provide) and non-functional requirements (which describe how a functional requirement is to be provided).

 

A requirement can have a number of characteristics, including the following:

·         a name

·         a version number

·         an origin (for example, the person who identified the requirement in question)

·         a status

·         a priority level

·         a stability level