FLAME: a formal framework for the automated analysis of software product lines validated by automated specification testing

被引:0
|
作者
Amador Durán
David Benavides
Sergio Segura
Pablo Trinidad
Antonio Ruiz-Cortés
机构
[1] Universidad de Sevilla,Department of Computer Languages and Systems
[2] E.T.S.I. Informática,undefined
来源
关键词
Formal specification; Specification testing; Software product lines; Feature models;
D O I
暂无
中图分类号
学科分类号
摘要
In a literature review on the last 20 years of automated analysis of feature models, the formalization of analysis operations was identified as the most relevant challenge in the field. This formalization could provide very valuable assets for tool developers such as a precise definition of the analysis operations and, what is more, a reference implementation, i.e., a trustworthy, not necessarily efficient implementation to compare different tools outputs. In this article, we present the FLAME framework as the result of facing this challenge. FLAME is a formal framework that can be used to formally specify not only feature models, but other variability modeling languages (VML s) as well. This reusability is achieved by its two-layered architecture. The abstract foundation layer is the bottom layer in which all VML-independent analysis operations and concepts are specified. On top of the foundation layer, a family of characteristic model layers—one for each VML to be formally specified—can be developed by redefining some abstract types and relations. The verification and validation of FLAME has followed a process in which formal verification has been performed traditionally by manual theorem proving, but validation has been performed by integrating our experience on metamorphic testing of variability analysis tools, something that has shown to be much more effective than manually designed test cases. To follow this automated, test-based validation approach, the specification of FLAME, written in Z, was translated into Prolog and 20,000 random tests were automatically generated and executed. Tests results helped to discover some inconsistencies not only in the formal specification, but also in the previous informal definitions of the analysis operations and in current analysis tools. After this process, the Prolog implementation of FLAME is being used as a reference implementation for some tool developers, some analysis operations have been formally specified for the first time with more generic semantics, and more VML s are being formally specified using FLAME.
引用
收藏
页码:1049 / 1082
页数:33
相关论文
共 50 条
  • [1] FLAME: a formal framework for the automated analysis of software product lines validated by automated specification testing
    Duran, Amador
    Benavides, David
    Segura, Sergio
    Trinidad, Pablo
    Ruiz-Cortes, Antonio
    [J]. SOFTWARE AND SYSTEMS MODELING, 2017, 16 (04): : 1049 - 1082
  • [2] Formal specification based software testing: An automated approach
    Gill, MS
    Bhatia, RK
    [J]. SERP'03: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING RESEARCH AND PRACTICE, VOLS 1 AND 2, 2003, : 656 - 659
  • [3] Automated Incremental Pairwise Testing of Software Product Lines
    Oster, Sebastian
    Markert, Florian
    Ritter, Philipp
    [J]. SOFTWARE PRODUCT LINES: GOING BEYOND, 2010, 6287 : 196 - +
  • [4] A formal framework for software product lines
    Andres, Cesar
    Camacho, Carlos
    Llana, Luis
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2013, 55 (11) : 1925 - 1947
  • [5] Specification and automated validation of staged reconfiguration processes for dynamic software product lines
    Malte Lochau
    Johannes Bürdek
    Stefan Hölzle
    Andy Schürr
    [J]. Software & Systems Modeling, 2017, 16 : 125 - 152
  • [6] Specification and automated validation of staged reconfiguration processes for dynamic software product lines
    Lochau, Malte
    Buerdek, Johannes
    Hoelzle, Stefan
    Schuerr, Andy
    [J]. SOFTWARE AND SYSTEMS MODELING, 2017, 16 (01): : 125 - 152
  • [7] AN AUTOMATED MODEL-DRIVEN TESTING FRAMEWORK For Model-Driven Development and Software Product Lines
    Lamancha, Beatriz Perez
    Polo Usaola, Macario
    Piattini, Mario
    [J]. ENASE 2010: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, 2010, : 112 - 121
  • [8] A Framework for Automated Software Testing on the Cloud
    de Oliveira, Gustavo Savio
    Duarte, Alexandre
    [J]. 2013 INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED COMPUTING, APPLICATIONS AND TECHNOLOGIES (PDCAT), 2013, : 344 - 349
  • [9] An Automated Framework for Variability Management of Service-Oriented Software Product Lines
    Abu-Matar, Mohammad
    Gomaa, Hassan
    [J]. 2013 IEEE SEVENTH INTERNATIONAL SYMPOSIUM ON SERVICE-ORIENTED SYSTEM ENGINEERING (SOSE 2013), 2013, : 260 - 267
  • [10] Specification-based Testing for Software Product Lines
    Kahsai, Temesghen
    Roggenbach, Markus
    Schlingloff, Bernd-Holger
    [J]. SEFM 2008: SIXTH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND FORMAL METHODS, PROCEEDINGS, 2008, : 149 - +