30-jun-151 semantic business process for improved exception handling extend bpmn, with semantic...

38
Jun 27, 2022 1 Semantic business Semantic business process for process for improved exception improved exception handling handling Extend BPMN, with semantic Extend BPMN, with semantic data, to enforce exception data, to enforce exception handling - for robust handling - for robust processes processes

Post on 21-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 1

Semantic business Semantic business process for improved process for improved exception handlingexception handling

Extend BPMN, with semantic Extend BPMN, with semantic data, to enforce exception data, to enforce exception handling - for robust processeshandling - for robust processes

Page 2: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 2

Semantic business Semantic business process for improved process for improved exception handlingexception handling

A thesis submitted as a requirement for a Master's degree in A thesis submitted as a requirement for a Master's degree in the Faculty of Natural Sciencesthe Faculty of Natural Sciences

By: Ziv Ben-EliahuBy: Ziv Ben-EliahuSupervisor: Michael ElhadadSupervisor: Michael Elhadad

Department of Computer ScienceDepartment of Computer ScienceBen-Gurion University of the Negev, IsraelBen-Gurion University of the Negev, Israel

Page 3: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 3

Things to comeThings to come IntroductionIntroduction

Exceptions in business processesExceptions in business processes Our contribution: elicit potential exceptions at Our contribution: elicit potential exceptions at

modeling timemodeling time

-------------------------------------------------------------------------- Previous workPrevious work

Formal methods for verification, runtime Formal methods for verification, runtime analysis.analysis.

Our approachOur approach Use semantic and structural information to infer Use semantic and structural information to infer

potential exceptions modeling time.potential exceptions modeling time. Empirical EvaluationEmpirical Evaluation

Dataset, usability experimentDataset, usability experiment ConclusionsConclusions

Page 4: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 4

IntroductionIntroduction

Process execution may failProcess execution may fail Identifying potential problems Identifying potential problems

as early as possible is criticalas early as possible is critical EngineeringEngineering ApplicationsApplications ProductionsProductions Business processesBusiness processes

Define Define problemsproblems: any deviations : any deviations from the normal flowfrom the normal flow

Page 5: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 5

IntroductionIntroduction

2 aspects considered:2 aspects considered: how to identify exceptionshow to identify exceptions how to handle exceptionshow to handle exceptions

enforce handlingenforce handling

applied to Business Process applied to Business Process Models (and BPMN specifically)Models (and BPMN specifically)

Page 6: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 6

Introduction: BPMNIntroduction: BPMN

Page 7: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 7

To make a long story shortTo make a long story short

Before

Page 8: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 8

To make a long story shortTo make a long story short

Business analysts seldom use Business analysts seldom use Exception FlowException Flow Empirical review of 302 BPDs – we Empirical review of 302 BPDs – we

found only 3% with exceptions.found only 3% with exceptions.

To encourage them:To encourage them:

add add intuitiveintuitive semantic data semantic data infer less intuitive exception datainfer less intuitive exception data verify handlingverify handling

Page 9: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 9

To make a long story shortTo make a long story short

After (our contribution)

Page 10: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 10

Our ContributionOur Contribution

Intervene during modeling, in an intuitive Intervene during modeling, in an intuitive and non-intrusive mannerand non-intrusive manner

Remind the business analyst he should pay Remind the business analyst he should pay attention to errorsattention to errors

Do not deal with handling strategies (how Do not deal with handling strategies (how to organize compensation)to organize compensation)

Do not want too many “false alarms”Do not want too many “false alarms” Do want to catch as many correct errors as Do want to catch as many correct errors as

possiblepossible Key issue we address: what knowledge on Key issue we address: what knowledge on

the activity and the process is helpful to the activity and the process is helpful to raise such warningsraise such warnings

Page 11: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 11

To make a long story longTo make a long story long

BackgroundBackground Related work: handling, verifyRelated work: handling, verify IDE as motivation (intuitive)IDE as motivation (intuitive)

Early detection of exceptions: Early detection of exceptions: handling exceptions at modeling handling exceptions at modeling time.time.

Semantic activity classification Semantic activity classification to infer potential exceptions.to infer potential exceptions.

