Advertisement

Trace Comprehension Operators for Executable DSLs

  • Dorian LeroyEmail author
  • Erwan Bousse
  • Anaël Megna
  • Benoit Combemale
  • Manuel Wimmer
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10890)

Abstract

Recent approaches contribute facilities to breathe life into metamodels, thus making behavioral models directly executable. Such facilities are particularly helpful to better utilize a model over the time dimension, e.g., for early validation and verification. However, when even a small change is made to the model, to the language definition (e.g., semantic variation points), or to the external stimuli of an execution scenario, it remains difficult for a designer to grasp the impact of such a change on the resulting execution trace. This prevents accessible trade-off analysis and design-space exploration on behavioral models. In this paper, we propose a set of formally defined operators for analyzing execution traces. The operators include dynamic trace filtering, trace comparison with diff computation and visualization, and graph-based view extraction to analyze cycles. The operators are applied and validated on a demonstrative example that highlight their usefulness for the comprehension specific aspects of the underlying traces.

Keywords

Model execution Domain-specific languages Executable DSL Execution trace Trace analysis 

Notes

Acknowledgments

This work was supported by: the Austrian Science Fund (FWF) P 28519-N31, the Austrian Federal Ministry for Digital and Economic Affairs and the National Foundation for Research, Technology and Development and the Safran/Inria/CNRS collaboration GLOSE.

