skip to main content
10.1145/3239372.3239376acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article

On the Quest for Flexible Modelling

Published:14 October 2018Publication History

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.

References

  1. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  2. 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 ScholarGoogle Scholar
  3. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  4. Colin Atkinson, Ralph Gerbig, and Bastian Kennel. 2012. On-the-fly emendation of multilevel models. In ECMFA (LNCS), Vol. 7349. Springer, 194--209. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Colin Atkinson, Bastian Kennel, and Björn Goß. 2010. The level-agnostic modeling language. In SLE (LNCS), Vol. 6563. Springer, 266--275. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Colin Atkinson and Thomas Kühne. 2001. The essence of multilevel metamodeling. In UML (LNCS), Vol. 2185. Springer, 19--33. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Colin Atkinson and Thomas Kühne. 2003. Model-driven development: A metamodeling foundation. IEEE Software 20, 5 (2003), 36--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Colin Atkinson and Thomas Kühne. 2008. Reducing accidental complexity in domain models. Software and System Modeling 7, 3 (2008), 345--359.Google ScholarGoogle ScholarCross RefCross Ref
  9. Jean Bézivin. 2005. Model driven engineering: An emerging technical space. In GTTSE Revised Papers (LNCS), Vol. 4143. Springer, 36--64. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 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 ScholarGoogle Scholar
  11. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  12. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  13. Juan de Lara and Esther Guerra. 2010. Deep meta-modelling with MetaDepth. In TOOLS (LNCS), Vol. 6141. Springer, 1--20. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  15. 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 ScholarGoogle ScholarCross RefCross Ref
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  18. Andrej Dyck, Andreas Ganser, and Horst Lichter. 2014. A framework for model recommenders - Requirements, architecture and tool support. In MODELSWARD. SciTePress, 282--290. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Epsilon. 2012. http://www.eclipse.org/epsilon/.Google ScholarGoogle Scholar
  20. 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 ScholarGoogle Scholar
  21. FlexMDE series of workshops. 2018. http://www.di.univaq.it/flexmde/index.php?pageId=previous_editions.Google ScholarGoogle Scholar
  22. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  23. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  24. Nicolas Hili. 2016. A metamodeling framework for promoting flexibility and creativity over strict model conformance. In FlexMDE @ MoDELS, Vol. 1694. CEUR, 2--11.Google ScholarGoogle Scholar
  25. Anthony Hunter and Bashar Nuseibeh. 1998. Managing inconsistent specifications: Reasoning, analysis, and action. ACM Trans. Softw. Eng. Methodol. 7, 4 (1998), 335--367. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  27. 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 ScholarGoogle Scholar
  28. Gregor Kiczales and Jim Des Rivieres. 1991. The Art of the Metaobject Protocol. MIT Press, Cambridge, MA, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 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 ScholarGoogle Scholar
  30. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  31. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  32. Thomas Kühne. 2009. Contrasting classification with generalisation. In APCCM (CRPIT), Vol. 96. Australian Computer Society, 71--78. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. 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 ScholarGoogle Scholar
  34. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  35. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  36. 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 ScholarGoogle Scholar
  37. Bashar Nuseibeh, Steve M. Easterbrook, and Alessandra Russo. 2000. Leveraging inconsistency in software development. IEEE Computer 33, 4 (2000), 24--29. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. 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 ScholarGoogle ScholarCross RefCross Ref
  39. OMG. 2013. SMOF 1.0. http://www.omg.org/spec/SMOF/1.0/.Google ScholarGoogle Scholar
  40. OMG. 2017. UML 2.5.1. https://www.omg.org/spec/UML/.Google ScholarGoogle Scholar
  41. Martin P. Robillard, Robert J. Walker, and Thomas Zimmermann. 2010. Recommendation systems for software engineering. IEEE Software 27, 4 (2010), 80--86. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. 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 ScholarGoogle ScholarCross RefCross Ref
  43. Daniel A. Sadilek and Stephan Weißleder. 2008. Testing metamodels. In ECMFA (LNCS), Vol. 5095. Springer, 294--309. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Douglas C. Schmidt. 2006. Guest Editor's Introduction: Model-Driven Engineering. IEEE Computer 39, 2 (2006), 25--31. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Jeremy G. Siek and Walid Taha. 2007. Gradual typing for objects. In ECOOP (LNCS), Vol. 4609. Springer, 2--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Jean-Sébastien Sottet and Nicolas Biri. 2016. JSMF: A javascript flexible modelling framework. In FlexMDE @ MoDELS, Vol. 1694. CEUR, 42--51.Google ScholarGoogle Scholar
  47. Dave Steinberg, Frank Budinsky, Marcelo Paternostro, and Ed Merks. 2008. EMF: Eclipse Modeling Framework, 2nd Edition. Addison-Wesley Professional, NJ. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Yentl Van Tendeloo and Hans Vangheluwe. 2017. The modelverse: A tool for multi-paradigm modelling and simulation. In WSC. IEEE, 944--955. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. David M. Ungar and Randall B. Smith. 1991. SELF: The power of simplicity. Lisp and Symbolic Computation 4, 3 (1991), 187--205. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. W3C. 2017. OWL Web Ontology Language. https://www.w3.org/standards/techs/owl.Google ScholarGoogle Scholar
  51. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  52. 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 ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. On the Quest for Flexible Modelling

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        MODELS '18: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems
        October 2018
        478 pages
        ISBN:9781450349499
        DOI:10.1145/3239372

        Copyright © 2018 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 14 October 2018

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
        • Research
        • Refereed limited

        Acceptance Rates

        MODELS '18 Paper Acceptance Rate29of101submissions,29%Overall Acceptance Rate118of382submissions,31%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader