Transcript
Page 1: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

1

Supporting Adaptation Patterns in the Event-driven

Business Process Modelling Paradigm

Malinda Kapuruge, Jun Han and Alan Colman

WISE 2013 - Nanjing, China

Page 2: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

2

Outline

• Adaptation patterns.

• Event-driven business processes .

• Support for adaptation patterns in Event-driven business processes.

• Key takeaways and future research.

• Questions.

Page 3: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

3

• A control flow structure specifies the order of execution of activities.

• Example 1: B should execute after A (Sequential).

• Example 2: C and D both need to be executed after B (Parallel).

• How to describe the changes to the control-flow?

• Use change primitives:

Add Node X, Remove Edge A→B, Add Edge A→X, Add Edge X→B.

• Low level -> Perhaps a higher level operation?.

• Common Adaptation Patterns, anyone?

Control flow changes

A BC

DE F

X

x

Page 4: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

4

Adaptation Patterns

• In 2008, Weber et al. identified a set of Change Patterns and Features that

should be supported by Process Aware Information Systems (PAIS).

Weber, B., Reichert, M., Rinderle-Ma, S, Change patterns and change support features – Enhancing flexibility in process-aware information systems. Data & Knowledge Engineering. Vol. 66, pp. 438-466 (2008)

• A common set of 14 high level adaptation patterns.

• Based on observations in

• Healthcare domain (98 process models)

• Automotive domain (59 process models)

Page 5: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

5

Few examples ...

A

XXB A B

A BC

DE F F

C

DE A B

X X

A B C A B C

AP1a. Insert (Serial)

AP1b. Insert (Parallel)

AP5. Swap process fragment

Page 6: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

6

Adaptation Patterns - Advantages

• Provide high level operations to perform control-flow adaptations.

Single Adaptation Pattern = Many change primitives

• Based on observations of real world business process models.

• Provide a criteria to analyse the support for adaptability in process aware

information systems.

Good enough for us to investigate further...!

Page 7: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

7

Event-driven Processes

• An alternative paradigm to workflow-based process modelling.

• Events -> Action -> Events -> Action -> Events...

• A combination of events → pre-/post-conditions of an Action. E.g.,

Event A situation of interest (passive) e.g., Allergy Test Done

Action An execution (active) e.g., Treat Patient

Activity: TreatPatient { pre_ep: DoctorReferralRecieved AND AllergyTestDone; post_ep: PatientTreated AND (NextAppointmentReqd XOR NoAppointmentReqd);}

Page 8: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

8

Event-driven approaches - Examples

• Alexopoulou, N., Nikolaidou, M., Chamodrakas, Y., Martakos, D.: Enabling On-the-Fly Business Process Composition through an Event-Based Approach. In: Hawaii International Conference on System Sciences, pp. 379-389. IEEE Computer Society, (2008)

• Dayal, U., Hsu, M., Ladin, R.: Organizing long-running activities with triggers and transactions. SIGMOD Rec. Vol. 19, pp. 204-214 (1990)

• Geppert, A., Tombros, D.: Event-based distributed workflow execution with EVE. In: Proceedings of the IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing, pp. 427-442. Springer-Verlag, (1998)

• Paschke, A., Kozlenkov, A.: Rule-Based Event Processing and Reaction Rules. In: Governatori, G., Hall, J., Paschke, A. (eds.) Rule Interchange and Applications, vol. 5858, pp. 53-66. Springer Berlin Heidelberg (2009)

• And some commercial products• JBoss Drools and JESS

Page 9: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

9

Support for Adaptation Patterns in Event-driven Processes

• Adaptation patterns are proposed mainly for Workflows.

• However, should equally be applicable for other paradigms too.

• How they are applicable in event-driven processes,

• E.g., Insert an activity -> How to change event-action rules?

• Differences in paradigms

• Change primitives such as Remove/Add Node are applicable.

• Change primitives such as Remove/Add Edge are NOT applicable.

• Use change primitives applicable for the Event-driven processes.

• Change pre- and post-conditions.

