For the next two sessions, we’ve split into two tracks, business and technical, and I’m in the technical track where Stephen White of IBM (the “father of BPMN”) is talking about modeling notations and metamodels, namely, BPMN, BPDM and UML.
White started out by listing all of the process-related standards both within OMG, and those external to OMG, such as BPEL, XDL, ebXML BPSS (ebBP) and WS-CDL. I’m starting to think that they missed a great opportunity at lunch with the vegetable soup: a few letter-shaped noodles and we would have had alphabet soup for lunch as well as the dose of it that we’re having now. 🙂
He then focussed specifically on the three key process standards within OMG: UML, BPMN and BPDM.
UML’s been around quite a while; I know it primarily as a way to model software development concepts, and have never been happy with the attempts to shoehorn it into business analyst usages since it is difficult to explain the visual syntax of some UML diagrams to business users when they need to review them. UML activity models were added as a variation of state diagrams, and were beefed up with some business semantics to allow for use by business analysis to model business processes, but they’re not as functional as BPMN diagrams for business process models and have pretty much been replaced in that area by BPMN; I expect that they’re used mostly for modelling flows within software (by developers) than for business processes these days.
BPMI first developed BPML (an XML process execution language) which was later replaced by BPEL, and realized that a graphical notation standard was required, leading to the development of BPMN. BPMN was developed to be usable by the business community, and to be able to generate executable processes (through mapping to a language such as BPEL) by providing not just graphical elements, but the attributes for those elements. BPMN is intended to be methodology-agnostic, and to allow a business analyst to model a process in as simple or as complex an amount of detail that they deem suitable for the application.
White covered the basics of BPMN: the four core elements of activities, events, gateways and connectors represented as shapes, then variations on each of those such as the border type and thickness of an event to indicate if it is a start, intermediate or end event. I covered some of this in my recent webinar on business process modelling, or there’s tons of more detailed BPMN references around the web including Bruce Silver’s BPMN course.
This is turning into a bit too much of a BPMN primer, but I’m hanging on for the BPDM part. Also, I’m in the middle of the second row and can’t exactly sneak out unnoticed.
There seems to be a huge point of confusion with some of the audience members over pools and lanes in the swimlane elements of BPMN, and when to use a pool versus a lane; this seems like one of the most obvious things in the standard, so I’m not sure why this is a problem. Pools, in general, represent separate spheres of control; a business process starts, ends and has all of its elements within a single pool. Pools are often used to represent separate organizations in a B2B process representation. Lanes are sub-partitions of pools, usually used to indicate an organizational role or department, or even specific systems that participate in the process in some way; elements of a business process will be in different lanes of the same pools to indicate where (or by whom) that element is executed. Only message flows pass between elements in different pools, which implies a level of asynchronicity; whereas sequence flows are used to connect activities, gateways and events within the same pool, whether in the same lane or not.
BPMN 1.1 was just completed, with a few notational changes:
- Signal, a new event type, denoted by a black triangle within the event circle shape. A signal is used to broadcast a specific state to other processes outside the immediate scope.
- Reduction in scope for link events, because of the inclusion of the signal event; these are now basically goto events within a process.
- Visual distinction between events that throw and catch, indicated by whether the internal icon is filled or an outline.
- Rule event is now called “conditional”.
- Icon for multiple events is a pentagon rather than a 6-pointed star.
Nine minutes after the session was supposed to end, we finally start on BPDM, so I think that this is going to be quick. I’m starting to understand by standards are never released on schedule…
BPDM was started in 2003 as a metamodel of business processes, initially without a notation and later aligned with BPMN. It’s intended to support the specification of multi-party choreography (think of message flows between pools) as well as process orchestration: basically, orchestration is what goes on inside a pool, that is, internal business processes; choreography is what happens between pools, that is, B2B interactions. BPMN 2.0, which will include BPDM, will update how choreography processes are modelled.
BPDM, as the metamodel, defines the meaning of the notation and provides the standardized structure behind it that allows for translation between different modelling languages. In BPMN 2.0, the meaning of BPMN will be changed to Business Process Model and Notation to indicate the inclusion of the BPDM metamodel into BPMN 2.0.