MADES: A Tool Chain for Automated Verification of UML Models of Embedded Systems

  • Alek Radjenovic
  • Nicholas Matragkas
  • Richard F. Paige
  • Matteo Rossi
  • Alfredo Motta
  • Luciano Baresi
  • Dimitrios S. Kolovos
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7349)


The benefits of Model Driven Development may be achieved through exploitation of its potential for automation. Automated model verification is one of the most important examples of this. The usage of automated model verification in everyday software engineering practice is far from widespread. One of the reasons for this is that model designers do not have the necessary background in mathematical methods. An approach where model designers can remain working in their domain while the verification is performed on demand, automatically and transparently, is desirable. We present one such approach using a tool chain built atop mature, popular and widespread technologies. Our approach was verified on industrial experiments from the embedded systems domain in the fields of avionics and surveillance.


Model Check Model Transformation Sequence Diagram Object Constraint Language Java Code 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Audsley, N.C., Gray, I., Indrusiak, L.S., Kolovos, D., Matragkas, N., Paige, R.: Model-based development of embedded systems - the MADES approach. In: 2nd Workshop on Model Based Engineering for Embedded Systems Design (MBED 2011), pp. 1–4 (2011)Google Scholar
  2. 2.
    Bagnato, A., Sadovykh, A., Paige, R.F., Kolovos, D.S., Baresi, L., Morzenti, A., Rossi, M.: MADES: Embedded Systems Engineering Approach in the Avionics Domain. In: 1st Workshop on Hands-on Platforms and Tools for Model-Based Engineering of Embedded Systems (HoPES 2010), p. 5 (2010)Google Scholar
  3. 3.
    Baresi, L., Morzenti, A., Motta, A., Rossi, M.: Towards the UML-Based Formal Verification of Timed Systems. In: Aichernig, B.K., de Boer, F.S., Bonsangue, M.M. (eds.) FMCO 2010. LNCS, vol. 6957, pp. 267–286. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  4. 4.
    Bernardi, S., Donatelli, S., Merseguer, J.: From UML Sequence Diagrams and Statecharts to analysable Petri Net models. In: 3rd International Workshop on Software and Performance, pp. 35–45 (2002)Google Scholar
  5. 5.
    Brucker, A.D., Wolff, B.: HOL-OCL: A Formal Proof Environment for uml/ocl. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 97–100. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  6. 6.
    Cabot, J., Clariso, R.: UML/OCL Verification In Practice. In: ChaMDE Workshop (MODELS 2008), pp. 31–35 (2008)Google Scholar
  7. 7.
    Cabot, J., Clariso, R., Riera, D.: UMLtoCSP: A Tool for the Formal Verification of UML/OCL Models Using Constraint Programming. In: 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE 2007), pp. 547–548. ACM, New York (2007)Google Scholar
  8. 8.
    Cabot, J., Clariso, R., Riera, D.: Verification of UML/OCL Class Diagrams using Constraint Programming. In: IEEE International Conference on Software Testing Verification and Validation Workshop (ICSTW 2008), IEEE (2008)Google Scholar
  9. 9.
    Clarke, E.M., Emerson, A.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: Workshop on Logics of Programs, Springer, Heidelberg (1981)Google Scholar
  10. 10.
    Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Systems Journal 45(3), 621–645 (2006)CrossRefGoogle Scholar
  11. 11.
    The Eclipse Foundation. Eclipse Modeling Framework (EMF) (2012),
  12. 12.
    Gogolla, M., Kuhlmann, M., Hamann, L.: Consistency, Independence and Consequences in UML and OCL Models. In: Dubois, C. (ed.) TAP 2009. LNCS, vol. 5668, pp. 90–104. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  13. 13.
    Holzmann, G.J., Joshi, R.: Model-Driven Software Verification. In: Graf, S., Mounier, L. (eds.) SPIN 2004. LNCS, vol. 2989, pp. 76–91. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  14. 14.
    Jones, C., O’Hearn, P., Woodcock, J.: Verified software: a grand challenge. Computer 39(4), 93–95 (2006)CrossRefGoogle Scholar
  15. 15.
    Kolovos, D.S., Paige, R., Rose, L., Polack, F.: The Epsilon Book. Technical report, The University of York, York, UK (2010)Google Scholar
  16. 16.
    MADES. Model-based methods and tools for Avionics and surveillance embeddeD SystEmS (2012),
  17. 17.
    MIT. alloy (2012),
  18. 18.
    OMG. OMG Systems Modeling Language (OMG SysML), v1.2. Technical report, OMG (2007)Google Scholar
  19. 19.
    OMG. UML Profile for MARTE : Modeling and Analysis of Real-Time Embedded Systems. Technical Report November, OMG (2009)Google Scholar
  20. 20.
    OMG. Unified Modeling Language - Infrastructure. Technical Report May, OMG (2010)Google Scholar
  21. 21.
    OMG. Unified Modeling Language - Superstructure. Technical Report May, OMG (2010)Google Scholar
  22. 22.
    OMG. MOF 2 XMI Mapping Specification. Technical report, OMG (2011)Google Scholar
  23. 23.
    OMG. OMG Object Constraint Language ( OCL ) v2.3.1. Technical Report January, OMG (2012)Google Scholar
  24. 24.
    Pradella, M., Morzenti, A., Pietro, P.S.: The symmetry of the past and of the future: bi-infinite time in the verification of temporal properties. In: Proceedings of the the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering, ESEC-FSE 2007, pp. 312–320. ACM, New York (2007)Google Scholar
  25. 25.
    Queille, J.P., Sifakis, J.: Specification and verification of concurrent systems in CESAR. In: 5th International Symposium on Programming, Springer, Heidelberg (1982)Google Scholar
  26. 26.
    Schmidt, D.C.: Model Driven Engineering. Computer 39(2), 25–31 (2006)CrossRefGoogle Scholar
  27. 27.
    Selic, B.: The pragmatics of model-driven development. IEEE Software 20(5), 19–25 (2003)CrossRefGoogle Scholar
  28. 28.
    Shaikh, A., Wiil, U.K., Memon, N.: UOST: UML/OCL Aggressive Slicing Technique for Efficient Verification of Models. In: Kraemer, F.A., Herrmann, P. (eds.) SAM 2010. LNCS, vol. 6598, pp. 173–192. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  29. 29.
    Soeken, M., Wille, R., Kuhlmann, M., Gogolla, M., Drechsler, R.: Verifying UML/OCL Models Using Boolean Satisfiability. In: Conference on Design, Automation and Test in Europe (DATE 2010). European Design and Automation Association, pp. 1341–1344 (2010)Google Scholar
  30. 30.
    SOFTEAM. Modelio (2012),
  31. 31.
    ter Beek, M.H., Fantechi, A., Gnesi, S., Mazzanti, F.: A state/event-based model-checking approach for the analysis of abstract system properties. Science of Computer Programming 76(2), 119–135 (2011)zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Alek Radjenovic
    • 1
  • Nicholas Matragkas
    • 1
  • Richard F. Paige
    • 1
  • Matteo Rossi
    • 2
  • Alfredo Motta
    • 2
  • Luciano Baresi
    • 2
  • Dimitrios S. Kolovos
    • 1
  1. 1.Department of Computer ScienceThe University of YorkUnited Kingdom
  2. 2.Politecnico di MilanoItaly

Personalised recommendations