BPMN Method and Style

Preface to the Second Edition. v

  • Changes since the First Edition. v
  • Structure of the Book. viii
  • BPMN Training. x
  • BPMN Tools. x
  • Acknowledgments. xii

Part I: What is BPMN?. 1

  1. Bad BPMN, Good BPMN.. 3

    • The Paradox of BPMN.. 3
    • Method and Style. 4
    • The Long Road to BPMN 2.0. 5
    • Business Process Modeling Is More Than BPMN! 7
  2. How Does A Model Mean?. 9

    • BPMN’s Hidden Conceptual Framework. 10
    • Process Logic. 12
    • Orchestration. 13
    • BPMN Levels and Process Modeling Conformance Subclasses. 15

Part II: Method and Style – Level 1. 17

  1. BPMN by Example. 19

    • A Simple Order Process. 19
    • Exceptions and End States. 19
    • Swimlanes and Activity Types. 20
    • Subprocesses. 21
    • Process Levels and the Hierarchical Style. 22
    • Parallel Split and Join. 25
    • Collaboration and Black-Box Pools. 25
    • Start Events and the Process Instance. 28
    • The Top-Level Diagram.. 30
  2. The Level 1 Palette. 33

    • Activity. 33
    • Task. 34
    • Subprocess. 35
    • Call Activity. 38
    • Gateway. 39
    • Start Event. 42
    • End Event. 44
    • Sequence Flow.. 45
    • Message Flow.. 46
    • Pool. 46
    • Lane. 48
    • Data Object and Data Store. 49
    • Documentation, Text Annotation, and Group. 50
  3. The Method.. 53

    • Goals of the Method. 53
    • Hierarchical Top-Down Modeling. 54
    • End State. 55
    • Step 1. Determine Process Scope. 56
    • Step 2: The High-Level Map. 59
    • Step 3: Top-Level Process Diagram.. 60
    • Step 4: Child-Level Expansion. 62
    • Step 5: Add Message Flows. 63
    • Method Recap. 67
  4. BPMN Style. 69

    • The Basic Principle of BPMN Style. 69
    • Style Rules. 71
    • Official BPMN 2.0 Rules. 82

Part III: Method and Style – Level 2. 85

  1. Events. 87

    • Event-Triggered Behavior. 89
    • Timer Event. 91
    • Message Event. 95
    • Error Event. 104
    • Other Level 2 Events. 107
    • Event Subprocess. 111
  2. Iteration and Instance Alignment. 113

    • Loop Activity. 113
    • Multi-Instance Activity. 114
    • Using Repeating Activities. 115
    • Using Multiple Pools. 117
    • Batch Processes. 119
    • Instance Alignment. 120
  3. Process Splitting and Merging.. 123

    • Conditionally Parallel Flow.. 123
    • Merging Sequence Flows. 125
  4. Transactions. 129

    • ACID Transactions. 129
    • Business Transactions. 130
    • Compensation Throw-Catch. 132
  5. The Rules of BPMN.. 135

    • Sources of BPMN Truth. 135
    • BPMN Rules for Level 2 Process Modeling. 136
    • Style Rules for Level 2 Process Modeling. 139
    • Model Validation. 140

Part IV: BPMN Implementer’s Guide – Non-Executable BPMN. 143

  1. BPMN 2.0 Metamodel and Schema.. 145

    • XSD Basics. 147
    • BPMN Schema Fundamentals. 149
  2. Process Modeling Conformance Subclasses. 153

    • Descriptive Subclass. 154
    • Analytic Subclass. 155
    • Common Executable Subclass. 156
  3. BPMN Serialization Basics. 157

    • definitions. 157
    • documentation and extensionElements. 160
    • collaboration. 160
    • process. 162
    • Example: Simple Process Model. 162
    • Example: Simple Collaboration Model. 164
    • Example: Simple Import and Call Activity. 165
  4. Serializing Process Elements. 167

    • flowElement and flowNode. 167
    • activity. 167
    • subProcess. 170
    • gateway. 172
    • event. 173
    • sequenceFlow.. 176
    • laneSet and lane. 178
    • Artifacts. 178
  5. Serializing Data Flow… 181

    • Non-Executable Data Flow.. 181
    • Example: Non-Executable Data Flow.. 183
    • More on Data Inputs and Data Outputs. 185
  6. The BPMNDI Graphical Model. 187

    • BPMNDI Basics. 188
    • Process Levels and Pages. 188
    • BPMNDiagram.. 189
    • BPMNPlane. 190
    • BPMNShape. 190
    • BPMNEdge. 191
    • BPMNDI Examples. 191
  7. BPMN-I 199

    • BPMN-I Profile Serialization Rules. 201
    • Part V: BPMN Implementer’s Guide – Executable BPMN. 213
  8. What Is Executable BPMN?. 215

    • Common Executable Subclass. 216
  9. Variables and Data Mapping.. 219

    • itemDefinition. 220
    • message. 220
    • Importing Structure Definitions. 221
    • Example: Data Flow with Imported Item Definitions. 221
    • Properties and Instance Attributes. 223
    • Data Mapping. 223
  10. Services, Messages, and Events. 229

    • Services. 229
    • Messages. 229
    • Automated Tasks. 230
    • Events. 232
  11. Human Tasks. 235

    • userTask. 235
    • Performer Assignment. 235
  12. Executable BPMN in Practice. 239

    • Handling Java Data. 240
    • Services and Service Adapters. 244
    • Example: Bonita Open Solution. 244
  13. Aligning Executable Design with BPMN Method and Style. 259

    • End State Variables. 259
    • Gateway Conditions. 260
    • Messages. 260
    • Errors. 261

Index. 263

About the Author 269