Empirical EvaluationEmpirical Evaluation

Page 12: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 12

Background: Exceptions in BPMBackground: Exceptions in BPM

[Bonatti[Bonatti et al. et al.04] chooses optimal web 04] chooses optimal web service – failure handled by service – failure handled by automatically replacing service by automatically replacing service by another equivalent one.another equivalent one.

[Shang[Shang et al. et al.07] collaborative exception 07] collaborative exception handling platform proposes handling handling platform proposes handling strategies (at failures)strategies (at failures)

[Adams 07] records handling [Adams 07] records handling decisions, attempts to re-use, and decisions, attempts to re-use, and reverse-engineer into modelreverse-engineer into model

Handling exceptions at execution time

Page 13: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 13

Verification of BPEL/ECAVerification of BPEL/ECA

[Fu[Fu et al. et al.04] WSAT: analyzes web 04] WSAT: analyzes web services composition using model-services composition using model-based formal methods.based formal methods.

[Bry[Bry et al. et al.06] realizing business 06] realizing business processes with Event-Condition-processes with Event-Condition-Action rules (instead of BPEL) with Action rules (instead of BPEL) with datalog-like verification.datalog-like verification.

[Casati[Casati et al. et al.99] suggests ECA-Patterns 99] suggests ECA-Patterns to the design of exceptionsto the design of exceptions

Verification of exception handling in execution

languages

Page 14: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 14

Verification of BPMNVerification of BPMN

[Dijkman[Dijkman et al. et al.08] transform BPMN to Petri-08] transform BPMN to Petri-Nets then uses Petri-net analysis for Nets then uses Petri-net analysis for verificationverification

[Wong[Wong et al. et al.07] propose a CSP-based 07] propose a CSP-based semantics of BPMN to allow model semantics of BPMN to allow model analysis including exception handlinganalysis including exception handling

Verification at modeling time

Page 15: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 15

Exception handling in WFException handling in WF

[Russell[Russell et al. et al.06] (a) graphical lang. for exception 06] (a) graphical lang. for exception handling, (b) handling patterns per exceptionhandling, (b) handling patterns per exception

[Song[Song et al. et al.03] (a) exception specification in 03] (a) exception specification in workflow definition, (b) an exception workflow definition, (b) an exception handling mechanismhandling mechanism

[Eder[Eder et al. et al.95] specify whether special tasks are 95] specify whether special tasks are essentialessential and whether there are and whether there are compensationcompensation

Handling exceptions at modeling time in other

workflow language

Page 16: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 16

Our approachOur approach

Identify exceptions at Identify exceptions at modeling timemodeling time. . Many focus on runtime.Many focus on runtime.

Current verification handles only explicit Current verification handles only explicit exception. We elicit implicit exceptions.exception. We elicit implicit exceptions.

Verification of exceptions requires Verification of exceptions requires extending BPMN specifications.extending BPMN specifications.

An intuitive method for a business An intuitive method for a business analyst should involve business analyst should involve business semanticssemantics

Except [Adams], we did not find Except [Adams], we did not find evaluations of system usabilityevaluations of system usability

Page 17: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 17

A better way to handle A better way to handle exceptions…exceptions…

Many programming languages require handlers Many programming languages require handlers at compilation time (Java, ADA…)at compilation time (Java, ADA…)

Exception handling at design time

IDE is our motivation

Page 18: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Why BPMNWhy BPMN

BPMN is the standard de-factoBPMN is the standard de-facto Capture models of business activity Capture models of business activity

in an explicit formin an explicit form Model description can be approved Model description can be approved

by all stakeholders (balancing by all stakeholders (balancing expressivity and readability).expressivity and readability).

Model description can serve as Model description can serve as abstract specification of executable abstract specification of executable process.process.

Apr 19, 2023 18

Page 19: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Why ProseroWhy Prosero

Models in the repository are Models in the repository are annotated with semantic meta-annotated with semantic meta-data, for the matching data, for the matching procedureprocedure

Future version could:Future version could: Use the repository data to infer on Use the repository data to infer on

local semanticslocal semantics Use the local semantics for the Use the local semantics for the

matching procedurematching procedure 19Apr 19, 2023

Page 20: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 20

Background - summaryBackground - summary

It is important for BPDs to be It is important for BPDs to be as close to reality as possible; as close to reality as possible; including exception handling.including exception handling.

““Exception” in broader terms.Exception” in broader terms. We reviewed several methods We reviewed several methods

to add semantic metadata to a to add semantic metadata to a BPD. But few methods are as BPD. But few methods are as intuitive as IDEs, and those do intuitive as IDEs, and those do not support BPMN.not support BPMN.

Page 21: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 21

Objectives: early detectionObjectives: early detection

1)1) How do we prevent the How do we prevent the business analyst from missing business analyst from missing possible exceptions, but possible exceptions, but without interrupting his work without interrupting his work on the happy path?on the happy path?

2)2) How can we help the business How can we help the business analyst decide which exception analyst decide which exception an Activity might throw?an Activity might throw?

Page 22: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 22

SolutionSolution

1)1) Extend BPMN ActivityExtend BPMN Activity ErrorsErrors HandlersHandlers ParametersParameters

2)2) Offer recommendationOffer recommendation ClassificationsClassifications ExceptionsExceptions Inference Relations (Inference Relations ())

We constructed generic listsWe constructed generic lists

<<elementselements xsi:type="bpmn:Task" xsi:type="bpmn:Task"

name="Don't Worry">name="Don't Worry">

<<eventHandlereventHandler

Trigger="Error" Trigger="Error"

name="IsWorried" />name="IsWorried" />

<<errorserrors name="IsWorried" /> name="IsWorried" />

<<errors errors name="Timeout" /> name="Timeout" />

</elements></elements>

o Perform action Perform action Action failed Action failedo Complex action Complex action Timeout Timeouto Send Send Send rejected Send rejectedo Receive Receive Receive rejected Receive rejectedo Query Query Query failed Query failedo Update Update Update rejected Update rejected

Page 23: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Infer Potential Errors from Infer Potential Errors from Semantic DataSemantic Data

When semantic parameters of When semantic parameters of construct are known, one can construct are known, one can infer potential errors.infer potential errors.

1.1. Activity is SendActivity is Send

2.2. Activity requires authenticationActivity requires authentication

1.1. Authentication failsAuthentication fails

2.2. Send failsSend fails

3.3. Send rejectedSend rejectedApr 19, 2023 23

Page 24: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 24

Define ConstructsDefine Constructs

Define construct as:Define construct as:- ActivityActivity- Semantic classSemantic class- ExceptionsExceptions

Functional classes:Functional classes: Internal-ActivityInternal-Activity Send-ReceiveSend-Receive Receive-Process-Receive-Process-

ReplyReply

Page 25: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 25

Define TemplatesDefine Templates

Our semantic parameters can be associated Our semantic parameters can be associated with an abstract sub-process (Update, Notif…)with an abstract sub-process (Update, Notif…)

Page 26: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 26

Template InstantiationTemplate Instantiation

The abstract pattern, from the RMR, is The abstract pattern, from the RMR, is instantiated into the CMRinstantiated into the CMR

Page 27: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

HypothesisHypothesis

Use of semantically annotated Use of semantically annotated constructs and patterns at constructs and patterns at modeling time will:modeling time will:

Detect early potential errorsDetect early potential errors Remain usable by analystsRemain usable by analysts

Small time increaseSmall time increase High quality increaseHigh quality increase

More benefit for complex More benefit for complex processesprocesses

Apr 19, 2023 27

Page 28: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

MethodologyMethodology

Collect dataset: 11 process Collect dataset: 11 process models of various complexities.models of various complexities.

Analyze error handling in Analyze error handling in dataset.dataset.

Re-model processes using Re-model processes using implemented BPMN modeling implemented BPMN modeling tool (Prosero).tool (Prosero).

Measure usability parametersMeasure usability parameters Measure quality of resulting Measure quality of resulting

models.models.Apr 19, 2023 28

Page 29: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 29

EEvaluationvaluation

ComplexityComplexity Business ProcessBusiness Process

