Automatic Generation of Model Checking Scripts Based on Environment Modeling

When applying model checking to the design models of the embedded systems, it is necessary to model not only the behavior of the target system but also that of the environment interacting with the system. In this paper, we present a method to model the environment and to automatically generate all possible environments from the model. In our method, we can flexibly model the structural variation of the environment and the sequences of the function calls using a class model and statechart models. We also present a tool to generate Promela scripts of SPIN from the environment model. As a practical experiment, we applied our tool to the verification of an OSEK/VDX RTOS design model.

[1]  Martin Gogolla Unified Modeling Language , 2009, Encyclopedia of Database Systems.

[2]  Stephan Merz,et al.  Model checking UML state machines and collaborations , 2001, Workshop on Software Model Checking @ CAV.

[3]  Matthew B. Dwyer,et al.  Filter-based model checking of partial systems , 1998, SIGSOFT '98/FSE-6.

[4]  Armin Biere,et al.  A survey of recent advances in SAT-based formal verification , 2005, International Journal on Software Tools for Technology Transfer.

[5]  Frantisek Plasil,et al.  Partial Verification of Software Components: Heuristics for Environment Construction , 2007, 33rd EUROMICRO Conference on Software Engineering and Advanced Applications (EUROMICRO 2007).

[6]  C. Habel,et al.  Language , 1931, NeuroImage.

[7]  Henry Muccini,et al.  CHARMY: A Framework for Designing and Verifying Architectural Specifications , 2009, IEEE Transactions on Software Engineering.

[8]  Qing Li,et al.  Unified Modeling Language , 2009 .

[9]  John Penix,et al.  Verification of time partitioning in the DEOS scheduler kernel , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[10]  Lubos Brim,et al.  DiVinE 2.0: High-Performance Model Checking , 2009, 2009 International Workshop on High Performance Computational Systems Biology.

[11]  Corina Pasareanu DEOS Kernel: Environment Modeling using LTL Assumptions , 2000 .

[12]  John Penix,et al.  Verifying Time Partitioning in the DEOS Scheduling Kernel , 2005, Formal Methods Syst. Des..

[13]  Johan Lilius,et al.  vUML: a tool for verifying UML models , 1999, 14th IEEE International Conference on Automated Software Engineering.

[14]  Sarfraz Khurshid,et al.  Korat: automated testing based on Java predicates , 2002, ISSTA '02.

[15]  Oksana Tkachuk,et al.  Application of automated environment generation to commercial software , 2006, ISSTA '06.

[16]  Frantisek Plasil,et al.  Specification and Generation of Environment for Model Checking of Software Components , 2007, Electron. Notes Theor. Comput. Sci..

[17]  Natarajan Shankar,et al.  A Tutorial on Satisfiability Modulo Theories , 2007, CAV.

[18]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[19]  Rupak Majumdar,et al.  Software model checking , 2009, CSUR.

[20]  Anneke Kleppe,et al.  The object constraint language: precise modeling with UML , 1998 .

[21]  Dragan Bosnacki,et al.  The Design of a Multicore Extension of the SPIN Model Checker , 2007, IEEE Transactions on Software Engineering.

[22]  P. Cochat,et al.  Et al , 2008, Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.

[23]  Tadahiro Uehara,et al.  WEAVE: WEb Applications Validation Environment , 2009, 2009 31st International Conference on Software Engineering - Companion Volume.

[24]  Toshiaki Aoki Model Checking Multi-Task Software on Real-Time Operating Systems , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[25]  Matthew B. Dwyer,et al.  Automated environment generation for software model checking , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[26]  Alex Groce,et al.  Swarm Verification , 2008, 2008 23rd IEEE/ACM International Conference on Automated Software Engineering.

[27]  Diego Latella,et al.  Automatic Verification of a Behavioural Subset of UML Statechart Diagrams Using the SPIN Model-checker , 1999, Formal Aspects of Computing.

[28]  Jeff Magee,et al.  Concurrency - state models and Java programs , 2006 .