knowledge modelling and management part b (8)jessicac/project/kmm/slides 2011... · 4 introducing...

45
1 Knowledge Modelling and Knowledge Modelling and Management Management Part B (8) Part B (8) Yun Yun - - Heh Chen Heh Chen - - Burger Burger http://www.aiai.ed.ac.uk/~jessicac/project/KMM http://www.aiai.ed.ac.uk/~jessicac/project/KMM

Upload: tranthuy

Post on 16-Aug-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

1

Knowledge Modelling and Knowledge Modelling and ManagementManagement

Part B (8)Part B (8)

YunYun--Heh ChenHeh Chen--BurgerBurgerhttp://www.aiai.ed.ac.uk/~jessicac/project/KMMhttp://www.aiai.ed.ac.uk/~jessicac/project/KMM

Page 2: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

2

An Example Semantic Web An Example Semantic Web Business Process ModellingBusiness Process Modelling

Language Language

Page 3: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

3

Introducing BPMLIntroducing BPMLA web based business process

modelling language

Page 4: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

4

Introducing BPMLIntroducing BPMLWhat is the full name ?

– Business Process Modelling Language.Who developed it ?

– Assaf Arkin, Intalio, Nov 13, 2002. Main characteristics:

– A semantic web version of a business process modelling language;

– Closer to software engineering/implementation level of details;

– Suitable to support software execution directly. – Relative comprehensive in covering process relative

conceptsReference Web Site:

– BPML: http://www.bpmi.org. – Why BPML? by John Hamilton, Senior Architect, Process Infrastructure:

http://www.ebizq.net/hot_topics/bpm/features/4068.html. (not examable)

Page 5: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

5

Main ConceptsMain Concepts

Activity, Process ContextActivity Set Activity Instance and States Activity:

– Simple activity– Complex activity – hierarchical

» process Nested processException process Compensation process

Page 6: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

6

BPML Activity Ontology BPML Activity Ontology

RedundantRelationships

Definition

AmbiguousColour Code

AmbiguousHierarchyNotation

Naming style:activity, process

Page 7: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

7

BPML Activity OntologyBPML Activity Ontology

Page 8: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

8

Simple ActivitiesSimple ActivitiesA simple activity can not be further decomposed.Operational:– Action: performs or invokes a single operation involving

exchange of input/output messages– Assign: assigns a new value to a property– Empty: no actionInvoke and control:– Call: instantiates a process and waits for its completion – Spawn: instantiates a process without waiting for its completionControl:– Delay: specify time delay (before moving on) – Fault: throws a fault in the current context– Compensate: invokes compensation for named process– Raise: raises a signal– Synch: waits to synchronise with (catch) a raised signal and then

discard it

Page 9: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

9

Complex ActivitiesComplex ActivitiesA complex activity is composed of other activities and may direct their execution.Sequential/Parallel execution:

– Sequence: sequential execution– All: parallel execution

Branching:– Choice: exclusive-or based on events (e.g. certain activities

being activated based upon receiving an external message of the context)

– Switch: exclusive-or based on the (truth) value of conditionsLooping:

– Foreach: executes the activity set (sequentially) once for each item in the item list

– Until: execution until a condition is true– While: execution while a condition is true

Page 10: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

10

Types of ProcessTypes of Process

Nested process.Exception process.Compensation process.A process definition includes:

– name, documentation, identity, persistent, event, parameters, activity set, compensation (p24).

Page 11: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

11

Activity ContextActivity Context

An activity context defines an environment for the execution of related activitiesA process definition includes one context definition that is shared by all activities that execute as part of that process – this is also called the process context Activity contexts may be hierarchical, since processes may be nestedA context has the concept of encapsulation and some capabilities of inheritance, e.g. a child context shares properties of its parents; but not vice versa, or with its siblingsA context definition includes:

– Atomic process, exception process, nested process, properties, schedule, signals and faults

Page 12: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

12

Communication Methods Communication Methods between processesbetween processes

Call/spawn: a process may call or spawn other processes that are within the same context or other similar contexts (not defined what are the similar contexts)Messages: one process may pass messages to other processes that may or may not be in the same activity contextSignals: a process may raise signals (stored in a variable) within the same context; these signals may be captured (sync) by other processes within the same context

Page 13: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

13

Signals and SynchronisationSignals and Synchronisation

Raise activity – raise a signal.Synch activity – synchronize on a signal.Used to control temporal dependency between different processes.Used for coordination of processes within the same context only.

Page 14: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

14

Activity Instance and States

