the advice suite the advice suite
site map the advice suite sentient systems ltd
Advice Suite > Requirements Management Advice > Requirements Management
 
Reliability Advice
FMECA Advice
Requirements Management Advice
Requirements Management
What is Requirements Management? Why do we need it, what are its advantages and what are the likely pitfalls?

Contents
    What is Requirements Management?
    The need for Requirements Management
    The purpose of Requirements Management
    Information management of Requirements Management
    Advantages of Requirements Management
    Good Requirements
    Bad Requirements
    Differentiation of requirement document text types


What is Requirements Management?
Requirements Management can be defined as the skilful administration, guidance, control and use of an expression of a demand, an essential condition or a need.

The central aim of Requirements Management is to ensure that the delivered item or system meets the needs of the user. Requirements establish an understanding of the user's needs and provide a measure against which success can be gauged. Requirements Management is the process of tracking 'what is required' througout the life of the item or system, from initial development through to delivery.




The need for Requirements Management
The development of complex systems presents many challenges to system engineers. Even the development of a small system requires an understanding of all the needs of the user, together with the ability to communicate cause and justification for any changes. Therefore a process of management and control of this information is needed.

The purpose of Requirements Management
The foremost purpose of Requirements Management is the ability to ensure that the delivered system satisfies the needs of the users.




Information management of Requirements Management
Because systems often change and evolve throughout the life cycle, there can be difficulty in tracking such changes and evolution.

Requirements Management meets these needs by the consistent application of information capture, information storage, information analysis and manipulation, and information dissemination.

The key to the solution of Management of Requirements is the inclusion and application of organisation, traceability, analysis and visualization of the information.

Advantages of Requirements Management
The aim of the Requirements Management process is the development of an item or system, which exactly meets the needs of the user, within a time scale, and for a price that satisfies the user.

The advantage of the use of Requirements Management is the reduction in problems that may occur if a process is not followed. The following list of problems are some of those that may, and often do, occur when requirements are not managed:
  • The needs of the user are not met.
  • Unimportant work is done.
  • Non-required functions are developed.
  • Time is wasted.
  • Money is wasted.
  • Resources are misused.
  • Money spent / invested that will not provide return.
  • Increased likelihood of bugs or errors.

Problems such as these may lead to cost and time over-runs, non-payment of money, a non-saleable product, or the reduction of the possible profit.




Good Requirements
A good requirement can be defined as a complete and correct statement of a need. When writing requirements or judging the quality of a good requirement, the following list of factors below should be considered:

  • Atomic: a single need is stated.
  • Testable: the need can be proven to have been met.
  • Unambiguous: the requirement cannot be misunderstood.
  • Concise: no unnecessary wording.
  • Complete: the need is fully covered.
  • Correct: the requirement is what is needed.

Bad Requirements
Requirements are bad if they are:
  • Woolly / vague: open to argument.
  • Overly complex: difficult to understand / prone to error.
  • Confusing or unclear: open to misinterpretation.
  • Unrequired / over specified: 'Gilding the lily', wouldn't it be nice if...?




Differentiation of level of requirement
Some functions or attributes in a system may be more necessary than others. It is therefore important that the level of need of all requirements is captured and understood by all parties.

The following terms and definitions are frequently used to define these levels of need:
  • Mandatory requirements: shall / will / must.
  • Highly desirable: should.
    Not mandatory but agreement of non-incorporation is likely to be required
  • Wishes: would like.
    Non essential
  • Wouldn't it be nice if (WIBNI): similar to wishes, a 'nice thought'.
    Non essential

In addition, it is not uncommon to have statements which, although not requirements themselves, may impact the understanding of specific requirements. These are generally in one of two forms:

  • Clarifications: intended to clear any misunderstanding or misinterpretation of the requirement.
  • Insights: provides an understanding into need for the requirement or the intended use for the attribute or function.
©Sentient Systems Ltd 2004. All rights reserved.