BPM -- context for testing


Published on

Business Process Management (BPM) -- Context for testing

Published in: Technology, Business
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • BPM -- context for testing

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