28
1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies Static/Dynamic workflows Tasks and Events Transition Systems Workflow Patterns Liveness Deadlocks

1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

Embed Size (px)

Citation preview

Page 1: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

1

Lectures 5,6 – Workflows and Internet Process Coordination

Middleware: the glue for network computingWorkflows and Internet WorkflowsEnabling TechnologiesStatic/Dynamic workflowsTasks and EventsTransition SystemsWorkflow PatternsLivenessDeadlocks

Page 2: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

2

Teleconferencing

Telemedicine

ElectronicMail

RemoteLogin

Financial

Layer 4 - Applications

Layer 3 - Middleware ServicesAuthentication

CoordinationStorage

Layer 2 - Transport Services

Layer 1 - Network Services

Text

Layer 0 - Technology Substrate

LANsWireless

DirectBroadcastSateliite

Video

ATM

Dial-upModems

VideoconferencingVideo & Audio

Services

WebServices

Audio

DistanceLearning

FinancialServices

Event Directory

ElectronicCommerce

FileTransfer

IP

Cable

FrameRelay

Page 3: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

3

Workflows

Informal definition.

Traditional applications:Office automation and document processingFactory automationBusiness

Internet workflows, iWM.Examples

Service gridsComputational grids

Page 4: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

4

Enabling technologies1980s 1990s 2000s

Sensors andWireless

Communication

Optical technologies forcommunication and data

storage

technology

time

Microprocessors

Page 5: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

5

Areas involved in iWM

HeterogeneousDatabaseSystems

KnowledgeEngineering

SoftwareEngineering

Modeling andAnalysis

Internet-BasedWorkflowManagement

DistributedSystems

SoftwareAgents

ComputerNetworks

Page 6: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

6

(b)

Process order

Assemble laptop

PC?

Assemble PC

Begin

Deliver product

End

Yes No

(a)

Prepare boxPrepare

motherboard

Install CPUInstall powersupply

Install memory

Start assembly of box andmotherboard

End assembly of box andmotherboard

Install screen

Install diskcontroller

(c)

Examine order

Gathercomponents

Assemble boxand motherboard

Installmotherboard

Install internaldisk

Install networkcard

Install videocard

Insert modem

Plug in CD andfloppy module

Plug in battery

Test assembly

Startassembly

End assembly

B

C

A

D

E

F

G

H

I

J

K

L

Page 7: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

7

Communication Plane

Resources for B

Communication for A

E

CD

G

F

Resources for G

Communication for G

Communication for BResource Plane

Resources for A

Resources for B

Resources for G

Process Plane

B

A

E

F

G

D C

Page 8: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

8

Lifecycle of a workflow

Creation – process definition

Process verification

Cases

Workflow enactment

The Workflow Management CoalitionMultibillion $ industryWorkflow Reference Model

Page 9: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

9

Other WorkflowEnactmentServices

WorkflowEnactmentServices

WorkflowClient

Applications

InvokedApplications

Process Definition Tools

Administrative &Monitoring Tools

Interface

5

Interface

4

Interface 1

Interface 2 Interface 3

Page 10: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

10

Static/dynamic workflows

Static workflows

Dynamic workflowsException handlingReversibility.

Page 11: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

11

WorkflowDescription

User

PlanningEngine

VerificationEngine

EnactmentEngine

ComponentDatabase

WorkflowDescription

Case Activation Record

UnanticipatedException Handling

User

ProgrammingLanguage

ComputerProgram

WorkflowDescriptionLanguage

AutomaticProgramming

ComponentLibraries

Compiler

ObjectCode

Data

ProcessorRunning

the Process

WorkflowDatabase

(a) Workflows (b) Programs

Dynamic Workflows

Static Workflows Static Programs

Dynamic Programs

ProgramLibraries

Run-Time ProgramModification Requests

Page 12: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

12

Workflow enactment

Case: a particular instance of a workflow

Workflow enactment engine performs a coordination function

Tasks/Activities and Events.

Page 13: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

13

ProcessDefinition

