Fragmenta: A theory of fragmentation for MDE

Model-Driven Engineering (MDE) promotes models throughout development. However, models may become large and unwieldy even for small to medium-sized systems. This paper tackles the MDE challenges of model complexity and scalability. It proposes Fragmenta, a theory of modular design that breaks down overall models into fragments that can be put together to build meaningful wholes, in contrast to classical MDE approaches that are essentially monolithic. The theory is based on an algebraic description of models, fragments and clusters based on graphs and morphisms. The paper's novelties include: (i) a mathematical treatment of fragments and a seaming mechanism of proxies to enable inter-fragment referencing, (ii) fragmentation strategies, which prescribe a fragmentation structure to model instances, (iii) Fragmenta's support for both top-down and bottom-up design, and (iv) our formally proved result that shows that inheritance hierarchies remain well-formed (acyclic) globally when fragments are composed provided some local fragment constraints are met.

[1]  Gabriele Taentzer,et al.  Transformation of Typed Composite Graphs with Inheritance and Containment Structures , 2012, Fundam. Informaticae.

[2]  Benoît Combemale,et al.  Correct-by-construction model composition: Application to the Invasive Software Composition method , 2014, FESCA.

[3]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[4]  Mehrdad Sabetzadeh,et al.  An algebraic framework for merging incomplete and inconsistent views , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[5]  Anatolij Zubow,et al.  Automated and transparent model fragmentation for persisting large models , 2012, MODELS'12.

[6]  Andy Schürr,et al.  Formal Definition of MOF 2.0 Metamodel Components and Composition , 2008, MoDELS.

[7]  Tobias Nipkow,et al.  A Proof Assistant for Higher-Order Logic , 2002 .

[8]  Hartmut Ehrig,et al.  Transformation of Type Graphs with Inheritance for Ensuring Security in E-Government Networks , 2009, FASE.

[9]  Frank Budinsky,et al.  EMF: Eclipse Modeling Framework 2.0 , 2009 .

[10]  Steffen Zschaler,et al.  On Language-Independent Model Modularisation , 2009, LNCS Trans. Aspect Oriented Softw. Dev..

[11]  Mehrdad Sabetzadeh,et al.  Matching and Merging of Statecharts Specifications , 2007, 29th International Conference on Software Engineering (ICSE'07).

[12]  Pierre Kelsen,et al.  Models within Models: Taming Model Complexity Using the Sub-model Lattice , 2011, FASE.

[13]  Gabriele Taentzer,et al.  Towards a Distributed Modeling Process Based on Composite Models , 2013, FASE.

[14]  Juan de Lara,et al.  EMF Splitter: A Structured Approach to EMF Modularity , 2014, XM@MoDELS.

[15]  Pierre Kelsen,et al.  Using VCL as an Aspect-Oriented Approach to Requirements Modelling , 2010, LNCS Trans. Aspect Oriented Softw. Dev..

[16]  Juan de Lara,et al.  Pattern-based development of Domain-Specific Modelling Languages , 2015, 2015 ACM/IEEE 18th International Conference on Model Driven Engineering Languages and Systems (MODELS).

[17]  Christian Glodt,et al.  A tool for visual and formal modelling of software designs , 2015, Sci. Comput. Program..

[18]  Marsha Chechik,et al.  Splitting Models Using Information Retrieval and Model Crawling Techniques , 2014, FASE.