Skip to main content

Multi-Level Meta-Modelling to Underpin the Abstract and Concrete Syntax for Domain-Specific Modelling Languages

  • Chapter
  • First Online:
Domain Engineering

Abstract

A domain-specific modelling language can be considered as a situationally focussed conceptual modelling language. A modelling language is typically underpinned by a meta-model that defines its abstract syntax, utilizes a notation (a.k.a. concrete syntax) and possesses a well-defined semantics, sometimes with an associated ontology. However, the relationships between models, meta-models, modelling languages and ontologies are not well defined in the literature. In particular, the implications of the strict meta-modelling paradigm fostered by the OMG in relation to the type/instance duality are often described in a vague and equivocal fashion. This chapter provides a solid theoretical foundation for the construction of domain-specific modelling languages that can help define both the abstract and concrete syntax aspects. Two example languages are described: ISO/IEC 24744 (Software Engineering Meta-model for Development Methodologies), a language that can be used to define software-intensive development methods; and FAML (FAME Agent-oriented Modelling Language), a language for the specification of agent-oriented software systems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 54.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Some authors use the term “generalize” to mean ignore details (see, for example, [2], p. 40). Here, the term “generalize”, and particularly “generalization”, is used in the object-oriented sense of a relationship between a type and its super-type (or, equally, between a subtype and a type).

  2. 2.

    Thus confounding the abstraction and representation links depicted in the “meaning triangle” (Fig. 7).

  3. 3.

    We will not discuss here a third possible application between M3 and M2.

  4. 4.

    Note that this is a very different meaning from the use of “reference model” in software engineering standards published by ISO’s JTC1 SC7.

  5. 5.

    A notation for ISO/IEC 24744 was added later [46]—see Sect. 6.1.

