Skip to main content

Toward an Execution Trace Standard: An MDE Approach

  • Conference paper
  • First Online:
Computer Science – CACIC 2022 (CACIC 2022)

Abstract

Dynamic analysis extracts information that describes the structure of the runtime behavior of a software system. This information, typically represented in the form of execution traces, is useful in many software modernization activities, such as reverse engineering and program analysis. The Architecture-Driven Modernization initiative has defined standards to support the modernization process in the context of Model-Driven Engineering (MDE). However, to date, there is no standard for representing runtime information that allows the specification of dynamic information independent of any programming language. In light of this, we present TRACEM, a metamodel for representing trace information under a standard representation that would allow traces to become a new domain in software engineering. The purpose of defining TRACEM is to complement an MDE framework for software modernization that aims to integrate static and dynamic analysis techniques during the reverse engineering process. This article contains a description of TRACEM and a case study that illustrates how dynamic information combined with static information allows for improving the whole reverse engineering process.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

References

  1. Brambilla, M., Cabot, J., Wimmer, M.: Model-Driven Software Engineering in Practice. 2nd edn. Morgan & Claypool Publishers (2017)

    Google Scholar 

  2. Architecture-Driven Modernization (ADM), http://www.omg.org/adm, Accessed 2023 Feb 14

  3. Knowledge Discovery Metamodel (KDM), Version 1.4, OMG Document Number: formal/2016–09–01, http://www.omg.org/spec/KDM/1.4 (2016)

  4. Abstract Syntax Tree Metamodel (ASTM), Version 1.0, OMG Document Number: formal/2011–01–05. Standard document URL: http://www.omg.org/spec/ASTM (2011)

  5. Model-Driven Architecture (MDA), http://www.omg.org/mda/, Accessed 2023 Feb 14

  6. OMG Meta Object Facility (MOF) Core Specification, Version 2.5.1, OMG Document Number: formal/2019–10–01. https://www.omg.org/spec/MOF/2.5.1 (2019)

  7. OMG Unified Modeling Language (OMG UML), Version 2.5.1, OMG Document Number: formal/2017–12–05. http://www.omg.org/spec/UML/2.5.1 (2017)

  8. Favre, L., Martinez, L., Pereira, C.: Reverse engineering of object-oriented code: an ADM approach. In: Handbook of Research on Innovations in Systems and Software Engineering, pp. 386–410. IGI Global (2015)

    Google Scholar 

  9. Martinez, L., Pereira, C., Favre, L.: Recovering sequence diagrams from object-oriented Code - an ADM approach. In: Proceedings of the 9th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE 2014), pp. 188–195 (2014)

    Google Scholar 

  10. Pereira, C., Martinez, L., Favre, L.: Recovering Use Case Diagrams from Object-Oriented Code: an MDA-based Approach. Int. J. Softw. Eng. (IJSE), 5 (2), 3–23 (2012)

    Google Scholar 

  11. Pereira, C., Martinez, L., Favre, L.: TRACEM - Towards a standard metamodel for execution traces in model-driven reverse engineering. In: Libro de Actas del XXVIII Congreso Argentino de Ciencia de la Computación (CACIC 2022), pp. 272–281 (2023)

    Google Scholar 

  12. Object Constraint Language (OCL), Version 2.4, OMG Document Number: formal/2014–02–03, Standard document (2014) http://www.omg.org/spec/OCL/2.4

  13. XML Metadata Interchange (XMI) Specification, Version 2.5.1, OMG Document Number: formal/2015–06–07, Standard document (2015) http://www.omg.org/spec/XMI/2.5.1

  14. Query/View/Transformation Specification (QVT), Version 1.3, OMG Document Number: formal/2016–06–03, Standard document (2016) http://www.omg.org/spec/QVT/1.3

  15. Ernst, M.: Static and dynamic analysis: synergy and duality. In: Proceedings of ICSE Workshop on Dynamic Analysis (WODA 2003), pp. 24–27 (2003)

    Google Scholar 

  16. Eclipse Modeling Framework (EMF), http://www.eclipse.org/modeling/emf, Accessed 2023 Feb 14

  17. Tonella, P., Potrich, A.: Reverse Engineering of Object-Oriented Code. Monographs in Computer Science. Heidelberg: Springer-Verlag (2005) https://doi.org/10.1007/b102522

  18. Systa, T.: Static and Dynamic Reverse Engineering Techniques for Java Software Systems. Ph.D Thesis, University of Tampere, Report A-2000–4 (2000)

    Google Scholar 

  19. Bergmayr, A., Bruneliere, H., Cabot, J., Garcia, J., Mayerhofer, T., Wimmer, M. fREX: fUML-based reverse engineering of executable behavior for software dynamic analysis. In:IEEE/ACM 8th International Workshop on Modeling in Software Engineering (MiSE), Austin, TX, pp. 20–26 (2016)

    Google Scholar 

  20. Béziers la Fosse, T., Tisi, M., Mottu, J.-M.: Injecting Execution Traces into a Model-Driven Framework for Program Analysis. In: Seidl, M., Zschaler, S. (eds.) STAF 2017. LNCS, vol. 10748, pp. 3–13. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-74730-9_1

    Chapter  Google Scholar 

  21. MoDisco, https://www.eclipse.org/MoDisco, Accessed 2023 Feb 14

  22. Hamou-Lhadj, A., Lethbridge, T.C.: A metamodel for the compact but lossless exchange of execution traces. Softw. Syst. Model. 11, 77–98 (2012)

    Article  Google Scholar 

  23. Sailer, A.: Reverse Engineering of Real-Time System Models from Event Trace Recordings. University of Bamberg Press (2019)

    Google Scholar 

  24. Alawneh L., Hamou-Lhadj A., Hassine J.: Towards a common metamodel for traces of high performance computing systems to enable software analysis tasks. In: IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER 2015), pp. 111–120 (2015)

    Google Scholar 

  25. Beziers La Fosse, T.: Model-driven methods for dynamic analysis applied to energy-aware software engineering. Software Engineering [cs.SE]. Ecole nationale supérieure Mines-Télécom Atlantique (2021)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Claudia Pereira .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Pereira, C., Martinez, L., Favre, L. (2023). Toward an Execution Trace Standard: An MDE Approach. In: Pesado, P. (eds) Computer Science – CACIC 2022. CACIC 2022. Communications in Computer and Information Science, vol 1778. Springer, Cham. https://doi.org/10.1007/978-3-031-34147-2_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-34147-2_7

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-34146-5

  • Online ISBN: 978-3-031-34147-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics