A manifesto for applicable formal methods

被引:10
作者
Gleirscher, Mario [1 ,2 ]
van de Pol, Jaco [3 ,4 ]
Woodcock, Jim [3 ,5 ]
机构
[1] Univ Bremen, Bibliothekstr 5, D-28359 Bremen, Germany
[2] Univ York, Assuring Auton Int Programme AAIP, Deramore Lane, York YO10 5GH, England
[3] Aarhus Univ, Abogade 34, DK-8200 Aarhus, Denmark
[4] Univ Twente, POB 217, NL-7500 AE Enschede, Netherlands
[5] Univ York, Deramore Lane, York YO10 5GH, England
基金
英国工程与自然科学研究理事会;
关键词
Formal methods; Formal verification; Software engineering; Tools; Research evaluation; Research transfer; SYMBOLIC MODEL CHECKING; SOFTWARE; VERIFICATION; MYTHS; CODE;
D O I
10.1007/s10270-023-01124-2
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Recently, formal methods have been used in large industrial organisations (including AWS, Facebook/Meta, and Microsoft) and have proved to be an effective part of a software engineering process finding important bugs. Perhaps because of that, practitioners are interested in using them more often. Nevertheless, formal methods are far less applied than expected, particularly for safety-critical systems where they are strongly recommended and have the most significant potential. We hypothesise that formal methods still seem not applicable enough or ready for their intended use in such areas. In critical software engineering, what do we mean when we speak of a formal method? And what does it mean for such a method to be applicable both from a scientific and practical viewpoint? Based on what the literature tells about the first question, with this manifesto, we identify key challenges and lay out a set of guiding principles that, when followed by a formal method, give rise to its mature applicability in a given scope. Rather than exercising criticism of past developments, this manifesto strives to foster increased use of formal methods in any appropriate context to the maximum benefit.
引用
收藏
页码:1737 / 1749
页数:13
相关论文
共 95 条
[41]  
Garlan D., 1992, Software Engineering Education. SEI Conference 1992 Proceedings, P131
[42]  
Gleirscher M., 2021, EPTCS, V349
[43]   Qualification of proof assistants, checkers, and generators: Where are we and what next? [J].
Gleirscher, Mario ;
Sachtleben, Robert ;
Peleska, Jan .
SCIENCE OF COMPUTER PROGRAMMING, 2023, 226
[44]   Formal methods in dependable systems engineering: a survey of professionals from Europe and North America [J].
Gleirscher, Mario ;
Marmsoler, Diego .
EMPIRICAL SOFTWARE ENGINEERING, 2020, 25 (06) :4473-4546
[45]   New Opportunities for Integrated Formal Methods [J].
Gleirscher, Mario ;
Foster, Simon ;
Woodcock, Jim .
ACM COMPUTING SURVEYS, 2020, 52 (06)
[46]  
Gnesi S., 2013, Formal Methods for Industrial Critical Systems: A Survey of Applications
[47]  
GormLarsen P., 2010, FM+ AM, P13
[48]   Software engineering code of ethics [J].
Gotterbarn, D ;
Miller, K ;
Rogerson, S .
COMMUNICATIONS OF THE ACM, 1997, 40 (11) :110-116
[49]  
Hahnle R., 2023, ETAPS BLOG
[50]   7 MYTHS OF FORMAL METHODS [J].
HALL, A .
IEEE SOFTWARE, 1990, 7 (05) :11-19