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

Similar documents
Transcription:

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

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

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

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

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)

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)

Why Sphenon Is Engaged in This

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

Dead And Living Models

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

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

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

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

Modelling Languages

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

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 0.8 1995 James Rumbaugh u.a., 1991 IT Systems BPMN hen A. White, 2002 BPEL Web Services WSDL W3C, 2001 IBM, BEA, Microsoft, 2002 UML 1.4 2000 UML 1.5 2003 UML 2.0 2005 Source: wikipedia, scholarpedia

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 0.8 1995 James Rumbaugh u.a., 1991 IT Systems BPMN hen A. White, 2002 BPEL Web Services WSDL W3C, 2001 IBM, BEA, Microsoft, 2002 UML 1.4 2000 UML 1.5 2003 Execution Level (Flow) UML 2.0 2005 Concrete application requires floworiented notations

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...

OO + BPM...

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

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

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

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?

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

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

Example

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

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

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

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]

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

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]

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

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

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)

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)

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

Applicability of OOBPM / OOEM www.ooem.org UML Profile for eclipse www.oomodels.org Sphenon EMOS

Appendix

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

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

End