BPMN is a well-known modeling notation. It stands for Business Process Model and Notation. Much has been discussion about this notation, however many people aren't aware of how to use this notation, and more importantly, when to use this notation. In this chat we talk to Stephen White who was involved in development of this modeling language.
Sandeep Johal: Stephen is a clear master in this field, because he was involved in the team that developed BPMN. Steve, let's start with the first question that's on my mind at least.
Can you tell us a little bit more about what BPMN is?
Stephen White: Okay, sure. BPMN defines how a specialized type of flow chart can be used to represent business processes, and as you mentioned, it's a model and notation, so it does define the graphical elements, the shapes and the markers of those elements, and it is a model since it explicitly defines the behaviors of those elements, the semantics of them, how they relate to each other, so that you could simulate or even execute or automate those business processes.
Sandeep: Great. That's good to know that it is a way to represent business processes. The question is, why does it exist in the form that it does?
Stephen: Okay. Well, it started back with an organization called Business Process Management Institute or BPMI, which formed in late 2000, and they were developing an XML execution language, a very technical process execution language, and they wanted to have a graphical notation as a front-end, and at the time, there were also competing notations and tools in the marketplace. There was a lot of them, too many. But many of those tool vendors actually got together with BPMI or in BPMI and they had to develop their own notations, so it had a lot of skin in the game, and they were involved in creating BPMN. They saw a need to create a common standard. I think the last time, we talked about what are the benefits of a common standard and these vendors, there was 25-30 of them at the time, saw that need.
Sandeep: Steve, I understand that you were involved very heavily in the BPMN development journey. Would you care to share some of your experiences of being involved in such a phenomenal initiative?
Stephen: I attended the early BPMI meeting in 2001 and volunteered to chair the notation working group when that was formed. I was fortunate that my company at the time, SeeBeyond and also later at IBM, allowed me to spend a lot of time on BPMN. I was the chair of the working group, was able to set the agenda, create the by-laws, set up all the different options for the notations that we were working on. We would discuss them and vote on them and so forth.
Actually, I found that even though we had 25 or 30 competing companies involved in this group, we were actually a very good group to work with. I was very pleased that we didn't have any major conflicts. We were all very polite and there was no issues. It was a very pleasant process, surprisingly. You would think there would be a lot more drama involved at that time but, there wasn't. It was a good experience.
We continued working on that. I ended up writing the majority of that first BPMN 1.0 specification. After a couple years, BPMN started gaining some momentum. A lot of tool vendors were supporting it at the time and eventually, BPMI merged in with the OMG, which was a larger standards organization. It had, itself, created its own process standards. Most notable was the UML activity diagram. When BPMI and BPMN came into the OMG, there was a little bit of issues there, little territorial spats. There was no major drama but there was an issue there because there were multiple competing standards there within the same organization. But, I think BPMN's success in the marketplace had helped win people over [inaudible 00:05:16]. They couldn't not support it because it was so successful, partly. The OMG did officially approve the standard and then began work on version two. Version two also included some of the larger companies which weren't involved earlier, like IBM, [inaudible 00:05:38], SMP. Given that kind of support, it even gained more momentum in the marketplace.
I continued work on that. Did a lot of the writing of that BPMN 2.0 specification and overall, that was a good experience. We finished that specification probably in 2011.
Sandeep: Could you maybe give us some thoughts on what type of scenarios you would use or most appropriate for the use of BPMN?
Stephen: Okay. In some sense, I'd like to caution more on this topic because I think my experience, people tend to think of BPMN as being business process management. Business process management, BPM, even though it has business process in the name, is a lot more than process. If you look at business process management, you have strategy, you have data, you have organization aspects, you have business roles, you have services, you have risks and policies and functions and so forth; process being one part of that. It's a key part but, it's just one part. I would caution people not to over think about what BPMN can do. It was designed to specifically deal with process and basically only process. It is not a data model. You can use your own data model and hook into BPMN. It's not a business role model, etc. It is if you need to do business processes, you would use BPMN as part of a larger BPM solution.
Sandeep: Obviously that begs the question of when not to use BPMN. Any thoughts on that?
Stephen: There are some specialized versions of business processes that BPMN doesn't cover at this point. If you're looking at a very low level model of how services interact, for example, when you're implementing a business process, BPMN doesn't really cover that natively yet, or very unstructured case management processes. It covers it a bit but probably not enough. I think we can talk about that a little bit more, later on. There are some specialized aspects of business processes where there might be other tools or models out there that would do that.