Potential Synergies of Theorem Proving and Model Checking for Software Product Lines

被引:13
|
作者
Thuem, Thomas [1 ]
Meinicke, Jens [1 ]
Benduhn, Fabian [1 ]
Hentschel, Martin [2 ]
von Rhein, Alexander [3 ]
Saake, Gunter [1 ]
机构
[1] Univ Magdeburg, Magdeburg, Germany
[2] Univ Darmstadt, Darmstadt, Germany
[3] Univ Passau, Passau, Germany
关键词
Software product lines; theorem proving; model checking; design by contract; feature-based specification; family-based verification; variability encoding; feature-oriented contracts; SPECIFICATION; VERIFICATION;
D O I
10.1145/2648511.2648530
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The verification of software product lines is an active research area. A challenge is to efficiently verify similar products without the need to generate and verify them individually. As solution, researchers suggest family-based verification approaches, which either transform compile-time into runtime variability or make verification tools variability-aware. Existing approaches either focus on theorem proving, model checking, or other verification techniques. For the first time, we combine theorem proving and model checking to evaluate their synergies for product-line verification. We provide tool support by connecting five existing tools, namely FEATUREIDE and FEATUREHOUSE for product-line development, as well as KeY, JPF, and OPENJML for verification of Java programs. In an experiment, we found the synergy of improved effectiveness and efficiency, especially for product lines with few defects. Further, we experienced that model checking and theorem proving are more efficient and effective if the product line contains more defects.
引用
收藏
页码:177 / 186
页数:10
相关论文
共 50 条
  • [41] Connecting bits with floating-point numbers: Model checking and theorem proving in practice
    Seger, CJ
    AUTOMATED DEDUCTION - CADE-17, 2000, 1831 : 235 - 235
  • [42] Formal Dynamic Fault Trees Analysis Using an Integration of Theorem Proving and Model Checking
    Elderhalli, Yassmeen
    Hasan, Osman
    Ahmad, Waqar
    Tahar, Sofiene
    NASA FORMAL METHODS, NFM 2018, 2018, 10811 : 139 - 156
  • [43] Proving sequential consistency by model checking
    Braun, T
    Condon, A
    Hu, AJ
    Juse, KS
    Laza, M
    Leslie, M
    Sharma, R
    SIXTH IEEE INTERNATIONAL HIGH-LEVEL DESIGN VALIDATION AND TEST WORKSHOP, PROCEEDINGS, 2001, : 103 - 108
  • [44] THEOREM PROVING FOR PRENEX GODEL LOGIC WITH Δ: CHECKING VALIDITY AND UNSATISFIABILITY
    Baaz, Matthias
    Ciabattoni, Agata
    Fermueller, Christian G.
    LOGICAL METHODS IN COMPUTER SCIENCE, 2012, 8 (01)
  • [45] Zap: Automated theorem proving for software analysis
    Ball, T
    Lahiri, SK
    Musuvathi, M
    LOGIC FOR PROGRAMMING, ARTIFICIAL INTELLIGENCE, AND REASONING, PROCEEDINGS, 2005, 3835 : 2 - 22
  • [46] Runtime Assertion Checking and Theorem Proving for Concurrent and Distributed Systems
    Din, Crystal Chang
    Owe, Olaf
    Bubel, Richard
    PROCEEDINGS OF THE 2014 2ND INTERNATIONAL CONFERENCE ON MODEL-DRIVEN ENGINEERING AND SOFTWARE DEVELOPMENT (MODELSWARD 2014), 2014, : 480 - 487
  • [47] A formal model for Multi Software Product Lines
    Damiani, Ferruccio
    Lienhardt, Michael
    Paolini, Luca
    SCIENCE OF COMPUTER PROGRAMMING, 2019, 172 : 203 - 231
  • [48] Model driven development of software product lines
    Braganca, Alexandre
    Machado, Ricardo J.
    QUATIC 2007: 6TH INTERNATIONAL CONFERENCE ON THE QUALITY OF INFORMATION AND COMMUNICATIONS TECHNOLOGY, PROCEEDINGS, 2007, : 199 - +
  • [49] Model Verification of Dynamic Software Product Lines
    Santos, Ismayle S.
    Rocha, Lincoln S.
    Santos Neto, Pedro A.
    Andrade, Rossana M. C.
    THIRTIETH BRAZILIAN SYMPOSIUM ON SOFTWARE ENGINEERING (SBES 2016), 2016, : 113 - 122
  • [50] Multistage Model Transformations in Software Product Lines
    Azevedo, Sofia
    Machado, Ricardo J.
    Muthig, Dirk
    2009 FOURTH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING ADVANCES (ICSEA 2009), 2009, : 565 - +