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.
Buy single article
Instant access to the full article PDF.
Price includes VAT for USA
Subscribe to journal
Immediate online access to all issues from 2019. Subscription will auto renew annually.
This is the net price. Taxes to be calculated in checkout.
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
Carlson J, Hakansson J, Petterson P (2005) Saveccm: an analysable component model for real-time systems. In: Proceedings of FACS 2005
Clarke EM, Emerson EA, Sifakis J (2009) Model checking: algorithmic verification and debugging. Commun ACM 52(11): 74–84 doi:10.1145/1592761.1592781
Crnkovic I (2004) Component-based approach for embedded systems. In: Proceedings of the 9th workshop on component-oriented programming
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
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
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. http://citeseer.ist.psu.edu/hatcliff01cadena.html
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
Liu JWS (2000) Real-time systems. Prentice-Hall, Englewood Cliffs
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
Natarajan B, Schmidt DC, Vinoski S (2004) The corba component model part 4: implementing components with ccm. Dr Dobb’s Portal. http://www.ddj.com/cpp/184403884
OMG (2005) UML 2.0 Superstructure Specification. Object Management Group. http://www.omg.org/cgi-bin/doc?formal/05-07-04
OMG (2005) UML Profile for CCM, v 1.0. OMG. http://www.omg.org/cgi-bin/doc?formal/05-07-06
OMG (2007) CORBA Component Model. OMG. http://www.omg.org/cgi-bin/doc?formal/06-04-01
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
This work has been funded by CAPES/CNPq (Grant number 475851/2006-4) and FAPESB (APR018/2008).
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). https://doi.org/10.1007/s11334-009-0103-6
- Real-time systems
- Model checking