Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Traceability Systems Engineering STD Requirements Management2 Traceability Contents • • • • Terminologies Techniques A model of traceability Tools : case study (RTM, Slate, DOORS : what will be available at HPI !!) What specific to Traceability in Req. Management ? • Traceability increase software quality throughout the life of the project • Most important issue in RM • Many facets of Soft.Eng. Can be improved through RT • Standard 2167A (US DoD) A recent event : Mad cow and Hamburger !! ? Terminologies • Part of requirement management process • Technique to provide relationship between requirement design and final implementation • How and why system development products satisfy stakeholders requirements • Ability to discover the history of every feature of a system • A quality factor • Many standards (2167-A then 498) require the development of traceability documents Techniques • Objectif : get all links during lifecycle of requirement • • • • • • Link to stakeholders Associated design Associated implementation Validation procedure Concept of operation Etc ... Techniques • • • • • • • Cross reference schemes Keyphrase dependancy Templates Matrices Matrix sequence Hypertext Integration documents All differs in the intent of information traced and objective of tracing Essence of traceability • • • • Of What (information) In what way (information prsentation) For whom Example : Who coded the program • Who : we need the programmer • What way : name, the company, the team ? • For whom : to whom this information is addressed (not anybody can have any information : information abstraction and ... Security) Traceability Matrix • Used to relate requirements to others software developments artifacts The relation can be allocatted a type Req Spec.Si Design Di S/w modules R1 R2 Rn X N/A X : relational link between a requirement and a design N/A : Non applicable (no apparent link) Cross references and index schemes • References made across several items (design, modules, requirements,..) in order to link two items or artifacts. • Example : There should be a high-level of traceability between "Logical Architecture" and "Physical Architecture" • The logical and physical architecture are tied together with a collection of cross-reference tables in the "Traceability Matrix" Tracing languages • Database query languages Used in existing powerfull RT tools (RTM use runtime version of Oracle) • Regular expressions Used in formal TOOR approach TOOR - is designed for tracing requirements in system development. - It considers as objects, in the computing science sense of the word, any artifacts used during the development of a software system, e.g., an interview transcript, a video tape, a design chart, a program specification text, a system manual, etc. - It also considers the possible relations between any two objects as an object itself Tracing Process and models • Trace definition : precise semantic (formalising links between objects) • Trace production : results of action (ideally : automated tracing production) • Trace model : link between classes dont give exact purpose of the link • Trace extraction : What are the requirement that are linked to a specific software; or what are the software modules linked to a specific requirement • Traceability support : A huge amount of information to manage TOOR . A formal approach • • • • Developped at Oxford (Goguen, Pinheiro) Object based (see RTM tool too) Declaration using FOOP (based on OBJ) Traceability links between any artifacts created by different documents • Graphical interface • Tracing are forward and backward TOOLS : RTM • Requirements Traceability Module (Chipware) • Other tools : DOORS (telelogic), Slate (QSS) • Essential approach • A generic meta model • All links are specified in the relation between between classes • Document generation • Can be customised to any meta-model defined by user A model of traceability Requirements Model Requirements Traceability Design Model Implementation Model A model of traceability Separation between source and other objects - A manager - A user STACKHOLDER -Email -Doc - A programmer - phone call Is concerned by Manages OBJECT SOURCE Documents - A Requirement Traces to -Meeting minutes - A Designed architecture - A software module A model of traceability Requirement Developed_for Verification_proced satisfy Derive Performed_on Allocated_to Syst_components Interface_with External_System Dependancy links issues • Existence of a link and its meaning • Stakeholders dependencies • Requirements dependancies : a requirement is based on the assumption on satisfaction of another requirements : the software can be coded in C only if here is available compiler on operating systems imposed in another requirement • Task dependencies • Resource dependancies • Temporal dependancies (temporal order) Relative importance of dependancy links • Attribution of weight on on link • Qualitative • Quantitative • Example : The voltage change in one component affect another component • Links can be many levels of abstraction • Requirement and derived rtequirement • Requirement and stackholder • Not injective or surjective relation Conclusions • A model of traceability should be defined • A need for a tool • Two way to implement the tool • Specific tool for RT • A database system as Oracle. Conclusions and recommendations • State of the art and limitations • All approaches require a great deal of manual effort to define the links • All rely on purely syntactic information with no semantic or context • capture situations where many people participate • Capture changing patterns of participants Conclusions and recommendations • Informational problem • Tracking useful information • Inadequate prerequirement traceability • Informal communication • People attach great importance to personal contact and informal communication • These always supplement what is recorded in database • Traceability links database tells only a part of the story • Finding the appropriate people Conclusions and recommendations • Involvement Who has been involved in the production of a requirement and how • Responsibility Who is responsible for a specific requirement Who is currently responsible Context in defining change of responsibility • Change At what point in the life of a requirement a need for a change is possible Who needs to be informed by a change Conclusions and recommendations • Loss of a knowledge What are the items regarding the loss of a project knowledge due to turnover over concerned personnel • Others • Verification and validation • Maintenance • Coverage (types of links) Next lecture Requirements management Traceability Validation and Verification Paper Reading and assignments • Paper reading Mandatory : Traceability : IEEE Trans jan 2001 by Jark & Ramesh • Other : see list paper reading assignment