Family-Based Deductive Verification of Software Product Lines

被引:23
|
作者
Thuem, Thomas [1 ]
Schaefer, Ina [2 ]
Apel, Sven [3 ]
Hentschel, Martin [4 ]
机构
[1] Univ Magdeburg, D-39106 Magdeburg, Germany
[2] Tech Univ Carolo Wilhelmina Braunschweig, Braunschweig, Germany
[3] Univ Passau, Passau, Germany
[4] Tech Univ Darmstadt, Darmstadt, Germany
关键词
Reliability; Verification; Product-line analysis; software product lines; program families; deductive verification; theorem proving; MODEL CHECKING;
D O I
10.1145/2480361.2371404
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
A software product line is a set of similar software products that share a common code base. While software product lines can be implemented efficiently using feature-oriented programming, verifying each product individually does not scale, especially if human effort is required (e. g., as in interactive theorem proving). We present a family-based approach of deductive verification to prove the correctness of a software product line efficiently. We illustrate and evaluate our approach for software product lines written in a feature-oriented dialect of Java and specified using the Java Modeling Language. We show that the theorem prover KeY can be used off-the-shelf for this task, without any modifications. Compared to the individual verification of each product, our approach reduces the verification time needed for our case study by more than 85 %.
引用
收藏
页码:11 / 20
页数:10
相关论文
共 50 条
  • [1] Family-Based and Product-Based Development of Correct-by-Construction Software Product Lines
    Bordis, Tabea
    Runge, Tobias
    Schultz, David
    Schaefer, Ina
    Journal of Computer Languages, 2022, 70
  • [2] Family-Based and Product-Based Development of Correct-by-Construction Software Product Lines
    Bordis, Tabea
    Runge, Tobias
    Schultz, David
    Schaefer, Ina
    JOURNAL OF COMPUTER LANGUAGES, 2022, 70
  • [3] Deductive software verification
    Filliâtre J.-C.
    International Journal on Software Tools for Technology Transfer, 2011, 13 (5) : 397 - 403
  • [4] Deductive verification of cryptographic software
    Almeida, Jose Bacelar
    Barbosa, Manuel
    Pinto, Jorge Sousa
    Vieira, Barbara
    INNOVATIONS IN SYSTEMS AND SOFTWARE ENGINEERING, 2010, 6 (03) : 203 - 218
  • [5] Design variability verification in Software Product Lines
    Ganesh Khandu Narwane
    Jean-Vivien Millo
    Shankara Narayanan Krishna
    S Ramesh
    Sādhanā, 2019, 44
  • [6] Coupling design and verification in software product lines
    Boerger, Egon
    Batory, Don
    FOUNDATIONS OF INFORMATION AND KNOWLEDGE SYSTEMS, PROCEEDINGS, 2008, 4932 : 1 - 4
  • [7] 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
  • [8] Design variability verification in Software Product Lines
    Narwane, Ganesh Khandu
    Millo, Jean-Vivien
    Krishna, Shankara Narayanan
    Ramesh, S.
    SADHANA-ACADEMY PROCEEDINGS IN ENGINEERING SCIENCES, 2019, 44 (01):
  • [9] Modeling and Verification for Probabilistic Properties in Software Product Lines
    Rodrigues, Genaina N.
    Alves, Vander
    Nunes, Vinicius
    Lanna, Andre
    Cordy, Maxime
    Schobbens, Pierre-Yves
    Sharifloo, Amir Molzam
    Legay, Axel
    2015 IEEE 16TH INTERNATIONAL SYMPOSIUM ON HIGH ASSURANCE SYSTEMS ENGINEERING (HASE), 2015, : 173 - 180
  • [10] A family of standards for software and systems product lines*
    Chimalakonda, Sridhar
    Lee, Dan Hyung
    COMPUTER STANDARDS & INTERFACES, 2021, 78