Archive for April, 2010

Conformance sub-Classes on the BPMN 2.0 FTF Ballot

Sunday, April 18th, 2010

Introduction

We have proposed a set of conformance sub-classes for BPMN 2.0 Process Modeling. There are three sub-classes with provisional names: SIMPLE, DESCRIPTIVE, and ANALYTIC (aligned with DODAF-OV-6C). There is also a sub-class for BPMN2.0 Execution: COMMONEXECUTABLE. The FTF has decided that SIMPLE is too simple; we retain it for historical purposes and as a suggestion to modeling tool companies for a minimal palette. Here we describe ‘personas’ for each subclass. We reference a separate white paper arguing for the choices made by the DODAF community.

In addition to the ‘elements’ the proposal for the BPMN2.0 specification also contains for each visible element the specific attributes in support of the element. The ‘persona’ descriptions focus only on the visible elements.

SIMPLE: Process Capture Persona

SIMPLE contains only seven FlowNode symbols and a single SequenceFlow symbol.

•          Task (None)

•          Subprocess (expanded and collapsed)

•          Gateways (exclusive data-based, parallel)

•          Events (None start and None end)

•          SequenceFlow (uncontrolled)

A common situation for use of the SIMPLE class is process capture. A business analyst is sitting in a room with a group of process owners. The session is attempting to map out a currently deployed set of processes that have never been suitably documented. Technology for such a session may range from a low-tech whiteboard to a laptop and projector. A process map is drawn by the business analyst as the process owners describe their operations step by step.

In this setting the bare minimum of graphics is required. There are process steps (BPMN activities) and decomposition of some of these steps using hierarchy (BPMN embedded subprocess, possibly drawn as a separate diagram). There is a simple flow structure connecting the steps, with decision branch/merge depicted (exclusive data-based gateway) and parallel branch/join depicted (parallel gateway). A shortcut is provided by interpreting multiple inputs to an activity as an exclusive merge and multiple outputs from an activity as a parallel branch. All sequence flows are depicted as uncontrolled.

Naturally there are other settings in which this persona is also appropriate. For instance: sketching out a process, focusing on the main pathways and ignoring exceptions, special cases etc.

We imagine that tool-builders would provide a UI that allows the user to designate his or her persona and this would select a pallet of shapes appropriate. In the process capture persona only eight symbols.

DESCRIPTIVE:

DESCRIPTIVE contains: (elements from SIMPLE are depicted in red)

•          Activities

–        task (task type: None, User, Service)

–        Embedded and Reusable/Call subprocess

•          Gateways

–        exclusive data-based, parallel

•          Events

–        start events (None, message, timer)

–        end events (None, message, terminate)

•          Pool, Lane, Misc(data object, text annotation, association, Data store, documentation)

•          Flows

–        SequenceFlow (uncontrolled) and MessageFlow

‘documentation’ is not visible in the diagram. It is an attribute of almost every element and as such a place where the modeler can provide invaluable information to help with understanding the process model. We have decided to make this the single exception to the ‘visible element’ focus.

A common situation for use of the descriptive class is fleshing out the details omitted in a process capture session. Using elements familiar from traditional flowcharting, the business modeler extends the routing logic to include the more critical exceptions (such as time-outs) and special cases, adds information about resource or role requirements for performing activities, adds some basic information about data flow and provides an overview of communications between participants/processes pertaining to the start and end of processes.

ANALYTIC (aligned with DODAF-OV-6C):

ANALYTIC contains: (elements from DESCRIPTIVE are depicted in red)

•          Activities

–        task (task type: None, User, Service, Send, Receive)

–        Embedded and Reusable/Call subprocess

–        Looping Activity, MI Activity

•          Gateways

–        exclusive data-based, parallel, OR, Event-based

•          Events

–        Link event (catch and throw)

–        start events (None, message, timer, signal, conditional)

–        catching intermediate events in sequence flow (timer, message, signal, conditional)

–        throwing intermediate events in sequence flow (message, signal)

–        boundary ((message, timer, signal, conditional)(interrupting and non-inter), error)

–        conditional event

–        end events (None, message, terminate, error)

•          Pool, Lane, Misc(data object, text annotation, association, Data store, Message)

•          Flows

–        SequenceFlow (uncontrolled and default) and MessageFlow

Discussion of the DODAF class is in the document:

Department of Defense – BPMN Guideline for DoDAF (Process Model OV-6c)

ANALYTIC extends DESCRIPTIVE primarily with support for intermediate events, useful for describing exception handling.  ANALYTIC supports a model structure sharable by business and IT. The activity flow and exception paths are all shown. But details such as the actual expressions for determining routing logic, assignment of values to properties and so forth, are omitted. The model is ready to be studied using a simulator (additional simulation-specific information will have to be added). Thus various types of analysis can be performed at this stage of elaboration, but the model cannot be executed by an enactment engine. Note that there are approximately another 50 elements in the full Processing Modeling conformance class that are not included in ANALYTIC. What has been included is based on extensive experience from BPMN training sessions and analysis of DODAF BPMN models.