Foundation Series: Business Process Modeling

Business Process Modeling
Business Process Modeling (BPM) allows us to increase our understanding of business processes and improve communication with stakeholders and implementation teams. Business analysts will create diagrams that represent business processes. These diagrams can be used to elicit requirements, define scope, and improve communication within the team.
We use diagrams because they are intuitive. Diagrams can provide us with an easy to remember and understand visualization of a business process. These diagrams are a type of object oriented analysis (OOA) diagram. A BPM describes a business process, where an entity-relationship (ER) diagram describes business objects. The example in the previous link is an ER diagram.
A Simple Process Model
The easiest way to get a high level understanding of a business process model is to review the diagram for a simple process.
The following diagram represents a customer withdrawing money from their bank account. The customer convinces the bank that she is allowed to withdraw money, then requests the money, which the bank provides (after confirming that it is available). The customer then terminates the transaction.
The diagram does not show exceptions to the process, like having the wrong password, or not having enough funds in their account. Business process models can absolutely demonstrate these situations, and many others. We’ve kept this process simple, as it is an introduction to the concept.
The BPM Example Diagram

Swim Lanes and Pools
The first thing you will notice about the diagram is that all the activities happen in one of two areas, labeled customer and bank. These two areas are called pools. While that seems like a silly name, there is a reason for it. There is a type of diagram called swim lanes, designed to show how different people or entities interact. Each person gets a swim lane in which all of her actions happen. In BPM, all of the swim lanes for a single company are grouped together in a pool. In our example, each pool has a single lane.
In our diagram, there are two pools - one for the customer, and one for the bank.
Flow Objects
Our diagram includes examples of three flow objects: events, activities, and gateways. Events are represented as circles. We have starting events (triggers) at the top of the diagram and ending events at the bottom. Activities are drawn as rounded rectangles. An activity can be a single task (like “confirm logout”), or they can represent an entire sub-process. Our simple example shows only tasks.
Gateways represent points in the process where the flow can separate or combine. The diamond is the symbol used to represent a gateway - and it is common to see it in a flow chart, showing how a decision can cause a process to go in one of two directions. The two examples in our diagram show flows combining, with a “+” symbol inside the diamond. This implies that both inputs are required for the process to continue. For example, the steps “Deliver Cash” and “Update Account Balance” must both be completed before the sytem can “Receive [the] Logout Command”.
Sequence Flow
The solid arrows that connect all of the items within each pool are called sequence flows. They represent the flow of the process from one flow object to the next. Notice that there are no sequence flows from one pool to another. These solid arrows can cross swim-lane boundaries within a single pool, but never across pool boundaries. Since our example has a single swim lane in each pool, we don’t see this.
Message Flow
The dashed arrows that cross the pool boundaries are called message flows. A message flow represents communication between two entities. In our example, the customer sends a message to the bank asking for $100. The bank sends a message to the customer in the form of $100.
A Lot More
There are a lot more details to BPM. We’ve left them out to keep the introduction simple (and “brief”).
BPMN Standard
There is a standard notation to use in business process modeling, called BPMN. Business Process Modeling Notation is the industry standard for drawing diagrams. By using the same notation, every diagram becomes easier to read. All of the official documents can be found at www.bpmn.org.
This site has tutorials, the official standard (BPMN 1.0 [Feb 2006]), and other documents. There is even a visio stencil (Visio 2003, Visio 2002, Visio 5) that can be used to draw diagrams consistently with a minimum of fuss.
- - -
Check out the index of the Foundation Series posts which will be updated whenever new posts are added.


(6 votes, average: 4.83 out of 5)

July 19th, 2006 at 1:18 am
Good post and a great one page introduction to BPM.
I’ve recently talked to both a BPM vendor and a Business Process Analyst. What really struck me in the conversation is that they deal in at a much higher process level. From this and some papers from Gartner, I’ve learned very little of BPM ends up at the level of a traditional use case.
August 1st, 2006 at 10:36 pm
Scott,
I must have missed the BPM bus. I’ve always used the Rummer Brache notation which is supported in Visio and comes along with their book on “managing the white space in the organizaiton.”
From your experience, what’s the significant difference (if any) in BPM and Rummler Brache for process modeling?
August 2nd, 2006 at 7:19 pm
Hey Glen, thanks for reading and commenting!
Unfortunately, I don’t have any experience with the Rummler Brache approach, so can’t give an experienced-based opinion. I also searched the web for tutorials or examples of RB diagrams - but couldn’t find any (not that there are many BPMN examples either).
Does RB allow for the looping constructs and more expressive decisions (gateways) that BPMN supports? The only RB diagram I saw looked like a simple flowchart that had been mapped into swimlanes.
June 15th, 2007 at 6:55 am
Hi
Can anyone highlight, what’s the significant difference (if any) in BPMN and Process chart(Catalyst approach) for process modeling?
June 16th, 2007 at 3:09 pm
Hey Asmi, thanks for reading and asking the question!
Sorry - I’m not familiar with the Catalyst approach - maybe someone else here is?