Saturday, September 3, 2011

RTM- Requirement Traceability Matrix

If you are asked that please check whether this particular functionality has been covered in your test cases or not ? and what are those test case?
so what first comes in mind, which document? That document is known as RTM.

A requirements traceability matrix is a document that maps the relationship between user requirements and the test cases. Means using this document we can check if your requirement is covered in your test cases and especially which test case covers your particular requirement.

The purpose of this document is same in all the cases but the format depends on you and your organization.
This document is also requested by the client in most of the cases and using this document clients insure that the coverage of the functionality is complete as end to end.

I always prefer to make this document and suggest every tester to implement same in his team whether he/she is working with a small, middle or big organization. In Big organization generally we get its implemented.


Further this document should have the trace of defect as using this document the one can track the Requirement based on the Defect id.

So if we talk about the definition of the Traceability Matrix, we can summarize above description.

“A Traceability Matrix is a document which maps the requirement with the test cases and defects as well”


Now, we can categories this document in different ways. As said above, the purpose of this document is to insure that we have tested each and every functionality. But also there are basically two different approaches to make this. First, we trace the requirement to the test cases. It’s again a kind of verification that we are building a right product. This is called Forward traceability.
Second, we trace test cases to the requirement. Its is validation activity that we are building the product right. This is called backward (Reverse) traceability.
The combination of these two is called Bi Directional traceability

So if we conclude this part as the type of traceability matrix:

“There are three types of traceability matrix. 1- Forward traceability: Mapping of Requirements to Test cases. 2- Backward traceability: Mapping of Test Cases to Requirements. And 3- Bi Directional traceability: Using both the Forward and Backward Traceability”


Till now we get to know what Traceability Matrix is and how many types of this. Now let’s discuss how it is beneficial and what the drawbacks are if we don’t use this.

Advantage of using Traceability Matrix:

1- Ensure "coverage" between different types of requirements
2- save your time that's usually spent in manually verifying coverage
3- Easy to identify the missing functionality
4- To track the requirements changes and their impact to the system
5- help client to make sure that the software is being developed as per their requirements
6- If there is any change in the requirement or on later stage the defect resolved and new things added to the system, we can easily trace the functionality and vice verse.
And many more……

So it’s obvious there may be lots of drawbacks if we don’t use like unknown test coverage. And the lead to the more defect in production.
As I always say, testing is not just to perform testing/execution, its all about a collection of documents which help you insuring the test coverage and ease the testing execution.

At last, I would like to discuss the feasibility of RTM in agile testing environment as I got good quality time working in agile environment. So I would say yes its feasible and even its 101% feasible. Use it and it make more sense in agile project 