I’m all for BPMN. I think it’s important that there is a strong industry standard.
That said…. These are my 5 grievances with BPMN:
Every company has their own “BPMN”
I had done integration with three different BPM modelling vendors. All major players.
I have imported their BPMN files into our system.
None of the files were compatible. Each time I needed to create a different xslt file for them to fit.
Each file had different attributes, each file had different naming conventions, each file had their own order for the elements and objects.
All of them were xml. All of them were BPMN standard. None of them compatible.
I spent days trying to find the right xpath. Standards are made to make my life easier. Standards are made to ensure compatibility.
The last mile
One of the most common weak points of BPM systems is in developing the part of the process application that isn’t generated from the process model: user interfaces, data models, security, business logic and integration with legacy systems.
BPMN does not support these.
BPMN gets so much attention that business analysts spend all their time on the process model. All the rest gets little attention.
Converting BPMN models to executable environments is more than just the model.
Result: excellent workflow, poor solution.
Roundtripping
The BPM vendors I’ve met either have great process modeling ability or great execution ability – but not great at both.
So when BPM vendors work together or OEM there is usually a BPMN file that can be exported from the modeling platform into the execution tool.
But if the model is changed in the execution platform – some of those changes fall off when importing them back to the modeling platform.
Each of the platforms generate BPMN. Each of the platforms can import/export BPMN. But not seamlessly.
Some might say that this might be a platform problem, not a BPMN problem, but if I can’t implement roundtripping using BPMN – why use BPMN?
BPMN is an exclusive club
Now I might be petty, and I might sound paranoid, but I always get a feeling that the BPMN club is run by a handful of top BPM vendors.
Yes.. “you can join – if you do it our way” kind of invitation. “Oh.. and by the way…. only our software does BPMN correctly”…
As a bystander I’ve also witnessed the bloody war pro-BPMNists waged against BPEL and XPDL supporters.
BPMN did win – but at a price. There is no peace. Some business analyst that I know are still divided and some do not recognize the new pope.
BPMN is for not for developers
I’m a developer, not a business analyst. If I was a business analyst I’d probably understand the notation (it seems they learn it at birth…).
But in the end I’m the poor sod that needs to implement the solution.
If a developer doesn’t master BPMN – they won’t understand it, nor use it.
There is no motivation to educate developers, nor are there simple guides on the web to learn it.
I didn’t write this article to be controversial or cause a buzz.
I do hope that if any of the BPMN “leaders” are reading this article – they will take the points I raised and find suitable solutions.
I’m all for BPMN. I think it is important that there is a strong industry standard.
Hi Adam,
about your first point: I’m not sure what you are trying to import, because the XML exchange format of BPMN 2 is still not fixed. So it is not surprising that different tools export different dialects. Or have used another standard for exchange?
By: Sebastian on 23/03/2010
at 11:51 am
Hi Sebastian,
I’m not sure which version it is. I’m hoping that BPMN2 will support backward compatibility.
I love your term “dialects”. Its a nice way of saying that each tool is non-compatible with the others
Can the BPMN exported from Aris Modeller be imported into all of the BPM vendor tools?
Can BPMN from the other BPM vendors be imported into Aris?
Cheers,
Adam
By: Adam Deane on 23/03/2010
at 12:47 pm
Adam, that is exactly my point, it can’t, because there is no standard exchange format for BPMN. BPMN 1 didn’t had such a format and BPMN 2 will have such a format, but the standard is not finished yet. So at the moment there is no chance for any vendor to support a BPMN exchange format, because there is none.
By: Sebastian on 23/03/2010
at 12:56 pm
Excellent. Good news to hear that BPMN2 will have such a standard.
I’ll be able to remove the first point from my list.
Thanks!
By: Adam Deane on 23/03/2010
at 1:04 pm
Active Knowledge Modeling have just published an great article on BPMN2 called Simplifying BPMN 2.0
By: Adam Deane on 23/03/2010
at 7:43 pm
[…] BPMN: Top 5 Grievances « Adam Deane Adam Deane on some of the problems with BPMN: "Now I might be petty, and I might sound paranoid, but I always get a feeling that the BPMN club is run by a handful of top BPM vendors." Hopefully #1, 3 and 4 will go away with the advent of BPMN 2.0 and its serialization format, but #2 (the last mile, i.e., UI and other things that BPMN doesn't do) is an issue: process models do not an application make. As for #5, "BPMN is not for developers": man up, Adam! You spent 8 hours last weekend reading my blog end to end, just devote that amount of time to learning BPMN! I realize that it's not as amusing, but promises to be just as useful. (tags: bpmn) […]
By: Column 2 : links for 2010-03-24 on 24/03/2010
at 12:02 pm
—-Every company has their own “BPMN”—-
This was true. BPMN came much later than UML. and everybody wanted to create their own sort of standards. But now to consortium has created BPMN 2.0 standard and all the products now adhere to that.
The vision of BPMN 2.0 is to have one single specification for a new Business Process Model and Notation that defines the notation, metamodel and interchange format but with a modified name that still preserves the “BPMN” brand.
—-The last mile—-
This is true and that’s why unless you are going for process execution there is not much value of creating BPMN based processes. In that event UML is much more valuable.
The products like Pega, IBM BPM, Oracle BPM are the ones that helps in process execution. Hence if you have some products like these in your organization than creating processes in BPMN makes more sense. But in that case the Analyst role becomes more than just analyzing. They also becomes process executors (Developers).
—-Roundtripping—
This is also correct. Before acquiring Lombardi which is Process modeling tool, IBM only had Process Server which is process execution space. But since they acquired Lombardi they got both Design Modeling (Lombardi) and execution (Process Server) into one product known as IBM BPM. with IBM BPM 8.5 they have gone one more step ahead.. From Process modeling i.e Lombardi now you can directly call WSDL’s of Integration Bus/ Message Broker where developers feel more comfortable in defining flows and process execution.
—-BPMN is an exclusive club—-
Again a correct statement. The war between BPEL and BPMN stayed alive for long and then BPMN won the battle & at a price. But that was the story for 2011. Now since 2013 industry has produced many BPMN analyst and developers, also the product vendors have reduced the prices of the products by great amount by including them into suite or by providing component based models. There are many workshops run by Product vendors to induce the usage of these products. The idea is to give the power of execution in the hands of common people. The products like these will be the future in next 3-5 years.
—-BPMN is for not for developers—-
I will not agree with this statement. Everybody in the whole lifecycle of the Project/Product starting from Project Managers, Analyst, Architects, Designers, Developers, Testers, Administrators does some sort of Analysis, Design and some Development in their respective streams. So my suggestion for all those guyz would be to put some extra effort for your carrier growth and learn something which is the future.
“For what we work we get paid, but for what we go extra mile is considered as our growth & value add to the company” .
By: Pulkit on 15/11/2013
at 8:30 pm