1 / 38

Semantic business process for improved exception handling

Remind the business analyst he should pay attention to errors ... How do we prevent the business analyst from missing possible exceptions, but without interrupting his work on ...

Mia_John
Download Presentation

Semantic business process for improved exception handling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    25-Apr-11 1

    1. Semantic business process for improved exception handling

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

    25-Apr-11 2

    2. Semantic business process for improved exception handling

    A thesis submitted as a requirement for a Master's degree in the Faculty of Natural Sciences By: Ziv Ben-Eliahu Supervisor: Michael Elhadad Department of Computer Science Ben-Gurion University of the Negev, Israel

    25-Apr-11 3

    3. Things to come

    Introduction Exceptions in business processes Our contribution: elicit potential exceptions at modeling time ------------------------------------- Previous work Formal methods for verification, runtime analysis. Our approach Use semantic and structural information to infer potential exceptions modeling time. Empirical Evaluation Dataset, usability experiment Conclusions

    25-Apr-11 4

    4. Introduction

    Process execution may fail Identifying potential problems as early as possible is critical Engineering Applications Productions Business processes Define problems: any deviations from the normal flow

    25-Apr-11 5

    5. Introduction

    2 aspects considered: how to identify exceptions how to handle exceptions enforce handling applied to Business Process Models (and BPMN specifically) ?? ??? ?? ??????? ????? ?? ??. ??? ??? ?????? ?? ??????. ??????? ???????? ????, ???????????. ???? ???? ????? ?????, ??????? ???? ???? ???.?? ??? ?? ??????? ????? ?? ??. ??? ??? ?????? ?? ??????. ??????? ???????? ????, ???????????. ???? ???? ????? ?????, ??????? ???? ???? ???.

    25-Apr-11 6

    6. Introduction: BPMN

    BPMN??? ?? ????? ?? ?? ?? ?????? ??????? ??????BPMN??? ?? ????? ?? ?? ?? ?????? ??????? ??????

    25-Apr-11 7

    7. To make a long story short

    Before ???? ???????, ???? ??? ??????, ?????? ????? ?????? ?? ?????? ??????????? ???????, ???? ??? ??????, ?????? ????? ?????? ?? ?????? ???????

    25-Apr-11 8

    8. To make a long story short

    Business analysts seldom use Exception Flow Empirical review of 302 BPDs – we found only 3% with exceptions. ? To encourage them: add intuitive semantic data infer less intuitive exception data verify handling ???? ???????, ???? ??? ??????, ?????? ????? ?????? ?? ?????? ??????????? ???????, ???? ??? ??????, ?????? ????? ?????? ?? ?????? ???????

    25-Apr-11 9

    9. To make a long story short

    After (our contribution) ??? ????? ????. ??? ????? ???? ??? ????????? ????? ????. ??? ????? ???? ??? ??????

    25-Apr-11 10

    10. Our Contribution

    Intervene during modeling, in an intuitive and non-intrusive manner Remind the business analyst he should pay attention to errors Do not deal with handling strategies (how to organize compensation) Do not want too many “false alarms” Do want to catch as many correct errors as possible Key issue we address: what knowledge on the activity and the process is helpful to raise such warnings

    25-Apr-11 11

    11. To make a long story long

    Background Related work: handling, verify IDE as motivation (intuitive) Early detection of exceptions: handling exceptions at modeling time. Semantic activity classification to infer potential exceptions. Empirical Evaluation

    25-Apr-11 12

    12. Background: Exceptions in BPM

    [Bonatti et al.04] chooses optimal web service – failure handled by automatically replacing service by another equivalent one. [Shang et al.07] collaborative exception handling platform proposes handling strategies (at failures) [Adams 07] records handling decisions, attempts to re-use, and reverse-engineer into model Handling exceptions at execution time ???? ?????? BPEL???? ?????? BPEL

    25-Apr-11 13

    13. Verification of BPEL/ECA

    [Fu et al.04] WSAT: analyzes web services composition using model-based formal methods. [Bry et al.06] realizing business processes with Event-Condition-Action rules (instead of BPEL) with datalog-like verification. [Casati et al.99] suggests ECA-Patterns to the design of exceptions Verification of exception handling in execution languages ???? ?????? BPEL???? ?????? BPEL

    25-Apr-11 14

    14. Verification of BPMN

    [Dijkman et al.08] transform BPMN to Petri-Nets then uses Petri-net analysis for verification [Wong et al.07] propose a CSP-based semantics of BPMN to allow model analysis including exception handling Verification at modeling time Pattern = semantic data. We did not encounter any attempts to infer possible exceptions from semantic data, which is not pattern related. ??? ?? ??? ?? ???? ?? ??.... (?????? ????)Pattern = semantic data. We did not encounter any attempts to infer possible exceptions from semantic data, which is not pattern related. ??? ?? ??? ?? ???? ?? ??.... (?????? ????)

    25-Apr-11 15

    15. Exception handling in WF

    [Russell et al.06] (a) graphical lang. for exception handling, (b) handling patterns per exception [Song et al.03] (a) exception specification in workflow definition, (b) an exception handling mechanism [Eder et al.95] specify whether special tasks are essential and whether there are compensation Handling exceptions at modeling time in other workflow language Pattern = semantic data. We did not encounter any attempts to infer possible exceptions from semantic data, which is not pattern related. ??? ?? ??? ?? ???? ?? ??.... (?????? ????)Pattern = semantic data. We did not encounter any attempts to infer possible exceptions from semantic data, which is not pattern related. ??? ?? ??? ?? ???? ?? ??.... (?????? ????)

    25-Apr-11 16

    16. Our approach

    Identify exceptions at modeling time. Many focus on runtime. Current verification handles only explicit exception. We elicit implicit exceptions. Verification of exceptions requires extending BPMN specifications. An intuitive method for a business analyst should involve business semantics Except [Adams], we did not find evaluations of system usability Pattern = semantic data. We did not encounter any attempts to infer possible exceptions from semantic data, which is not pattern related. ??? ?? ??? ?? ???? ?? ??.... (?????? ????)Pattern = semantic data. We did not encounter any attempts to infer possible exceptions from semantic data, which is not pattern related. ??? ?? ??? ?? ???? ?? ??.... (?????? ????)

    25-Apr-11 17

    17. A better way to handle exceptions…

    Many programming languages require handlers at compilation time (Java, ADA…) Exception handling at design time IDE is our motivation

    18. Why BPMN

    BPMN is the standard de-facto Capture models of business activity in an explicit form Model description can be approved by all stakeholders (balancing expressivity and readability). Model description can serve as abstract specification of executable process. 25-Apr-11 18

    19. Why Prosero

    Models in the repository are annotated with semantic meta-data, for the matching procedure Future version could: Use the repository data to infer on local semantics Use the local semantics for the matching procedure 19 25-Apr-11

    25-Apr-11 20

    20. Background - summary

    It is important for BPDs to be as close to reality as possible; including exception handling. “Exception” in broader terms. We reviewed several methods to add semantic metadata to a BPD. But few methods are as intuitive as IDEs, and those do not support BPMN.

    25-Apr-11 21

    21. Objectives: early detection

    How do we prevent the business analyst from missing possible exceptions, but without interrupting his work on the happy path? How can we help the business analyst decide which exception an Activity might throw? Business level exception – ???? ????? ??? ?????? ???Business level exception – ???? ????? ??? ?????? ???

    25-Apr-11 22

    22. Solution

    Extend BPMN Activity Errors Handlers Parameters Offer recommendation Classifications Exceptions Inference Relations (?) We constructed generic lists <elements xsi:type="bpmn:Task" name="Don't Worry"> <eventHandler Trigger="Error" name="IsWorried" /> <errors name="IsWorried" /> <errors name="Timeout" /> </elements> Perform action ? Action failed Complex action ? Timeout Send ? Send rejected Receive ? Receive rejected Query ? Query failed Update ? Update rejected ??? "??????" ??? ?????. ??? ?????? ????? ????? ???? Classification were specified under “Templates”. Templates also make sure the pattern fits the classification.??? "??????" ??? ?????. ??? ?????? ????? ????? ???? Classification were specified under “Templates”. Templates also make sure the pattern fits the classification.

    23. Infer Potential Errors from Semantic Data

    When semantic parameters of construct are known, one can infer potential errors. Activity is Send Activity requires authentication ? Authentication fails Send fails Send rejected 25-Apr-11 23

    25-Apr-11 24

    24. Define Constructs

    Define construct as: Activity Semantic class Exceptions Functional classes: Internal-Activity Send-Receive Receive-Process-Reply

    25-Apr-11 25

    25. Define Templates

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

    25-Apr-11 26

    26. Template Instantiation

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

    27. Hypothesis

    Use of semantically annotated constructs and patterns at modeling time will: Detect early potential errors Remain usable by analysts Small time increase High quality increase More benefit for complex processes 25-Apr-11 27

    28. Methodology

    Collect dataset: 11 process models of various complexities. Analyze error handling in dataset. Re-model processes using implemented BPMN modeling tool (Prosero). Measure usability parameters Measure quality of resulting models. 25-Apr-11 28

    25-Apr-11 29

    29. Evaluation

    30. Results

    25-Apr-11 30

    25-Apr-11 31 Added exception Should have added Correct exceptions All exception added Appropriate choices ? ? ? ? 25-Apr-11 32

    32. Complexity metrics

    25-Apr-11 33

    33. Conclusions

    We provide an important feature for business analysts: suggest suitable exceptions. Empirical evaluation proved value of the tool Stakeholders receive a more accurate and robust business process

    34. Future Work

    Open issues: Where does the semantic classification come from? (employ heuristics) Must be coordinated with a Business Repository system (Prosero). Usability is critical – should be improved (GUI: icons, perspectives). Feedback from runtime can provide valuable data on possible exceptions (Learning). 25-Apr-11 34

    35. Feedback response

    Contribution in introduction Related work Why Prosero – values semantics Use Prosero RMR – future impl. Schema changes ramification – shorter OCL and XSL. Unclear solution – “To recommend and enforce”. See demo. Experiment participant – me.my.mi. Writing style – see paper. 25-Apr-11 35

    25-Apr-11 36

    36. The End (Event)

    Any failures?

    37. Results

    25-Apr-11 37

    25-Apr-11 38

    38. Results

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

More Related