A Scalable Incomplete Test for the Boundedness of UML RT Models
2004, Lecture Notes in Computer Science
https://doi.org/10.1007/978-3-540-24730-2_26Abstract
We describe a scalable incomplete boundedness test for the communication buffers in UML RT models. UML RT is a variant of the UML modeling language, tailored to describing asynchronous concurrent embedded systems. We reduce UML RT models to systems of communicating finite state machines (CF-SMs). We propose a series of further abstractions that leaves us with a system of linear inequalities. Those represent the message sending and receiving effect that the control flow cycles of every process have on the overall message buffer. The test tries to establish the existence of a linear combination of the effect vectors so that at least one message can occur an unbounded number of times. We discuss the complexity of this test and present experimental results using the IBOC system that we are implementing. Scalability of the test is in part due to the fact that it is polynomial for the type of sparse control flow graphs that are derived from UML RT models. Also, the analysis is local, i.e., it avoids the combinatorial state space explosion due to concurrency of the models. We also present a method to derive upper bound estimates for the maximal occupancy of each individual message buffer. While we focus on the analysis of UML RT models, the analysis can directly be applied to any type of CFSM models.
References (29)
- P. Abdulla and B. Jonsson. Verifying Programs with Unreliable Channels. In LICS'93. IEEE, 1993.
- P. Abdulla and B. Jonsson. Undecidable verification problems for programs with unreliable channels. Information and Computation, 130(1):71-90, 1996.
- R. Alur, R. Grosu, and M. McDougall. Efficient reachability analysis of hierarchical reactive machines. In Proc. of CAV'00, volume 1855 of LNCS. Springer Verlag, 2000.
- L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. Addison Wesley, 1998.
- B. Boigelot and P. Goidefroid. Symbolic verification of communication protocols with infinite state spaces using qdds. In Proc. CAV'96, volume 1102 of LNCS. Springer, 1996.
- A. Bouajjani and P. Habermehl. Symbolic reachability analysis of FIFO-channel systems with nonregular sets of configurations. In Proc. of ICALP'97, volume 1256 of LNCS, 1997.
- A. Bouajjani and R. Mayr. Model checking lossy vector addition systems. In Proc. of STACS'99, volume 1563 of LNCS. Springer Verlag, 1999.
- D. Brand and P. Zafiropulo. On communicating finite-state machines. Journal of the ACM, 2(5):323-342, April 1983.
- James C. Corbett and George S. Avrunin. Using integer programming to verify general safety and liveness properties. Formal Methods in System Design: An International Journal, 6(1):97-123, January 1995.
- W. Damm and B. Jonsson. Eliminating queues from rt uml models. In Proc. of FTRTFT 2002, LNCS. Springer, 2002.
- J. Esparza and S. Melzer. Verification of safety properties using integer programming: Beyond the state equation. Formal Methods in System Design, 16:159-189, 2000.
- J. Esparza and M. Nielsen. Decibility issues for Petri nets -a survey. Journal of Informatik Processing and Cybernetics, 30(3):143-160, 1994.
- C. Fischer, E.-R. Olderog, and H. Wehrheim. A csp view on uml-rt structure diagrams. In Fundamental Approaches to Software Engineering, Proc. of the 4th International Conference, FASE 2001, volume 2029 of LNCS. Springer Verlag, 2001.
- R. Grosu, M. Broy, B. Selic, and G. Stefanescu. What is behind UML-RT? Behavioral specifications of businesses and systems, 1999.
- D. Harel. Statecharts: A visual formalisation for complex systems. Science of Computer Programming, 8:231-274, 1987.
- D. Herzberg and A. Marburger. The use of layers and planes for architectural design of communication systems. In Proc. of the Fourth IEEE International Symposium on Object- Oriented Real-Time Distributed Computing ISORC 2001. IEEE Computer Society, May 2001.
- Gerard J. Holzmann. The Spin Model Checker -Primer and Reference Manual. Addison- Wesley, 2004.
- T. Jeron and C. Jard. Testing for unboundedness of fifo channels. Theoretical Computer Science, (113):93-117, 1993.
- R. Lipton. The reachability problem requires exponential space. Technical Report 62, De- partment of Computer Science, Yale University, January 1976.
- A. Lyons. Developing and debugging real-time software with objectime developer. available from http://www.objectime.com/otl/technical/1999q1 p017.pdf, 1999.
- R. Mayr. Undecidable problems in unreliable computations. TCS, 297(1-3):337-354, 2003.
- S. Melzer and J. Esparza. Checking system properties via integer programming. In H.R. Nielson, editor, Proc. of ESOP'96, volume 1058 of Lecture Notes in Computer Science, pages 250-264. Springer Verlag, 1996.
- G. Memmi and G. Roucairol. Linear algebra in net theory. In Net Theory and Applications, volume 84 of LNCS, pages 213-223, 1980.
- M. Saaltink. Generating and analysing Promela from RoseRT models. Technical Report TR- 99-5537-02, ORA Canada, 1208 One Nocholas Street, Ottawa Ontario, K1N 7B7, Canada, 1999.
- B. Selic. Turning clockwise: using UML in the real-time domain. Comm. of the ACM, 42(10):46-54, Oct. 1999.
- B. Selic. An overview of uml 2.0. International Conference on Software Engineering, Tutorial Notes, May 2003.
- B. Selic, G. Gullekson, and P.T. Ward. Real-Time Object-Oriented Modelling. John Wiley & Sons, Inc., 1994.
- B. Selic and J. Rumbaugh. Using UML for modeling complex real-time systems. http://www.rational.com/media/whitepapers/umlrt.pdf, March 1998.
- H. Yen. A unified approach for deciding the existence of certain Petri net paths. Information and Computation, 96(1):119-137, 1992.