Model Checking UML Activity Diagrams with SPIN

This paper describes an approach to verifying UML activity diagrams with model check techniques. Firstly, we define converting rules of the activity elements such as fork, joint, branch and merge into EHA. During this process, we handle the control of the actions, the creation of the hierarchy of the EHA and the change of the action states. Secondly, we describe the PROMELA framework generated for the UML activity diagrams containing the above elements. The paper is structured as followings. The second section of the paper explains the principles of the model checking with SPIN and the UML activity diagram. Section 3 describes the conversions from the UML activity diagram to the EHA model and the PROMELA model. Section 4 describes the modeling process of the dining-philosophers problem and the result of simulating the model with SPIN. The paper is ended with the conclusions and future work.