Requirements traceability

Requirements traceability

Requirements traceability is a sub-discipline of requirements management within software development and systems engineering. Requirements traceability is concerned with documenting the life of a requirement. It should be possible to trace back to the origin of each requirement and every change made to the requirement should therefore be documented in order to achieve traceability. Even the use of the requirement after the implemented features have been deployed and used should be traceable [Gotel, O., Finkelstein, A. An Analysis of the Requirements Traceability Problem Proc. of First International Conference on Requirements Engineering, 1994, pages 94-101] .

Overview

Traceability as a general term is the "ability to chronologically interrelate the uniquely identifiable entities in a way that matters." The word "chronology" here reflects the use the term in the context of tracking food from farm to shop, or drugs from factory to mouth. What matters in requirements management is not a "temporal" evolution so much as a "structural" evolution: a trace of where requirements are derived from, how they are satisfied, how they are tested, and what impact will result if they are changed.

Requirements come from different sources, like the business person ordering the product, the marketing manager and the actual user. These people all have different requirements on the product. Using requirements traceability an implemented feature can be traced back to the person, or group, that wanted it during the requirements elicitation. This can eg. be used during the development process to prioritize the requirement, determining how valuable the requirement is to a specific user. It can also be used after the deployment when user studies show that a feature is not used, to see why it was required in the first place.

Requirements Traceability is concerned with documenting the relationships between requirements and other development artifacts. Its purpose is to facilitate:

* the understanding of product under development and its artifact; and
* the ability to manage change.

Not only the requirements themselves should be traced but also the requirements relationship with all the artifacts associated with it, such as models, analysis results, test cases, test procedures, test results and documentation of all kinds. Even people and user groups associated with requirements should be traceble.

Definitions

A much cited [cite book | last = Sampaio do Prado Leite | first = Julio Cesar | coauthors = Jorge Horacio Doorn | title = Perspectives on Software Requirements | publisher = Kluwer Academic Publishers | date = 2004 | pages = pp. 91-113 | isbn = 1-4020-7625-8 ] [cite web | title = Requirements Tracing -- An overview | url=http://www.sei.cmu.edu/str/descriptions/reqtracing_body.html | accessdate = 2007-05-11 ] [ cite web | last = Turbit | first Neville | title = Requirements Traceability | url = http://www.projectperfect.com.au/info_requirements_traceability.php | accessdate = 2007-05-11 ] [ cite web | title = Requirements Traceability | url = http://www.gatherspace.com/static/requirements_traceability.html | accessdate = 2007-05-11 ] definition of requirements traceability is the following:

"Requirements traceability refers to the ability to describe and follow the life of a requirement, in both forwards and backwards direction (i.e. from its origins, through its development and specification, to its subsequent deployment and use, and through all periods of on-going refinement and iteration in any of these phases.)" [ Gotel O.C.Z and Finklestein A.C.W., "An analysis of the requirements traceability problem", in Proceedings of ICRE94, 1st International Conference on Requirements Engineering, Colorado Springs, Co, IEEE CS Press, 1994]

While this definition emphasizes tracking the life of a requirement through all phases of development, it is not explicit in mentioning that traceability may document relationships between many kinds of development artifacts, such as requirements, specification statements, designs, tests, models and developed components. The next definition addresses this issue:

"Requirements traceability refers to the ability to define, capture and follow the traces left by requirements on other elements of the software development environment and the trace left by those elements on requirements." [ Pinheiro F.A.C. and Goguen J.A., "An object-oriented tool for tracing requirements", IEEE Software 1996, 13(2), pp. 52-64]

The following definition emphasises the use of traceability to document the transformation of a requirement into successively concrete design and development artifacts:

"In the requirements engineering field, traceability is about understanding how high-level requirements -- objectives, goals, aims, aspirations, expectations, needs -- are transformed into low-level requirements. It is therefore primarily concerned with the relationships between layers of information." [cite book | last = Hull | first = Elizabeth | coauthors = Ken Jackson, Jeremy Dick | title = Requirements Engineering (Second Edition) | publisher = Springer | date = 2005 | pages = pp. 9-13, 131-151 | isbn = 1-85233-879-2 ]

The principal relationship referred to here may be characterised as "satisfaction": how is a requirement satisfied by other artifacts? Other relationships that can be traced are, for example, "verification": how is a requirement verified by test artifacts?

Tracing tools

There are several requirements management computer programs on the market for storing all requirements of all specifications of a technical system under development, which are arranged in a specification tree and linking each one to the "parent" requirement in the higher specification.

Evaluation functions allow for
* completeness checks i.e. do all system level requirements go down to equipment level (with or without modification)
* assessment of requirements deviations over all levels
* qualification status presentation
* etc.

Requirements tracing tools:

[http://www.paper-review.com/tools/rms/read.php Tracing Tools]

External links

* [http://www.sei.cmu.edu/str/descriptions/reqtracing_body.html Requirements Tracing -- An Overview]

See also

* Traceability matrix
* Requirements
* Requirements analysis
* Requirements management
* System requirements (Spacecraft system).

References


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • Traceability — refers to the completeness of the information about every step in a process chain.The formal definition: Traceability is ability to chronologically interrelate the uniquely identifiable entities in a way that is verifiable.Traceability is the… …   Wikipedia

  • Requirements analysis — in systems engineering and software engineering, encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders,… …   Wikipedia

  • Requirements management — The purpose of Requirements management is to assure the organization leverages to the expectations of its customers, internal or external stakeholders. It focuses on requirements as the element capturing these expectations, and thus, as a focal… …   Wikipedia

  • Traceability matrix — A traceability matrix is a table that correlates any two baselined documents that require a many to many relationship to determine the completeness of the relationship. It is often used with high level requirements (sometimes known as marketing… …   Wikipedia

  • Requirements-driven product documentation development — Overview Requirement driven product documentation development is a documentation development process in which ongoing changes in a product s requirements cause ongoing changes in the product documentation throughout the product life cycle.… …   Wikipedia

  • Reverse semantic traceability — (RST) is a quality control method for verification improvement that helps to insure high quality of artifacts by backward translation at each stage of the software development process. Brief introduction Each stage of development process can be… …   Wikipedia

  • Comprehensive & Robust Requirements Specification Process — The Comprehensive Robust Requirements Specification Process (CRRSP), or CRRSP (pronounced crisp), is a methodology for gathering, defining, and validating software requirements. CRRSP is not a step by step restrictive process, but an adaptable… …   Wikipedia

  • Compliance requirements — are a series of directives established by United States Federal government agencies that summarize hundreds of Federal laws and regulations applicable to Federal assistance (also known as Federal aid or Federal funds). They are currently… …   Wikipedia

  • System Requirements Specification — A System Requirements Specification (SRS) is a document where the requirements of a system that is planned to be developed are listed.A Business analyst (BA), sometimes titled System analyst, is responsible for analysing the business needs of… …   Wikipedia

  • Software Requirements Specification — Definitionen von IEEE SQAP – Software Quality Assurance Plan IEEE 730 SCMP – Software Configuration Management Plan IEEE 828 STD – Software Test Documentation IEEE 829 SRS – Software Requirements Specification IEEE 830 SVVP – Software Validation… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”