ProcessInstantiation

Task (Activity)

Task (Activity)

Inactive Active

SuspendedCompleted

Enactment

Page 14: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

14

1

2 5

6

Install powersupply

7

4

Preparecase

Preparemotherboard

Install CPU

Install memory

Install diskcontroller

Installscreen

3

8

Done

9

Page 15: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

15

Transition systems

A directed graph: Nodes the states of the systemEdges eventsTwo distinguished states:

Initial state – no incoming edgeGoal/termination state – no outgoing edge

Example: laptop assembly. States labeled by the events causing the transition.

Page 16: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

16

S1

S2

S4

S3

S17

S6S5

S7

S10

S8

S13

S11 S12

S16

S14

S18

S9

S15

S19

S20

S21

(1)

(2) (5)

(2,5)(3)

(4)

(3,5) (2,6)

(3,6)

(4,5)

(4,6)

(4,7)

(4,8)

(9)

(3,8)

(2,8)

(2,7)

(3,7)

(6)

(7)

(8)

[2] [5][2,5]

[3,5] [2,6][2]

[6][3] [5]

[3,6]

[3] [6][4]

[5]

[4,5]

[5]

[4][6]

[4,6]

[6]

[4,7]

[4]

[7]

[7]

[8]

[9]

[4]

[4,8]

[4][8]

[8][2]

[2,8]

[7][2]

[2,7]

[3] [7]

[3,7]

[3]

[3]

[8][3,8]

1

2 5

6

Install powersupply

7

4

Preparecase

Preparemotherboard

Install CPU

Install memory

Install diskcontroller

Installscreen

3

8

Done

9

Page 17: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

17

Algorithm to construct the transition system from the event-task graph

1. Construct the set of E of individual events:

E={1,2,3,4,5,6,7,8,9}2. Split it into equivalence classes based upon the causality relationship:

E1 = {1,2,3,4,9} E2 = {1,5,6,7,8,9} The two sets are not disjoint!!

Page 18: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

18

Algorithm to construct the transition system from the event-task graph

3. Add to E all feasible combinations of events. Each feasible combinations contains one event from each class. Example:

[2,5], [3,5] are feasible combinations

[2,3] is not a feasible combination

Page 19: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

19

Algorithm to construct the transition system from the event-task graph

4. Construct the set of states S. Initially S contains only the initial state.Construct the set of all events feasible in that

state.For each event in that state label the state

reachable when the event occurs.Add the new state to SRepeat the process for every state in S.

Page 20: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

20

ChoicesA

B E

CD

G

F

Page 21: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

21

Liveness

A

B

CD

E

F

G

Page 22: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

22

Basic workflow patterns

Sequence

AND-split

Synchronization

XOR – spli

XOR – merge

OR – split

Multiple merge

Discriminator

N out of M join

Deferred choice

Page 23: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

23

A B C

a

A

B

C

AND

b

A

B

c

AND C

A

B

e

XOR CA

B

C

XOR

d

A

B

C

OR

f

A

B

C

AND

g

DXOR A

B

C

AND

h

DDIS

A

B

CAND

i

D

2/3 EA

B

C

XOR

j

X

Page 24: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

24

Resources and deadlocks

t1

t2

t3

t4

time

task A task B

r

q

Page 25: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

25

Agents and workflow enactment

Hybrid systems: some tasks carried out by computers, others by humans.

Why use agents for workflow enactment?

Page 26: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

26

WorkflowEnactment Engine

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Page 27: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

27

EnactmentEngine AB

Top-LevelEnactment

Engine

Case Activation Record

Control Agent B

Task B

Control Agent A

Task A

Control Agent C

Task C

Control Agent D

Task D

Control Agent E

Task E

t0

t1

time

t2

t3

t4

t5

t6

t7

t8

EnactmentEngine CDE

Page 28: 1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies

28

AuthoritativeWorkflow

Enactment Engine

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Control Agent

Task

Top-LevelWorkflow

Enactment Engine

AuthoritativeWorkflow

Enactment Engine