Traceability matrix is tracing each requirement to its test scenarios and then to test cases to ensure that we have enough test scenarios and cases for each and every requirement to ensure the requirement is implemented as per specification.
Advantage of Traceability Matrix?
Traceability Matrix is used in entire software development life cycle phases:
1 - Risk Analysis phase
2 - Requirements Analysis and Specification phase
3 - Design Analysis and Specification phase
4 - Source Code Analysis
5 - Unit Testing & Integration Testing phase
6 - Validation – System Testing, Functional Testing phase
Type of Traceability Matrix
1 – Forward Traceability - Mapping of requirements to test cases. It ensures proper direction of the evolving product (that we are building the right product)
Req. Capture -> Design Document -> Test Cases. Tracing each unique product requirement forward into the design that implements that requirement, the code that implements that design and the tests that validate that requirement and so on. The objective is to ensure that each requirement is implemented in the product and that each requirement is thoroughly tested.
2 – Reverse or backward Traceability -
mapping of test cases to requirement.Used for to check the end product has met the requirements or not. Backwards traceability helps ensure that the evolving product remains on the correct track with regards to the original require1ments (that we are building the product right). The objective is to ensure that we are not expanding the scope of the project by adding design elements, code, tests or other work products that are not called out in the requirements (i.e., “gold plating”).
Test Cases -> Design -> Req. Capture
Bi-Directional Traceability - it’s the combination of Forward and Backward traceability.
Benefits of bi-directional requirements traceability include the ability to: Analyze the impact of a change
1 - All work products affected by a changed requirement
2 - All requirements affected by a change or defect in a work product
Assess current status of the requirements and the project
1 - Identify missing requirements
2 - Identify gold plating or extras