Object-Process Diagrams as an Explicit Algorithm Specification Tool

  • Liu WenYin ,
  • Dov Dori

Algorithms need clear and formal representations to be implemented as computer programs. The Object-Process Methodology (OPM) has been shown to successfully describe the structure and behavior of systems by combining objects and processes within an integrated, coherent set of Object-Process Diagrams (OPDs). However, OPDs lack control flow constructs for explicit specification of the entire process sequence, which is essential for algorithm implementation. In this research paper we augment the OPD notation to explicitly mark the necessary execution order among processes by introducing four basic control-flow mechanisms – sequence, branch, loop, and recursion, as well as other means, such as process ownership, to support current object-oriented design and programming concepts. The explicit representation of an algorithms also make it possible to automatically generate the program code from the OPD set and to reverse engineer existing complex code to an OPD set to enhance code understandability, maintenance and reuse