Wednesday, May 12, 2010

Tracing Requirements to Test Coverage

I heard our managers and client very often talking about Traceability of requirements with the Test Cases/Scenarios but I found that it is in discussion only and very few projects actually follow Requirement Traceability. We try to prove many a times to management/client by using other ways of showing traceability of requirements, so let's take a tour -

What is Traceability Matrix?
Requirement Traceability refers to the "ability to follow the life of a requirement, in both forward and backward directions, i.e., from its origin, through its development and specification, to its subsequent deployment and use, and through periods of ongoing refinement and iteration in any of these phases". A traceability matrix is created by associating requirements with the work products that satisfy them. Tests are associated with the requirements on which they are based and the product tested to meet the requirement.

Need for Relating Requirements to a Deliverable : Taking the time to cross-reference each requirement to a deliverable ensures that a deliverable is consistent with the system requirements. A requirement that cannot be mapped to a deliverable is an indication that something is missing from the deliverable. Likewise, a deliverable that cannot be traced back to a requirement may mean the system is delivering more than required.

Management understands the words which are very close to the benefits, so here are benefits of using Requirement Traceability -

It provides the means to:

Show compliance with requirements

Maintain system design rationale,

Show when the system is complete, and

Establish change control and maintenance mechanisms.

Use of a Traceability Matrix to Match Requirements to a Deliverable : There are many ways to relate requirements to the deliverables for each stage of the system life cycle. One method is to :

- create a two-dimensional table,

- allow one row for each requirements specification paragraph (identified by paragraph number from the requirements document),

- allow one column per identified configuration item (such as software module or hardware device),

- put a check mark at the intersection of row and column if the configuration item satisfies the stated requirement.

Hope this will help you and Industry will promote using Traceability Matrix in real and not just for the SQA :)

2 comments: