Cutting The BPM Knot: Why Popular Notations Must Fail Andreas Leue, Sphenon GmbH, Hamburg

Size: px
Start display at page:

Download "Cutting The BPM Knot: Why Popular Notations Must Fail Andreas Leue, Sphenon GmbH, Hamburg"

Transcription

1 Cutting The BPM Knot: Why Popular Notations Must Fail Andreas Leue, Sphenon GmbH, Hamburg This work is licensed under the Creative Commons Attribution-Share Alike 2.0 Germany License. To view a copy of this license, visit or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

2 BPM One Subject, Many ives efficient processes factor 10 factor 1000 (about ) factor 10 factor 10 custom fit IT systems optimal task completion Competitive advantage by tapping full potential

3 BPM Factors of Success declared management goal benefiting & participating staff qualified process architects effective communications suitable modelling language economical & working IT Starting point: language

4 Model Zoo and Therewith Associated Problems efficient processes e.g. Word, Visio Management Model Repositories Metamodels Tools Process Model e.g. BPMN, EPK System Model e.g. UML, Java custom fit IT systems optimal task completion Guess: means of expression do not really fit

5 Basic BPM Modelling Terms Assembled from several sources (wikipedia.de/.org, specifications and whitepapers about BPMN, BPEL, XPDL, WSDL, UML, EPK, WKD, DFD) Event Operation State Workflow Service Task Process Reads... is a... (derivation)

6 Basic BPM Modelling Terms Assembled from several sources (wikipedia.de/.org, specifications and whitepapers about BPMN, BPEL, XPDL, WSDL, UML, EPK, WKD, DFD) Event Operation State Workflow Service Task Process Reads... is a... (derivation) There's in fact a jinx on it (in german: jinx > worm)

7 Why Sphenon Is Engaged in This

8 Enterprise Model Operation Services (EMOS) model in since 1990 development of a system for automatic provision of applications BPM integration since ca application out

9 Dead And Living Models

10 Model Diversity Management redundant inconsistent erosion erraneous incomprehensible short: improper Mitarbeiter miscellaneous infuences executes provides knowledge creates Process Architect Management Model Process Model miscellaneous infuences System Model executes controls describes IT Systems System Architect creates Does not work in the long run

11 Model Stakeholder Strategy Management ives Planing Organisation too wishy washy too far from reality too ineffective Management Model Process Model Coordination Check Lists Staff Workload Solving concrete problems too technical System Model too complicated too inprecise, too patchy High precision Automation System Architect Execution All eventualities At least 3 clearly different views

12 Conditions for A Living Model Living = always up to date and maintained a) rigid discipline > well, possible... b) Integration by usage and necessity: tight coupling to enterprise planning: Comprehensibility Effectivity Abstracting description tight coupling to every day tasks: Usage by staff Feedback from staff tight coupling to IT: Completeness and precision automatic creation of software Managed and controlled by software Precisely 1 used model with abstracting hierarchy

13 Unified Enterprise Model OOEM? UML 3.0? Staff people friendly interaction Unified Enterprise Model automatically created IT Systems executes provides knowledge maintains Enterprise Architect legitimises Management Goal overcome babylonic cicumstances

14 Modelling Languages

15 Different Affinity to Modelling Languages Management Process Process VCD BPMN Management Model Flow Flow Arte- fact Flow Function Event Function Event Function Arte- fact Arte- fact Flow UML (1, 2,...) EPC Information- object Event Function Process Model Datastore Process Process System Model Process Process DFD STD? System Architect (C)PN Place Place Place Staff State State Place State Lukewarm connected siloed solutions

16 Evolution of BPM And IT Modelling Languages CFD PetriNet Carl Adam Petri, 1962 Automata, Processes STD Taylor Booth, 1967 ERD Peter Chen, 1976 Data Structure Value Creation Edsger Dijkstra u.a., ~1970 Program Structure ValueChain Michael Porter, 1985 DFD Tom DeMarco, 1979 EPC August Wilhelm Scheer, 1992 XPDL WfMC, 1993 Workflow StateChart David Harel, 1987 OMT Business Processes Booch Grady Booch, 1993 UML James Rumbaugh u.a., 1991 IT Systems BPMN hen A. White, 2002 BPEL Web Services WSDL W3C, 2001 IBM, BEA, Microsoft, 2002 UML UML UML Source: wikipedia, scholarpedia

17 Evolution of BPM And IT Modelling Languages CFD PetriNet Carl Adam Petri, 1962 Automata, Processes STD Taylor Booth, 1967 ERD Peter Chen, 1976 Data Structure Value Creation Edsger Dijkstra u.a., ~1970 Program Structure ValueChain Michael Porter, 1985 DFD Tom DeMarco, 1979 EPC August Wilhelm Scheer, 1992 XPDL WfMC, 1993 Workflow StateChart David Harel, 1987 OMT Planing Level (Purpose) Business Processes Booch Grady Booch, 1993 UML James Rumbaugh u.a., 1991 IT Systems BPMN hen A. White, 2002 BPEL Web Services WSDL W3C, 2001 IBM, BEA, Microsoft, 2002 UML UML Execution Level (Flow) UML Concrete application requires floworiented notations