Ready: no actionActive: process instance is instated and executed.Completing: all executing activities are finished, and get ready

to complete.Aborting: perform to abort the activity instanceNote: Cancelled is a state of an activity instance, but it is not recorded, as a cancelled activity is discarded, not stored.

Start status

Page 15: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

15

Exception HandlingException HandlingException processes handles exceptions and are a type of nested processes. Can only be instantiated once. Can only be instantiated when the parent process is in the active state. May be invoked by an input message, raised signals, or due to activities failed to complete. When instantiated, the parent process transits to the aborting state and its other nested processed terminates(those cannot terminate may abort); after all activities are terminated or aborted, the exception process is carried out. This ensures that only one exception process is carried out in one process context. When an exception process is finished, its parent process is transit to an aborted state. An exception process may abort and throw a fault in the context; when this happens a fault handler is invoked and executed.

Page 16: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

16

Fault HandlerFault HandlerA fault indicates an erroneous condition that prevents an activity form completing successfully or from recovering from another fault.When a fault is thrown in a context, the parent activity transits to the aborting state and terminates (or abort) all child activities; once all activities in the context are terminated (or aborted), a fault handler is executed. If activities in a fault handler executes successfully, the parent activity aborts; if any of those activities throws a fault, the parent activity aborts with the same fault. The detection and handling of exceptions and faults are described and operated within a process/context. Discussion of this approach:

– Adv: fault handling is local therefore it is more likely to provide good solutions for problem, and is also easier to monitor and keep track.

– Disadv: (1) may lose sight of overall strategies; similar faults may be handled inconsistently; (2) even when there is an overall strategy, inconsistent handling may still be difficult to spot; (3) it may also be tricky to detect and repair cross process/context faults, as all exception/fault handlings are local to a context.

Page 17: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

17

Compensation ProcessCompensation ProcessWhen a process encountered an exceptional condition that prevents it from completing that it should back-track (undo) from what it has done before aborting. A compensation process is a process defined as a part of a parent process for the purpose of reverting the affects of the parent process. A compensation process is often used in fault handlers to compensate for processes that have completed before the parent activity was asked to abort. A compensation process can only be invoked after the parent process is completed, if the parent process fails to complete, it should use fault handlers to recover and back-track. A process has only one compensation process.A process can only invoke it once.A fault handler may invoke necessary compensation processes of any process.

Page 18: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

18

Exception Handling ScenarioException Handling Scenario

ProcessEncountered

An Exception

InvokeAn

ExceptionProcess

TerminateAll

Childactivities

ExecuteException

process

AChild

ActivityMay be

Cancelled,CompletedOr aborted

message

signal

failed completion

An activeactivity may

throw a terminate fault

that finally reachan aborted state

ExceptionProcess may

Throw afault

Change processStatus to Aborted

Change Process status

To Aborting

InvokeFault

Handler, inc.Compensation

handling

FaultHandler

MayThrowA fault

…XOR links

exe. successfully

exe. successfullyexe. failed

exe. failed

Page 19: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

19

BPML by ExamplesBPML by Examples

Page 20: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

20

Activity Set definitionActivity Set definition

Page 21: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

21

Context DefinitionContext Definition

Page 22: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

22

Process DefinitionProcess Definition

(And output parameters)

Page 23: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

23

Example ModelExample Model

Page 24: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

24

XML RepresentationXML Representation

Use signals to control temporal dependency

Page 25: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

25

Process Process exampleexample

22

Page 26: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

26

Process Process exampleexample part 1part 1

Page 27: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

27

Process Process exampleexample part 2part 2

Page 28: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

28

Process Process exampleexample part 3part 3

Page 29: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

29

Process Process exampleexample

part 4part 4

Page 30: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

30

Summary: BPMLSummary: BPMLSuitable to operate in a distributed environmentA BPML PM is described in XMLDistinguishes different process types Has the concept of “hierarchical contexts” vs. “hierarchical processes”Defines process instance states explicitly and use them to define process behavioursMay use URI to identify processesGives explicit representation and handling of synchronisation, exception and fault handling and recovery Uses and assumed use of other standards and languages as a part of the language, e.g. Xpath, WSDL, XML Schema, Does not have a visual languageDoes not have formal semantic Does not provide modelling guidelines, or abundant modelling examplesDoes not have a data model

Page 31: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

31

Mapping BPML process types to IDEF3 processes

Page 32: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

32

Modelling PrimitivesModelling Primitives IDEF3 vs. BPMLIDEF3 vs. BPML

