IP Library Granted Patent US 11,593,097
Granted Patent B2
US 11,593,097 · App. 17/272,650 · Granted Feb 28, 2023

Guided safety analysis for cyber physical systems

Inventors: Jane Huang (Granger, IN); Michael Vierhauser (Linz, AT); Ankit Agrawal (South Bend, IN)
Assignee: University of Notre Dame du Lac
G06F8/71G06F11/3684
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,593,097
App. No.
17/272,650
Granted
Feb 28, 2023
Kind
B2
Abstract

Systems and methods for maintaining the safety of a software-based system. One method includes automatically generating a first artifact tree for a hazard for a first version of the system and automatically transforming the first artifact tree into a first augmented tree using a set of heuristics. The method also includes automatically generating a second artifact tree for the hazard for a second version of the system and automatically transforming the second artifact tree for the hazard into a second augmented tree using the set of heuristics. The method further includes automatically comparing the first augmented tree and the second augmented tree to generate a delta view, and automatically generating, based on the delta view, at least one selected from a group consisting of a safety warning for the second version of the software-based system and an actionable recommendation to maintain safety of the second version of the software-based system.

Claims (42)

1. A method for maintaining the safety of a software-based system, the method comprising:

automatically generating a first artifact tree for a hazard for a first version of the software-based system by recursively following traceability paths defined by a model for a plurality of artifacts associated with mitigating the hazard, the traceability paths representing links between the plurality of artifacts, the first artifact tree representing a hierarchical structure of the first version of the software including requirements and code of the first version of the software addressing a hazard;

automatically transforming the first artifact tree into a first augmented tree using a set of heuristics, the set of heuristics automatically inserting one or more augmentation nodes into the first artifact tree;

automatically generating a second artifact tree for the hazard for a second version of the software-based system by recursively following the traceability paths defined by the model;

automatically transforming the second artifact tree for the hazard into a second augmented tree using the set of heuristics, the set of heuristics automatically inserting one or more augmentation nodes into the second artifact tree;

automatically, with an electronic processor, comparing the first augmented tree and the second augmented tree to generate a delta view;

automatically, with the electronic processor, creating at least one candidate trace link for the software-based system based on the delta view to maintain safety of the second version of the software-based system; and

modify the software-based system based on the created at least one candidate trace link.

2. The method of claim 1 , wherein the links represented by the traceability paths are created manually, created automatically, or mined from commit messages.

3. The method of claim 1 , wherein automatically transforming the first artifact tree into the first augmented tree using the set of heuristics includes automatically inserting at least one selected from a group consisting of a claims node, a strategies node, an assumption node, and a solution node into the first artifact tree.

4. The method of claim 1 , further comprising inserting at least a portion of the first augmented tree into a safety assurance case.

5. The method of claim 1 , further comprising automatically generating at least one warning based on the first augmented tree.

6. The method of claim 1 , further comprising automatically generating at least one actionable recommendation based on the first augmented tree.

7. The method of claim 1 , wherein the delta view identifies at least one artifact added for the second version of the software-based system as compared to the first version of the software-based system.

8. The method of claim 1 , wherein the delta view identifies at least one artifact modified for the second version of the software-based system as compared to the first version of the software-based system.

9. The method of claim 1 , wherein the delta view identifies at least one artifact deleted for the second version of the software-based system as compared to the first version of the software-based system.

10. The method of claim 1 , wherein the delta view identifies at least one link added for the second version of the software-based system as compared to the first version of the software-based system.

11. The method of claim 1 , wherein the delta view identifies at least one link modified for the second version of the software-based system as compared to the first version of the software-based system.

12. The method of claim 1 , wherein the delta view identifies at least one link deleted for the second version of the software-based system as compared to the first version of the software-based system.

13. The method of claim 1 , further comprising interfacing with at least one project repository for the software-based system to generate the first artifact tree.

14. The method of claim 1 , further comprising generating and outputting a visualization based on the delta view.

15. The method of claim 14 , wherein each of a plurality of nodes included in the visualization is displayed differently based on whether each of plurality of nodes was added, modified, or deleted.

16. The method of claim 15 , wherein each of the plurality of nodes included in the visualization is displayed differently using color coding.

17. The method of claim 14 , wherein at least one node included in the visualization is marked with a safety warning.

18. The method of claim 14 , wherein at least one node included in the visualization is marked with an actionable recommendation.

19. A system for maintaining the safety of a software-based system, the system comprising:

at least one electronic processor configured to

automatically generate a first artifact tree for a hazard for a first version of the software-based system by recursively following traceability paths defined by a model for a plurality of artifacts associated with mitigating the hazard, the traceability paths representing links between the plurality of artifacts, the first artifact tree representing a hierarchical structure of the first version of the software including requirements and code of the first version of the software addressing a hazard;

automatically transform the first artifact tree into a first augmented tree using a set of heuristics, the set of heuristics automatically inserting one or more augmentation nodes into the first artifact tree;

automatically generate a second artifact tree for the hazard for a second version of the software-based system by recursively following the traceability paths defined by the model;

automatically transform the second artifact tree for the hazard into a second augmented tree using the set of heuristics, the set of heuristics automatically inserting one or more augmentation nodes into the second artifact tree;

automatically compare the first augmented tree and the second augmented tree to generate a delta view;

automatically create at least one candidate trace link for the software-based system based on the delta view to maintain safety of the second version of the software-based system; and

modify the software-based system based on the created at least one candidate trace link.

20. Non-transitory computer readable medium including instructions that, when executed by at least one electronic processor, perform a set of functions, the set of functions comprising:

automatically generating a first artifact tree for a hazard for a first version of a software-based system by recursively following traceability paths defined by a model for a plurality of artifacts associated with mitigating the hazard, the traceability paths representing links between the plurality of artifacts, the first artifact tree representing a hierarchical structure of the first version of the software including requirements and code of the first version of the software addressing a hazard;

automatically transforming the first artifact tree into a first augmented tree using a set of heuristics, the set of heuristics automatically inserting one or more augmentation nodes into the first artifact tree;

automatically generating a second artifact tree for the hazard for a second version of the software-based system by recursively following the traceability paths defined by the model;

automatically transforming the second artifact tree for the hazard into a second augmented tree using the set of heuristics, the set of heuristics automatically inserting one or more augmentation nodes into the second artifact tree;

automatically comparing the first augmented tree and the second augmented tree to generate a delta view;

automatically creating at least one candidate trace ink for the software-based system based on the delta view to maintain safety of the second version of the software-based system; and

modifying the software-based system based on the created at least one candidate trace link.

Assignments (1)
CONFIRMATORY LICENSE Recorded Dec 19, 2023
From: UNIVERSITY OF NOTRE DAME
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 066076/0518 →
Continuity (2)
Provisional Application 62747208 · Oct 18, 2018
Related Publication 20210342144A1 · Nov 4, 2021