In
software development
Software development is the process of designing and Implementation, implementing a software solution to Computer user satisfaction, satisfy a User (computing), user. The process is more encompassing than Computer programming, programming, wri ...
, a traceability matrix (TM)
is a document, usually in the form of a table, used to assist in determining the completeness of a relationship by correlating any two
baselined documents using a many-to-many relationship comparison.
It is often used with high-level
requirement
In engineering, a requirement is a condition that must be satisfied for the output of a work effort to be acceptable. It is an explicit, objective, clear and often quantitative description of a condition to be satisfied by a material, design, pro ...
s (these often consist of marketing requirements) and detailed requirements of the product to the matching parts of
high-level design
High-level design (HLD) explains the architecture that would be used to develop a system. The architecture diagram provides an overview of an entire system, identifying the main components that would be developed for the product and their interf ...
, detailed design,
test plan
A test plan is a document detailing the objectives, resources, and processes for a specific test session for a software or hardware product. The plan typically contains a detailed understanding of the eventual workflow.
Test plans
A test plan docu ...
, and
test case
In software engineering, a test case is a specification of the inputs, execution conditions, testing procedure, and expected results that define a single test to be executed to achieve a particular software testing objective, such as to exercise ...
s.
A requirements traceability matrix may be used to check if the current project requirements are being met, and to help in the creation of a
request for proposal,
software requirements specification
A software requirements specification (SRS) is a description of a software system to be developed. It is modeled after the business requirements specification (CONOPS). The software requirements specification lays out functional and non-fun ...
,
various deliverable documents, and project plan tasks.
[Carlos, Tom (October 21, 2008). Requirements Traceability Matrix - RTM. PM Hut, October 21, 2008. Retrieved October 17, 2009 from http://www.pmhut.com/requirements-traceability-matrix-rtm.]
Common usage is to take the identifier for each of the items of one document and place them in the left column. The identifiers for the other document are placed across the top row. When an item in the left column is related to an item across the top, a mark is placed in the intersecting cell. The number of relationships are added up for each row and each column. This value indicates the mapping of the two items. Zero values indicate that no relationship exists. It must be determined if a relationship must be made. Large values imply that the relationship is too complex and should be simplified.
To ease the creation of traceability matrices, it is advisable to add the relationships to the source documents for both backward and forward traceability.
That way, when an item is changed in one baselined document, it is easy to see what needs to be changed in the other.
Sample traceability matrix
See also
*
Requirements traceability
*
Software engineering
Software engineering is a branch of both computer science and engineering focused on designing, developing, testing, and maintaining Application software, software applications. It involves applying engineering design process, engineering principl ...
*
List of requirements engineering tools
References
External links
Bidirectional Requirements Traceabilityby Linda Westfall
StickyMinds article: Traceability Matrixby Karthikeyan V
Why Software Requirements Traceability Remains a Challengeby Andrew Kannenberg and Dr. Hossein Saiedian
{{Software engineering
Software testing
Software requirements