In Requirement Traceability Matrix or RTM, we set up a process of documenting the links between the user requirements proposed by the client to the system being built. In short, it’s a high-level document to map and trace user requirements with test cases to ensure that for each and every requirement adequate level of testing is being achieved.
The process to review all the test cases that are defined for any requirement is called Traceability. Traceability enables to determine which requirements spawned the most number of defects during the testing process.
The focus of any testing engagement is and should be maximum test coverage. By coverage, it simply means that we need to test everything there is to be tested. The aim of any testing project should be 100% test coverage.
Requirements Traceability Matrix establishes a way to make sure we place checks on the coverage aspect. It helps in creating a snapshot to identify coverage gaps. In short, it can also be referred to as a metrics which determines the number of Test cases Run, Passed, Failed or Blocked etc. for every requirement.
Why is Requirement Traceability required?
Requirement Traceability Matrix helps to link the requirements, test cases, and defects accurately. The whole of the application is tested by having requirement traceability (End to End testing of an application is achieved).
Requirement Traceability assures good ‘Quality’ of the application as all the features are tested. Quality control can be achieved as software gets tested for unforeseen scenarios with minimal defects and all functional and non-functional requirements being satisfied.
Requirement Traceability Matrix aids for software application getting tested in the stipulated time duration, the scope of the project is well determined and its implementation is achieved as per the customer requirements and needs and cost of the project is well controlled.
Defect Leakages are prevented as a whole of the application is tested for its requirements.
Types of Traceability Matrix
- Forward Traceability: In ‘Forward Traceability’ Requirements to the Test cases. It ensures that the project progresses as per the desired direction and that every requirement is tested thoroughly.
- Backward Traceability: The Test Cases are mapped with the Requirements in ‘Backward Traceability’. Its main purpose is to ensure that the current product being developed is on the right track. It also helps to determine that no extra unspecified functionalities are added and thus the scope of the project is affected.
- Bi-Directional Traceability: (Forward + Backward): A Good Traceability matrix has references from test cases to requirements and vice versa (requirements to test cases). This is referred to as ‘Bi-Directional’ Traceability. It ensures that all the Test cases can be traced to requirements and each and every requirement specified has accurate and valid Test cases for them.