18 Flow Orientation (Control Flow, Token Semantics) VCD Planing Level (Purpose) Process Process Process Process Management Model primarily procedural decomposition no abstraction regarding control flow explicit exception handling BPMN, EPC, UML? Process Model? explicit case differentiation System Model (if/case, Rules ) all or nothing semantics ( iterative models )? Execution Level (Flow) Flow als primary structure... déjà vu: 1990, OO...

19 OO + BPM...

20 s in BPM 1. Material one operates on 2. Activities as methods Not yet OO modelling of BPM domain

21 s in BPM Planing Level (Purpose) Actual Target Execution Level (Flow) 1. Material one operates on 2. Activities as methods

22 s in BPM Planing Level (Purpose) Actual Association, no control flow Target Characterisation, no activity Execution Level (Flow) 1. Material one operates on 2. Activities as methods

23 s in BPM Planing Level (Purpose) Actual Association, no control flow Target 3. The as an Characterisation, no activity Execution Level (Flow) 1. Material one operates on 2. Activities as methods Approach s = s is it of use?

24 s in BPM Planing Level (Purpose) Actual Constellation Attribute Target Attributes, Scope, Encapsulation Aggregation (Petrinet Structure) es, Instances Specialisaition (Derivation) Execution Level (Flow)

25 s in BPM Planing Level (Purpose) Actual Procedure Registry Procedure Execution Level (Flow) Constellation Attribute Parameter Procedure Target Attributes, Scope, Encapsulation Aggregation (Petrinet Structure) es, Instances Specialisaition (Derivation) Association of Operations Association of Refinement Dynamic Association Templates The whole OO toolkit is available

26 Example

27 Notation OOEM Oriented Enterprise Modelling (OOEM = UML + XModel + OOBPM + Doclet + Test + Spaces) As UML Profile: «Constellation» Constellation With Stereotype Symbols: Constellation

28 Example: Travellingservice Travelling Travelling- Desire initial Service final Travel finished

29 Example: Travellingservice Travelling Travelling- Desire initial Service final Travel finished Prozedur (Refinement)) Travelling Desire Assignment Agency is assigned Offer Phase Travel booked Travel started Caring Travel finished

30 Example: Travellingservice Agency is assigned Offer Phase Travel booked Customer [Interested] Offer [submitted] Acceptance Offer [accepted] Portfolio [not sufficient] Offer Submssion Customer [Contractor] Desire [unfulfilled] Search Travel [matching] Offer Creation Offer [created] Desire [fulfilled] Desire [unfulfillable]

31 Example: Travellingservice Desire [unfulfilled] Search Travel [matching] All-Inclusive Travel Desire All-.Inclusive Search All-Inclusive Travel [matching] Travelcatalog * Travel [bookable] { duration <= 24h }

32 Example: Travellingservice Desire [unfulfilled] Search Travel [matching] Customized Travel Desire Individual Search Customized Travel [matching] Hotelcatalog * Hotel [bookable] ExternalTarvelagency Hotel [matching] Flightcatalog * Flight [bookable] Flight [macthing]

33 Example: Development Process Requirements [20%] Analysis Analysis [40%] Design Model [80%]

34 Summary Process Process Process Process?? BPM Factors of Success Model Diversity? Flow Orientation Orientation

35 OO BPM Models No Control Flow (loose coupling: just by content) Task Management Process Model Management Model Inheritance (loose coupling by abstraction) Enterprise Model System Model Service Refinement (loose coupling by dynamic Association) System Architect Staff Open for Extensions (loose coupling by procedure abstraction) IT Services (loose coupling by dynamic association)

36 OO BPM Models No Control Flow (loose coupling: just by content) Management Process Model Management Model Inheritance (loose coupling by abstraction) incrementally definable as required, dynamic, loosely coupled, Enterprise Model in a single, integrated model System Model Task Planing Level: general overview Service Refinement (loose coupling by dynamic Association) System Architect Staff IT Services (loose coupling by dynamic association) Open for Extensions Execution Level: completely specified system (loose coupling by procedure abstraction)

37 SOA Service Oriented Architecture Management Management Model Business Services Staff Task Enterprise Model System Model Process Model Service Procedure (Service) Registry System Architect IT Services lookup register Component es BPM Plans Procedures

38 Applicability of OOBPM / OOEM UML Profile for eclipse Sphenon EMOS

39 Appendix

40 Terms and Diagram Types Workflow) Process Stage Schema BSP Process Schema Process Process Workflowinstance BPP Progression Plan Project

41 Metamodel OOEM (BPM) Change initial final 1 Constellation + Purpose Procedure Procedure Task + Trial ExecutionOf Operation Sequence * Execution

42 End