Integrating object oriented design with concurrency using Petri nets-A case study of a banking system and the Syroco-Macao environment

Bolesław Mikołajczak, C.A. Sefranek · 2002

Petri nets provide a well understood formal method for modeling concurrent systems, in all of their complexity. Petri nets, however, do not directly support the concepts of modularization, encapsulation, and information hiding that are essential to the successful abstraction of complexity provided by the OO methodology. The Petri net model of even a simple system can become overwhelmingly complex. The first goal of this paper was to survey a number of tools combining the OO technique with Petri nets, to pick one, and to use it in an implementation of an OO design. There was a great desire to utilize a tool having a graphical interface for the Petri net presentation. It was also highly desirable to utilize colored Petri nets. The design chosen was that of a bank ATM machine. The tool selected for use was SYROCO. This tool provides a means to define Cooperative objects (COO), which are translated into C++ classes. The COO language uses high level Petri nets to model the internal operation of objects, and provides a mechanism to connect together the Petri nets of distinct objects via the normal OO interface.

Read the paper · More papers on PaperTik