Symbolic model checking of UML activity diagrams

被引:122
作者
Eshuis, R [1 ]
机构
[1] Eindhoven Univ Technol, Dept Technol Management, NL-5600 MB Eindhoven, Netherlands
关键词
verification; model checking; activity diagrams; Unified Modeling Language;
D O I
10.1145/1125808.1125809
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Two translations from activity diagrams to the input language of NuSMV, a symbolic model verifier, are presented. Both translations map an activity diagram into a finite state machine and are inspired by existing statechart semantics. The requirements-level translation defines state machines that can be efficiently verified, but are a bit unrealistic since they assume the perfect synchrony hypothesis. The implementation-level translation defines state machines that cannot be verified so efficiently, but that are more realistic since they do not use the perfect synchrony hypothesis. To justify the use of the requirements-level translation, we show that for a large class of activity diagrams and certain properties, both translations are equivalent: regardless of which translation is used, the outcome of model checking is the same. Moreover, for linear stuttering-closed properties, the implementation-level translation is equivalent to a slightly modified version of the requirements-level translation. We use the two translations to model check data integrity constraints for an activity diagram and a set of class diagrams that specify the data manipulated in the activities. Both translations have been implemented in two tools. We discuss our experiences in applying both translations to model check some large example activity diagrams.
引用
收藏
页码:1 / 38
页数:38
相关论文
共 52 条
[1]  
Alonso G., 2004, DAT SYS APP
[2]   Software implementation of synchronous programs [J].
André, C ;
Boulanger, F ;
Girault, A .
SECOND INTERNATIONAL CONFERENCE ON APPLICATION OF CONCURRENCY TO SYSTEMS DESIGN, PROCEEDINGS, 2001, :133-142
[3]  
[Anonymous], 2000, UNIFIED MODELING LAN, DOI DOI 10.1007/3-540-40011-7_10
[4]   THE ESTEREL SYNCHRONOUS PROGRAMMING LANGUAGE - DESIGN, SEMANTICS, IMPLEMENTATION [J].
BERRY, G ;
GONTHIER, G .
SCIENCE OF COMPUTER PROGRAMMING, 1992, 19 (02) :87-152
[5]  
BOCK C, 1999, J OBJECT ORIENTED PR, V12, P5
[6]  
Boehm B. W., 1981, SOFTWARE ENG EC
[7]   CHARACTERIZING FINITE KRIPKE STRUCTURES IN PROPOSITIONAL TEMPORAL LOGIC [J].
BROWNE, MC ;
CLARKE, EM ;
GRUMBERG, O .
THEORETICAL COMPUTER SCIENCE, 1988, 59 (1-2) :115-131
[8]   SYMBOLIC MODEL CHECKING - 1020 STATES AND BEYOND [J].
BURCH, JR ;
CLARKE, EM ;
MCMILLAN, KL ;
DILL, DL ;
HWANG, LJ .
INFORMATION AND COMPUTATION, 1992, 98 (02) :142-170
[9]   Automatically detecting and visualising errors in UML diagrams [J].
Campbell L.A. ;
Cheng B.H.C. ;
McUmber W.E. ;
Stirewalt R.E.K. .
Requirements Engineering, 2002, 7 (4) :264-287
[10]  
CASPERS A, 1998, THESIS VRIJE U AMSTE