What is Traceability?
There are many definitions of software traceability; CoEST defines it as "the ability to interrelate any uniquely identifiable software engineering artifact to any other, maintain required links over time, and use the resulting network to answer questions of both the software product and its development process."
To make a system traceable, navigable links must be created between artifacts that are otherwise disconnected, i.e. requirements, code, and test cases. [Example]. These links must be documented,stored and easily retrievable, and user-friendly system for processing and understanding these links must be developed.
Traceability is a required component of the approval and certification process in most safety-critical systems, where systems must demonstratively meet a set of standards and mitigate any potential hazards. Codes and test cases must be linked to a requirement of the system. [Expand on this with isolette example?]
Traceability design must respond to the needs of a system's stakeholders; a traceability system built to suit all needs would be prohibitively expensive.
In practice, relatively few systems have meaningfully benefited from traceability. Producers of medical equipment, for example, typically create and document traceability information immediately prior to the certification process, and the resulting data is often incomplete, incorrect, or contradictory.
CoEST's vision is that traceability strategy become a built-in, implicit part of systems in a way that is cost-effective and responsive to the needs of stakeholders.
Components of Traceability
Trace Artifact: units of data that are amenable to being traced. Often, what constitutes an artifact (the project as a whole? Some element of the project?) is not predetermined, which makes traceability within the project more challenging.
Trace: The data in question.
Source Artifact: The origin of a trace.
Target Artifact: The destination of that trace. (Note: Example here?)
1. Heterogeneity of artifacts 2. Making links within a massive volume of data, and then understanding the implications of those links. 3. Categorizing and storing the links. 4. Deciding what should be automated and what should be manual, and then deciding who should be responsible for maintaining traceability within the system.
MediaWiki has been successfully installed.
Consult the User's Guide for information on using the wiki software.