Using AToM3 for the Verification of Workflow Applications

In this paper, we propose an approach for the verification of workflow applications using AToM 3 and Event B. Workflow carries applications where many actors take part and cooperate in order to execute operations. Upon composing those operations, many problems such as deadlock, freeness and livelock might appear. In this context, we are going to show how to build a meta-model for UML activity diagram in AToM 3. From this meta-model, AToM3 generates a visual tool to build and to specify workflow applications where syntactical verification is made. Further, we are going to define a graph grammar to generate a textual code from the graphically specified workflow. This code will maintain information about all the activities and their dependencies. Another role of the graph grammar is to generate an Event B machine used for the verification of the workflow. Structural errors like deadlock and absence of synchronization can be captured from the resulted Event B model. Functional requirements are also verified using the resulted Event B model.