Skip to main content
Log in

Formal verification and validation of embedded systems: the UML-based MADES approach

  • Special Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Formal verification and validation activities from the early development phases can foster system consistency, correctness, and integrity, but they are often hard to carry out as most designers do not have the necessary background. To address this difficulty, a possible approach is to allow engineers to continue using familiar notations and tools, while verification and validation are performed on demand, automatically, and transparently. In this paper we describe how the problem of making formal verification and validation tasks more designer-friendly is tackled by the MADES approach. Our solution is based on a tool chain that is built atop mature, popular, and widespread technologies. The paper focuses on the verification and closed-loop simulation (validation) aspects of the approach and shows how it can be applied to significant embedded software systems.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20

Similar content being viewed by others

Notes

  1. http://zot.googlecode.com.

  2. TRIO axioms are implicitly asserted for all time instants, hence formula (1) is implicitly interpreted as “\(\mathrm{Alw } (\mathrm{Lasted } \!\left( {\lnot cTick, T-1} \right) \Leftrightarrow cTick)\)”.

  3. http://www.cassidian.com.

  4. Interested readers can refer to [11] for the details omitted in this paper.

  5. The verification was carried out on a desktop computer with a 2.8GHz AMD Phenom™II processor and 8MB RAM; ℤot was configured to use the SMT-based smteezot plugin, and the solver was Microsoft Z3 3.2. The bound on the length of the traces sought was 100.