SimpleSimpleDeliver item, Return goods, Deliver item, Return goods, Issue creditIssue credit

MediumMediumReceive returned goods, Receive returned goods, Perform disposition, Perform disposition, Administer return requestAdminister return request

ComplexComplexUpdate return, Approve Update return, Approve return, HR Hiring, Software return, HR Hiring, Software defect management, Software defect management, Software release productrelease product

Page 30: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

ResultsResults

Apr 19, 2023 30

Comple-xity level Source REC% ACC% PRE% Time

Simple origin. 16.67 55.6 33.3 5:36

enhan. 50.0 58.3 38.9 7:14

Medium origin. 50.0 84.1 66.6 5:59

enhan. 83.3 82.1 66.7 9:55

Complex origin. 16.89 64.5 50.0 14:23

enhan. 54.1 73.1 50.0 17:31

Page 31: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 31

Comple-xity level Source REC% ACC% PRE% Time

Simple origin. 16.67 55.6 33.3 5:36

enhan. 50.0 58.3 38.9 7:14

Medium origin. 50.0 84.1 66.6 5:59

enhan. 83.3 82.1 66.7 9:55

Complex origin. 16.89 64.5 50.0 14:23

enhan. 54.1 73.1 50.0 17:31

Added exceptionShould have added

Correct exceptionsAll exception added

Appropriate choices

Page 32: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 32

Complexity metricsComplexity metrics

Page 33: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 33

ConclusionsConclusions

We provide an important feature We provide an important feature for business analysts: suggest for business analysts: suggest suitable exceptions.suitable exceptions.

Empirical evaluation proved Empirical evaluation proved value of the toolvalue of the tool Stakeholders receive a more Stakeholders receive a more

accurate and robust business accurate and robust business processprocess

Page 34: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Future WorkFuture Work

Open issues:Open issues: Where does the semantic classification Where does the semantic classification

come from? (employ heuristics)come from? (employ heuristics) Must be coordinated with a Business Must be coordinated with a Business

Repository system (Prosero).Repository system (Prosero). Usability is critical – should be improved Usability is critical – should be improved

(GUI: icons, perspectives).(GUI: icons, perspectives). Feedback from runtime can provide Feedback from runtime can provide

valuable data on possible exceptions valuable data on possible exceptions (Learning).(Learning).

Apr 19, 2023 34

Page 35: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Feedback responseFeedback response Contribution in introductionContribution in introduction Related workRelated work Why Prosero – values semanticsWhy Prosero – values semantics Use Prosero RMR – future impl.Use Prosero RMR – future impl. Schema changes ramification – Schema changes ramification –

shorter OCL and XSL. shorter OCL and XSL. Unclear solution – “To recommend Unclear solution – “To recommend

and enforce”. See demo.and enforce”. See demo. Experiment participant – me.my.mi.Experiment participant – me.my.mi. Writing style – see paper.Writing style – see paper.

Apr 19, 2023 35

Page 36: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 36

The End (Event)The End (Event)Any failures?Any failures?

Page 37: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

ResultsResults

Apr 19, 2023 37

Comple-xity level Source REC% ACC% PRE% F-M% Time

Simple origin. 16.67 55.6 33.3 22.2 5:36

enhan. 50.0 58.3 38.9 43.8 7:14

Medium origin. 50.0 84.1 66.6 57.1 5:59

enhan. 83.3 82.1 66.7 74.1 9:55

Complex origin. 16.89 64.5 50.0 25.3 14:23

enhan. 54.1 73.1 50.0 52.0 17:31

Page 38: 30-Jun-151 Semantic business process for improved exception handling Extend BPMN, with semantic data, to enforce exception handling - for robust processes

Apr 19, 2023 38

ResultsResults

Recall = (TP) / (TP + FN)Recall = (TP) / (TP + FN) Accuracy = (TP + TN) / (TP + TN Accuracy = (TP + TN) / (TP + TN

+ FP + FN)+ FP + FN) Precision = (TP) / (TP + FP)Precision = (TP) / (TP + FP) F-measure = (2 * Precision * F-measure = (2 * Precision *

Recall) / (Precision + Recall)Recall) / (Precision + Recall)