Description Languages for Consistency Management Scenarios Based on Examples from the Industry Automation Domain

To cope with the increasing complexity of developing and maintaining modern (software) systems, multiple abstractions (models) of the same system can be established and used to allow different domain experts to collaborate and contribute their respective expertise. This divide-and-conquer, model-based approach requires, however, support for a concurrent engineering process, i.e., providing a means of checking, restoring, and ensuring the consistency of all involved and concurrently maintained models. The task of providing such support is often referred to as consistency management. Although there exist various approaches to consistency management and numerous (industrial) case studies described in the literature on bidirectional transformations (bx), there is currently no uniform description of diverse but related industrial applications of model synchronisation and other forms of consistency management. This makes it challenging to detect similarities and differences related to requirements, constraints, applied techniques and tools. It is thus difficult to compare and transfer knowledge gained from (successful) projects to other bx approaches or even other bx tools for the same general approach. In this paper, therefore, we propose a description language for envisioned scenarios in the problem domain of consistency management, as well as a complementary description language for solution strategies in terms of method fragments and method patterns in the solution domain of Model-Driven Engineering (MDE). Our work is inspired by previous research in the bx and MDE communities, and is also based on our collective experience from over ten years of investigating a series of application scenarios in the industry automation section together with Siemens AG as an industrial partner. [Abridged due to arXiv]

[1]  Jácome Cunha,et al.  Bidirectional Transformation of Model-Driven Spreadsheets , 2012, ICMT@TOOLS.

[2]  Gregor Engels,et al.  Assembly-Based Method Engineering with Method Patterns , 2013, Software Engineering.

[3]  Andy Schürr,et al.  Inter-model Consistency Checking Using Triple Graph Grammars and Linear Optimization Techniques , 2017, FASE.

[4]  Andy Schürr,et al.  A Multidimensional Approach for Concurrent Model-Driven Automation Engineering , 2011, Model-Driven Domain Analysis and Software Development.

[5]  Ralf Lämmel,et al.  Modeling the linguistic architecture of software products , 2012, MODELS'12.

[6]  Kevin Lano,et al.  Patterns for Specifying Bidirectional Transformations in UML-RSDS , 2015, ICSEA 2015.

[7]  Perdita Stevens,et al.  A Landscape of Bidirectional Model Transformations , 2007, GTTSE.

[8]  Alfonso Pierantonio,et al.  Towards a Taxonomy for Bidirectional Transformation , 2014, SATToSE.

[9]  Hui Song,et al.  Synchronizing concurrent model updates based on bidirectional transformation , 2013, Software & Systems Modeling.

[10]  Ralf Lämmel,et al.  Bidirectional Transformations: A Cross-Discipline Perspective , 2009, ICMT@TOOLS.

[11]  Krzysztof Czarnecki,et al.  A three-dimensional taxonomy for bidirectional model synchronization , 2016, J. Syst. Softw..

[12]  Thomas Engel,et al.  Towards Bidirectional Engineering of Satellite Control Procedures Using Triple Graph Grammars , 2013, MPM@MoDELS.

[13]  Hartmut Ehrig,et al.  Triple Graph Grammars in the Large for Translating Satellite Procedures , 2014, ICMT.

[14]  Marius Lauder,et al.  Incremental model synchronization with precedence-driven triple graph grammars , 2012 .

[15]  Alcino Cunha,et al.  Model repair and transformation with Echo , 2013, 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[16]  Ralf Lämmel Coupled software transformations revisited , 2016, SLE.

[17]  Gabriele Taentzer,et al.  A Static Analysis of Non-confluent Triple Graph Grammars for Efficient Model Transformation , 2014, ICGT.

[18]  Zinovy Diskin,et al.  Algebraic Models for Bidirectional Model Synchronization , 2008, MoDELS.

[19]  Max Jacobson,et al.  A Pattern Language: Towns, Buildings, Construction , 1981 .

[20]  Perdita Stevens Bidirectional Transformations in the Large , 2017, 2017 ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems (MODELS).

[21]  Jean Bézivin,et al.  On the Need for Megamodels , 2004, OOPSLA 2004.

[22]  Holger Giese,et al.  Automatic Conformance Testing of Optimized Triple Graph Grammar Implementations , 2011, AGTIVE.

[23]  Andy Schürr,et al.  Developing eMoflon with eMoflon , 2014, ICMT.

[24]  Jordi Cabot,et al.  Feature-based classification of bidirectional transformation approaches , 2014, Software & Systems Modeling.

[25]  Ralf Lämmel,et al.  Interconnected Linguistic Architecture , 2017, Art Sci. Eng. Program..

[26]  Soichiro Hidaka,et al.  GRoundTram: An integrated framework for developing well-behaved bidirectional model transformations , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

[27]  Andy Schürr,et al.  On the Usage of TGGs for Automated Model Transformation Testing , 2014, ICMT.

[28]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation , 2006, Monographs in Theoretical Computer Science. An EATCS Series.

[29]  Sjaak Brinkkemper,et al.  Method engineering: engineering of information systems development methods and tools , 1996, Inf. Softw. Technol..

[30]  Masud Fazal-Baqaie,et al.  Towards a Framework for the Modular Construction of Situation-Specific Software Transformation Methods , 2015, Softwaretechnik-Trends.

[31]  Antonio Cicchetti,et al.  JTL: A Bidirectional and Change Propagating Transformation Language , 2010, SLE.

[32]  Gregor Engels,et al.  Concept-Based Engineering of Situation-Specific Migration Methods , 2016, ICSR.

[33]  Gregor Engels,et al.  A Meta-Method for Defining Software Engineering Methods , 2010, Graph Transformations and Model-Driven Engineering.

[34]  Jean-Philippe Diguet,et al.  Synchronization of Models of Rich Languages with Triple Graph Grammars: An Experience Report , 2014, ICMT.

[35]  Holger Giese,et al.  Model Synchronization at Work: Keeping SysML and AUTOSAR Models Consistent , 2010, Graph Transformations and Model-Driven Engineering.

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

[37]  Zhenjiang Hu,et al.  BiGUL: a formally verified core language for putback-based bidirectional programming , 2016, PEPM.

[38]  Hartmut Ehrig,et al.  From state- to delta-based bidirectional model transformations: the symmetric case , 2011, MODELS'11.