Comparing model checkers for timed UML activity diagrams

This paper describes the results of an experimental study on the use of model checkers to verify properties of UML activity diagrams. The motivation for the study derives from the desirability of checking properties of systems early in the development process, and the fact that UML is a commonly used notation for system models. The study assesses the performance of different model checking tools, and strategies for converting activity diagrams into the tools input notation, for a class of real time activity diagrams used in medical device design. This paper compares different translations for four model checkers in particular: UPPAAL, PES, SPIN and NuSMV. The performance of these model checkers is then compared using a suite of UML activity diagrams of varying complexity developed by us for this purpose. The results of a case study involving the design of an infusion pump are also presented. Experimental study on the use of model checkers to verify properties of timed UML-Activity diagrams.Creation of a benchmark for the verification of UML-Activity diagrams.Introduction and evaluation of seven translations from UML-Activity diagrams into the input languages of four model checkers in particular: UPPAAL, PES, SPIN and NuSMV.UPPAAL achieves the best performance for timed and non-timed model, and NuSMV seems to be inadequate for the verification of UML-Activity diagrams.

[1]  Rik Eshuis,et al.  Symbolic model checking of UML activity diagrams , 2006, TSEM.

[2]  Andrea Bobbio,et al.  Model checking time petri nets using NuSMV , 2001 .

[3]  Marco Pistore,et al.  NuSMV 2: An OpenSource Tool for Symbolic Model Checking , 2002, CAV.

[4]  Shi Ying,et al.  Towards Model-based Verification of BPEL with Model Checking , 2006, The Sixth IEEE International Conference on Computer and Information Technology (CIT'06).

[5]  João M. Fernandes,et al.  Model checking embedded systems with PROMELA , 2005, 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05).

[6]  Olivier H. Roux,et al.  Structural translation from Time Petri Nets to Timed Automata , 2005, J. Syst. Softw..

[7]  Vitus S. W. Lam A Formalism for Reasoning about UML Activity Diagrams , 2007, Nord. J. Comput..

[8]  Franco Cicirelli,et al.  Development of a Schedulability Analysis Framework Based on pTPN and UPPAAL with Stopwatches , 2012, 2012 IEEE/ACM 16th International Symposium on Distributed Simulation and Real Time Applications.

[9]  Kim G. Larsen,et al.  A Tutorial on Uppaal , 2004, SFM.

[10]  Rance Cleaveland,et al.  Integrating model checking and UML based model-driven development for embedded systems , 2013, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[11]  Amel Mammar,et al.  A formal semantics of timed activity diagrams and its PROMELA translation , 2005, 12th Asia-Pacific Software Engineering Conference (APSEC'05).

[12]  Rik Eshuis,et al.  Tool support for verifying UML activity diagrams , 2004, IEEE Transactions on Software Engineering.

[13]  Kamel Barkaoui,et al.  On the verification of business processes by model checking techniques , 2010, 2010 2nd International Conference on Software Technology and Engineering.

[14]  Marian Adamski,et al.  Petri nets and Activity Diagrams in logic controller specification - transformation and verification , 2010, Proceedings of the 17th International Conference Mixed Design of Integrated Circuits and Systems - MIXDES 2010.

[15]  Rance Cleaveland,et al.  The Power of Proofs: New Algorithms for Timed Automata Model Checking , 2014, FORMATS.

[16]  Jidong Ge,et al.  An Approach for Modeling and Analyzing Code Mobility , 2012, 2012 IEEE Asia-Pacific Services Computing Conference.

[17]  Franco Cicirelli,et al.  Model checking time-dependent system specifications using Time Stream Petri Nets and Uppaal , 2012, Appl. Math. Comput..

[18]  Kang G. Shin,et al.  An integrated approach to modeling and analysis of embedded real-time systems based on Timed Petri Nets , 2003, 23rd International Conference on Distributed Computing Systems, 2003. Proceedings..

[19]  Dezhuang Zhang,et al.  Fast on-the-fly parametric real-time model checking , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

[20]  Gerald C. Gannod,et al.  An automated tool for analyzing Petri nets using Spin , 2001, Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001).

[21]  A. Avogadro,et al.  From FPN to NuSMV: The temperature control system of the ICARO cogenerative plant , 2002 .

[22]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[23]  Rance Cleaveland,et al.  A menagerie of timed automata , 2014, CSUR.

[24]  Ge Yu,et al.  Schedulability Analysis of Global Fixed-Priority or EDF Multiprocessor Scheduling with Symbolic Model-Checking , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[25]  Jirí Srba,et al.  An Efficient Translation of Timed-Arc Petri Nets to Networks of Timed Automata , 2009, ICFEM.

[26]  Dragan Bosnacki,et al.  Integrating Real Time into Spin: A Prototype Implementation , 1998, FORTE.

[27]  Marian Petre,et al.  UML in practice , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[28]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[29]  Ge Yu,et al.  Exact Schedulability Analysis for Static-Priority Global Multiprocessor Scheduling Using Model-Checking , 2007, SEUS.

[30]  Marcus Vetter,et al.  Deterministic UML Models for Interconnected Activities and State Machines , 2009, MoDELS.

[31]  Elie Najm,et al.  Formal Description Techniques and Protocol Specification, Testing and Verification , 1998, IFIP — The International Federation for Information Processing.