Alliance of model-driven engineering with a proof-based formal approach

被引:8
|
作者
Idani, Akram [1 ]
Ledru, Yves [1 ]
Vega, German [1 ]
机构
[1] Univ Grenoble Alpes, Grenoble INP, CNRS, LIG, F-38000 Grenoble, France
关键词
Software systems; Model-driven engineering; Formal methods; Visual animation; Proofs; SEMANTICS; UML;
D O I
10.1007/s11334-020-00366-3
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Model-driven engineering (MDE) promotes the use of models throughout the software development cycle in order to increase abstraction and reduce software complexity. It favors the definition of domain-specific modeling languages (DSMLs) thanks to frameworks dedicated to meta-modeling and code generation like EMF (Eclipse Modeling Framework). The standard semantics of meta-models allows interoperability between tools such as language analysers (e.g., XText), code generators (e.g., Acceleo), and also model transformation tools (e.g., ATL). However, a major limitation of MDE is the lack of formal reasoning tools allowing to ensure the correctness of models. Indeed, most of the verification activities offered by MDE tools are based on the verification of OCL constraints on instances of meta-models. However, these constraints mainly deal with structural properties of the model and often miss out its behavioral semantics. In this work, we propose to bridge the gap between MDE and the rigorous world of formal methods in order to guarantee the correctness of both structural and behavioral properties of the model. Our approach translates EMF meta-models into an equivalent formal B specification and then injects models into this specification. The equivalence between the resulting B specification and the original EMF model is kept by proven design steps leading to a rigorous MDE technique. The AtelierB prover is used to guarantee the correctness of the model's behavior with respect to its invariant properties, and the ProB model-checker is used to animate underlying execution scenarios which are translated back to the initial EMF model. Besides the use of these automatic reasoning tools in MDE, proved B refinements are also investigated in this paper in order to gradually translate abstract EMF models to concrete models which can then be automatically compiled into a programming language.
引用
收藏
页码:289 / 307
页数:19
相关论文
共 50 条
  • [1] Alliance of model-driven engineering with a proof-based formal approach
    Akram Idani
    Yves Ledru
    German Vega
    Innovations in Systems and Software Engineering, 2020, 16 : 289 - 307
  • [2] A model-driven engineering approach to formal verification of PLC programs
    Farines, Jean-Marie
    de Queiroz, Max H.
    da Rocha, Vinicius G.
    Carpes, Ana Maria M.
    Vernadat, Francois
    Cregut, Xavier
    2011 IEEE 16TH CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION (ETFA), 2011,
  • [3] A Model-Driven Engineering Approach for the Formal Verification of Composite Web Services
    Maraoui, Raoudha
    Cariou, Eric
    Ayeb, Bechir
    2013 IEEE 22ND INTERNATIONAL WORKSHOP ON ENABLING TECHNOLOGIES: INFRASTRUCTURE FOR COLLABORATIVE ENTERPRISES (WETICE), 2013, : 266 - 271
  • [4] Integrating Formal Methods with Model-driven Engineering
    Gargantini, Angelo
    Riccobene, Elvinia
    Scandurra, Patrizia
    2009 FOURTH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING ADVANCES (ICSEA 2009), 2009, : 86 - +
  • [5] A model-driven process for engineering a toolset for a formal method
    Arcaini, Paolo
    Gargantini, Angelo
    Riccobene, Elvinia
    Scandurra, Patrizia
    SOFTWARE-PRACTICE & EXPERIENCE, 2011, 41 (02): : 155 - 166
  • [6] TOPCASED - Combining formal methods with model-driven engineering
    Pontisso, Nadege
    Chemouil, David
    ASE 2006: 21ST IEEE INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2006, : 359 - +
  • [7] Formal model-driven engineering of critical information systems
    Davies, Jim
    Milward, David
    Wang, Chen-Wei
    Welch, James
    SCIENCE OF COMPUTER PROGRAMMING, 2015, 103 : 88 - 113
  • [8] Proof-Based Coverage Metrics for Formal Verification
    Ghassabani, Elaheh
    Gacek, Andrew
    Whalen, Michael W.
    Heimdahl, Mats P. E.
    Wagner, Lucas
    PROCEEDINGS OF THE 2017 32ND IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE'17), 2017, : 194 - 199
  • [9] rCOS: a formal model-driven engineering method for component-based software
    Wei Ke
    Xiaoshan Li
    Zhiming Liu
    Volker Stolz
    Frontiers of Computer Science, 2012, 6 : 17 - 39
  • [10] Proof-based system engineering using a virtual system model
    Biely, M
    Le Lann, G
    Schmid, U
    SERVICE AVAILABILITY, 2005, 3694 : 164 - 179