what is object-process methodology
DESCRIPTION
What is Object-Process Methodology. The Object-Process Methodology (OPM) is an integrated approach to the study and development of systems in general and information systems in particular. - PowerPoint PPT PresentationTRANSCRIPT
11998 © Dr. Dov Dori, Technion, Israel Institute of Technology
The Object-Process Methodology (OPM) is an integrated approach to the study and development of systems in general and information systems in particular. OPM unifies the system’s structure and behavior throughout the analysis, design and implementation of the system within one frame of reference using a single diagramming tool –the Object-Process Diagram (OPD) and a corresponding, English-like language –the Object-Process Language (OPL).
What is Object-Process MethodologyObject-Process Methodology
21998 © Dr. Dov Dori, Technion, Israel Institute of Technology
•The basic premise of OPM is that objects and processes are two types of equally important classes of things, that together faithfully describe both the structure and the behavior of systems in a single model in virtually any domain. •At any point in time, each object is at some state, and object states are transformed through the occurrence of a process. •Complexity is controlled through recursive and selective scaling (zooming) of objects and/or processes to any desired level of detail.
31998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Major shortcomings of current OO Major shortcomings of current OO methodologiesmethodologies
The Model Multiplicity Problem:Lack of integration between the static-structural
(“object”) model and dynamic-behavioral, functional, and other models.
The Complexity Management Problem:Lack of tools for seamless scaling to manage the
complexity of real-life systems.
41998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Object-Process Methodology (OPM) Object-Process Methodology (OPM) PrinciplesPrinciples
Objects and processes are the two types of equally important things (entities) required to describe a system in a single, unifying model.
Processes transform objects by changing their state. Transformation includes creation and elimination.
Scaling can be applied recursively and selectively to both objects and processes.
51998 © Dr. Dov Dori, Technion, Israel Institute of Technology
OPM BenefitsOPM Benefits Unification of the system’s structure and behavior within
one intuitive model throughout the system lifecycle: The same concepts are carried on throughout the entire development life cycle.
No need for mental transformations and integration across different models – no model multiplicity problem.
Objects and processes are dual and complement each other in the system’s specification – no object supremacy.
Encapsulation is relative and flexible – objects can encapsulate processes and vice versa.
61998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Object: that which has the potential of persistent unconditional existence for some positive duration of time. Symbol:
Process: the pattern of changing that transforms one or more objects by changing their state or by creating or destroying them. Symbol:
Thing: a generalization of an object and a process. Meta-symbol:
Objects, Processes, ThingsObjects, Processes, Things
BB11
TT11
PP11
71998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Universe
Domain (World)
System
Environment
legend
Object
ProcessInteraction
,,Universe, Domain, Universe, Domain, System, Environment, InteractionSystem, Environment, Interaction
81998 © Dr. Dov Dori, Technion, Israel Institute of Technology
System, Environment, InteractionSystem, Environment, Interaction
An artificial system is an object consisting of inter-related things in the world, which are in the focus of a certain human research and development effort.
The environment of a system is an object that consists of things in the world that are not in the system.
Interaction is a set of one or more things through which the system exchanges material and/or energy and/or information with the environment.
The environment is the subset of things in the universe whose interaction with the system is significant.
91998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Object-Process Diagrams (OPDs)Object-Process Diagrams (OPDs)
A visual formalism (Harel) that captures both objects and processes in the system along with the structural and procedural relations among them.
The entire system is fully defined by the OPD set—a set of inter-related and consistent OPDs.
101998 © Dr. Dov Dori, Technion, Israel Institute of Technology
A Generic Object-Process DiagramA Generic Object-Process Diagram
InteractionSystem Environment
Domain
Legend
Object
Process
Transformation link
Aggregation
Many m
Universe
mm
1..m1..m
111998 © Dr. Dov Dori, Technion, Israel Institute of Technology
StructureStructure• The static, relatively stable aspect of the system
• Non-transient, long-term relationships among objects in the system
• A snapshot of the system at a given time point that describes the state of the system - the state of each of its object
• Structure is about the static aspect of the system, while behavior is about its dynamics.
Structural Relation:Structural Relation:an association that holds between two or more things (objects and/or processes) in the system for some non-negligible time.
121998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Structural relations are divided into two groups:Structural relations are divided into two groups:
1. General structural relations
bi-directional structural link:
Disk stores
File
Disk storesis stored in
File
(a)
(b)
unidirectional structural link:
2. Fundamental structural relations
131998 © Dr. Dov Dori, Technion, Israel Institute of Technology
one of the following structural relations:
• Aggregation-Particulation
• Featuring-Characterization
• Generalization-Specialization
• Classification-Instantiation
Since those relations are so widespread, special symbols are assigned for their corresponding links
Fundamental Structural RelationFundamental Structural Relation
141998 © Dr. Dov Dori, Technion, Israel Institute of Technology
a structural relation that defines the relation between the whole and its parts. Symbol:
Aggregation-Particulation:Aggregation-Particulation:
OPL:Object Image consists of Foreground and Background.
Aggregation exists between things of the same kind:An object aggregates objects and process - processes.
151998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Feature: a thing that characterizes a thing.Attribute: a feature which is an object.Operation: a feature which is a process
(also known as method or service).
OPL:Object Image features Name, Situation and Process Display.
a structural relation that defines the relation between the thing and its features.
Symbol:
Featuring-CharacterizationFeaturing-Characterization
Display
161998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Object Cylinder instantiates Cylinder A and Cylinder B.Object Box instantiates Box C and Box D.Box C is in front of Box D.Box D is in front of Cylinder B.Box D is right of Cylinder A.Cylinder A is left of Cylinder B.
a structural relation that defines the relation between a class of things and its instances.
Symbol:
Instantiation-Materialization:Instantiation-Materialization:
A
B
C
D
is in front of
171998 © Dr. Dov Dori, Technion, Israel Institute of Technology
a structural relation that defines the relation between a general things and its specializations.
• Also known as gen-spec;
•induces inheritance
Symbol:
Generalization-Specialization:Generalization-Specialization:
An object generalizes objects and process - processes.
181998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Case, Lens and Capturing-Medium are parts of the object Camera.
“uses” is a structural relation (association). It has specializations.
Structural links: an exampleStructural links: an example
Lens Case
Camera
Capturing-Medium
Electronic-Camera
Analog-Camera
is attached-to
MagneticTape
PhotographicFilm
uses
uses
uses
Operation-mode
Focal-length
holds
191998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Procedural link is a link that connects a process with an object that is involved in the occurrence of that process.
There are two types of procedural links: Enabling link is a procedural link that connects a
process with an Enabler of that process. Transformation link is a procedural link that connects
a process with a Transformed object of that process. OPL: Procedural link generalizes Enabling link and
Transformation link.
Procedural linksProcedural links
201998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Enabler of a process is an object that must be present in order for that process to occur but is not transformed by the process.
An enabler is a role that an object assumes with respect to a particular process.
Two Enabler types:
OPL: Enabler generalizes Agent and Instrument.– Agent: an intelligent enabler, which can control the
process it enables by exercising common sense or goal-oriented considerations.
– Instrument: any non-agent enabler.
EnablersEnablers
211998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Agents: human, organization, a unit within a man-made organization, such as department, city council, government, team, company, brigade.
Not any human or organization is necessarily an agent.
Instruments: machines, tools, computers, robots, hardware, software, documents, orders, recipes, algorithms, files, information, data and commands
Enabler ExamplesEnabler Examples
221998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Effect link is a transformation link that connects a process with its affected object or with the affected object states.
Consumption link is a transformation link that connects a process with a consumed object of that process.
Result link is a transformation link that connects a process with a resulting object of that process.
Transformation linksTransformation links
231998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Object-Process Diagram (OPD)Object-Process Diagram (OPD)
Scene
Imaging
Image
Imaging-Device
An OPD is a diagram showing the objects and processes in the system, or part of it, at some level of detail, along with the structural and procedural relations among them.
The Imaging System: Top-level OPD
241998 © Dr. Dov Dori, Technion, Israel Institute of Technology
The Imaging System: Imaging-Device unfoldedThe Imaging System: Imaging-Device unfolded
Scene
Imaging
Image
Imaging-
Device
Range-
Sensor
Lens Case
Camera
Film
Camera and Range Sensor are specializations of the object Imaging Device.
Case, Lens and Film are parts of the object Camera.
251998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Scene
Imaging
Image
Imaging- Device
Photography
Range-Sensing
Camera Range-Sensor
Photography and Range-Sensing are specializations of the process Imaging.
The Imaging System: Imaging unfoldedThe Imaging System: Imaging unfolded
261998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Scene
Imaging
Image
Imaging- Device
Photography
Range-Sensing
Camera Range-Sensor
Photographic-Image
Range-Image
The Imaging System: Image unfoldedThe Imaging System: Image unfolded
The OPD shows both the static structure and the dynamic behavior of the system in one model.
271998 © Dr. Dov Dori, Technion, Israel Institute of Technology
State is a situation at which the object can exist for some time. Status is an attribute of an object whose values are states.
Status and StateStatus and State
281998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Status RepresentationsStatus Representations
Implicit Status Representation
Explicit Status Representation
291998 © Dr. Dov Dori, Technion, Israel Institute of Technology
The effect of Process on ObjectThe effect of Process on Object
Left: Object Lamp has states off and on.Process Lighting affects Lamp from on to of.
Right: Object Lamp features Status.Object Status has states off and on.
Process Lighting affects Status of Lamp from off to on.
OPD
OPL
301998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Scaling (zooming) - the mechanism of exposing more or less details of the system. This enables shifting the focus of interest from one thing to another without loosing the “big picture”.
Each scaling yields a new OPD. The entire system is represented by the OPD set, in which
each OPD is some view emphasizing part of the system. Scaling up: zooming in; detailing; showing more details of
a thing. Scaling down: zooming out; abstracting; showing less
details of a thing.
Scaling: Scaling: a complexity management toola complexity management tool
311998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Two Types of ScalingTwo Types of ScalingUnfoldingUnfolding - uses , , or , any general - uses , , or , any general structural link, or state expression. structural link, or state expression. Reverse direction:Reverse direction: Folding.Folding.Blow-upBlow-up - the frame of the thing is blown up and inner - the frame of the thing is blown up and inner details are exposed. details are exposed. Reverse direction:Reverse direction: ShrinkingShrinking..
P1
P1
P1.1
P1.2
B1.1
P1
P1.1 P1.2 B1.1
Blow-up of P1 Unfolding of P1
321998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Two Types of Scaling: Two Types of Scaling: scaling of an objectscaling of an object
B1
B1
B1.1
B1.2
P1.1
B1
B1.1 B1.2 P1.1
Blow-up of B1 Unfolding of B1
331998 © Dr. Dov Dori, Technion, Israel Institute of Technology
The Flange Drilling SystemThe Flange Drilling System
Computerized Numeric Control (CNC) Machine
Drilling Flange
Disk
Operator
Legend
Transformation link
Agent link
Instrument link
Object
Process
341998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Structural Links:Structural Links:aggregation as an exampleaggregation as an example
Drilling Flange
Disk
Operator
Legend
Transformation link
Agent link
Instrument link
Object
Process
CNC Machine
ControlController Metal Cutting Unit
Aggregation
351998 © Dr. Dov Dori, Technion, Israel Institute of Technology
Blow-up of ControlBlow-up of Control
Drilling Flange
Disk
Operator
Control
CNC Machine
Controller
Metal Cutting Unit
Legend
Transformation link
Agent link
Instrument link
Object
Process
Aggregation
Blow-up frame
Command Generation
Command
Command Transfer
Control
361998 © Dr. Dov Dori, Technion, Israel Institute of Technology
The time line flows from top to bottomThe time line flows from top to bottom
Drilling
FlangeDisk
Operator
Legend
Transformation linkAgent link
Instrument link
Object
Process
Characterization
Attribute value
Location
on in stack
on CNC
Feed
Location
on out stack
Make Holes
on CNC
Remove
Initial state
Final state
MetalCuttingUnit
Blow-up frame