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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 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.
Thus confounding the abstraction and representation links depicted in the “meaning triangle” (Fig. 7).
- 3.
We will not discuss here a third possible application between M3 and M2.
- 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.
References
Abadi, M., Cardelli, L.: A Theory of Objects. Springer, New York (1996)
Alagar, V.S., Periyasamy, K.: Specification of Software Systems. Springer, Berlin (1998)
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)
Atkinson, C.: Metamodelling for distributed object environments. In: First International Enterprise Distributed Object Computing Workshop (EDOC'97). Brisbane (1997)
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)
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)
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)
Atkinson, C., Kühne, T., Henderson-Sellers, B.: Systematic stereotype usage. Software. Syst. Model. 2(3), 153–163 (2003)
Atkinson, C., Gutheil, M., Kennel, B.: A flexible infrastructure for multilevel language engineering. IEEE Trans. Software. Eng. 35(6), 742–755 (2009)
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)
Bertin, J.: Semiology of Graphics: Diagrams, Networks, Maps. University of Wisconsin Press, Madison (1983)
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)
Bézivin, J.: In search of a basic principle for model-driven engineering. Upgrade V(2), 21–24 (2004)
Bézivin, J.: On the unification power of models. Softw. Syst. Model. 4, 171–188 (2005)
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)
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)
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)
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)
Constantine, L.L., Henderson-Sellers, B.: Notation matters: Part 1—framing the issues. Rep. Object. Anal. Des. 2(3), 25–29 (1995)
Constantine, L.L., Henderson-Sellers, B.: Notation matters: Part 2—applying the principles. Rep. Object. Anal. Des. 2(4), 20–23 (1995)
Denning, P.J., Dennis, J.B., Qualitz, J.E.: Machines, Languages, and Computation. Prentice-Hall, Englewood Cliffs (1978)
Eriksson, O., Henderson-Sellers, B., Ågerfalk, P.J.: Ontological and Linguistic Metamodelling Revisited—A Language Use Approach (2013, in press)
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
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)
Gargantini, A., Riccobene, E., Scandurra, P.: A semantic framework for metamodel-based languages. J. Automated. Softw. 16(3–4), 415–454 (2009)
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)
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)
Giunchiglia, F., Walsh, T.: A theory of abstraction. Artif. Intell. 57(2–3), 323–390 (1992)
Gonzalez-Perez, C., Henderson-Sellers, B.: A powertype-based metamodelling framework. Softw. Syst. Model. 5, 72–90 (2006)
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)
Gonzalez-Perez, C., Henderson-Sellers, B.: Modelling software development methodologies: a conceptual foundation. J. Syst. Software. 80(11), 1778–1796 (2007)
Gonzalez-Perez, C., Henderson-Sellers, B.: Metamodelling for Software Engineering. Wiley, Chichester (2008)
Greenfield, J., Short, K.: Software Factories. Wiley, Chichester (2004)
Guizzardi, G.: Ontological foundations for structural conceptual models, CTIT PhD Thesis Series, No. 05–74. Enschede, The Netherlands (2005)
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)
Harsu, M.: A survey on domain engineering. Report, Institute of Software Systems, Tampere University of Technology (2002)
Hay, D.C.: Data Model Patterns. Conventions of Thought. Dorset House Publishing Company, New York (1996)
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)
Henderson-Sellers, B.: On the Mathematics of Modelling, Metamodelling, Ontologies and Modelling Languages. SpringerBriefs in Computer Science. Springer, Heidelberg (2012)
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)
Henderson-Sellers, B., Unhelkar, B.: OPEN Modeling with UML. Addison-Wesley, London (2000)
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)
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)
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)
ISO/IEC.: Software engineering—metamodel for software development. ISO/IEC 24744, Geneva (2007)
ISO/IEC.: 24744 Software engineering—metamodel for development methodologies annex A—notation. International Organization for Standardization/International Electrotechnical Commission, Geneva (2010)
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)
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)
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)
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)
Kelly, S., Pohjonen, R.: Worst practices for domain-specific modelling. IEEE. Softw. 26, 22–29 (2009)
Kleppe, A.: A language description is more than a metamodel. Paper Presented at ATEM2007 (part of MoDELS2007), IEEE Online Publication (2007)
Kühne, T.: What is a model? Dagstuhl Seminar Proceedings 04101. http://drops.dagstuhl.de/opus/volltexte/2005/23 (2005)
Kühne, T.: Matters of (meta-)modeling. Softw. Syst. Model. 5, 369–385 (2006)
Kühne, T.: Clarifying matters of (meta-)modeling: an author’s reply. Softw. Syst. Model. 5, 395–401 (2006)
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)
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)
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)
Larkin, J.H., Simon, H.A.: Why a diagram is (sometimes) worth ten thousand words. Cogn. Sci. 11(1), 65–100 (1987)
Ludewig, J.: Models in software engineering—an introduction. Softw. Syst. Model. 2, 5–14 (2003)
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)
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)
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)
Nordbotten, J.C., Crosby, M.E.: The effect of graphic style on data model interpretation. Inf. Syst. J. 9(2), 139–156 (1999)
Odell, J.J.: Power types. J. Object-Oriented. Prog. 7(2), 8–12 (1994)
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)
Odell, J.J., Parunak, H.V.D., Fleischer, M.: Modeling agent organizations using roles. Softw. Syst. Model. 2, 76–81 (2003)
Ogden, C.K., Richards, I.A.: The Meaning of Meaning. Harcourt. Brace and World, New York (1923)
OMG.: Software & Systems Process Engineering Meta-Model Specification Version 2.0, formal/2008-04-01 (2008)
OMG.: OMG Unified Modeling LanguageTM (OMG UML), Superstructure. Version 2.4.1. formal/2011-08-06 (2011)
Opdahl, A., Henderson-Sellers, B.: Ontological evaluation of the UML using the Bunge-Wand-Weber model. Softw. Syst. Model. 1(1), 43–67 (2002)
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)
Peirce, C.S.: Collected Papers v. 2, paragraphs 243–63. written circa (1903)
Petre, M.: Why looking isn’t always seeing: readership skills and graphical programming. Comms. ACM. 38(6), 33–44 (1995)
Rao, A.S., Georgeff, M.P.: BDI agents: from theory to practice. Technical Note 56, Australian Artificial Intelligence Institute (1995)
Rumbaugh, J.: Notation notes: principles for choosing notation. J. Object Oriented. Prog. 9(2), 11–14 (1996)
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)
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)
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)
Searle, J.R.: Speech Acts. An Essay in the Philosophy of Language. Cambridge University Press, Cambridge (1969)
Seidewitz, E.: What models mean. IEEE. Softw. 20, 26–31 (2003)
Siau, K.: Informational and computational equivalence in comparing informational modelling methods. J. Database. Manag. 15(1), 73–86 (2004)
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)
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)
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)
Vessey, I.: Cognitive fit: a theory-based analysis of the graphs versus tables literature. Decis. Sci. 22, 219–240 (1991)
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)
Ward, C.B., Henderson-Sellers, B.: Utilizing dynamic roles for agents. J. Obj. Technol. 8(5), 116–130 (2009)
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)
Yu, E.S-K.: Modelling strategic relationships for process reengineering. PhD Thesis, University of Toronto (1995)
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
Corresponding author
Editor information
Editors and Affiliations
Rights 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)