1998 © Dr. Dov Dori, Technion, Israel Institute of Technology

bouncerarcheryAI and Robotics

Nov 14, 2013 (3 years and 11 months ago)

75 views

1

1998
© 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 Methodology


2

1998
© 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.


3

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Major shortcomings of current OO
methodologies


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.

4

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Object
-
Process Methodology (OPM)
Principles


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.

5

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

OPM 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
.

6

1998
© 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, Things

B
1

T
1

P
1

7

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Universe

Domain (World)

System

Environment

legend

Object

Process

Interaction

,Universe, Domain,

System, Environment, Interaction

8

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

System, 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.

9

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

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.

10

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

A Generic Object
-
Process Diagram

Interaction

System

Environment

Domain

Legend

Object




Process




Transformation


link




Aggregation



Many m

Universe

m

1
..m

11

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Structure



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:

an association that holds between two or more things (objects
and/or processes) in the system for some non
-
negligible time.


12

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Structural relations are divided into two groups:


1
. General structural relations



bi
-
directional
structural link:


Disk
stores

File
Disk
stores
is stored in
File
(a)
(b)
unidirectional
structural link:

2
. Fundamental structural relations

13

1998
© 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 Relation

14

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

a structural relation that defines the relation
between the whole and its parts.

Symbol:


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.

15

1998
© 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
-
Characterization

Display

16

1998
© 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:


A


B


C


D

is in front of

17

1998
© 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:

An object generalizes objects and process
-

processes.

18

1998
© 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 example

Lens

Case

Camera

Capturing
-

Medium

Electronic
-

Camera

Analog
-

Camera

is attached
-
to

Magnetic

Tape

Photographic

Film

uses

uses

uses

Operation
-

mode

Focal
-

length

holds

19

1998
© 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 links

20

1998
© 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
.

Enablers

21

1998
© 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 Examples

22

1998
© 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 links

23

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

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

24

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

The 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.

25

1998
© 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 unfolded

26

1998
© 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 unfolded


The OPD shows
both the static
structure

and the
dynamic
behavior

of
the system in one
model.

27

1998
© 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 State

28

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Status Representations

Implicit

Status
Representation

Explicit

Status
Representation

29

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

The 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


30

1998
© 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:
a complexity management tool

31

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Two Types of Scaling

Unfolding

-

uses , , or , any general
structural link, or state expression.
Reverse direction:

Folding.

Blow
-
up

-

the frame of the thing is blown up and inner
details are exposed.
Reverse direction:

Shrinking
.


P
1

P
1

P
1.1

P
1.2

B
1.1

P
1

P
1.1

P
1.2

B
1.1

Blow
-
up of P
1

Unfolding of P
1

32

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Two Types of Scaling:

scaling of an object


B
1

B
1

B
1.1

B
1.2

P
1.1

B
1

B
1.1

B
1.2

P
1.1

Blow
-
up of B
1

Unfolding of B
1

33

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

The Flange Drilling System

Computerized Numeric

Control (CNC) Machine

Drilling

Flange

Disk

Operator

Legend

Transformation


link

Agent link

Instrument link

Object

Process

34

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Structural Links:

aggregation as an example

Drilling

Flange

Disk

Operator

Legend

Transformation


link

Agent link

Instrument link

Object

Process

CNC Machine

Control

Controller

Metal

Cutting Unit

Aggregation

35

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

Blow
-
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

36

1998
© Dr. Dov Dori, Technion, Israel Institute of Technology

The time line flows from top to bottom

Drilling

Flange

Disk

Operator

Legend

Transformation


link

Agent 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

Metal

Cutting

Unit

Blow
-
up frame