Towards Consistency Checking Between a System Model and Its Implementation

In model-based systems engineering, a system model is the central development artifact containing architectural and design descriptions of core parts of the system. This abstract representation of the system is then partly realized in code. Throughout development, both system model and code evolve independently, incurring the risk of them drifting apart. Inconsistency between model and code can lead to errors in development, resulting in delayed or erroneous implementation. We present a work in progress towards automated mechanisms for checking consistency between a system model and code, within an industrial model-based systems engineering setting. In particular, we focus on automatically establishing traceability links between elements of the system model and parts of the code. The paper describes the challenges in achieving this in industrial practices and outlines our envisioned approach to overcome those challenges.

[1]  C.J.H. Mann,et al.  A Practical Guide to SysML: The Systems Modeling Language , 2009 .

[2]  Alexander Egyed,et al.  Towards Model-and-Code Consistency Checking , 2014, 2014 IEEE 38th Annual Computer Software and Applications Conference.

[3]  Christiaan J. J. Paredis,et al.  Dependency Modeling and Model Management in Mechatronic Design , 2012, J. Comput. Inf. Sci. Eng..

[4]  Richard F. Paige,et al.  Detecting and Repairing Inconsistencies across Heterogeneous Models , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[5]  Julia Rubin,et al.  Model traceability , 2006, IBM Syst. J..

[6]  Jonathan I. Maletic,et al.  Mining software repositories for traceability links , 2007, 15th IEEE International Conference on Program Comprehension (ICPC '07).

[7]  Birgit Vogel-Heuser,et al.  Managing inter-model inconsistencies in model-based systems engineering: Application in automated production systems engineering , 2019, J. Syst. Softw..

[8]  David D. Walden,et al.  Systems engineering handbook : a guide for system life cycle processes and activities , 2015 .

[9]  Alexander Egyed,et al.  An Empirical Study on the Impact of Inconsistency Feedback during Model and Code Co-changing , 2019, J. Object Technol..

[10]  Genny Tortora,et al.  Recovering traceability links in software artifact management systems using information retrieval methods , 2007, TSEM.

[11]  Sebastian Herold,et al.  Architecture consistency: State of the practice, challenges and requirements , 2017, Empirical Software Engineering.

[12]  Antonio Cicchetti,et al.  Impediments to Introducing Continuous Integration for Model-Based Development in Industry , 2019, 2019 45th Euromicro Conference on Software Engineering and Advanced Applications (SEAA).

[13]  Licia Capra,et al.  xlinkit: a consistency checking and smart link generation service , 2002, TOIT.

[14]  Andy Schürr,et al.  Specification of Graph Translators with Triple Graph Grammars , 1994, WG.

[15]  Bran Selic,et al.  What will it take? A view on adoption of model-based methods in practice , 2012, Software & Systems Modeling.

[16]  Federico Ciccozzi,et al.  Lightweight Consistency Checking for Agile Model-Based Development in Practice , 2019, J. Object Technol..

[17]  Jean Bézivin,et al.  Global Model Management in Eclipse GMT/AM3 , 2006 .

[18]  Federico Ciccozzi,et al.  Multi-view approaches for software and system modelling: a systematic literature review , 2019, Software and Systems Modeling.

[19]  Hans Vangheluwe,et al.  Engineering Process Transformation to Manage (In)consistency , 2016, COMMitMDE@MoDELS.

[20]  Ahsan Qamar,et al.  An Approach to Identifying Inconsistencies in Model-based Systems Engineering , 2014, CSER.

[21]  Richard F. Paige,et al.  Rigorous identification and encoding of trace-links in model-driven engineering , 2010, Software & Systems Modeling.

[22]  Richard F. Paige,et al.  The Epsilon Object Language (EOL) , 2006, ECMDA-FA.

[23]  Jean-Marie Favre,et al.  Towards a Basic Theory to Model Model Driven Engineering , 2004 .