29
EPClets A Lightweight and Flexible Textual Language to Augment EPC Process Modeling By Malinda Kapuruge, Jun Han, Alan Colman and Ulf Regg 1 SCC 2014, ANCHORAGE, AK

EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

Embed Size (px)

DESCRIPTION

Event-driven Process Chains (EPC) has been widely adopted as a business process modeling notation. The common practice is to use a software tool to build a directed graph consisting of EPC constructs to model a business process. If a change is required, the constructed graph is partially dismantled and reconstructed. While the graph-based representation is beneficial in providing visualization, we investigate in this paper the advantages of having a textual representation alongside the graph representation. We introduce a textual language, called EPClets, to represent an EPC graph as a set of declarative event-action rules. The EPC graph can be constructed incrementally and automatically from the textual representation, separating the business- process specification and graph (re)construction concerns. The advantages of our approach have been evaluated through a controlled experiment. The experimental results suggest that having a textual representation alongside the graph representation increases the efficiency compared to an entirely graph-based approach.

Citation preview

Page 1: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

1

EPCletsA Lightweight and Flexible Textual Language to

Augment EPC Process Modeling

By Malinda Kapuruge, Jun Han, Alan Colman and Ulf Ruegg

SCC 2014, ANCHORAGE, AK

Page 2: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

2

Outline

• Event-driven Process Chains (EPC)• Emergence of Textual representations• EPC Markup Language (EPML)• Limitations of EPML• EPClets• Tool support• Evaluation results• Conclusions

Page 3: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

3

Event-driven Process Chain

• Represent a process/flow.• Very basic constructs.– Function– Event– Arc– Connectors (AND, OR, XOR)

• Easy to learn.• Few constraints.

Page 4: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

4

Event-driven Process Chain

• A graphical modelingnotation.

• Used by Graphical modeling tools– ARIS Tool set– Visio– Semtalk

Page 5: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

5

In a parallel universe…

Page 6: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

6

Textual representations are emerging for Graphical notations…

Page 7: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

7

• Allows modifying/defining graphical models using a textual language.

• Agility and efficiency. • Less dismantling/assembling of graphs.– Separation of concerns– Algorithmic graph construction

• E.g., UML Modeling.– UMLets (http://www.umlet.com/)– PlantUML (http://plantuml.sourceforge.net/)

Textual representations

Page 8: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

8

Page 9: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

9

How about EPC?

Page 10: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

10

A textual representations for EPC?

• EPC Markup Language (EPML)– Mendling et al., 2006– http://www.mendling.com/EPML/

• An excellent solution to interchange EPC process models. – Export from one tool and import into another.– Describes an EPC graph.

Page 11: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

11

EPML

Page 12: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

12

EPML as a textual representation?

• EPML describes graph semantics.– Node* connections– Direction of arcs– Node positioning

• No explicit process semantics.– When the function “order meal” become

executable?– What happens when function “order meal” is

executed?

* Node = Event, Function or a Connector (AND, OR, XOR)

Page 13: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

13

EPClets• A textual language to augment EPC.• Explicit process semantics (instead of graph semantics).

– The post- and pre-conditions of each business activity– A set of declarative Event-action-event rules

• Graph construction concerns are handled by the EPClets tool.

Page 14: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

14

EPClets

• NOT an alternative to EPML.– EPML keeps its place as an interchange format– EPML descriptions can be exported from EPClets

• Tool support– An eclipse plugin

Page 15: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

15

EPClets

Page 16: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

16

Page 17: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

17

EPClets

• Each declarative EPClets statement in the process description is converted to an atomic graph

Page 18: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

18

EPClets

• All the atomic graphs are iteratively linked to create the process graph.

• Linking patterns– A linking event has a predecessor or a successor or both?

Page 19: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

19

Linking patterns

Page 20: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

20

Advantages• Suitable for heterogeneous and agile process modeling

environments.– Declarative statements can be added or removed– Tool automatically adjust/re-align the graph

• Separation of concerns– User only specifies pre- and post-conditions of a business activity.

• Less error prone – Graph construction algorithm make sure a correct graph is constructed.

• Eye candy – Compact (10 lines vs 300+ lines)– No XML– No graph semantics

Page 21: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

21

Disadvantages

• Not suitable as an interchangeable format.– Loss of coordinates upon export– The coordinates are determined by the tool upon

import• Typos can lead to broken graphs– E.g., a typo in a pre-condition can make the tool to

assume two different events

Page 22: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

22

Evaluation

• Controlled experiments• EPClets tool vs Any EPC modeling tool• Participants are asked to – Model a process– Perform 3 adaptations

• The time taken to perform each task is noted.

Page 23: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

23

Evaluation

38.19 34.17 36.19 28.89

Page 24: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

24

Discussion

• We observed…• With graph-based approach,– Users spent more time re-positioning graphs– Dismantling graphs can be error prone (syntactic)

• With EPClets approach,– Graph re-positioning is handled by the algorithm– Always produces a syntactically valid graph

Page 25: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling
Page 26: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

26

Question…!

• How to integrate an N number of related business processes into one?– (A) Using a Graphical tool (VISIO/ARIS)?– (B) Using textual tool (EPClets)?

Page 27: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

27

Conclusions

• EPClets is a textual language to augment EPC process modeling.

• EPClets provides the ability to efficiently model and adapt EPC process models.

• EPClets separates the process specification concerns from graph construction concerns.

• EPClets capabilities have been experimentally evaluated.

Page 28: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

28

Page 29: EPClets - A Lightweight and Flexible Textual Language to Augment EPC Process Modeling

29

Photo credit

• http://addictedto24.blogspot.com/• http://imconfident.wordpress.com/• http://wscounselblog.com/