BPM -- context for testing

16
December 2008, Geneva Dr Alexander Samarin Business Process Management (BPM) Context for testing

description

Business Process Management (BPM) -- Context for testing

Transcript of BPM -- context for testing

Page 1: BPM -- context for testing

December 2008, Geneva

Dr Alexander Samarin

Business Process Management (BPM)Context for testing

Page 2: 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

Page 3: BPM -- context for testing

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

Page 4: BPM -- context for testing

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

Page 5: BPM -- context for testing

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

Page 6: BPM -- 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

Page 7: BPM -- context for testing

Service as white box

Process

Service as black box

Processes and services

7BPM: Context for testing

Page 8: BPM -- 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

Page 9: BPM -- context for testing

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

Page 10: BPM -- 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

Page 11: BPM -- context for testing

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

Page 12: BPM -- context for testing

Four phases

BPM: Context for testing 12

Page 13: BPM -- context for testing

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

Page 14: BPM -- context for testing

Unstructured vs structureddiagramming

• Unstructured

• Structured +explicit use ofevents for sync

• Actually, 2 pools forcoordination

BPM: Context for testing 14

Executed twice!

Page 15: BPM -- context for testing

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

Page 16: BPM -- context for testing

Thanks

• Dr Alexander Samarin• [email protected]• www.improving-BPM-systems.com

16BPM: Context for testing