Page 10: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

10

Our Contribution

• Explain how Adaptation Patterns are applicable in Event-driven paradigm.

• Use change primitives compatible with Event-driven paradigm.

• Present a common language (EventLang) and meta-model to represent

event-driven processes.

• Use EventLang to demonstrate that how all 14 adaptation patterns are

supported in Event-driven paradigm.

Page 11: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

11

Event Lang

• An event-driven language is required to show how the adaptation patterns are

supported.

• However there are many such languages.

• We use Event-Lang, which is a language designed with following objectives:

• Minimalistic: Consist of minimal concepts to support process modeling

constructs used in the original article (Weber et al., 2008).

e.g., activity, process fragments and definition.

• Representative: Be independent of the existing event-driven

approaches, yet provide an abstract representation of them so that this

work could be generally applicable.

Page 12: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

12

Event Lang – Meta model

+id

Process Fragment

Event

+id

Activity+id+pre_ep+post_ep+evaluation_rules

Process Definition+id+CoS+CoT

Instantiated / Terminated byGenerated / Initiated by

Page 13: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

13

Event Lang - Example

ProcessDefinition Hospital_OPDProcess{ProcessFragment TreatmentSubProcess{

Activity OpenPatientFile{pre_ep: PatientRequestRecieved;post_ep: AssignedToADoctor XOR

RequestRejected;}...Activity TreatPatient{

pre_ep: DoctorReferRecieved AND AllergyTestDone;

post_ep: PatientTreated AND (NextAppointmentReqd XOR NoAppointmentReqd);

}Activity ScheduleApntmnt {

pre_ep: NextAppointmentReqd;post_ep: AppointmentScheduled;

}Activity ClosePatientFile {

pre_ep: PatientTreated AND NoAppointmentReqd;

post_ep: CaseClosed;}

}ProcessFragment PatientDataRetrieveal { ... }

}

List

ing

Page 14: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

14

Change Primitives

add A : add an activity A.

delete A : delete an activity A.

assign A.prop1=B.prop2 : the value of a property prop1 of an activity A is assigned as the value of a property prop2 of an activity B.

Page 15: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

15

Example

add A : add an activity A.

delete A : delete an activity A.

assign A.prop1=B.prop2 : the value of a property prop1 of an activity A is assigned as the value of a property prop2 of an activity B.

A

XXB A B

AP1a - Insert (Serial)

add X ;assign A.post_ep = X.pre_ep ;assign B.pre_ep = X.post_ep ;

Page 16: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

16

Example(2)

AP5 – Parallelize

E F G H I E G IF

Hassign G.pre_ep = E.post_epassign H.pre_ep = E.post_ep assign I.pre_ep = (F.post_ep AND G.post_ep AND H.post_ep)

add A : add an activity A.

delete A : delete an activity A.

assign A.prop1=B.prop2 : the value of a property prop1 of an activity A is assigned as the value of a property prop2 of an activity B.

Page 17: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

17

• Weber et al. introduced 14 adaptation patterns commonly observed in

business processes.

• This paper demonstrated how all the adaptation patterns are supported in

event-driven paradigm.

• We presented an event-driven language (EventLang) that is minimalistic and

representative of the event-driven paradigm.

• We tested all these adaptation patterns with Serendip (Event-driven) process

enactment engine.

• Bridges the knowledge-gap between high-level adaptation patterns and their

applicability to the event-driven paradigm.

Key Takeaways

Page 18: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

18

• As a reference in supporting adaptation patterns at the implementation level

by suitably mapping to specific language.

A high-level API to support common adaptations ?

• Modern Complex Event Processing (CEP) literature supports more

expressive event correlation operations.

E.g., temporal-intervals and event windows

• Comprehensiveness of applying adaptation patterns on running instances.

Workflow engine vs Event-driven engine. Which is more flexible, in which

situations?

Future Research Directions

Page 19: Supporting  Adaptation Patterns  in the Event-driven  Business Process Modelling Paradigm

19

Thank You !

mkapuruge [at] swin.edu.au


Recommended