Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

Integrating UML and UPPAAL for designing, specifying and verifying component-based real-time systems

  • 156 Accesses

  • 4 Citations


A new tool for integrating formal methods, particularly model checking, in the development process of component-based real-time systems specified in UML is proposed. The described tool, TANGRAM (Tool for Analysis of Diagrams), performs automatic translation from UML diagrams into timed automata, which can be verified by the UPPAAL model checker. We focus on the CORBA Component Model. We demonstrate the overall process of our approach, from system design to verification, using a simple but real application, used in train control systems. Also, a more complex case study regarding train control systems is described.

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


  1. 1

    Behrmann G, David A, Larsen KG (2004) A tutorial on uppaal. In: Formal methods for the design of real-time systems, vol 3185. Springer, Berlin, pp 200–236. doi:10.1007/b110123

  2. 2

    Carlson J, Hakansson J, Petterson P (2005) Saveccm: an analysable component model for real-time systems. In: Proceedings of FACS 2005

  3. 3

    Clarke EM, Emerson EA, Sifakis J (2009) Model checking: algorithmic verification and debugging. Commun ACM 52(11): 74–84 doi:10.1145/1592761.1592781

  4. 4

    Crnkovic I (2004) Component-based approach for embedded systems. In: Proceedings of the 9th workshop on component-oriented programming

  5. 5

    Demartini C, Iosif R, Sisto R (1999) dspin: A dynamic extension of spin. In: Proceedings of the 5th and 6th international SPIN workshops on theoretical and practical aspects of SPIN model checking. Springer, London, pp 261–276

  6. 6

    Harrison TH, Levine DL, Schmidt DC (1997) The design and performance of a real-time corba event service. In: OOPSLA ’97: proceedings of the 12th ACM SIGPLAN conference on object-oriented programming, systems, languages, and applications. ACM, New York, pp 184–200. doi:10.1145/263698.263734

  7. 7

    Hatcliff J, Deng W, Dwyer M, Jung G, Prasad V (2003) Cadena: an integrated development, analysis, and verification environment for component-based systems. In: Proceedings of the 25th international conference on software engineering.

  8. 8

    Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard-real-time environment. J ACM 20(1): 46–61 doi:10.1145/321738.321743

  9. 9

    Liu JWS (2000) Real-time systems. Prentice-Hall, Englewood Cliffs

  10. 10

    Madl G, Abdelwahed S, Schmidt DC (2006) Verifying distributed real-time properties of embedded systems via graph transformations and model checking. Real-time Syst 33(1–3): 77–100

  11. 11

    Natarajan B, Schmidt DC, Vinoski S (2004) The corba component model part 4: implementing components with ccm. Dr Dobb’s Portal.

  12. 12

    OMG (2005) UML 2.0 Superstructure Specification. Object Management Group.

  13. 13

    OMG (2005) UML Profile for CCM, v 1.0. OMG.

  14. 14

    OMG (2007) CORBA Component Model. OMG.

  15. 15

    Wang N, Schmidt D, Gokhale A, Natarajan B, Rodrigues C, Loyall J, Schantz R (2003) Total quality of service provisioning in middleware and applications. J Microprocess Microsyst 2(27): 45–54

Download references

Author information

Correspondence to André L. N. Muniz.

Additional information

This work has been funded by CAPES/CNPq (Grant number 475851/2006-4) and FAPESB (APR018/2008).

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Muniz, A.L.N., Andrade, A.M.S. & Lima, G. Integrating UML and UPPAAL for designing, specifying and verifying component-based real-time systems. Innovations Syst Softw Eng 6, 29–37 (2010).

Download citation


  • Components
  • UML
  • Real-time systems
  • Model checking