ABSTRACT
Modelling is a fundamental activity in Software Engineering, and central to model-based engineering approaches. It is used for different purposes, and so its nature can range from informal (e.g., as a casual mechanism for problem discussion and understanding) to fully formal (e.g., to enable the automated processing of models by model transformations). However, existing modelling tools only serve one of these two extreme purposes: either to create informal drawings or diagrams, or to build models fully conformant to their modelling language. This lack of reconciliation is hampering the adoption of model-based techniques in practice, as they are deemed too imprecise in the former case, and too rigid in the latter.
In this new ideas paper, we claim that modelling tools need further flexibility covering different stages, purposes and approaches to modelling. We detail requirements for such a new generation of modelling tools, describe our first steps towards their realization in the Kite metamodelling tool, and showcase application scenarios.
- Aditya Agrawal, Attila Vizhanyo, Zsolt Kalmar, Feng Shi, Anantha Narayanan, and Gabor Karsai. 2005. Reusable idioms and patterns in graph transformation languages. Electr. Notes Theor. Comput. Sci. 127, 1 (2005), 181--192. Google ScholarDigital Library
- Seiki Akama and Newton C. A. da Costa. 2016. Why paraconsistent logics? In Towards Paraconsistent Engineering. Intelligent Systems Reference Library, Vol. 110. Springer, 7--24.Google Scholar
- Colin Atkinson, Ralph Gerbig, and Mathias Fritzsche. 2015. A multilevel approach to modeling language extension in the enterprise systems domain. Inf. Syst. 54 (2015), 289--307. Google ScholarDigital Library
- Colin Atkinson, Ralph Gerbig, and Bastian Kennel. 2012. On-the-fly emendation of multilevel models. In ECMFA (LNCS), Vol. 7349. Springer, 194--209. Google ScholarDigital Library
- Colin Atkinson, Bastian Kennel, and Björn Goß. 2010. The level-agnostic modeling language. In SLE (LNCS), Vol. 6563. Springer, 266--275. Google ScholarDigital Library
- Colin Atkinson and Thomas Kühne. 2001. The essence of multilevel metamodeling. In UML (LNCS), Vol. 2185. Springer, 19--33. Google ScholarDigital Library
- Colin Atkinson and Thomas Kühne. 2003. Model-driven development: A metamodeling foundation. IEEE Software 20, 5 (2003), 36--41. Google ScholarDigital Library
- Colin Atkinson and Thomas Kühne. 2008. Reducing accidental complexity in domain models. Software and System Modeling 7, 3 (2008), 345--359.Google ScholarCross Ref
- Jean Bézivin. 2005. Model driven engineering: An emerging technical space. In GTTSE Revised Papers (LNCS), Vol. 4143. Springer, 36--64. Google ScholarDigital Library
- Jean-Michel Bruel, Benoit Combemale, Esther Guerra, Jean-Marc Jézéquel, Jörg Kienzle, Juan de Lara, Gunter Mussbacher, Eugene Syriani, and Hans Vangheluwe. 2018. Model transformation reuse across metamodels: A classification and comparison of approaches. In ICMT (LNCS), Vol. 10888. Springer, 92--109.Google Scholar
- Hyun Cho, Jeffrey G. Gray, and Eugene Syriani. 2012. Creating visual domain-specific modeling languages from end-user demonstration. In MiSE @ ICSE. 22--28. Google ScholarDigital Library
- Antonio Cicchetti, Davide Di Ruscio, Romina Eramo, and Alfonso Pierantonio. 2008. Automating coevolution in model-driven engineering. In IEEE EDOC. IEEE Computer Society, 222--231. Google ScholarDigital Library
- Juan de Lara and Esther Guerra. 2010. Deep meta-modelling with MetaDepth. In TOOLS (LNCS), Vol. 6141. Springer, 1--20. Google ScholarDigital Library
- Juan de Lara and Esther Guerra. 2017. A posteriori typing for model-driven engineering: Concepts, analysis, and applications. ACM Trans. Softw. Eng. Methodol. 25, 4 (2017), 31:1--31:60. Google ScholarDigital Library
- Juan de Lara, Esther Guerra, Ruth Cobos, and Jaime Moreno-Llorena. 2014. Extending deep meta-modelling for practical model-driven engineering. Comput. J. 57, 1 (2014), 36--58.Google ScholarCross Ref
- Juan de Lara, Esther Guerra, and Jesús Sánchez Cuadrado. 2015. Model-driven engineering with domain-specific meta-modelling languages. Software and Systems Modeling 14, 1 (2015), 429--459. Google ScholarDigital Library
- Juan de Lara, Esther Guerra, and Jesús Sánchez Cuadrado. 2014. When and how to use Multilevel modelling. ACM Trans. Softw. Eng. Methodol. 24, 2 (2014), 12:1--12:46. Google ScholarDigital Library
- Andrej Dyck, Andreas Ganser, and Horst Lichter. 2014. A framework for model recommenders - Requirements, architecture and tool support. In MODELSWARD. SciTePress, 282--290. Google ScholarDigital Library
- Epsilon. 2012. http://www.eclipse.org/epsilon/.Google Scholar
- Claudia Ermel. 2006. Simulation and animation of visual languages based on typed algebraic graph transformation. Ph.D. Dissertation. TU Berlin. https://pdfs.semanticscholar.org/0dbf/38e3b2cc79f2b122adab82ca1f21e442942e.pdf.Google Scholar
- FlexMDE series of workshops. 2018. http://www.di.univaq.it/flexmde/index.php?pageId=previous_editions.Google Scholar
- Fahad Rafique Golra, Antoine Beugnard, Fabien Dagnat, Sylvain Guérin, and Christophe Guychard. 2016. Using free modeling as an agile method for developing domain specific modeling languages. In MoDELS. ACM, 24--34. Google ScholarDigital Library
- Regina Hebig, Djamel Eddine Khelladi, and Reda Bendraou. 2017. Approaches to coevolution of metamodels and models: A survey. IEEE Trans. Software Eng. 43, 5 (2017), 396--414. Google ScholarDigital Library
- Nicolas Hili. 2016. A metamodeling framework for promoting flexibility and creativity over strict model conformance. In FlexMDE @ MoDELS, Vol. 1694. CEUR, 2--11.Google Scholar
- Anthony Hunter and Bashar Nuseibeh. 1998. Managing inconsistent specifications: Reasoning, analysis, and action. ACM Trans. Softw. Eng. Methodol. 7, 4 (1998), 335--367. Google ScholarDigital Library
- Frédéric Jouault, Freddy Allilaire, Jean Bézivin, and Ivan Kurtev. 2008. ATL: A model transformation tool. Sci. Comp. Programming 72, 1 (2008), 31--39. Google ScholarDigital Library
- K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, and A. S. Peterson. 1990. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report. Carnegie-Mellon University Software Engineering Institute.Google Scholar
- Gregor Kiczales and Jim Des Rivieres. 1991. The Art of the Metaobject Protocol. MIT Press, Cambridge, MA, USA. Google ScholarDigital Library
- Dimitrios S. Kolovos, Nicholas Drivalos Matragkas, Horacio Hoyos Rodriguez, and Richard F. Paige. 2013. Programmatic muddle management. In XM @ MoDELS, Vol. 1089. CEUR, 2--10.Google Scholar
- Dimitrios S. Kolovos, Richard F. Paige, and Fiona Polack. 2006. The Epsilon Object Language (EOL). In ECMDA-FA'06 (LNCS), Vol. 4066. Springer, 128--142. Google ScholarDigital Library
- Dimitrios S. Kolovos, Richard F. Paige, and Fiona Polack. 2009. On the evolution of OCL for capturing structural constraints in modelling languages. In Rigorous Methods for Software Construction and Analysis, Essays Dedicated to Egon Börger on the Occasion of His 60th Birthday (LNCS), Vol. 5115. Springer, 204--218. Google ScholarDigital Library
- Thomas Kühne. 2009. Contrasting classification with generalisation. In APCCM (CRPIT), Vol. 96. Australian Computer Society, 71--78. Google ScholarDigital Library
- Zsolt Lattmann, Tamás Kecskés, Patrik Meijer, Gabor Karsai, Péter Völgyesi, and Ákos Lédeczi. 2016. Abstractions for modeling complex systems. In ISoLA (II) (LNCS), Vol. 9953. 68--79.Google Scholar
- Jesús J. López-Fernández, Jesús Sánchez Cuadrado, Esther Guerra, and Juan de Lara. 2015. Example-driven meta-model development. Software and Systems Modeling 14, 4 (2015), 1323--1347. Google ScholarDigital Library
- Jesús J. López-Fernández, Esther Guerra, and Juan de Lara. 2016. Combining unit and specification-based testing for metamodel validation and verification. Inf. Syst. 62 (2016), 104--135. Google ScholarDigital Library
- Levi Lúcio, Saad bin Abid, Salman Rahman, Vincent Aravantinos, Ralf Kuestner, and Eduard Harwardt. 2017. Process-aware model-driven development environments. In MODELS Satellite Events (CEUR Workshop Proceedings), Vol. 2019. CEUR-WS.org, 405--411.Google Scholar
- Bashar Nuseibeh, Steve M. Easterbrook, and Alessandra Russo. 2000. Leveraging inconsistency in software development. IEEE Computer 33, 4 (2000), 24--29. Google ScholarDigital Library
- Bashar Nuseibeh, Steve M. Easterbrook, and Alessandra Russo. 2001. Making inconsistency respectable in software development. Journal of Systems and Software 58, 2 (2001), 171--180.Google ScholarCross Ref
- OMG. 2013. SMOF 1.0. http://www.omg.org/spec/SMOF/1.0/.Google Scholar
- OMG. 2017. UML 2.5.1. https://www.omg.org/spec/UML/.Google Scholar
- Martin P. Robillard, Robert J. Walker, and Thomas Zimmermann. 2010. Recommendation systems for software engineering. IEEE Software 27, 4 (2010), 80--86. Google ScholarDigital Library
- Davide Di Ruscio, Juan de Lara, and Alfonso Pierantonio. 2017. Special issue on Flexible Model Driven Engineering. Computer Languages, Systems & Structures 49 (2017), 174--175.Google ScholarCross Ref
- Daniel A. Sadilek and Stephan Weißleder. 2008. Testing metamodels. In ECMFA (LNCS), Vol. 5095. Springer, 294--309. Google ScholarDigital Library
- Douglas C. Schmidt. 2006. Guest Editor's Introduction: Model-Driven Engineering. IEEE Computer 39, 2 (2006), 25--31. Google ScholarDigital Library
- Jeremy G. Siek and Walid Taha. 2007. Gradual typing for objects. In ECOOP (LNCS), Vol. 4609. Springer, 2--27. Google ScholarDigital Library
- Jean-Sébastien Sottet and Nicolas Biri. 2016. JSMF: A javascript flexible modelling framework. In FlexMDE @ MoDELS, Vol. 1694. CEUR, 42--51.Google Scholar
- Dave Steinberg, Frank Budinsky, Marcelo Paternostro, and Ed Merks. 2008. EMF: Eclipse Modeling Framework, 2nd Edition. Addison-Wesley Professional, NJ. Google ScholarDigital Library
- Yentl Van Tendeloo and Hans Vangheluwe. 2017. The modelverse: A tool for multi-paradigm modelling and simulation. In WSC. IEEE, 944--955. Google ScholarDigital Library
- David M. Ungar and Randall B. Smith. 1991. SELF: The power of simplicity. Lisp and Symbolic Computation 4, 3 (1991), 187--205. Google ScholarDigital Library
- W3C. 2017. OWL Web Ontology Language. https://www.w3.org/standards/techs/owl.Google Scholar
- Dustin Wüest, Norbert Seyff, and Martin Glinz. 2015. FLEXISKETCH TEAM: Collaborative sketching and notation creation on the fly. In ICSE, Vol. 2. IEEE, 685--688. Google ScholarDigital Library
- Athanasios Zolotas, Robert Clarisó, Nicholas Matragkas, Dimitrios S. Kolovos, and Richard F. Paige. 2017. Constraint programming for type inference in flexible model-driven engineering. Computer Languages, Systems & Structures 49 (2017), 216--230. Google ScholarDigital Library
Index Terms
- On the Quest for Flexible Modelling
Recommendations
Facet-oriented modelling: open objects for model-driven engineering
SLE 2018: Proceedings of the 11th ACM SIGPLAN International Conference on Software Language EngineeringModel-driven engineering (MDE) promotes models as the principal assets in software projects. Models are built using a modelling language whose syntax is defined by a metamodel. Hence, objects in models are typed by a metamodel class, and this typing ...
Model-driven engineering with domain-specific meta-modelling languages
Domain-specific modelling languages are normally defined through general-purpose meta-modelling languages like the MOF. While this is satisfactory for many model-driven engineering (MDE) projects, several researchers have identified the need for domain-...
EuGENia live: a flexible graphical modelling tool
XM '12: Proceedings of the 2012 Extreme Modeling WorkshopDesigning a domain-specific language (DSL) is a collaborative, iterative and incremental process between domain experts and software engineers. Existing tools for implementing DSLs produce powerful and interoperable domain-specific editors, but are ...
Comments