References

  1. Abadi, M., Cardelli, L.: A Theory of Objects. Springer, New York (1996)

    Book  MATH  Google Scholar 

  2. Alagar, V.S., Periyasamy, K.: Specification of Software Systems. Springer, Berlin (1998)

    Book  MATH  Google Scholar 

  3. Aßmann, U., Zschaler, S., Wagner, G.: Ontologies, meta-models, and the model-driven paradigm. In: Calero, C., Ruiz, F., Piattini, M. (eds.) Ontologies for Software Engineering and Software Technology, pp. 239–273. Springer, Berlin (2006)

    Google Scholar 

  4. Atkinson, C.: Metamodelling for distributed object environments. In: First International Enterprise Distributed Object Computing Workshop (EDOC'97). Brisbane (1997)

    Google Scholar 

  5. Atkinson, C.: Supporting and applying the UML conceptual framework. In: Bézivin. J., Muller, P-A. (eds.) The Unified Modeling Language. «UML» 1998: Beyond the Notation. LNCS, vol. 1618, pp. 21–36, Springer, Berlin (1998)

    Google Scholar 

  6. Atkinson, C., Kühne, T.: The essence of multilevel metamodelling. In: Gogolla, M., Kobryn, C. (eds.) «UML»2001 – The Unified Modeling Language. Modeling Languages, Concepts and Tools. LNCS, vol 2185, pp. 19–33, Springer, Berlin (2001)

    Google Scholar 

  7. Atkinson, C., Kühne, T., Henderson-Sellers, B.: To meta or not to meta—that is the question. JOOP/ROAD 13(8), 32–35 (2000)

    Google Scholar 

  8. Atkinson, C., Kühne, T., Henderson-Sellers, B.: Systematic stereotype usage. Software. Syst. Model. 2(3), 153–163 (2003)

    Article  Google Scholar 

  9. Atkinson, C., Gutheil, M., Kennel, B.: A flexible infrastructure for multilevel language engineering. IEEE Trans. Software. Eng. 35(6), 742–755 (2009)

    Article  Google Scholar 

  10. Batory, D., Johnson, C., MacDonald, B., von Heeder, D.: Achieving extensibility through product-lines and domain-specific languages: a case study. ACM Trans. Softw. Eng. Methodol. 11(2), 191–214 (2002)

    Article  Google Scholar 

  11. Bertin, J.: Semiology of Graphics: Diagrams, Networks, Maps. University of Wisconsin Press, Madison (1983)

    Google Scholar 

  12. Beydoun, G., Low, G., Henderson-Sellers, B., Mouratidis, H., Gomez-Sanz, J., Pavon, J., Gonzalez-Perez, C.: FAML: a generic metamodel for MAS development. IEEE Trans. Softw. Eng. 35(6), 841–863 (2009)

    Article  Google Scholar 

  13. Bézivin, J.: In search of a basic principle for model-driven engineering. Upgrade V(2), 21–24 (2004)

    Google Scholar 

  14. Bézivin, J.: On the unification power of models. Softw. Syst. Model. 4, 171–188 (2005)

    Article  Google Scholar 

  15. Bézivin, J., Gerbé, O.: Towards a precise definition of the OMG/MDA framework. In: Presented at ASE’01, Automated Software Engineering, San Diego, 26–29 November 2001. Proceedings of the 16th IEEE International Conference on Automated Software Engineering (ASE’01), p. 273. IEEE Computer Society Press, Coronado (2001)

    Google Scholar 

  16. Bézivin, J., Lemesle, R.: Ontology-based layered semantics for precise OA&D modeling. In: Bosch, J., Mitchell, S. (eds.) Object-Oriented Technologys: ECOOP’97 Workshop Reader. LNCS, vol. 1357, pp. 287–292. Springer, Berlin (1998)

    Google Scholar 

  17. Bresciani, P., Giorgini, P., Giunchiglia, F., Mylopolous, J., Perini, A.: Tropos: an agent-oriented software development methodology. Autonomous. Agents. Multi-Agent. Syst. 8(3), 203–236 (2004)

    Article  Google Scholar 

  18. Colomb, R., Raymond, K., Hart, L., Emery, P., Welty, C., Xie, G.T., Kendall, E.: The object management group ontology definition metamodel. In: Calero, C., Ruiz, F., Piattini, M. (eds.) Ontologies for Software Engineering and Software Technology, pp. 217–247. Springer, Berlin (2006)

    Chapter  Google Scholar 

  19. Constantine, L.L., Henderson-Sellers, B.: Notation matters: Part 1—framing the issues. Rep. Object. Anal. Des. 2(3), 25–29 (1995)

    Google Scholar 

  20. Constantine, L.L., Henderson-Sellers, B.: Notation matters: Part 2—applying the principles. Rep. Object. Anal. Des. 2(4), 20–23 (1995)

    Google Scholar 

  21. Denning, P.J., Dennis, J.B., Qualitz, J.E.: Machines, Languages, and Computation. Prentice-Hall, Englewood Cliffs (1978)

    MATH  Google Scholar 

  22. Eriksson, O., Henderson-Sellers, B., Ågerfalk, P.J.: Ontological and Linguistic Metamodelling Revisited—A Language Use Approach (2013, in press)

    Google Scholar 

  23. Falbo RdeA., Guizzardi, G., Duarte, K.C.: An ontological approach to domain engineering. In: Proceedings of International Conference on Software Engineering and Knowledge Engineering SEKE’02, ACM, Ischia, 15–19 July 2002

    Google Scholar 

  24. Firesmith, D., Henderson-Sellers, B., Graham, I.: OPEN Modeling Language (OML) reference manual. SIGS Books, New York, 276 pp (1997); Cambridge University Press, New York (1998)

    Google Scholar 

  25. Gargantini, A., Riccobene, E., Scandurra, P.: A semantic framework for metamodel-based languages. J. Automated. Softw. 16(3–4), 415–454 (2009)

    Article  Google Scholar 

  26. Gašević, D., Kaviani, N, Hatala, M.: On metamodeling in megamodels. In: Engels, G., et al. (eds.) MoDELS 2007. LNCS, vol. 4735, pp. 91–105. Springer, Berlin (2007)

    Google Scholar 

  27. Ghidini, C., Giunchiglia, F.: A semantics for abstraction. In: Lopez de Mantaras, R., Saitta L. (eds.) Proceedings of ECAI2004, pp. 343–352. IOS, Amsterdam (2004)

    Google Scholar 

  28. Giunchiglia, F., Walsh, T.: A theory of abstraction. Artif. Intell. 57(2–3), 323–390 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  29. Gonzalez-Perez, C., Henderson-Sellers, B.: A powertype-based metamodelling framework. Softw. Syst. Model. 5, 72–90 (2006)

    Article  Google Scholar 

  30. Gonzalez-Perez, C., Henderson-Sellers, B.: An ontology for software development methodologies and endeavours. In: Calero, C., Ruiz, F., Piattini, M. (eds.) Ontologies in Software Engineering and Software Technology, pp. 123–152. Springer, Berlin (2006)

    Chapter  Google Scholar 

  31. Gonzalez-Perez, C., Henderson-Sellers, B.: Modelling software development methodologies: a conceptual foundation. J. Syst. Software. 80(11), 1778–1796 (2007)

    Article  Google Scholar 

  32. Gonzalez-Perez, C., Henderson-Sellers, B.: Metamodelling for Software Engineering. Wiley, Chichester (2008)

    Google Scholar 

  33. Greenfield, J., Short, K.: Software Factories. Wiley, Chichester (2004)

    Google Scholar 

  34. Guizzardi, G.: Ontological foundations for structural conceptual models, CTIT PhD Thesis Series, No. 05–74. Enschede, The Netherlands (2005)

    Google Scholar 

  35. Guizzardi, G., Wagner, G.: Towards ontological foundations for agent modelling concepts using the Unified Foundational Ontology (UFO). In: Bresciani, P., Giorgini, P., Henderson-Sellers, B., Low, G., Winikoff, M. (eds.) Agent-Oriented Information Systems II. LNAI, vol. 3508. pp. 110–124. Springer, Berlin (2005)

    Google Scholar 

  36. Harsu, M.: A survey on domain engineering. Report, Institute of Software Systems, Tampere University of Technology (2002)

    Google Scholar 

  37. Hay, D.C.: Data Model Patterns. Conventions of Thought. Dorset House Publishing Company, New York (1996)

    Google Scholar 

  38. Henderson-Sellers, B.: Method engineering: theory and practice. In: Karagiannis, D., Mayr, H.C. (eds.) Information Systems Technology and its Applications. Proceedings of the 5th International Conference ISTA 2006. Lecture Notes in Informatics (LNI) vol. P-84, pp. 13–23. Gesellschaft für Informatik, Bonn, 30–31 May (2006)

    Google Scholar 

  39. Henderson-Sellers, B.: On the Mathematics of Modelling, Metamodelling, Ontologies and Modelling Languages. SpringerBriefs in Computer Science. Springer, Heidelberg (2012)

    Book  Google Scholar 

  40. Henderson-Sellers, B., Gonzalez-Perez, C.: Uses and abuses of the stereotype mechanism in UML1.4 and 2.0. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) Model Driven Engineering Languages and Systems. 9th International Conference, MoDELS 2006, Genoa. LNCS, vol. 4199, pp. 16–26. Springer, Berlin (2006)

    Google Scholar 

  41. Henderson-Sellers, B., Unhelkar, B.: OPEN Modeling with UML. Addison-Wesley, London (2000)

    Google Scholar 

  42. Henderson-Sellers, B., Low, G.C, Gonzalez-Perez, C.: Semiotic considerations for the design of an agent-oriented modelling language. In: Bider, I. et al. (eds.) Proceedings of BPMDS 2012 and EMMSAD 2012. LNBIP, vol. 113, pp. 422–434. Springer, Heidelberg (2012)

    Google Scholar 

  43. Henderson-Sellers, B., Eriksson, O., Gonzalez-Perez, C., Ågerfalk, P.J.: Ptolemaic metamodelling? The need for a paradigm shift. In: Cueva Lovelle, J.M., Pelayo García-Bustelo, C., Sanjuán Martínez, O. (eds.) Progressions and Innovations in Model-Driven Software Engineering. IGI Global (2013, in press)

    Google Scholar 

  44. Henderson-Sellers, B., Serour, M., McBride, T., Gonzalez-Perez, C., Dagher, L.: Process construction and customization. J. Universal. Comput. Sci. 10(4), 326–358 (2004)

    Google Scholar 

  45. ISO/IEC.: Software engineering—metamodel for software development. ISO/IEC 24744, Geneva (2007)

    Google Scholar 

  46. ISO/IEC.: 24744 Software engineering—metamodel for development methodologies annex A—notation. International Organization for Standardization/International Electrotechnical Commission, Geneva (2010)

    Google Scholar 

  47. Jackson, M.: Some notes on models and modelling. In: Borgida, A.T et al. (eds.) Mylopoulos Festschrift. LNCS, vol. 5600, pp. 68–81. Springer, Berlin (2009)

    Google Scholar 

  48. Joualt, F., Bézivin, J.: KM3: a DSL for metamodel specification. In: Gorrieri, R., Wehrheim. H. (eds.) Formal Methods for Open Object-based Distributed Systems. LNCS, vol. 4037, pp. 171–185. Springer, Berlin (2006)

    Google Scholar 

  49. Karagiannis, D., Kühn, D.: Metamodelling platforms. In: Bauknecht, K., Min Tjoa, A., Quirchmayer. (eds.) In: Proceedings of the 3rd International Conference EO-Web2002-Dexa2002. LNCS, vol. 2455, pp. 182–195. Springer, Berlin (2002)

    Google Scholar 

  50. Keet, M.: Enhancing comprehension of ontologies and conceptual models through abstractions. In: Basili, R., Pazienza, M.T. (eds.) AI*IA 2007. LNAI, vol. 4733, pp. 813–821. Springer, Berlin (2007)

    Google Scholar 

  51. Kelly, S., Pohjonen, R.: Worst practices for domain-specific modelling. IEEE. Softw. 26, 22–29 (2009)

    Article  Google Scholar 

  52. Kleppe, A.: A language description is more than a metamodel. Paper Presented at ATEM2007 (part of MoDELS2007), IEEE Online Publication (2007)

    Google Scholar 

  53. Kühne, T.: What is a model? Dagstuhl Seminar Proceedings 04101. http://drops.dagstuhl.de/opus/volltexte/2005/23 (2005)

  54. Kühne, T.: Matters of (meta-)modeling. Softw. Syst. Model. 5, 369–385 (2006)

    Article  Google Scholar 

  55. Kühne, T.: Clarifying matters of (meta-)modeling: an author’s reply. Softw. Syst. Model. 5, 395–401 (2006)

    Article  Google Scholar 

  56. Kühne, T.: Contrasting classification with generalization. In: Kirchberg, M., Link, S. (eds.) In: Proceedings of the Sixth Asia-Pacific Conference on Conceptual Modelling. Conferences in Research and Practice in Information Technology, 96, pp. 71–78. Australian Computer Society, Sydney (2009)

    Google Scholar 

  57. Kurtev, I., Bézivin, J., Joualt, F., Valduriez, P.: Model-based DSL frameworks. In: OOPSLA’06: Companion to the 21st ACM SIGPLAN Conference on Object-oriented Programming Systems, Languages, and Applications, pp. 602–616, ACM (2006)

    Google Scholar 

  58. Laarman, A., Kurtev, I.: Ontological metamodelling with explicit instantiation. In: van den Brand, M., Gašević, D., Gray, J. (eds.) SLE2009. LNCS, vol. 5969, pp. 174–183. Springer, Berlin (2010)

    Google Scholar 

  59. Larkin, J.H., Simon, H.A.: Why a diagram is (sometimes) worth ten thousand words. Cogn. Sci. 11(1), 65–100 (1987)

    Article  Google Scholar 

  60. Ludewig, J.: Models in software engineering—an introduction. Softw. Syst. Model. 2, 5–14 (2003)

    Article  Google Scholar 

  61. Mantz, F., Lamo, Y., Rossini, A., Wolter, U., Taentzer, G.: Formalising metamodel evolution based on category theory. In: Pettersson, P., Seceleanu, C. (eds.) Proceedings of the 23rd Nordic Workshop on Programming Theory. 26–28 October, 2011, pp. 73–75, Västerås, Sweden Technical Report 254/2011, Mälardalen University (2011)

    Google Scholar 

  62. Moody, D.L.: The “physics” of notations: toward a scientific basis for constructing visual notations in software engineering. IEEE. Trans. Softw. Eng. 35(6), 756–779 (2009)

    Article  Google Scholar 

  63. Moody, D.L., van Hillegersberg, J.: Evaluating the visual syntax of UML: an analysis of the cognitive effectiveness of the UML family of diagrams. In: Gaševic, D., Lämmel, R., Wyk, E. (eds.) Proceedings of the First International Conference on Software Language Engineering. LNCS, vol. 5452, pp. 16–34. Springer, Berlin (2009)

    Google Scholar 

  64. Nordbotten, J.C., Crosby, M.E.: The effect of graphic style on data model interpretation. Inf. Syst. J. 9(2), 139–156 (1999)

    Article  Google Scholar 

  65. Odell, J.J.: Power types. J. Object-Oriented. Prog. 7(2), 8–12 (1994)

    MathSciNet  Google Scholar 

  66. Odell, J.J., Parunak, H.V.D., Fleischer, M.: The role of roles in designing effective agent organizations.In: Garcia, A et al. (eds.) SELMAS 2002. LNCS, vol. 2603, pp. 27–38. Springer, Berlin (2003)

    Google Scholar 

  67. Odell, J.J., Parunak, H.V.D., Fleischer, M.: Modeling agent organizations using roles. Softw. Syst. Model. 2, 76–81 (2003)

    Article  Google Scholar 

  68. Ogden, C.K., Richards, I.A.: The Meaning of Meaning. Harcourt. Brace and World, New York (1923)

    Google Scholar 

  69. OMG.: Software & Systems Process Engineering Meta-Model Specification Version 2.0, formal/2008-04-01 (2008)

    Google Scholar 

  70. OMG.: OMG Unified Modeling LanguageTM (OMG UML), Superstructure. Version 2.4.1. formal/2011-08-06 (2011)

    Google Scholar 

  71. Opdahl, A., Henderson-Sellers, B.: Ontological evaluation of the UML using the Bunge-Wand-Weber model. Softw. Syst. Model. 1(1), 43–67 (2002)

    Google Scholar 

  72. Pavón, J., Gómez-Sanz, J.J., Fuentes, R.: The INGENIAS methodology and tools. In: Henderson-Sellers, B., Giorgini, P. (eds.) Agent-Oriented Methodologies, pp. 236–276. Idea Group Inc, Hershey (2005)

    Chapter  Google Scholar 

  73. Peirce, C.S.: Collected Papers v. 2, paragraphs 243–63. written circa (1903)

    Google Scholar 

  74. Petre, M.: Why looking isn’t always seeing: readership skills and graphical programming. Comms. ACM. 38(6), 33–44 (1995)

    Article  Google Scholar 

  75. Rao, A.S., Georgeff, M.P.: BDI agents: from theory to practice. Technical Note 56, Australian Artificial Intelligence Institute (1995)

    Google Scholar 

  76. Rumbaugh, J.: Notation notes: principles for choosing notation. J. Object Oriented. Prog. 9(2), 11–14 (1996)

    Google Scholar 

  77. Saeki, M., Kaiya, H.: On relationships among models, meta models and ontologies. In: Gray, J., Tolvanen, J.-P., Sprinkle, J. (eds.) Proceedings of the 6th OOPSLA Workshop on Domain-Specific Modeling. Computer Science and Information System Reports, Technical Reports, TR-37. University of Jyväskylä, Jyväskylä (2007)

    Google Scholar 

  78. Sánchez Cuadrado, J., Garcıa Molina, J.: A model-based approach to families of embedded domain specific languages. IEEE. Trans. Softw. Eng. 99, 825–840 (2009)

    Article  Google Scholar 

  79. Schrepfer, M., Wolf, J., Mendling, J., Reijers, H.A.: The impact of secondary notation on process model understanding. In: Persson, A., Stirna, J. (eds.) The Practice of Enterprise Modeling (Second IFIP WG 8.1 Working Conference, PoEM 2009, Stockholm, Sweden, 18–19 November, 2009, Proceedings), pp. 161–175. Springer, Berlin (2009)

    Google Scholar 

  80. Searle, J.R.: Speech Acts. An Essay in the Philosophy of Language. Cambridge University Press, Cambridge (1969)

    Book  Google Scholar 

  81. Seidewitz, E.: What models mean. IEEE. Softw. 20, 26–31 (2003)

    Article  Google Scholar 

  82. Siau, K.: Informational and computational equivalence in comparing informational modelling methods. J. Database. Manag. 15(1), 73–86 (2004)

    Article  Google Scholar 

  83. Silva Parreiras, F., Staab, S., Winter, A.: On marrying ontological and metamodeling technical spaces. In: Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering, Dubrovnik, 3–7 September 2007, pp. 439–448. ACM (2007)

    Google Scholar 

  84. Sousa, K., Vanderdonckt, J., Henderson-Sellers, B., Gonzalez-Perez, C.: Evaluating a graphical notation for modelling software development methodologies. J. Vis. Lang. Comput. 23(4), 195–212 (2012)

    Article  Google Scholar 

  85. Treisman, A.: Perception grouping and attention in visual search for features and for objects. J. Exp. Psychol. Hum. Percept. Perform. 8(2), 194–214 (1982)

    Article  Google Scholar 

  86. Vessey, I.: Cognitive fit: a theory-based analysis of the graphs versus tables literature. Decis. Sci. 22, 219–240 (1991)

    Article  Google Scholar 

  87. Walter, T., Silva Parreiras, F., Staab, S.: OntoDSL: an ontology-based framework for domainspecific languages. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 408–422. Springer, Berlin (2009)

    Google Scholar 

  88. Ward, C.B., Henderson-Sellers, B.: Utilizing dynamic roles for agents. J. Obj. Technol. 8(5), 116–130 (2009)

    Google Scholar 

  89. Winikoff, M., Padgham, L., Harland, J.: Simplifying the development of intelligent agents. In: Proceedings of the 14th Australian Joint Conference on Artificial Intelligence (AI'01), Adelaide, 10–14 December (2001)

    Google Scholar 

  90. Yu, E.S-K.: Modelling strategic relationships for process reengineering. PhD Thesis, University of Toronto (1995)

    Google Scholar 

Download references

Acknowledgements

We wish to thank Mats Lind and Haris Mouratidis for their comments on the FAML notation. BH-S also wishes to acknowledge the support of the Australian Research Council through grant DP0878172. This is contribution 12/01 of the Centre for Object Technology Applications and Research within the Human Centred Technology Design centre at the University of Technology, Sydney.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Brian Henderson-Sellers .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Henderson-Sellers, B., Gonzalez-Perez, C. (2013). Multi-Level Meta-Modelling to Underpin the Abstract and Concrete Syntax for Domain-Specific Modelling Languages. In: Reinhartz-Berger, I., Sturm, A., Clark, T., Cohen, S., Bettin, J. (eds) Domain Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36654-3_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-36654-3_12

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-36653-6

  • Online ISBN: 978-3-642-36654-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics