Object process methodology
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
||This section possibly contains original research. (August 2011)|
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 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
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:
|Object||An object is a thing that exists.|
|Process||A process defines how objects are transformed.|
|State||A state is an object's situation.|
OPM fundamental structural relations
|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||A consists of B and C|
|Exhibition||A exhibits B as well as C|
|Generalization||B is an A. C is an A|
Object process language
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
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.
|This article needs additional citations for verification. (April 2009)|
- D. Dori (1995). Object-Process Analysis: Maintaining the Balance between System Structure and Behavior. Journal of Logic and Computation, 5, 2, pp. 227–249.
- D. Dori (2002). Object-Process Methodology – A Holistic Systems Paradigm. Springer Verlag, New York.
- Daniel Amyot, Gunter Mussbacher (2001). "Bridging the requirements/Design Gap in Dynamic Systems with Use Case Maps (UCMs)"
- I. Reinhartz-Berger and D. Dori (2004). "Object-Process Methodology (OPM) vs. UML: A Code Generation Perspective"
|Wikimedia Commons has media related to Object Process Methodology.|
- Object-Process Methodology and Its Application to the Visual Semantic Web, presentation by Dov Dori, 2003.