References

  1. 1.
    Object Management Group: Semantics of a Foundational Subset for Executable UML Models, V 1.1, August 2013Google Scholar
  2. 2.
    Bendraou, R., Combemale, B., Crégut, X., Gervais, M.P.: Definition of an executable SPEM 2.0. In: Proceedings of the 14th Asia-Pacific Software Engineering Conference (APSEC 2007), pp. 390–397. IEEE (2007)Google Scholar
  3. 3.
    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: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) TAGT 1998. LNCS, vol. 1764, pp. 296–309. Springer, Heidelberg (2000).  https://doi.org/10.1007/978-3-540-46464-8_21CrossRefzbMATHGoogle Scholar
  4. 4.
    Harel, D., Lachover, H., Naamad, A., Pnuelli, A., Politi, M., Sherman, R., Shtull-trauring, A., Trakhtenbrot, M.: STATEMATE: a working environment for the development of complex reactive systems. IEEE Trans. Softw. Eng. 16(4), 403–414 (1990)CrossRefGoogle Scholar
  5. 5.
    OASIS: Web Services Business Process Execution Language Version 2.0 (2007)Google Scholar
  6. 6.
    Combemale, B., Crégut, X., Pantel, M.: A design pattern to build executable DSMLs and associated V&V tools. In: Proceedings of the 19th Asia-Pacific Software Engineering Conference (APSEC 2012), pp. 282–287 (2012)Google Scholar
  7. 7.
    Mayerhofer, T., Langer, P., Wimmer, M., Kappel, G.: xMOF: executable DSMLs based on fUML. In: Erwig, M., Paige, R.F., Van Wyk, E. (eds.) SLE 2013. LNCS, vol. 8225, pp. 56–75. Springer, Cham (2013).  https://doi.org/10.1007/978-3-319-02654-1_4CrossRefGoogle Scholar
  8. 8.
    Engels, G., Hausmann, J.H., Heckel, R., Sauer, S.: Dynamic meta modeling: a graphical approach to the operational semantics of behavioral diagrams in UML. In: Evans, A., Kent, S., Selic, B. (eds.) UML 2000. LNCS, vol. 1939, pp. 323–337. Springer, Heidelberg (2000).  https://doi.org/10.1007/3-540-40011-7_23CrossRefGoogle Scholar
  9. 9.
    Bandener, N., Soltenborn, C., Engels, G.: Extending DMM behavior specifications for visual execution and debugging. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 357–376. Springer, Heidelberg (2011).  https://doi.org/10.1007/978-3-642-19440-5_24CrossRefGoogle Scholar
  10. 10.
    Hegedüs, Á., Bergmann, G., Ráth, I., Varró, D.: Back-annotation of simulation traces with change-driven model transformations. In: Proceedings of the 8th International Conference on Software Engineering and Formal Methods (SEFM 2010), pp. 145–155. IEEE (2010)Google Scholar
  11. 11.
    Soden, M., Eichler, H.: Towards a model execution framework for Eclipse. In: Proceedings of the 1st Workshop on Behaviour Modelling in Model-Driven Architecture (BD-MDA 2009). ACM (2009)Google Scholar
  12. 12.
    Tatibouët, J., Cuccuru, A., Gérard, S., Terrier, F.: Formalizing execution semantics of UML profiles with fUML models. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds.) MODELS 2014. LNCS, vol. 8767, pp. 133–148. Springer, Cham (2014).  https://doi.org/10.1007/978-3-319-11653-2_9CrossRefGoogle Scholar
  13. 13.
    Bousse, E., Mayerhofer, T., Combemale, B., Baudry, B.: Advanced and efficient execution trace management for executable domain-specific modeling languages. Softw. Syst. Model., 1–37 (2017)Google Scholar
  14. 14.
    Object Management Group: Meta Object Facility (MOF) Core Specification, V 2.5, June 2016. http://www.omg.org/spec/MOF/2.5
  15. 15.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework. Eclipse Series, 2nd edn. Addison-Wesley Professional, Boston (2008)Google Scholar
  16. 16.
    Bousse, E., Corley, J., Combemale, B., Gray, J., Baudry, B.: Supporting efficient and advanced omniscient debugging for xDSMLs. In: Proceedings of the International Conference on Software Language Engineering (SLE 2015). ACM (2015)Google Scholar
  17. 17.
    Groote, J.F., Vaandrager, F.: An efficient algorithm for branching bisimulation and stuttering equivalence. In: Paterson, M.S. (ed.) ICALP 1990. LNCS, vol. 443, pp. 626–638. Springer, Heidelberg (1990).  https://doi.org/10.1007/BFb0032063CrossRefzbMATHGoogle Scholar
  18. 18.
    Levenshtein, V.I.: Binary codes capable of correcting deletions, insertions, and reversals. Sov. Phys. Dokl. 10, 707–710 (1966)MathSciNetzbMATHGoogle Scholar
  19. 19.
    Kehrer, T., Kelter, U., Taentzer, G.: A rule-based approach to the semantic lifting of model differences in the context of model versioning. In: Proceedings of the 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011), pp. 163–172 (2011)Google Scholar
  20. 20.
    Maoz, S., Ringert, J.O., Rumpe, B.: Cddiff: Semantic differencing for class diagrams. In: Proceedings of the 25th European Conference on Object-Oriented Programming (ECOOP 2011), pp. 230–254 (2011)Google Scholar
  21. 21.
    Maoz, S., Ringert, J.O., Rumpe, B.: ADDIFF: semantic differencing for activity diagrams. In: Proceedings of the SIGSOFT/FSE 2011 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE-19) and ESEC 2011: 13th European Software Engineering Conference (ESEC-13), pp. 179–189 (2011)Google Scholar
  22. 22.
    Langer, P., Mayerhofer, T., Kappel, G.: Semantic model differencing utilizing behavioral semantics specifications. In: Proceedings of the 17th International Conference on Model-Driven Engineering Languages and Systems (MODELS 2014), pp. 116–132 (2014)Google Scholar
  23. 23.
    Addazi, L., Cicchetti, A., Rocco, J.D., Ruscio, D.D., Iovino, L., Pierantonio, A.: Semantic-based model matching with emfcompare. In: Proceedings of the 10th Workshop on Models and Evolution (ME 2016), pp. 40–49 (2016)Google Scholar
  24. 24.
    Alimadadi, S., Mesbah, A., Pattabiraman, K.: Inferring hierarchical motifs from execution traces. (2018)Google Scholar
  25. 25.
    van der Aalst, W.M.P.: Process mining: making knowledge discovery process centric. SIGKDD Explor. 13(2), 45–49 (2011)CrossRefGoogle Scholar
  26. 26.
    van der Aalst, W.M.P.: Process Mining: Discovery, Conformance and Enhancement of Business Processes, 1st edn. Springer Publishing Company, Heidelberg (2011). IncorporatedCrossRefGoogle Scholar
  27. 27.
    Dumas, M., van der Aalst, W.M.P., ter Hofstede, A.H.M.: Process-Aware Information Systems: Bridging People and Software Through Process Technology. Wiley, Hoboken (2005)CrossRefGoogle Scholar
  28. 28.
    Bose, R.P.J.C., van der Aalst, W.M.P.: Process diagnostics using trace alignment: opportunities, issues, and challenges. Inf. Syst. 37(2), 117–141 (2012)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.JKU LinzLinzAustria
  2. 2.TU WienViennaAustria
  3. 3.University of Toulouse, CNRS IRITToulouseFrance
  4. 4.Safran SAParisFrance

Personalised recommendations