Object process methodology

From Wikipedia, the free encyclopedia
  (Redirected from Object Process Methodology)
Jump to: navigation, search

Object process methodology (OPM) is an approach to designing information systems by depicting them using object models and process models. OPM was conceived and developed by Prof. Dov Dori, at the Technion – Israel Institute of Technology. A paper that first presented ideas underlying OPM was published in 1995. The comprehensive resource is Dori's book Object-Process Methodology – A Holistic Systems Paradigm[1]


Object-Process Methodology is a systems modeling paradigm that represents the two things inherent in a system: its objects and processes. OPM is fundamentally simple; it builds on a minimal set of concepts: stateful objects – things that exist, and processes – things that happen and transform objects by creating or consuming them or by changing their states.(1)

OPM offers a way to a modelling representation of automation systems to achieve interoperation, including elements such as:

  • Entities- Individual components of the system, can be "physical" or "informational".

Processes that trasform the object- Any activities.

States that show situation that the object can be in.

  • links- structural links and procedural links.
  • External user interface
  • Option to run the chart


OPM has fundamental advantage – it represents the system simultaneously in two different views of a system model- formal graphics and natural language:

*Object process diagram-

Describes objects, processes and links between them by chart, this view emphasizes the static structure of the system and show the dynamic behavior of the system by showing collaborations among objects and changes to the internal states of objects.

*Object process language-

OPD translated in sentences, telling the development of a diagram. The power of OPL lies in the fact that it is readable by humans but also interpretable by computers, thus making it an inter-exchangeable language.

Since each model fact is expressed both graphically and textually, in a subset of natural English, it is readily accessible to non-technical stakeholders, enabling them to take part in the early, critical stages of the system architecting and development, in which the most important decisions are made. (2)

OPM development[edit]

OPM semantics was originally geared towards systems engineering, as it can model information, hardware, people, and regulation. However, in recent years OPM started to serve also researchers in molecular biology, yielding tangible published new findings related to the mRNA lifecycle. This is a clear indication of the universality of the object and process ontology.(3)

(1)MBSE with OPM and SYSML,page 2

(2)MBSE with OPM and SYSML,page 3

(3)MBSE with OPM and SYSML,page 3


OPM supports cardinality constraints, meaning a way to indicate to what extent two objects can relate to each other. In OPM these constraints are called participation constraints. The following constraints can be formulated:

  • 1 to 1
  • 1 to many
  • 1 to fixed number
  • many to many
  • fixed number to fixed number
  • optional (expressed as: ?)


Object process diagram[edit]

Objects, processes and links between them are depicted by using the object process diagram (OPD).

The OPD treats complexity by using three refinement and abstraction mechanisms:

  • Zooming in and out
  • Folding and unfolding
  • State expression and suppression

Having only one diagram, this methodology knows no multiplicity in depicting objects and processes, which improves exchangeability between different diagrams and even different methods.

The graphical representation of the OPM elements in an OPD is as follows:

OPM entities[edit]

Object OPM Object symbol.svg An object is a thing that exists.
Process OPM Process symbol.svg A process defines how objects are transformed.
State OPM Object with State symbol.svg A state is an object's situation.

OPM fundamental structural relations[edit]

Symbol OPM Aggregation link symbol.svg OPM Exhibition link symbol.svg OPM Generalization link symbol.svg
Meaning Relates a whole to its parts Relates an exhibitor to its attributes Relates a general thing to its specializations

Example uses of the OPM structural links:

Aggregation OPM Aggregation link example.svg A consists of B and C
Exhibition OPM Exhibition link example.svg A exhibits B as well as C
Generalization OPM Generalization link example.svg B is an A. C is an A

OPM procedural links[edit]

Symbol OPM Agent link.svg OPM Instrument link.svg OPM Consumption or Result link.svg OPM Effect link.svg OPM Invocation link.svg
Meaning The source object/state is an agent of the target process The source object/state is an instrument of the target process The source/target process yields/consumes the target/source object The source object is affected by the target process The source process invocates the target process when it is finished

Object process language[edit]

Another feature of object process methodology is the object process language – an OPD can be translated in sentences, telling the storyline of the diagram. The power of OPL lies in the fact that it is readable by humans but also interpretable by computers, thus making it an inter-exchangeable language.

Object-process case tool[edit]

Modeling through OPM is possible with a specialized tool called object-process case tool.

The application has several strong features, which are listed below.

  • Syntax checking: The creator of an OPD is immediately warned when an illegal OPD construction is being created. The application refers to the issue and explains the error.
  • OPL generator: Modeling an OPD automatically creates the corresponding natural text, formatted in OPL. This way, the creator can use the generated OPL additionally to check his work during the composition of the model.
  • Exchangeability with UML: The application has the capability to export an OPD to many UML diagrams, namely:

Further use case maps (UCM) have some similar goals as OPM.[2]

See also[edit]


  1. ^ Object-Process Methodology, Dov Dori, Springer, 2002.
  2. ^ About Use Case Maps


Further reading[edit]

External links[edit]