IDEF3:– And-split, or-split, xor-split – And-join, or-join, xor-join – Sequence and looping are indicated using temporal

links

BPML: – Sequence– All– Choice– Switch– Forall– Until– While

Page 33: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

33

Mapping Modelling PrimitivesMapping Modelling Primitives IDEF3 vs. BPMLIDEF3 vs. BPML

IDEF3:– And-split, or-split, xor-split – And-join, or-join, xor-join – Sequence and looping are indicated using temporal

linksBPML:

– Sequence– All– Choice (by event)– Switch (by conditions)– Forall– Until– While

Page 34: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

34

Example IDEF3 ModelExample IDEF3 Model

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

Page 35: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

35

Level 1 Sequence:

BPML Model Diagram 1

A All BC Switch DEFGH I1.2 1.3

Mapping an IDEF3 process to BPML Mapping an IDEF3 process to BPML -- 1 1

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

1

1.21.3

Page 36: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

36

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

1.2

B

C

Level 1.2 All BC:

BPML Model Diagram 2

Mapping an IDEF3 process to BPML Mapping an IDEF3 process to BPML –– 2 2

Page 37: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

37

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

1.3

1.3.1

1.3.2

Mapping an IDEF3 process to BPML Mapping an IDEF3 process to BPML –– 33

Level 1.3 Switch DEFGH :

BPML Model Diagram 3

Sequence DEG1.3.1

Sequence FH1.3.2

Page 38: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

38

Level 1.3.1 Sequence DEG:

Switch DE G

BPML Model Diagram 4

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

1.3.1

Mapping an IDEF3 process to BPML Mapping an IDEF3 process to BPML –– 44

Page 39: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

39

Level 1.3.1.1 Switch DE:

D

E

BPML Model Diagram 5

Mapping an IDEF3 process to BPML Mapping an IDEF3 process to BPML –– 55

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

1.3.1.11.3.1

Page 40: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

40

Level 1.3.2 Sequence FH:

F H

BPML Model Diagram 6

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

1.3.2

1.3.1

Mapping an IDEF3 process to BPML Mapping an IDEF3 process to BPML –– 66

Page 41: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

41

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

1

1.21.3

1.3.1

1.3.2

1.3.1.1

Summary of Mapping and BPML Model

A 1.2 1.3 I

1.3.1

1.3.2

Level 1.3.2 Sequence: F H

Level 1 sequence:

Level 1.2 All:

Level 1.3 Switch:

Level 1.3.1 Sequence: 1.3.1.1 G

Level 1.3.1.1 Switch:D

E

B

C

Page 42: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

42

Representing a BPML Model

A 1.2 1.3 I

1.3.1

1.3.2

Level 1.3.2 Sequence: F H

Level 1 sequence:

Level 1.2 All:

Level 1.3 Switch:

Level 1.3.1 Sequence: 1.3.1.1 G

Level 1.3.1.1 Switch:D

E

B

C

Process(ID, Type, Sub-processes).

Process(1, sequence, [a, process(1.2), process(1.3), i]).Process(1.2, all, [b, c]).Process(1.3, switch, [process(1.3.1), process(1.3.2)] ).Process(1.3.2, sequence, [f, h]). Process(1.3.1, sequence, [process(1.3.1.1), g]).Process(1.3.1.1, switch, [d, e]).

Page 43: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

43

Summary: Decomposition OverviewSummary: Decomposition Overview

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

AB

C

D

E

F

G

H

I

& XOR XOR&

XOR

Page 44: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

44

Brief Comparison and SummaryBrief Comparison and Summary

The OR-split junction is not included in BPML, but must be broken down into AND- and XOR-split junctions via hierarchical views.BPML does not have the notion of join junctions. IDEF3 is more expressive in operational logic that is arguably more intuitive visually.BPML is more explicit in its functional definitions that it is easier for (procedural) programming and control.To successfully implement an IDEF3 model, logic based system is suitable.To successfully implement a BPML model, (OO) programming based system is suitable.Those two modelling languages are complimentary and compatible that they may be used together: one for the logic layer and one for the implementation layer.

Page 45: Knowledge Modelling and Management Part B (8)jessicac/project/KMM/Slides 2011... · 4 Introducing BPML z What is the full name ? – Business Process Modelling Language. z Who developed

45

ReferencesReferences

[7] BPML: – See the local reading list directory, or– http://xml.coverpages.org/ni2003-08-29-

a.html

[7] BPML: – See the local reading list directory, or

[7] BPML: – See the local reading list directory, or