Tracing requirements

Requirements tracing is used to ensure that the requirements and designs which might be at different levels are aligned to each other.

It is also used to manage the effects of the changes of one requirement in relation to other requirements.

Requirements traceability is used to keep track of each change that has been made to the requirements.

It keeps track of each change that has been made both to the requirement and how that requirement is related to other requirements.

Requirements tracking is used to ensure that the requirements conforms to solution need and to help with the scope, change, risk, time, cost, and communication management.

It also helps identify any implemented functionality that are required by the solution and any missing functionalities.

The advantages of using traceability are :

  1. It enables faster and simpler impact analysis.
  2. It is a more reliable way of discovering inconsistencies and gaps in the requirements.
  3. It provides insight into the scope and complexity of a change
  4. It provides a reliable assessment of which requirements have been addressed and which have not.

Requirements tracking is important because if you don’t consider the relationship between requirements it is often difficult to accurately represent the needs and solutions.

Requirements tracking can be a tedious task so there are a few elements that can help and they are:

a. Level of formality: each requirement in a solution is supposed to provide value and as a business analyst you have to keep track of each of those requirements.

Keeping track of these requirements can get complicated as the requirements grow especially if the level of requirement formality is high.

b. Relationships: there are several relationships to consider when defining the traceability approach and they are:

i: Derive: this is when one requirement is derived from another requirement because there is a link between the two requirements.

An example of this is when a solution requirement is derived from a business requirement.

ii: Depends: this is when one requirement depends on another requirement. Dependent requirements are codependent by nature.

There are two types of dependent relationships and they are:

i: Necessity: this is used when it is only rational to implement a particular requirement if a related requirement is also implemented.

ii: Effort: this is used if it is easier to implement one requirement only if another requirement is also implemented.

c. Satisfy: this is when implementing a functionality satisfies a requirement of the solution. e.g the relationship between a functional requirement and a solution component that is being implemented.

d. Validate: this is used to validate if a solution fulfills a requirement and it is confirmed by the relationship between the requirement and the test case.

Once the requirements have been traced, they have to be stored in a repository.

These stored requirements would have been documented and maintained in accordance with the business analysis approach.

The repository can be used to trace numerous requirements which can be difficult with manual methods.