supporting adaptation patterns in the event-driven business process modelling paradigm

Post on 11-May-2015

271 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

The event-driven business process modeling has been emerged as an alternative paradigm to the traditional workflow-based business process-modeling paradigm. One of the influencing factors for using this new paradigm is the flexibility and the agility it provides in supporting business process change. Weber et al. have proposed 14 high-level adaptation patterns that need to be supported by a flexible process-aware information system irrespective of the chosen paradigm. In this presentation we present a paper that investigate whether the event-driven paradigm can satisfactorily support these adaptation patterns; if so, how an event-driven approach should support these adaptation patterns. We also point to the future research directions that this work can lead to. Paper available at: http://link.springer.com/chapter/10.1007/978-3-642-41154-0_22

TRANSCRIPT

1

Supporting Adaptation Patterns in the Event-driven

Business Process Modelling Paradigm

Malinda Kapuruge, Jun Han and Alan Colman

WISE 2013 - Nanjing, China

2

Outline

• Adaptation patterns.

• Event-driven business processes .

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

• Key takeaways and future research.

• Questions.

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

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)

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

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

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);}

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

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.

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.

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.

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

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

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.

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 ;

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.

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

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

19

Thank You !

mkapuruge [at] swin.edu.au

top related