Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Configurable Services in the CloudSupporting variabilitywhile enablingcross-organizationalprocess miningWil van der Aalst
Acknowledgements• Marcello La Rosa• Florian Gottschalk• CoSeLoG: Joos Buijs, Jan Vogelaar, Boudewijn van  Dongen, Eric Ver...
The need for configurable process      models: CoSeLoG project+/- 430 Dutch                                          PAGE ...
The need for configurable process  models: Suncorp caseEnd to end process has between 250-1000 process steps      Product ...
Two variants of the same process …                                     PAGE 4
Variation points   … in the cloud                                    PAGE 5
Cloud computing                  PAGE 6
Traditional Situation          IS1                  IS2                    ISn    E1          M1        E2         M2    ....
Example Acknowledgement of an Unborn Child• Same but different …• “Couleur Locale”• Different from NVVB  models.• Configur...
Using SaaS Technology                             IS-SaaS             E                                      CM           ...
Process Mining: Before         IS1              IS2                    ISn    E1          M1   E2          M2   ...   En  ...
Process Mining: Aftercross-organizational process mining   PAGE 11
Configuration
Positioning of ConfigurationSome quotes from Michelangelo• “Every block of stone has a statue  inside it and it is the tas...
Life is about making choices …                                 PAGE 14
Time and artifacts • Design time (generic model, i.e., is   not released for instantiation) • Configuration time (specific...
Continuum•   In The Netherlands, …•   In Brisbane, …•   When the sun shines, …•   On Sunday, …•   When very busy, …•   For...
Hiding and blocking                      Configuration = limiting behavior !                                              ...
Configurable Process Models    C-EPC                                 Purchase          Service is          Goods receipt  ...
Inheritance of dynamic behavior                     Inheritance                                   Inheritance            a...
Configuration Techniques • Blocking                      a              b                 a       b   (removing an option)...
Cross-organizational      mining                   PAGE 21
Process Mining =                                                                                                          ...
Process mining: Linking events to models                              supports/       “world”                 controls    ...
Example: WMO Harderwijk• Process related to the execution of “Wet  Maatschappelijke Ondersteuning” (WMO) Harderwijk• Handl...
Event log(796 applications, 5187 events)                                  PAGE 25
Helicopter view of 1.5 years                               PAGE 26
Process discovered using Genetic Miner                                     PAGE 27
Variousrepresentations                  PAGE 28
Seamless abstractionmore detailed   more abstract   PAGE 29
Fuzzy Replay               PAGE 30
Conformance checkingusing Replay = should not have happened but did = should have happened but did not   PAGE 31
Performance analysis using Replay                                    PAGE 32
Prediction basedon Replay                   “Your application is                   expected to be                   finali...
From one to many organizations• More than 80,000 organizations are using Salesforce• More than 1 million organizations are...
Consider n organizations                    event   process        process 1                    log 1   model 1           ...
Cross-organizational process mining              event     processprocess 1              log 1     model 1                ...
Pure model-based                event   processprocess 1                log 1   model 1                    C              ...
Pure log-based        α(EL1 + EL2 + … + ELn) = CM                event     processprocess 1                log 1     model...
How to find and                                            How to merge    Questionscharacterize                          ...
Evidence-based “best practices”• Organizations can learn from each other.• Configuration support and diagnostics.• Softwar...
Correctness              PAGE 41
Remember …             Configuration = limiting behavior !                                       Activate                 ...
Correctness of configurations                         +                   = Configurable Model + Configuration = Configure...
Transition    Flow                                   Place         XOR-splitCan t3 be blocked?                 AND-split  ...
Transition           Flow                                                                                                 ...
Transition          Flow                                                                                                  ...
Existing approaches  • Most approaches only consider    the syntactical issues or simply    create the configured model an...
Partner synthesis              p11 y t11         t12 x                                           desirable                ...
Partner synthesis• Existing approaches can do the following:   − Check whether there exists a partner.   − Construct partn...
Configurable interface (allow by default)                                        PAGE 50
Configuration guideline (allow by default)                                      CG                                        ...
Configuration guideline (allow by default)                                             CG                                 ...
Configuration guideline (allow by default)                                         CG                                     ...
Configuration guideline (allow by default)                                    CG                                         P...
Configuration guideline (allow by default)                                       CG                                       ...
Tool support    • YAWL editor          − Creating C-YAWL models          − Configuring C-YAWL models          − Verificati...
C-YAWL                                                         p1                        Prepare                          ...
C-YAWL         PAGE 58
Conclusion• BPM in the cloud triggers the need for configurable  process models.• Configuration is important, however, exi...
More information• www.processconfiguration.com (various references to configuration literature and a comprehensive toolset...
References(Configurable Process Models)• M. Rosemann and W.M.P. van der Aalst. A Configurable Reference  Modelling Languag...
References(Correctness Issues)• W.M.P. van der Aalst, M. Dumas, F. Gottschalk, A.H.M. ter Hofstede, M.  La Rosa, and J. Me...
References(Process Mining)• M.H. Jansen-Vullers, W.M.P. van der Aalst, and M. Rosemann. Mining  Configurable Enterprise In...
Upcoming SlideShare
Loading in …5
×

Keynote at 18th International Conference on Cooperative Information Systems (CoopIS 2010), Crete, Greece, Oct. 2010

734 views

Published on

The Software as a Service (SaaS) paradigm is particularly interesting for situations where many organizations need to support similar processes. For example, municipalities, courts, rental agencies, etc. support highly similar processes. However, despite these similarities, there is also the need to allow for local variations in a controlled manner. Therefore, cloud infrastructures should provide configurable services such that products and processes can be customized while sharing commonalities. Configurable and executable process models are essential to realize such infrastructures. This will finally transform reference models from "paper tigers" (reference modeling a la SAP, ARIS, etc.) into an "executable reality". Moreover, "configurable services in the cloud" enable cross-organizational process mining. This way, organizations can learn from each other and improve their processes.

Published in: Business, Technology
  • Be the first to comment

Keynote at 18th International Conference on Cooperative Information Systems (CoopIS 2010), Crete, Greece, Oct. 2010

  1. 1. Configurable Services in the CloudSupporting variabilitywhile enablingcross-organizationalprocess miningWil van der Aalst
  2. 2. Acknowledgements• Marcello La Rosa• Florian Gottschalk• CoSeLoG: Joos Buijs, Jan Vogelaar, Boudewijn van Dongen, Eric Verbeek, Hajo Reijers.• Marlon Dumas, Arthur ter Hofstede, Niels Lohmann, Michael Rosemann, Jan Mendling, …• ProM team (www.processmining.org)• YAWL team (www.yawlfoundation.org) PAGE 1
  3. 3. The need for configurable process models: CoSeLoG project+/- 430 Dutch PAGE 2municipalities
  4. 4. The need for configurable process models: Suncorp caseEnd to end process has between 250-1000 process steps Product Sales Service Claims 500 Dev steps • 25+ steps • 50+ steps • 75+ steps • 100+ steps Sources: Guidewire reference models, GIO CISSS Project, CI US&S P4PI Project Home       Motor         30 Commercial      variations Liability      CTP / WC      PAGE 3
  5. 5. Two variants of the same process … PAGE 4
  6. 6. Variation points … in the cloud PAGE 5
  7. 7. Cloud computing PAGE 6
  8. 8. Traditional Situation IS1 IS2 ISn E1 M1 E2 M2 ... En Mn Processes Processes Processes Organization 1 Organization 2 Organization nIS = Information SystemE = Event logM = Models PAGE 7
  9. 9. Example Acknowledgement of an Unborn Child• Same but different …• “Couleur Locale”• Different from NVVB models.• Configurable process models! PAGE 8
  10. 10. Using SaaS Technology IS-SaaS E CM C1 C2 Cn Processes Municipality 1 Processes Municipality 2 ... Processes Municipality nIS-SaaS = Information System (using a SaaS-based BPMS)E = Event logCM = Configurable ModelsC = Configuration PAGE 9
  11. 11. Process Mining: Before IS1 IS2 ISn E1 M1 E2 M2 ... En Mn Processes Processes Processes Municipality 1 Municipality 2 Municipality n PAGE 10
  12. 12. Process Mining: Aftercross-organizational process mining PAGE 11
  13. 13. Configuration
  14. 14. Positioning of ConfigurationSome quotes from Michelangelo• “Every block of stone has a statue inside it and it is the task of the sculptor to discover it.”• “I saw the angel in the marble and carved until I set him free.”• “Carving is easy, you just go down to the skin and stop.” Michelangelos David
  15. 15. Life is about making choices … PAGE 14
  16. 16. Time and artifacts • Design time (generic model, i.e., is not released for instantiation) • Configuration time (specific model, i.e., can be instantiated) • Instantiation time (specific model + instance) • Run time (specific model + instance + state/partial trace) • Auditing time (specific model + instance + full trace) PAGE 15
  17. 17. Continuum• In The Netherlands, …• In Brisbane, …• When the sun shines, …• On Sunday, …• When very busy, …• For these customers, … Branching structure• … PAGE 16
  18. 18. Hiding and blocking Configuration = limiting behavior ! Activate Hide/skip Block Blocking Hiding Blocking Action Activating PAGE 17
  19. 19. Configurable Process Models C-EPC Purchase Service is Goods receipt Invoice order created accepted posted received V V Consignment/ pipeline Consignment/ pipeline a b Goods liability is liabilities are Invoicing receipts created to be settled plans require to be settled c settlement automatically V GUIDELINEC-Petri Net ERS = ON, if Evaluated - long term REQUIRED: Consignment/ Receipt Process Invoicing Plan contract IPS = ON Pipeline Settlement Invoice Settlement - goods and (ERS) ⇒ ERS = ON Settlement conditions are d e j l specified V V XOR Consignment/ pipeline Invoice XOR settlement transmitted document for vendor’s transmitted C-YAWL f g records Material is released Invoice posted and blocked for release XOR Invoice posted and not blocked for release k m n V Release Invoice manually Release Invoice automatically h i C-LTS C-BPEL XOR Payment must be effectes o p Configuration Blocking Hiding EPC Purchase order created Service is accepted V Goods receipt posted V Invoice received a b c Petri Net Process Invoice XOR e l Invoice posted Invoice posted Material is and not and blocked released blocked for YAWL g m for release release V n LTS Release Release i Invoice Invoice manually automatically XOR BPEL Payment must be effectes o p PAGE 18
  20. 20. Inheritance of dynamic behavior Inheritance Inheritance a a b a b c c c d e d e j l e j lf g f g k m g k m h i n n h i i o Configuration o p Configuration o pVariant ASuperclass Subclass Superclass Variant B Reference Model PAGE 19
  21. 21. Configuration Techniques • Blocking a b a b (removing an option) c c • Hiding (skipping activities) d e j l d e j l l f g f τ g k τ k m mBlocking and hidinghare ithe n h ii τ nessential concepts of configuration. o p o p“Every block of stone has a statue insideit and it is the task of the sculptor todiscover it.” PAGE 20
  22. 22. Cross-organizational mining PAGE 21
  23. 23. Process Mining = (RM,RD) c11 modify conditions (YE,RD) check_A c5 (RM,RD) c2 check_A c8 (E,SD) needed? (RM,RD) (E,RD) Smoker c6(YE,RD) No start register c1 initial c3 check_B check_B c9 asses c12 decline conditions needed? risk Yes c7(FE,FD) Drinker c4 check_C check_C c10 needed? Short(91/10) <81.5 Yes Weight ≥81.5 No Long (30/1) + (SM,SD) (E,SD) c13 (E,FD) (E,SD) make c14 handle c15 handle c16 send offer response payment insurance documents (E,SD) Long Short (150/20) (321/25) c17 withdraw timeout1 timeout2 offerData Mining Process Analysis PAGE 22
  24. 24. Process mining: Linking events to models supports/ “world” controls business software processes people machines system components organizations records events, e.g., messages, specifies transactions, models configures etc. analyzes implements analyzes discovery (process) event conformance model logs extension PAGE 23
  25. 25. Example: WMO Harderwijk• Process related to the execution of “Wet Maatschappelijke Ondersteuning” (WMO) Harderwijk• Handling WMO applications• WMO: supporting citizens of municipalities (illness, handicaps, elderly, etc.).• Examples: • wheelchair, scootmobiel, ... • adaptation of house (elevator), ... • household help, ... PAGE 24
  26. 26. Event log(796 applications, 5187 events) PAGE 25
  27. 27. Helicopter view of 1.5 years PAGE 26
  28. 28. Process discovered using Genetic Miner PAGE 27
  29. 29. Variousrepresentations PAGE 28
  30. 30. Seamless abstractionmore detailed more abstract PAGE 29
  31. 31. Fuzzy Replay PAGE 30
  32. 32. Conformance checkingusing Replay = should not have happened but did = should have happened but did not PAGE 31
  33. 33. Performance analysis using Replay PAGE 32
  34. 34. Prediction basedon Replay “Your application is expected to be finalized in 65 days” PAGE 33
  35. 35. From one to many organizations• More than 80,000 organizations are using Salesforce• More than 1 million organizations are using Google Apps• All 430 Dutch municipalities are implementing the same set of processes• All 94 U.S. District Courts in the United States share the same set of workflows• All car-rental offices of Hertz, Avis, …• … PAGE 34
  36. 36. Consider n organizations event process process 1 log 1 model 1 event process process 2 log 2 model 2 ... ... ... event process process n log n model n PAGE 35
  37. 37. Cross-organizational process mining event processprocess 1 log 1 model 1 C event process (configurable)process 2 C log 2 model 2 process model ... ... ... event processprocess n C log n model n event log PAGE 36
  38. 38. Pure model-based event processprocess 1 log 1 model 1 C event process (configurable)process 2 C log 2 model 2 process model ... ... ... event processprocess n C log n model n PM1 + PM2 + … + PMn = CM PAGE 37
  39. 39. Pure log-based α(EL1 + EL2 + … + ELn) = CM event processprocess 1 log 1 model 1 C event process (configurable)process 2 C log 2 model 2 process model ... ... ... event processprocess n C log n model n event log PAGE 38
  40. 40. How to find and How to merge Questionscharacterize process models into adifferences among single configurableprocesses using What are the effects of model?event logs? these differences on the event performance of a process process 1 log 1 process?1 model CHow to find and event process (configurable)characterize differences process 2 log 2 model 2 process model Cusing models / How to derive the ...configurations? ... ... configuration for a process given a configurable model? event process process n C log n model n How to discover a configurable model from a collection of event log event logs? PAGE 39
  41. 41. Evidence-based “best practices”• Organizations can learn from each other.• Configuration support and diagnostics.• Software vendors/service providers can improve their products/services. PAGE 40
  42. 42. Correctness PAGE 41
  43. 43. Remember … Configuration = limiting behavior ! Activate Hide/skip Block Blocking Hiding Blocking Action Activating PAGE 42
  44. 44. Correctness of configurations + = Configurable Model + Configuration = Configured model• Question 1: Is a particular configuration correct?• Question 2: Is there a correct configuration?• Question 3: How to characterize the set of all correct configurations?• Question 4: How to auto-complete a configuration? PAGE 43
  45. 45. Transition Flow Place XOR-splitCan t3 be blocked? AND-split AND-join XOR-join Token pI pI t1 t2 t1 t2 p2 p3 p4 p2 p3 p4 t5 t6 t5 t6t3 t4 t4 p6 p6 p5 t8 p5 t8 p7 p7 t7 t7 pO pO PAGE 44
  46. 46. Transition Flow Place XOR-split Block t1 and hide t3 ? AND-split AND-join XOR-join Token p1 p1 Prepare Prepare Prepare Travel Form t1 t2 Travel Form t2 Travel Form (Secretary) (Employee) (Employee p2 p2 Arrange p3 t3 travel p4 p3 τ p4 insurance t3 (Employee) p5 p5Request for Check & Update t7 t4 Travel Form t5 τ Request for Check & Update change (Admin) (Employee) change t7 t4 Travel Form t5 τ (Admin) (Employee) p6 p6 Submit Travel Form Submit t6 Travel Form for Approval t6 for Approval (Employee) (Employee) p7 p7 Approve Reject Travel Form t8 Travel Form t9 Approve Reject (Admin) (Admin) Travel Form t8 Travel Form t9 (Admin) (Admin) p8 p8 PAGE 45
  47. 47. Transition Flow Place XOR-split Block t4 also? AND-split AND-join XOR-join Token p1 p1 Prepare Prepare Prepare Travel Form t1 t2 Travel Form t2 Travel F (Secretary) (Employee) (Emplo p2 p2 Arrange p3 t3 travel p4 p3 t3 τ p4 insurance (Employee) p5 p5Request for Check & Update Request for change t7 t4 Travel Form t5 τ change t7 t5 τ (Admin) (Employee) (Admin) p6 p6 Submit Submit Travel Form Travel Form t6 for Approval t6 for Approval (Employee) (Employee) p7 p7 Approve Reject Approve Reject Travel Form t8 Travel Form t9 Travel Form t8 Travel Form t9 (Admin) (Admin) (Admin) (Admin) p8 p8 PAGE 46
  48. 48. Existing approaches • Most approaches only consider the syntactical issues or simply create the configured model and analyze it (i.e., trail and error). • Naïve approach: enumerate all possibilities and check, or trail- and-error at configuration time. • Better approach based on partner synthesis: construct a configuration guideline at design time!W.M.P. van der Aalst, N. Lohmann, M. La Rosa, and J. Xu. Correctness Ensuring ProcessConfiguration: An Approach Based on Partner Synthesis. In BPM 2010, volume 6336 of Lecture Notes PAGE 47in Computer Science, pages 95-111. Springer-Verlag, Berlin, 2010.
  49. 49. Partner synthesis p11 y t11 t12 x desirable property p14 p12 = e.g. weakly τ t13 t14 z partner?? terminating p13 Given a service: Ω ={[p13]} • Is this a partner? • Is there a partner? • How to describe all partners? PAGE 48
  50. 50. Partner synthesis• Existing approaches can do the following: − Check whether there exists a partner. − Construct partners having desirable properties. − Characterize all such partners. cf. [Karsten Wolf. Does My Service Have Partners?. T. Petri Nets and Other Models of Concurrency 2: 152-171 (2009)]• These are implemented in Wendy. cf. [Niels Lohmann, Daniela Weinberg. Wendy: A Tool to Synthesize Partners for Services. Petri Nets 2010: 297-307.]• How can this be used for ensuring the correctness of a configurable model and its configurations? PAGE 49
  51. 51. Configurable interface (allow by default) PAGE 50
  52. 52. Configuration guideline (allow by default) CG PAGE 51
  53. 53. Configuration guideline (allow by default) CG PAGE 52
  54. 54. Configuration guideline (allow by default) CG PAGE 53
  55. 55. Configuration guideline (allow by default) CG PAGE 54
  56. 56. Configuration guideline (allow by default) CG PAGE 55
  57. 57. Tool support • YAWL editor − Creating C-YAWL models − Configuring C-YAWL models − Verification and auto-completion (using SAT solver and/or Wendy) • YAWL engine Configuration model (.cml) • YAWL services Quaestio C-YAWL Editor C-YAWL model (.yawl) Configured YAWL Engine C-YAWL (.yawl) spec. (.yawl) Questionnaire Mapping Model (.qml) (.cmap) Process Mapper Process Configured Individualizer EPC Configurator C-EPC (.epml) (.epml) C-EPC model (.epml) Questionnaire Designer C-EPC Designer Process Mergercf. www.processconfiguration.com PAGE 56
  58. 58. C-YAWL p1 Prepare Prepare Travel Form t1 t2 Travel Form (Secretary) (Employee) p2 Arrange p3 t3 travel p4 insurance (Employee) p5 Request for Check & Update change t7 t4 Travel Form t5 τ (Admin) (Employee) p6 Submit Travel Form t6 for Approval (Employee) p7 Approve Reject Travel Form t8 Travel Form t9 (Admin) (Admin) p8 PAGE 57
  59. 59. C-YAWL PAGE 58
  60. 60. Conclusion• BPM in the cloud triggers the need for configurable process models.• Configuration is important, however, existing reference models are crap!• Challenges: − Design of configurable models (language+approach) − Analysis of configurable models, e.g., ensuring correctness − Discovering configurable models − Cross-organizational process mining PAGE 59
  61. 61. More information• www.processconfiguration.com (various references to configuration literature and a comprehensive toolset)• www.win.tue.nl/coselog (webpage of the CoSeLoG project)• www.processmining.org (webpage for process mining)• www.yawlfoundation.org (C-YAWL)• service-technology.org (analysis of services) PAGE 60
  62. 62. References(Configurable Process Models)• M. Rosemann and W.M.P. van der Aalst. A Configurable Reference Modelling Language. Information Systems, 32(1):1-23, 2007.• F. Gottschalk, W.M.P. van der Aalst, and M.H. Jansen-Vullers. SAP WebFlow Made Configurable: Unifying Workflow Templates into a Configurable Model. In BPM 2007, volume 4714 of Lecture Notes in Computer Science, pages 262-270. Springer-Verlag, Berlin, 2007.• F. Gottschalk, W.M.P. van der Aalst, M.H Jansen-Vullers, and M. La Rosa. Configurable Workflow Models. International Journal of Cooperative Information Systems, 17(2):177-221, 2008.• M. La Rosa, W.M.P. van der Aalst, M. Dumas, and A.H.M. ter Hofstede. Questionnaire-based Variability Modeling for System Configuration. Software and Systems Modeling, 8(2):251-274, 2009.• F. Gottschalk, W.M.P. van der Aalst, and H.M. Jansen-Vullers. Configurable Process Models: A Foundational Approach. In F. Lehner, H. Nosekabel, and P. Kleinschmidt, editors, Proceedings of the Multikonferenz Wirtschaftsinformatik 2006 (MKWI 06). GITO-Verlag, Berlin, 2006.• … PAGE 61
  63. 63. References(Correctness Issues)• W.M.P. van der Aalst, M. Dumas, F. Gottschalk, A.H.M. ter Hofstede, M. La Rosa, and J. Mendling. Correctness-Preserving Configuration of Business Process Models. In FASE 2008, volume 4961 of Lecture Notes in Computer Science, pages 46-61. Springer-Verlag, Berlin, 2008.• W.M.P. van der Aalst, M. Dumas, F. Gottschalk, A.H.M. ter Hofstede, M. La Rosa, and J. Mendling. Preserving Correctness During Business Process Model Configuration. Formal Aspects of Computing, 22(3):459-482, 2010.• W.M.P. van der Aalst, N. Lohmann, M. La Rosa, and J. Xu. Correctness Ensuring Process Configuration: An Approach Based on Partner Synthesis. In BPM 2010, volume 6336 of Lecture Notes in Computer Science, pages 95-111. Springer-Verlag, Berlin, 2010.• M.T. Wynn, H.M.W. Verbeek, W.M.P. van der Aalst, A.H.M. ter Hofstede, and D. Edmond. Business Process Verification: Finally a Reality! Business Process Management Journal, 15(1):74-92, 2009.• H.M.W. Verbeek, T. Basten, and W.M.P. van der Aalst. Diagnosing Workflow Processes using Woflan. The Computer Journal, 44(4):246- 279, 2001. PAGE 62
  64. 64. References(Process Mining)• M.H. Jansen-Vullers, W.M.P. van der Aalst, and M. Rosemann. Mining Configurable Enterprise Information Systems. Data and Knowledge Engineering, 56(3):195-244, 2006.• F. Gottschalk, T. Wagemakers, M.H. Jansen-Vullers, W.M.P. van der Aalst, and M. La Rosa. Configurable Process Models: Experiences From a Municipality Case Study. In CAiSE09, volume 5565 of Lecture Notes in Computer Science, pages 486-500. Springer-Verlag, Berlin, 2009.• W.M.P. van der Aalst, A.J.M.M. Weijters, and L. Maruster. Workflow Mining: Discovering Process Models from Event Logs. IEEE Transactions on Knowledge and Data Engineering, 16(9):1128-1142, 2004.• W.M.P. van der Aalst, H.A. Reijers, A.J.M.M. Weijters, B.F. van Dongen, A.K. Alves de Medeiros, M. Song, and H.M.W. Verbeek. Business Process Mining: An Industrial Application. Information Systems, 32(5):713-732, 2007.• … PAGE 63

×