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
来源
18TH INTERNATIONAL SOFTWARE PRODUCT LINE CONFERENCE (SPLC 2014), VOL 1 | 2014年
关键词
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 条
  • [21] Model Checking of Software for Microcontrollers
    Schlich, Bastian
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2010, 9 (04)
  • [22] Model Based Testing in Software Product Lines
    Reales, Pedro
    Polo, Macario
    Caivano, Danilo
    ENTERPRISE INFORMATION SYSTEMS, ICEIS 2011, 2012, 102 : 270 - 283
  • [23] 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
  • [24] A Classification and Survey of Analysis Strategies for Software Product Lines
    Thuem, Thomas
    Apel, Sven
    Kaestner, Christian
    Schaefer, Ina
    Saake, Gunter
    ACM COMPUTING SURVEYS, 2014, 47 (01)
  • [25] Software Model Checking Using Languages of Nested Trees
    Alur, Rajeev
    Chaudhuri, Swarat
    Madhusudan, P.
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2011, 33 (05):
  • [26] ProVeLines A Product Line of Verifiers for Software Product Lines
    Cordy, Maxime
    Classen, Andreas
    Heymans, Patrick
    Schobbens, Pierre-Yves
    Legay, Axel
    PROCEEDINGS OF THE 17TH INTERNATIONAL SOFTWARE PRODUCT LINE CONFERENCE CO-LOCATED WORKSHOPS (SPLC'13 WORKSHOPS), 2013, : 141 - 146
  • [27] Integrating model checking and model based testing for industrial software development
    Villani, Emilia
    Pontes, Rodrigo Pastl
    Coracini, Guilherme Kisselofl
    Ambrosio, Ana Maria
    COMPUTERS IN INDUSTRY, 2019, 104 : 88 - 102
  • [28] Model Checking Software in Cyberphysical Systems
    Sirjani, Marjan
    Lee, Edward A.
    Khamespanah, Ehsan
    2020 IEEE 44TH ANNUAL COMPUTERS, SOFTWARE, AND APPLICATIONS CONFERENCE (COMPSAC 2020), 2020, : 1017 - 1026
  • [29] Supporting Automated Verification of Reconfigurable Systems with Product Lines and Model Checking
    Ul Muram, Faiz
    Kanwal, Samina
    Javed, Muhammad Atif
    ENASE: PROCEEDINGS OF THE 16TH INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, 2021, : 297 - 305
  • [30] The role of model checking in software engineering
    Karna, Anil Kumar
    Chen, Yuting
    Yu, Haibo
    Zhong, Hao
    Zhao, Jianjun
    FRONTIERS OF COMPUTER SCIENCE, 2018, 12 (04) : 642 - 668