References

  1. Andersson, P., Höst, M., Bergström, M.: UML to SystemC transformation in the MARTES project. In: Proceedings of the Work in Progress Session at Euromicro SEAA/DSD (2006)

  2. André, C., Mallet, F., de Simone, R.: Modeling time(s). In: Model Driven Engineering Languages and Systems. Lecture Notes in Computer Science, vol. 4735, pp. 559–573 (2007)

  3. Bagnato, A., Andrey Sadovykh, E.B., Matragkas, N., Rossi, M., Baresi, L., Morzenti, A., Motta, A., Crippa, M.C., Genolini, S., Audsley, N.C., Gray, I., Indrusiak, L.S., Kolovos, D., Paige, R.: D1.7 mades final approach guide. Technical report, MADES Consortium (2012)

  4. 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), p. 5 (2010)

  5. Baresi, L., Ferretti, G., Leva, A., Rossi, M.: Flexible logic-based co-simulation of modelica models. In: IEEE International Conference on Industrial Informatics (INDIN), pp. 635–640 (2012)

  6. Baresi, L., Morzenti, A., Motta, A., Rossi, M.: From interaction overview diagrams to temporal logic. In: MoDELS Workshops. Lecture Notes in Computer Science, vol. 6627, pp. 90–104 (2010)

  7. Baresi, L., Morzenti, A., Motta, A., Rossi, M.: Towards the UML-based formal verification of timed systems. In: Formal Methods for Components and Objects. Lecture Notes in Computer Science, vol. 6957, pp. 267–286 (2012)

  8. Baresi, L., Orso, A., Pezzè, M.: Introducing formal specification methods in industrial practice. In: Proceedings of the 19th International Conference on Software Engineering (ICSE), pp. 56–66 (1997)

  9. Bersani, M.M., Frigeri, A., Morzenti, A., Pradella, M., Rossi, M., San Pietro, P.: Bounded reachability for temporal logic over constraint systems. In: Proceedings of the International Symposium on Temporal Representation and Reasoning (TIME), pp. 43–50 (2010)

  10. Blohm, G., Bagnato, A.: D1.1 requirements specification. Tech. rep., MADES Consortium (2010). Available from MADES website. http://www.mades-project.org

  11. Blohm, G., Eren, E., Bagnato, A., Bernardi, F.: D5.3 final evaluation report. Technical report, MADES Consortium (2012)

  12. Burmester, S., Giese, H., Hirsch, M., Schilling, D., Tichy, M.: The fujaba real-time tool suite: model-driven development of safety-critical, real-time systems. In: Proceedings of the 27th International Conference on Software Engineering (ICSE), pp. 670–671 (2005)

  13. Choppy, C., Klai, K., Zidani, H.: Formal verification of uml state diagrams: a petri net based approach. SIGSOFT Softw. Eng. Notes 36(1), 1–8 (2011)

    Article  Google Scholar 

  14. Ciapessoni, E., Coen-Porisini, A., Crivelli, E., Mandrioli, D., Mirandola, P., Morzenti, A.: From formal models to formally-based methods: an industrial experience. ACM Trans. Softw. Eng. Methodol. 8(1), 79–113 (1999)

    Article  Google Scholar 

  15. Csertán, G., Huszerl, G., Majzik, I., Pap, Z., Pataricza, A., Varró, D.: VIATRA—visual automated transformations for formal verification and validation of UML models. In: Proceedings of the 17th IEEE International Conference on Automated Software Engineering, pp. 267–270 (2002)

  16. Diethers, K., Huhn, M.: Vooduu: Verification of object-oriented designs using uppaal. In: Proceedings of TACAS. Lecture Notes in Computer Science, vol. 2988, pp. 139–143 (2004). http://link.springer.com/chapter/10.1007%2F978-3-540-24730-2_10

  17. Dupuy, S., Ledru, Y., Chabre-Peccoud, M.: An overview of RoZ: a tool for integrating UML and Z specifications. In: Wangler B., Bergman L. (eds.) Advanced Information Systems Engineering. Lecture Notes in Computer Science, vol. 1789, pp. 417–430 (2000)

  18. Eshuis, R.: Reconciling statechart semantics. Sci. Comput. Programm. 74, 65–99 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  19. Evans, A., France, R.B., Grant, E.S.: Towards formal reasoning with UML models (1999)

  20. Falleri, J.R., Huchard, M., Nebut, C.: Towards a traceability framework for model transformations in Kermeta. In: ECMDA Traceability Workshop (ECMDA-TW’06) (2006)

  21. Fritzson, P.A.: Principles of Object-Oriented Modeling and Simulation with Modelica 2.1. Wiley, London (2004)

    Book  Google Scholar 

  22. Gray, I., Audsley, N.C.: Exposing non-standard architectures to embedded software using compile-time virtualisation. In: Proceedings of the 2009 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES), pp. 147–156 (2009)

  23. Gunter, C.A., Gunter, E.L., Jackson, M., Zave, P.: A reference model for requirements and specifications. Softw. IEEE 17(3), 37–43 (2000)

    Article  Google Scholar 

  24. Hammal, Y.: A formal semantics of UML statecharts by means of timed petri nets. In: Proceedings of FORTE. Lecture Notes in Computer Science, vol. 3731, pp. 38–52 (2005)

  25. Jackson, D.: Lightweight formal methods. In: FME 2001: Formal Methods for Increasing Software Productivity. Lecture Notes in Computer Science, vol. 2021, pp. 1–1 (2001). http://link.springer.com/chapter/10.1007%2F3-540-45251-6_1

  26. Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I., Valduriez, P.: ATL: a QVT-like transformation language. In: Companion to the 21st ACM SIGPLAN Symposium on Object-Oriented Programming Systems, Languages, and Applications, OOPSLA’06, pp. 719–720 (2006)

  27. Kolovos, D.S., Paige, R., Rose, L., Polack, F.: The Epsilon Book. York, UK, Technical report, The University of York (2010)

  28. Lima, V., Talhi, C., Mouheb, D., Debbabi, M., Wang, L., Pourzandi, M.: Formal verification and validation of UML 2.0 sequence diagrams using source and destination of messages. Electron. Notes Theor. Comput. Sci. 254, 143–160 (2009)

    Article  Google Scholar 

  29. MADES: Model-based methods and tools for Avionics and surveillance embeddeD SystEmS (2012). http://www.mades-project.org/

  30. Nielsen, B.: Quasimodo—quantitative system properties in model-driven-design of embedded systems (2007). http://www.quasimodo.aau.dk

  31. Object Management Group: Semantics of a foundational subset for executable UML models (fUML). Technical report, OMG (2011). Formal/2011-02-01

  32. OMG: UML Profile for MARTE: Modeling and Analysis of Real-time Embedded Systems. Technical report, November, OMG (2009)

  33. OMG: Unified Modeling Language—Infrastructure. Technical report, May, OMG (2010). http://www.omg.org/spec/UML/2.3/Infrastructure/PDF/

  34. Éric, P., Atitallah, R.B., Marquet, P., Meftali, S., Niar, S., Etien, A., Dekeyser, J.-L., Boulet, P.: Gaspard2: from MARTE to SystemC Simulation. In: Proceeedings of the DATE’08 Workshop on Modeling and Analysis of Real-Time and Embedded Systems with the MARTE UML Profile (2008). www2.linfl.fr/marteworkshop/proceedingsMarteWS08.pdf

  35. Pradella, M., Morzenti, A., San Pietro, P.: Bounded satisfiability checking of metric temporal logic specifications. ACM Trans. Softw. Eng. Methodol. (2012, in press)

  36. Radjenovic, A., Matragkas, N.D., Paige, R.F., Rossi, M., Motta, A., Baresi, L., Kolovos, D.S.: MADES: a tool chain for automated verification of UML models of embedded systems. In: Modelling Foundations and Applications. Lecture Notes in Computer Science, vol. 7349, pp. 340–351 (2012)

  37. Rose, L.M., Paige, R.F., Kolovos, D.S., Polack, F.A.: The epsilon generation language. In: Proceedings of the 4th European Conference on Model Driven Architecture: Foundations and Applications (ECMDA-FA), pp. 1–16 (2008)

  38. Saldhana, J.A., Shatz, S.M.: UML diagrams to object petri net models: an approach for modeling and analysis. In: Proceedings of SEKE 2000, pp. 103–110 (2000)

  39. Schamai, W., Fritzson, P., Paredis, C., Pop, A.: Towards unified system modeling and simulation with modelicaml: modeling of executable behavior using graphical notations. In: Proceedings of the 7th International Modelica Conference, pp. 612–621 (2009)

  40. Staines, T.: Intuitive mapping of UML 2 activity diagrams into fundamental modeling concept petri net diagrams and colored petri nets. In: IEEE International Conference and Workshop on the Engineering of Computer Based Systems, pp. 191–200 (2008)

  41. Störrle, H., Hausmann, J.H.: Towards a Formal Semantics of UML 2.0 Activities (2005)

  42. Than, X., Miao, H., Liu, L.: Formalizing the semantics of UML statecharts with Z. In: The Fourth International Conference on Computer and Information Technology (CIT), pp. 1116–1121 (2004)

  43. The Eclipse Foundation: Eclipse Modeling Framework (EMF) (2012). http://www.eclipse.org/modeling/emf/

  44. Williams, J.R., Polack, F.A.C.: Automated formalisation for verification of diagrammatic models. Electr. Notes Theor. Comput. Sci. 263, 211–226 (2010)

    Article  Google Scholar 

  45. Woodcock, J., Larsen, P.G., Bicarregui, J., Fitzgerald, J.: Formal methods: practice and experience. ACM Comput. Surv. 41(4), 19:1–19:36 (2009). http://dl.acm.org/citation.cfm?id=1592436

Download references

Acknowledgments

This research was supported by the Seventh Framework Program (FP7/2007–2013) of the European Community, project MADES (248864), and by the Programme IDEAS-ERC, project SMScom (227977).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matteo Rossi.

Additional information

Communicated by Dr. Antonio Vallecillo and Dr. Juha-Pekka Tolvanen.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Baresi, L., Blohm, G., Kolovos, D.S. et al. Formal verification and validation of embedded systems: the UML-based MADES approach. Softw Syst Model 14, 343–363 (2015). https://doi.org/10.1007/s10270-013-0330-z

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-013-0330-z

Keywords

Navigation