Development of the Petri Net Graphics Editor Supporting Automatic Use Case Generation

Document Type


Lead Author Type

CIS Masters Student


Dr. Paul Jorgensen, jorgensp@gvsu.edu

Embargo Period



The purpose of this project was to develop a Petri Net graphics editor that would automatically generate Use Cases, unlike others existing Petri Net editors. That would help developers create a big part of the test cases automatically and correctly, based on the existing Petri Net model. Generated use cases represent the linear code sequence coverage and the loop coverage of the model.

Two problems had to be solved in order to complete a project. First, it was necessary to create a graphic editor that would allow viewing the model as an oriented graph. Second problem was to find an algorithm to automatically generate Use Cases from said oriented graph.

The main specific of the Petri Net is that all nodes (places) can be marked more than once. That results in pushing the number of possible markings out of proportion and making it almost impossible to get a method that would allow you to get 100 percent coverage, while using only computational resources of the personal computer.

To solve that problem I decided to abandon the idea of covering 100% of possible paths, and instead chosen to simulate all possible scenarios that could happen in a system with the initial markings, entered by user. Although number of possible branches in a complex system can still be very high, this approach allowed generating the Use Cases very reliably.

This document is currently not available here.