Software & Systems Modeling

, Volume 13, Issue 1, pp 209–238 | Cite as

Domain-specific discrete event modelling and simulation using graph transformation

  • Juan de Lara
  • Esther Guerra
  • Artur Boronat
  • Reiko Heckel
  • Paolo Torrini
Theme Section Paper


Graph transformation is being increasingly used to express the semantics of domain-specific visual languages since its graphical nature makes rules intuitive. However, many application domains require an explicit handling of time to accurately represent the behaviour of a real system and to obtain useful simulation metrics to measure throughputs, utilization times and average delays. Inspired by the vast knowledge and experience accumulated by the discrete event simulation community, we propose a novel way of adding explicit time to graph transformation rules. In particular, we take the event scheduling discrete simulation world view and provide rules with the ability to schedule the occurrence of other rules in the future. Hence, our work combines standard, efficient techniques for discrete event simulation (based on the handling of a future event set) and the intuitive, visual nature of graph transformation. Moreover, we show how our formalism can be used to give semantics to other timed approaches and provide an implementation on top of the rewriting logic system Maude.


Graph transformation Discrete event simulation Domain-specific modelling 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
  2. 2.
    Balasubramanian, D., Narayanan, A., van Buskirk, C., Karsai, G.: The graph rewriting and transformation language: GReAT. ECEASST, 1, 2006.
  3. 3.
    Bohl M., Rynn M.: Tools for Structured and Object-Oriented Design, 7th edn. Prentice Hall, Upper Saddle River (2007)Google Scholar
  4. 4.
    Boronat, A., Heckel, R., Meseguer, J.: Rewriting logic semantics and verification of model transformations. In: FASE’09. LNCS, vol. 5503, pp. 18–33. Springer, Berlin (2009)Google Scholar
  5. 5.
    Boronat A., Meseguer J.: An algebraic semantics for MOF. Formal Asp. Comput. 22, 269–296 (2010)CrossRefzbMATHGoogle Scholar
  6. 6.
    Boronat, A., Ölveczky, P.C.: Formal real-time model transformations in MOMENT2. In: FASE’10. LNCS, vol. 6013, pp. 29–43. Springer, Berlin (2010)Google Scholar
  7. 7.
    Cassandras C.G., Lafortune S.: Introduction to Discrete Event Systems, 2nd edn. Springer, Berlin (2008)CrossRefzbMATHGoogle Scholar
  8. 8.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.L. (eds.): All about Maude—a high-performance logical framework, how to specify, program and verify systems in rewriting logic. LNCS, vol. 4350. Springer, Berlin (2007).
  9. 9.
    de Lara J.: Meta-modelling and graph transformation for the simulation of systems. Bull. EATCS 81, 180–194 (2003)Google Scholar
  10. 10.
    de Lara J., Bardohl R., Ehrig H., Ehrig K., Prange U., Taentzer G.: Attributed graph transformation with node type inheritance. Theor. Comput. Sci. 376(3), 139–163 (2007)CrossRefzbMATHGoogle Scholar
  11. 11.
    de Lara, J., Guerra, E., Boronat, A., Heckel, R., Torrini, P.: Graph transformation for domain-specific discrete event time simulation. In: ICGT’10. LNCS, vol. 6372, pp. 266–281. Springer, Berlin (2010)Google Scholar
  12. 12.
    de Lara J., Vangheluwe H.: Automating the transformation-based analysis of visual languages. Formal Asp. Comput. 22(3–4), 297–326 (2010)CrossRefzbMATHGoogle Scholar
  13. 13.
    Eckardt, T., Heinzemann, C., Henkler, S., Hirsch, M., Priesterjahn, C., Schäfer, W.: Modeling and verifying dynamic communication structures based on graph transformations. Comput. Sci. Res. Dev. (2011, in press)Google Scholar
  14. 14.
    Edwards S.A., Lee E.A.: The semantics and execution of a synchronous block-diagram language. Sci. Comput. Program. 48(1), 21–42 (2003)CrossRefzbMATHMathSciNetGoogle Scholar
  15. 15.
    Ehrig H., Ehrig K., Prange U., Taentzer G.: Fundamentals of Algebraic Graph Transformation. Springer, Berlin (2006)zbMATHGoogle Scholar
  16. 16.
    Eker J., Janneck J., Lee E., Liu J., Liu X., Ludvig J., Neuendorffer S., Sachs S., Xiong Y.: Taming heterogeneity—the ptolemy approach. Proc. IEEE 91(1), 127–144 (2003)CrossRefGoogle Scholar
  17. 17.
    Ermel, C., Biermann, E., Schmidt, J., Warning, A.: Visual modeling of controlled emf model transformation using henshin. ECEASST, 32 (2010)Google Scholar
  18. 18.
  19. 19.
    Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: A new graph rewrite language based on the unified modeling language and java. In: TAGT. LNCS, vol. 1764, pp. 296–309. Springer, Berlin (2000).
  20. 20.
    Fishman G.S.: Discrete-Event Simulation: Modeling, Programming, and Analysis. Springer, Berlin (2001)CrossRefGoogle Scholar
  21. 21.
    Gönczy L., Kovács M., Varró D.: Modeling and verification of reliable messaging by graph transformation systems. ENTCS 175(4), 37–50 (2007)Google Scholar
  22. 22.
    Gyapay S., Varró D., Heckel R.: Graph transformation with time. Fundam. Inf. 58(1), 1–22 (2003)zbMATHGoogle Scholar
  23. 23.
    Heckel R., Lajios G., Menge S.: Stochastic graph transformation systems. Fundam. Inf. 74(1), 63–84 (2006)zbMATHMathSciNetGoogle Scholar
  24. 24.
    Kelly S., Tolvanen J.-P.: Domain-Specific Modeling. Enabling Full Code Generation. Wiley-IEEE CS, New York (2008)CrossRefGoogle Scholar
  25. 25.
    Lambers, L., Ehrig, H., Orejas, F.: Conflict detection for graph transformation with negative application conditions. In: ICGT’06. LNCS, vol. 4178, pp. 61–76. Springer, Berlin (2006)Google Scholar
  26. 26.
    Lee, E.A., Zheng, H.: Leveraging synchronous language principles for heterogeneous modeling and design of embedded systems. In: EMSOFT, pp. 114–123. ACM, New York (2007)Google Scholar
  27. 27.
    Lengyel, L., Levendovszky, T., Mezei, G., Charaf, H.: A visual control flow language for model transformation systems. In: IASTED Conf. on Software Engineering, pp. 194–199. IASTED/ACTA Press (2006).
  28. 28.
    Marsan M.A., Balbo G., Conte G., Donatelli S., Franceschinis G.: Modelling with Generalized Stochastic Petri Nets. Wiley, New York (1995)zbMATHGoogle Scholar
  29. 29.
    Mathaikutty D.A., Patel H.D., Shukla S.K., Jantsch A.: SML-Sys: a functional framework with multiple models of computation for modeling heterogeneous system. Des. Autom. Embed. Syst. 12, 1–30 (2008)CrossRefGoogle Scholar
  30. 30.
    Naeem, M., Heckel, R., Orejas, F., Hermann, F.: Incremental service composition based on partial matching of visual contracts. In: FASE’10. LNCS, vol. 6013, pp. 123–138. Springer, Berlin (2010)Google Scholar
  31. 31.
    Nance R.E.: A history of discrete event simulation programming languages. SIGPLAN Not. 28, 149–175 (1993)CrossRefGoogle Scholar
  32. 32.
  33. 33.
    Pegden, C.D.: SIMIO: a new simulation system based on intelligent objects. In: Winter Simulation Conference, pp. 2293–2300 (2007).
  34. 34.
    Pegden, C.D., Davis, D.A.: Arena: a SIMAN/cinema-based hierarchical modeling system. In: Winter Simulation Conference, pp. 390–399 (1992).
  35. 35.
    Repenning, A., Ioannidou, A., Zola, J.: AgentSheets: end-user programmable simulations. J. Artif. Soc. Soc. Simul. 3(3) (2000).
  36. 36.
    Rivera, J.E., Durán, F., Vallecillo, A.: A graphical approach for modeling time-dependent behavior of DSLs. In: VL/HCC’09, pp. 51–55. IEEE (2009)Google Scholar
  37. 37.
    Rivera, J.E., Durán, F., Vallecillo, A.: On the behavioral semantics of real-time domain specific visual languages. In: WRLA. LNCS, vol. 6381, pp. 174–190. Springer, Berlin (2010)Google Scholar
  38. 38.
    Rivera, J.E., Guerra, E., de Lara, J., Vallecillo, A.: Analyzing rule-based behavioral semantics of visual modeling languages with Maude. In: SLE’09. LNCS, vol. 5452, pp. 54–73. Springer, Berlin (2009)Google Scholar
  39. 39.
    Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformations. Foundations, vol. 1. World Scientific, Singapore (1997)Google Scholar
  40. 40.
    Schriber T.J.: Simulation Using GPSS. Wiley, New York (1974)zbMATHGoogle Scholar
  41. 41.
    Schriber, T.J., Brunner, D.T.: Inside discrete-event simulation software: how it works and why it matters. In: Winter Simulation Conference, pp. 151–165 (2010)Google Scholar
  42. 42.
    Schruben L.: Simulation modeling with event graphs. Commun. ACM 26(11), 957–963 (1983)CrossRefGoogle Scholar
  43. 43.
    Strobl, T., Minas, M.: Specifying and generating editing environments for interactive animated visual models. ECEASST, 29 (2010)Google Scholar
  44. 44.
    Syriani, E., Vangheluwe, H.: Programmed graph rewriting with DEVS. In: AGTIVE’07. LNCS, vol. 5088, pp. 136–151. Springer, Berlin (2008)Google Scholar
  45. 45.
    Torrini, P., Heckel, R., Ráth, I., Bergmann, G.: Stochastic graph transformation with regions. ECEASST, 29 (2010)Google Scholar
  46. 46.
    Vaucher J.G., Duval P.: A comparison of simulation event list algorithms. Commun. ACM 18, 223–230 (1975)CrossRefzbMATHGoogle Scholar
  47. 47.
    Zeigler B.P., Praehofer H., Kim T.G.: Theory of Modeling and Simulation, 2nd edn. Academic Press, New York (2000)Google Scholar

Copyright information

© Springer-Verlag 2012

Authors and Affiliations

  • Juan de Lara
    • 1
  • Esther Guerra
    • 1
  • Artur Boronat
    • 2
  • Reiko Heckel
    • 2
  • Paolo Torrini
    • 2
  1. 1.Universidad Autónoma de MadridMadridSpain
  2. 2.University of LeicesterLeicesterUK

Personalised recommendations