A Framework for Concurrent Design of Metamodels and Diagrams - Towards an Agile Method for the Synthesis of Domain Specific Graphical Modeling Languages

DSML (Domain Specific Modeling Languages) are an alternative to general purpose modeling languages (e.g. UML or SysML) for describing models with concepts and relations specific to a domain. DSML design is often based on Ecore metamodels, which follow the class-relation paradigm and also require defining a concrete syntax which can be either graphical or textual. In this paper, we focus on graphical concrete syntax, and we introduce an approach and a tool (Diagraph) to assist the design of a graphical DSML. The main principles are: non-intrusive annotations of the metamodel to identify nodes, edges, nesting structures and other graphical information; immediate validation of metamodels by immediate generation of an EMF-GMF instance editor supporting multi-diagramming. We report a comparison experience between Diagraph and Obeo Designer (a commercial proprietary tool), which was conducted as part of a Model Driven Engineering Course.

[1]  Daniel L. Moody,et al.  The “Physics” of Notations: Toward a Scientific Basis for Constructing Visual Notations in Software Engineering , 2009, IEEE Transactions on Software Engineering.

[2]  Alexandre de Castro Alves OSGi in Depth , 2011 .

[3]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[4]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[5]  Benoît Combemale,et al.  Towards a Formal Verification of Process Model's Properties SIMPLEPDL and TOCL Case Study , 2007, ICEIS.

[6]  Jordi Cabot,et al.  Model-Driven Software Engineering in Practice , 2017, Synthesis Lectures on Software Engineering.

[7]  Richard F. Paige,et al.  Taming EMF and GMF using model transformation , 2010, MODELS'10.

[8]  Gerrit Muller How to Create an Architecture Overview , 2013 .

[9]  Gabor Karsai,et al.  The Generic Modeling Environment , 2001 .

[10]  Richard C. Gronback Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit , 2009 .

[11]  Jean-Marie Favre Megamodelling and Etymology , 2005, Transformation Techniques in Software Engineering.

[12]  Clémentine Nebut,et al.  Metamodel Matching for Automatic Model Transformation Generation , 2008, MoDELS.

[13]  Douglas T. Ross,et al.  Structured Analysis (SA): A Language for Communicating Ideas , 1977, IEEE Transactions on Software Engineering.

[14]  Clémentine Nebut,et al.  A proposed meta‐model for formalizing systems engineering knowledge, based on functional architectural patterns , 2012, Syst. Eng..

[15]  Bernhard Rumpe,et al.  Domain specific modeling , 2005, Software & Systems Modeling.