Object Process Methodology
Encyclopedia
Object Process Methodology (OPM) is an approach to designing information system
Information system
An information system - or application landscape - is any combination of information technology and people's activities that support operations, management, and decision making. In a very broad sense, the term information system is frequently used to refer to the interaction between people,...

s 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

Language design

Object-Process Methodology (OPM) is a modeling language. OPM combines a minimal set of building blocks – stateful objects and processes that transform them – with a dual graphic-textual representation in a single diagram type.

OPM uses two types of elements: entities and links. Entities are used to express "physical" or "informational" elements which can be inside or outside of the system
Information system
An information system - or application landscape - is any combination of information technology and people's activities that support operations, management, and decision making. In a very broad sense, the term information system is frequently used to refer to the interaction between people,...

 being designed, i.e. "systemic" or "environmental".

The entities used in OPM are objects, states and processes.
An object is a thing existing for a period of time.
A state is a situation an object can be in.
A process is a phenomenon that transforms one or more objects by creating them, altering their states or destroying/consuming them.

The links used in OPM are structural links and procedural links.
A structural link forms a relation between two objects and is persistent.
A procedural link is used to link a process to an object - in which case it indicates a change in the state of the object - or to another process - in which case it indicates the launching of the second process when the first ends.

Cardinality

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 (Example: 1 man can marry 1 woman)
  • 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:

OPM Entities

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

Symbol
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

OPM Procedural Links

Symbol
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

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:
    • Use case diagram
      Use case diagram
      A use case diagram in the Unified Modeling Language is a type of behavioral diagram defined by and created from a Use-case analysis. Its purpose is to present a graphical overview of the functionality provided by a system in terms of actors, their goals , and any dependencies between those use...

    • Sequence diagram
      Sequence diagram
      A sequence diagram in Unified Modeling Language is a kind of interaction diagram that shows how processes operate with one another and in what order. It is a construct of a Message Sequence Chart....

    • State diagram
      State diagram
      A state diagram is a type of diagram used in computer science and related fields to describe the behavior of systems. State diagrams require that the system described is composed of a finite number of states; sometimes, this is indeed the case, while at other times this is a reasonable abstraction...

    • Class diagram
      Class diagram
      In software engineering, a class diagram in the Unified Modeling Language is a type of static structure diagram that describes the structure of a system by showing the system's classes, their attributes, operations , and the relationships among the classes.- Overview :The class diagram is the main...

    • Deployment diagram
      Deployment diagram
      A deployment diagram in the Unified Modeling Language models the physical deployment of artifacts on nodes. To describe a web site, for example, a deployment diagram would show what hardware components exist , what software components run on each node , and how...

    • Activity diagram
      Activity diagram
      Activity diagrams are graphical representations of workflows of stepwise activities and actions with support for choice, iteration and concurrency. In the Unified Modeling Language, activity diagrams can be used to describe the business and operational step-by-step workflows of components in a system...


Further Use Case Maps (UCM) have some similar goals as OPM.

Further reading


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK