C2AADL_Reverse: A model-driven reverse engineering approach to development and verification of safety-critical software

被引:10
作者
Yang, Zhibin [1 ]
Qiu, Zhikai [1 ]
Zhou, Yong [1 ]
Huang, Zhiqiu [1 ]
Bodeveix, Jean-Paul [2 ]
Filali, Mamoun [2 ]
机构
[1] Nanjing Univ Aeronaut & Astronaut, Sch Comp Sci & Technol, Nanjing, Peoples R China
[2] IRIT Univ Toulouse, Toulouse, France
基金
中国国家自然科学基金;
关键词
Safety-critical systems; Model-driven development; Model-driven reverse engineering; AADL; Compositional verification; AADL;
D O I
10.1016/j.sysarc.2021.102202
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
The safety-critical system communities have been struggling to manage and maintain their legacy software systems because upgrading such systems has been a complex challenge. To overcome or reduce this problem, reverse engineering has been increasingly used in safety-critical systems. This paper proposes C2AADL_Reverse, a model-driven reverse engineering approach for safety-critical software development and verification. C2AADL_Reverse takes multi-task C source code as input, and generates AADL (Architecture Analysis and Design Language) model of the legacy software systems. Compared with the existing works, this paper considers more reversed construction including AADL component structure, behavior, and multithreaded run-time information. Moreover, two types of activities are proposed to ensure the correctness of C2AADL_Reverse. First, it is necessary to validate the reverse engineering process. Second, the generated AADL models should conform to desired critical properties. We propose the verification of the reverseengineered AADL model by using UPPAAL to establish component-level properties and the Assume Guarantee REasoning Environment (AGREE) to perform compositional verification of the architecture. This combination of verification tools allows us to iteratively explore design and verification of detailed behavioral models, and to scale formal analysis to large models. In addition, the prototype tool and the evaluation of C2AADL_Reverse using a real-world aerospace case study are presented.
引用
收藏
页数:17
相关论文
共 49 条
[1]   Requirements Analysis of a Quad-Redundant Flight Control System [J].
Backes, John ;
Cofer, Darren ;
Miller, Steven ;
Whalen, Michael W. .
NASA FORMAL METHODS (NFM 2015), 2015, 9058 :82-96
[2]  
Behrmann G, 2004, LECT NOTES COMPUT SC, V3185, P200
[3]  
Bensalem S, 2008, LECT NOTES COMPUT SC, V5311, P64, DOI 10.1007/978-3-540-88387-6_7
[4]  
Bergmayr A, 2016, 2016 IEEE/ACM 8TH INTERNATIONAL WORKSHOP ON MODELING IN SOFTWARE ENGINEERING (MISE), P20, DOI [10.1145/2896982.2896984, 10.1109/MiSE.2016.012]
[5]   Towards a verified transformation from AADL to the formal component-based language FIACRE [J].
Bodeveix, Jean-Paul ;
Filali, Mamoun ;
Garnacho, Manuel ;
Spadotti, Regis ;
Yang, Zhibin .
SCIENCE OF COMPUTER PROGRAMMING, 2015, 106 :30-53
[6]  
Bruneliere H., 2018, THESIS NANTES
[7]   MoDisco: A model driven reverse engineering framework [J].
Bruneliere, Hugo ;
Cabot, Jordi ;
Dupe, Gregoire ;
Madiot, Frederic .
INFORMATION AND SOFTWARE TECHNOLOGY, 2014, 56 (08) :1012-1032
[8]  
Bruneliere Hugo., 2010, P IEEEACM INT C AUTO, P173
[9]  
Chkouri MY, 2009, LECT NOTES COMPUT SC, V5421, P5, DOI 10.1007/978-3-642-01648-6_2
[10]  
Chlipala A, 2013, CERTIFIED PROGRAMMIN, DOI [DOI 10.7551/MITPRESS/9153.001.0001, 10.7551/mitpress/9153.001.0001]