Skip to main content

Abstracting Models from Execution Traces for Performing Formal Verification

  • Conference paper
Book cover Advances in Software Engineering (ASEA 2009)

Abstract

Because of its complexity, software system verification is a hard task and very often neglected for complex distributed component-based architectures with high degree of dynamism. Monitoring and verification of these systems are important even when they have to be running with a high level of availability and low halt time. Model checking is an automatic technique to verify compliance of the system implementation with respect to the requirements. In this paper we address the problem of abstracting a process model from a set of execution traces of a Java application with the aim of performing formal verification through model checking.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Barbuti, R., De Francesco, N., Santone, A., Vaglini, G.: Selective mu-calculus and Formula-Based Abstractions of Transition Systems. Journal of Computer and System Sciences 59(3), 537–556 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  2. Bodhuin, T., Tortorella, M.: A Tool for static and dynamic Model extraction and Impact Analysis. In: Proc. of CSMR 2005, 9th European Conference on Software Maintenance and Reengineering, Manchester, UK, March 21-23 (2005)

    Google Scholar 

  3. Bodhuin, T., Di Penta, M., Troiano, L.: A Search-Based Approach for Dynamically Re-packaging of Downloadable Applications. In: IBM Centers for Advanced Studies Conference - CASCON 2007, Toronto, Canada, October 22 - 25 (2007)

    Google Scholar 

  4. Bodhuin, T., Pagnozzi, F., Santone, A., Tortorella, M., Villani, M.L.: Abstracting Models from Execution Traces for Performing Formal Verification. Technical Report

    Google Scholar 

  5. Burstall, R.M., Darlington, J.: A Transformation System for Developing Recursive Programs. J. ACM 24(1), 44–67 (1977)

    Article  MATH  MathSciNet  Google Scholar 

  6. Canfora, G., Di Penta, M.: New Frontiers of Reverse Engineering. In: Proc. of FOSE 2007, Future of Software Engineering, pp. 326–341. IEEE, Los Alamitos (2007)

    Chapter  Google Scholar 

  7. Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT press, Cambridge (2000)

    Google Scholar 

  8. Cook, J.E., Wolf, A.L.: Discovering models of software processes from event-based data. ACM Trans. Softw. Eng. Methodol. 7(3), 215–249 (1998)

    Article  Google Scholar 

  9. De Francesco, N., Santone, A.: A Transformation System for Concurrent Processes. Acta informatica 35(12), 1037–1073 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  10. Dmiuiev, M.: Selective Profiling of Java Applications Using Dynamic Bytecode Instrumentation. IEEE, Los Alamitos (2004)

    Google Scholar 

  11. Duarte, L.M., Kramer, J., Uchitel, S.: Towards Faithful Model Extraction Based on Contexts. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 101–115. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  12. Epifani, I., Ghezzi, C., Mirandola, R.: Model Evolution by Runtime Adaptation. In: Proc. of ICSE 2009, 31st International Conference on Software Engineering, pp. 111–121. IEEE, Los Alamitos (2009)

    Google Scholar 

  13. Greco, G., Guzzo, A., Manco, G., Saccà, D.: Mining unconnected patterns in workflows. Inf. Syst. 32(5), 685–712 (2007)

    Article  Google Scholar 

  14. Hollingsworth, J.K., Miller, B.P., Gonalves, M.J.R., Naim, O., Xu, Z., Zheng, Z.L.: MDL: A language and compiler for dynamic program instrumentation. In: Proc. of the 1997 International Conference on Parallel Architectures and Compilation Techniques (November 1997)

    Google Scholar 

  15. Jansen-Vullers, M.H., van der Aalst, W.M.P., Rosemann, M.: Mining configurable enterprise information systems. Data Knowl. Eng. 56(3), 195–244 (2006)

    Article  Google Scholar 

  16. Java Instrumentation API, http://tinyurl.com/3htevy

  17. Lindholm, T., Yellin, F.: The Java Virtual Machine Specification. Addison-Wesley, Reading (1999)

    Google Scholar 

  18. Milner, R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)

    MATH  Google Scholar 

  19. Panzer, J.: Automatic Code Instrumentation. C/C++ Users Journal (1999)

    Google Scholar 

  20. Papp, R.: Introduction to Strategic Alignment. In: Papp, R. (ed.) Strategic Information Technology: Opportunities for Competitive Advantage, pp. 1–24. Idea Group, Hershey (2001)

    Google Scholar 

  21. Pettorossi, A., Proietti, M.: Transformation of Logic Programs: Foundations and Techniques. J. Logic Programming 19(20), 261–320 (1994)

    Article  MathSciNet  Google Scholar 

  22. Stirling, C.: An Introduction to Modal and Temporal Logics for CCS. In: Boissonnat, J.-D., Laumond, J.-P. (eds.) Concurrency: Theory, Language, and Architecture. LNCS, vol. 391, Springer, Heidelberg (1989)

    Google Scholar 

  23. van der Aalst, W.M.P., Rubin, V., Van Dongen, B.F., Kindler, E., Gunther, C.W.: Process Mining: A Two-Step Approach using Transition Systems and Regions. In: BPM Center Report BPM-06-30 (2006), http://is.tm.tue.nl/staff/wvdaalst/publications/p359.pdf

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bodhuin, T., Pagnozzi, F., Santone, A., Tortorella, M., Villani, M.L. (2009). Abstracting Models from Execution Traces for Performing Formal Verification. In: Ślęzak, D., Kim, Th., Kiumi, A., Jiang, T., Verner, J., Abrahão, S. (eds) Advances in Software Engineering. ASEA 2009. Communications in Computer and Information Science, vol 59. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10619-4_18

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-10619-4_18

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-10618-7

  • Online ISBN: 978-3-642-10619-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics