How to use BPMN* for modelling business processes
Description
Reduced version of a webinar
Transcript
WEBINAR (SHORT VERSION) HOW TO USE BPMN* FOR MODELLING BUSINESS PROCESSES Dr Alexander Samarin www.samarin.biz * Business Process Modeling Notation
- BPM reference model
- BPMN basic elements
- Modelling methodology
- BPMN diagramming style
- BPMN practical patterns
- BPMN-based modelling procedure
- Evolution of BPMN
- BPMN advanced use
- Ideally, one formal description of business processes
- model in design
- input for project planning and execution
- executable program for coordination of work
- documentation for all staff members
- Explicit expression of coordination
- Express relationships between BPM artefacts
- Understandable by all staff members
- A tool for communication
- A tool for joint work of the business and the IT
- An original development by Business Process Management Initiative to align modelling notations since 2000
- The primary goal – understanding by business stakeholders
- OMG standard since 2005
- Current version 1.2 since Jan 2009
- Version 2 is under development (to be discussed at the end of this webinar)
- This is based on the experience that the direct use of some standards does not guarantee interoperability
- Development “by committee” leads to exotic features
- Bottom-up approach leads to yet another attempt to solve all problems with the current tool
- BPM industry is vendor-driven and not customer-driven
- BPMN has no solid execution semantic model – each tool executes BPM diagrams differently
- BPM reference model
- BPMN basic elements
- Modelling methodology
- BPMN diagramming style
- BPMN practical patterns
- BPMN-based modelling procedure
- Evolution of BPMN
- BPMN advanced use
- 3 kinds of flow objects
- Activity
- Gateway
- Event
- 3 ways of connecting
- Sequence flow
- Message flow
- Association
- Two types of container
- Pools
- Lanes (swimlanes)
- Template-based
- static connection of “flow objects” or sequence relationship (predecessor and successor)
- similar to a river (upstream and downstream)
- process template is an abstract description of a process
- Token-based
- token marks elements which active at a particular time
- dynamic connection of “flow objects” or synchronisation (wait for) / chronologic relationship
- similar to a “flock” of ducks (split and join)
- several tokens may co-exist
- Instance-based
- process instance is an enactment of a process template
- each instance may have different behaviour of tokens
- a process instance is completed when all tokens have been consumed
- a process instance may start several instances of another process (although the latter is mentioned only once in the former)
- Start event produces a token
- End (or finish) event consumes a token
- Intermediate token means that something happened within a business process engine
- Too many events details
- Recommendations to use:
- Mainly “message”
- Sometimes “empty”, “error” and “timer”
- It has at least one activity!
- Activity02, Activity03 and Activity04 will be executed in parallel; the process will only be continued when each of them is completed
- Logic of tokens is used
- A single activity Activity02 or Activity03 or Activity04 will be executed. The choice is based on the logic defined within the gateway G01
- Logic of tokens is used
- Several activities can be executed in parallel
- It covers functionality of parallel and exclusive gateways
- Logic of tokens is used
- Many tokens can pass the same activity
- Process fragment is a compound activity
- Also called “sub-process”
- Repeating conditions may be different in different systems
- Be explicit within fragments; the exclusive gateway G01 which is used to specify two branches – one to continue the loop and one to exit it
- Catching errors and time-outs
- A pool is a container for activities carried out by a particular participant in a process
- Typically, a participant is
- a role for a human activity
- a service (or a process) for an automated activity
- Flow connector represents the sequence of activities within the same pool
- Message connection represents the communication between activities in separate pools
- BPM reference model
- BPMN basic elements
- Modelling methodology
- BPMN diagramming style
- BPMN practical patterns
- BPMN-based modelling procedure
- Evolution of BPMN
- BPMN advanced use
- Horizontal vs. vertical timeline
- BPM reference model
- BPMN basic elements
- Modelling methodology
- BPMN diagramming style
- BPMN practical patterns
- BPMN-based modelling procedure
- Evolution of BPMN
- BPMN advanced use
- Recent research work led by several universities has led to the identification of about 40 workflows patterns; used for comparison of different workflow engines
- Visit http://www.workflowpatterns.com/
- Most of them are complex
- With a process instance we “carry” a package with
- Business objects (by value and by reference)
- Business documents (by value and by reference)
- Key Performance Indicators (KPIs)
- Audit trails
- Comments
- Local variables
- etc.
- BPM reference model
- BPMN basic elements
- Modelling methodology
- BPMN diagramming style
- BPMN practical patterns
- BPMN-based modelling procedure
- Evolution of BPMN
- BPMN advanced use
- it treats human and automated activities equally
- it is primarily for capturing the flow of control, and not for optimisation
- it is a tool for both the business and the IT (maybe with coaching by a process architect/engineer)
- it provides validation by simulation
- it provides validation by quick prototyping – real services can be invoked
- it is a visual programming approach
- Its purpose is
- to analyse a building block (what it is supposed to do)
- to synthesise its implementation (how it does this) as the explicit coordination of other building blocks (processes or activities)
- It is iterative – we can apply it until we have left only indivisible building blocks (i.e. activities)
- Artefacts are constructed recursively, like Russian dolls
- The purpose
- to analyse a building block as a whole
- to discover its functional characteristics and some related artefacts
- The method
- the business story behind this building block should be carefully analysed to determine some of its artefacts
- Recommendations
- at this point, don’t go into excessive detail for each artefact; this should be done later
- The purpose
- to analyse a building block from within to determine its internal structure and its major artefacts
- The method
- determine the main functional (or logical) steps
- add check-points between steps
- classify artefacts for these steps
- Recommendations
- don’t have more than 7 steps
- avoid loop-back over check-points
- Steps and check points
- Steps, check points and artefacts
- The purpose
- to synthesize an initial version of the formal coordination: some kind of process skeleton
- The method
- add intra-step logic
- start formalising the business objects involved
- collect test scenarios
- Recommendations
- consider implementation of human activities as interactive forms
- The diagram
- The purpose
- to enrich the process skeleton by adding more automated activities
- The method
- add pools
- apply different practical patterns
- use a business rule engine if available
- collect test scenarios
- Recommendations
- work iteratively (step-by-step)
- The diagram
- BPM reference model
- BPMN basic elements
- Modelling methodology
- BPMN diagramming style
- BPMN practical patterns
- BPMN-based modelling procedure
- Evolution of BPMN
- BPMN advanced use
- Seamless exchange between different modelling tools
- Conformance levels
- Execution semantic promised
- Merging orchestration and choreography
- Driven by vendors
- Agreed BPM reference model
- Conformance for standard execution semantic
- BPMN-like model with different levels of detail
- A modelling procedure which guides people
- A coherent set of standards similar to W3C for HTML:
- xHTML for structure and content
- CSS for presentation
- DOM-based API for dynamic modifications
- some other specialized standards
- All vendors benchmark their products against an agreed test (similar to acid3.acidtests.org)
- BPM reference model
- BPMN basic elements
- Modelling methodology
- BPMN diagramming style
- BPMN practical patterns
- BPMN-based modelling procedure
- Evolution of BPMN
- BPMN advanced use
- Contact information:
- Alexander Samarin
- [email_address]
- www.improving-BPM-systems.com