Trace link evolution across multiple software versions in safety-critical systems

Mona Rahimi · 2016

Traceability is defined by the Center of Excellence for Software Traceability 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". It is an essential element in the software development process, especially for Safety-Critical systems where trace links are used to demonstrate that all hazards and faults are mitigated in the delivered system. Maintaining trace links as a software system evolves over time is difficult, error-prone and costly. As a result, trace links tend to become outdated and safety-cases, which rely on trace links and associated data to compose arguments and evidence for system safety are invalidated. In practice, software developers must therefore painstakingly update trace links in order to re-validate safety-cases whenever they seek re-certification of their product. While a significant body of work exists in the area of trace link creation, very limited research has focused on the problem of link evolution. The goal of this dissertation is therefore to deliver an accurate, scalable, and practical approach for supporting trace link evolution across a diverse set of software artifacts including requirements, source code and safety cases.

Read the paper · More papers on PaperTik