Abstract
This paper presents the combined use of meta-modelling and graph grammars for the generation of visual modelling tools for simulation formalisms. In meta-modelling, formalisms are described at a meta-level. This information is used by a meta-model processor to generate modelling tools for the described formalisms. We combine meta-modelling with graph grammars to extend the model manipulation capabilities of the generated modelling tools: edit, simulate, transform into another formalism, optimize and generate code. We store all (meta-)models as graphs, and thus, express model manipulations as graph grammars.
We present the design and implementation of these concepts in AToM3 (A_To_ol for M_ulti-formalism, M_eta-M_odelling). AToM3 supports modelling of complex systems using different formalisms, all meta-modelled in their own right. Models in different formalisms may be transformed into a single common formalism for further processing. These transformations are specified by graph grammars. Mosterman and Vangheluwe [18] introduced the term multi-paradigm modelling to denote the combination of multiple formalisms, multiple abstraction levels, and meta-modelling. As an example of multi-paradigm modelling we present a meta-model for the Object-Oriented Continuous Simulation Language OOCSMP, in which we combine ideas from UML class diagrams (to express the OOCSMP model structure), Causal Block Diagrams (CBDs), and Statecharts (to specify the methods of the OOCSMP classes). A graph grammar is able to generate OOCSMP code, and then a compiler for this language (C-OOL) generates Java applets for the simulation execution.
Similar content being viewed by others
References
Aho AV, Sethi R, Ullman JD (1986) Compilers, principles, techniques and tools. Chapter 6, Type Checking. Addison-Wesley
Alfonseca M, Pulido E, Orosco R, de Lara J (1997) OOCSMP: An Object-Oriented Simulation Language. In: Proceedings of the 9th European Simulation Symposium ESS97, SCS Int., Erlangen, Germany, pp. 44–48. See the OOCSMP home page at: http://www.ii.uam.es/∼jlara/investigacion/download/OOCSMP.html
AToM3 home page: http://atom3.cs.mcgill.ca
Bardohl R, Ermel C, Weinhold I (2002) AGG and GenGED: Graph Transformation-Based Specification and Analysis Techniques for Visual Languages. In: Proc. GraBaTs 2002. Electronic Notes in Theoretical Computer Science, vol 72(2)
Barros FJ, Zeigler BP, Fishwick PA (1998) Multimodels and dynamic structure models: an integration of DSDE/DEVS and OOPM. In: Proceedings of the 1998 Winter Simulation Conference, pp 413–419
Booch G, Rumbaugh J, Jacobson I (1999) The Unified Modeling Language User Guide. Addison Wesley
Davis II J, Hylands C, Kienhuis B, Lee EA, Liu J, Liu X, Muliadi L, Neuendorffer S, Tsay J, Vogel B, Xiong Y (2001) Heterogeneous Concurrent Modeling and Design in Java. Technical Memorandum UCB/ERL M01/12, EECS, University of California, Berkeley. See also: http://ptolomey.eecs.berkeley.edu/publications
de Lara J, Vangheluwe H (2002) AToM3: A Tool for Multi-Formalism Modelling and Meta-Modelling. In: European Conferences on Theory And Practice of Software Engineering ETAPS’02, Fundamental Approaches to Software Engineering (FASE). Lecture Notes in Computer Science, vol 2306. Springer-Verlag, pp 174–188
de Lara J, Vangheluwe H (2002) Computer Aided Multi-Paradigm Modelling to process Petri-Nets and Statecharts. In: 1st International Conference on Graph Transformations, ICGT’2002 (Barcelona). Lecture Notes in Computer Science, vol 2505, pp 239–253
de Lara J, Vangheluwe H, Alfonseca M (2002) Using Meta-Modelling and Graph Grammars to create Modelling Environments. In: Graph Transformations and Visual Modelling Techniques (GT-VMT) Workshop, Barcelona. Electronic Notes in Theoretical Computer Science, vol 72(3)
DOME guide (2000) http://www.htc.honeywell.com/dome/, Honeywell Technology Center. Honeywell, version 5.3
Elmqvist H, Mattson SE (1997) An Introduction to the Physical Modeling Language Modelica. In: Proceedings 9th European Simulation Sympossium ESS97, SCS Int., Erlangen, pp 110–114. See also http://www.modelica.org
Fishwick P, Zeigler BP (1992) A Multimodel Methodology for Qualitative Model Engineering. ACM Transactions on Modelling and Computer Simulation 1(2):52–81
Gray J, Bapty T, Neema S (2000) Aspectifying Constraints in Model-Integrated Computing. In: OOPSLA 2000: Workshop on Advanced Separation of Concerns, Minneapolis, MN, October, 2000
Harel D (1987) Statecharts: A Visual Formalism for Complex Systems. Science of Computer Programming 8:231–274
IBM Corp. (1972) Continuous System Modelling Program III (CSMP III) and Graphic Feature (CSMP III Graphic Feature) General Information Manual. IBM Canada, Ontario, GH19-7000
Minas M (2002) Specifying Graph-like diagrams with DIAGEN. Science of Computer Programming 44:157–180
Mosterman P, Vangheluwe H (2002) Computer Automated Multi-Paradigm Modeling. ACM Transactions on Modeling and Computer Simulation 12(4):1–7. Special Issue Guest Editorial
OMG Home Page: http://www.omg.org
Pereira Remelhe M, Engel S, Otter M, Derarade A, Mosterman P (2002) An Environment for Integrated Modelling of Systems with Complex Continuous and Discrete Dynamics. In: Lecture Notes in Control and Information Systems, vol 279, pp: 83–105
Python home page: http://www.python.org
Rozenberg G (ed) (1999) Handbook of Graph Grammars and Computing by Graph Transformation. Vol. 1. World Scientific
Taentzer G (1996) Parallel and Distributed Graph Transformation. Formal Description and Application to Communication-Based Systems. PhD Dissertation, Shaker Verlag
Vangheluwe H (2000) DEVS as a common denominator for multi-formalism hybrid systems modelling. In: Varga A (ed) IEEE International Symposium on Computer-Aided Control System Design. IEEE Computer Society Press, Anchorage, Alaska, pp 129–134
Vangheluwe H, de Lara J, Mosterman P (2002) An Introduction to Multi-Paradigm Modelling and Simulation. In: Proceedings of AI, Simulation and Planning – AIS’2002. Lisbon. SCS International, pp: 9–20
Zeigler BP, Praehofer H, Kim TG (2000) Theory of modelling and simulation: Integrating discrete event and continuous complex dynamic systems, second ed. Academic Press
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
de Lara, J., Vangheluwe, H. & Alfonseca, M. Meta-modelling and graph grammars for multi-paradigm modelling in AToM3. Softw Syst Model 3, 194–209 (2004). https://doi.org/10.1007/s10270-003-0047-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-003-0047-5