Leveraging artifact trees to evolve and reuse safety cases



Safety Assurance Cases (SACs) are increasingly used to guide and evaluate the safety of software-intensive systems. They are used to construct a hierarchically organized set of claims, arguments, and evidence in order to provide a structured argument that a system is safe for use. However, as the system evolves and grows in size, a SAC can be difficult to maintain. In this paper we utilize design science to develop a novel solution for identifying areas of a SAC that are affected by changes to the system. Moreover, we generate actionable recommendations for updating the SAC, including its underlying artifacts and trace links, in order to evolve an existing safety case for use in a new version of the system. Our approach, Safety Artifact Forest Analysis (SAFA), leverages traceability to automatically compare software artifacts from a previously approved or certified version with a new version of the system. We identify, visualize, and explain changes in a Delta Tree. We evaluate our approach using the Dronology system for monitoring and coordinating the actions of cooperating, small Unmanned Aerial Vehicles. Results from a user study show that SAFA helped users to identify changes that potentially impacted system safety and provided information that could be used to help maintain and evolve a SAC1.


Attribute NameValues
  • Ankit Agrawal

  • Seyedehzahra Khoshmanesh

  • Michael Vierhauser

  • Mona Rahimi

  • Jane Cleland-Huang

  • Robyn Lutz

Journal or Work Title
  • ICSE ‘19 Proceedings of the 41st International Conference on Software Engineering

First Page
  • 1222

Last Page
  • 1233

Publication Date
  • 2019-05

Date Created
  • 2019-07-08

  • English

Departments and Units
Record Visibility Public
Content License
  • All rights reserved

Digital Object Identifier


This DOI is the best way to cite this article.


Please Note: You may encounter a delay before a download begins. Large or infrequently accessed files can take several minutes to retrieve from our archival storage system.