Upload
alexander-samarin
View
5.401
Download
2
Embed Size (px)
DESCRIPTION
Business Process Management (BPM) -- Context for testing
Citation preview
December 2008, Geneva
Dr Alexander Samarin
Business Process Management (BPM)Context for testing
About me
• An enterprise solutions architect
– From a programmer to a systems architect
– Experience in scientific, international, governmental and industry environments: CERN, ISO, IOC, BUPA, Groupe Mutuel, State of Geneva, EDQM, Bund ISB
– Have created systems which work without me
– Current specialisation is improving business process management systems
– How to use together BPM, SOA, EA, ECM and IT governance
BPM: Context for testing 2
BPM as a tool for enterprise performance management
• Enterprise business performance improvement• Service- and process-centric enterprise• Continual process improvement• BPM discipline
– model, automate, control, execute, measure, optimise
• Enterprise BPM system– set of business processes as well as practices and
tools for governing its design, execution and evolution
• BPM suite or Business Process Platform (BPP)– coherent set of software tools for facilitating the
implementation of a BPM system
BPM: Context for testing 3
The goal – easy evolution of a BPM system
• Experience shows that business wants separate requests for change to be implemented quickly
• These changes are typically small (from the point of view of the business) and unpredictable (from the point of view of IT)
• To carry out these changes easily and in a managed way, BPM systems must be properly architected & implemented & engineered
BPM: Context for testing 4
Too many stakeholders of BPM
• Strategy– top manager
• Business– manager– process owner– super-user– user
• Project– manager– business analyst
• IT– manager – enterprise architect – architect– developer – operator
5BPM: Context for testing
Modelling of business processes is communication between people
• Architecture (global) principles– Versionable artefacts– Digital, external, and virtual artefacts– All relationships are modelled explicitly – All models are made to be executable
• Diagramming style in BPMN• A dozen practical patterns• Structuring for better “executability” • Modelling procedure • Use a common tool for prototyping (e.g. Intalio)
BPM: Context for testing 6
Service as white box
Process
Service as black box
Processes and services
7BPM: Context for testing
BPMN is a victim of its success
• Typical Internet age “standard” – a draft proposal with a collection of features already implemented by participants– Too many shapes
• Deliberate absence of execution semantic in version 1.x– Too simples to draw
• Each tool interprets BPMN in its own way (e.g. Intalio does it via BPEL)
• Battle around BPMN 2.0 is a fight between vendors
BPM: Context for testing 8
Diagramming style in BPMN
• Pools– One or more explicit coordination pools– Human– Services– DISPATCH
• Naming convention• Use of colours
– Task meaning– Task
performers
9BPM: Context for testing
Practical patterns
• Automated, Human, Automated• Man & Machine• Decoupled Business Logic
• Initial Process Skeleton• Error Recovery Loop
• Structure Your Process• Decide, Execute, Control
BPM: Context for testing 10
The modelling procedure
• 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
BPM: Context for testing 11
Four phases
BPM: Context for testing 12
Testing in Intalio
• BPMN -> BPEL proprietary interpretation, but with explicit use of events
• Each process is a service (for unit testing)
• Manual trace for flow test(many clicks)
• Support for XSD and XML instances (good enough to define different test scenarios)
BPM: Context for testing 13
Unstructured vs structureddiagramming
• Unstructured
• Structured +explicit use ofevents for sync
• Actually, 2 pools forcoordination
BPM: Context for testing 14
Executed twice!
Ideal situation – BPMN for users, but for vendors
• Direct interpretation of BPMN– Standard and validatable execution semantic
– Hide use of intermediate formats
• Different levels of BPMN• Better understanding of BPMN events• Extra standards maybe necessary, as for HTML
– XHTML (structure and content)
– CSS (presentation)
– DOM-based API (dynamic modification)
• Vendors compete in compliance and performance (as with ACID3 test for Web browsers)
BPM: Context for testing 15
Thanks
• Dr Alexander Samarin• [email protected]• www.improving-BPM-systems.com
16BPM: Context for testing