John Raynolds blog impressed me and motivated me to write this article about BPM solution suites. Since SOA "was born" the BPM topic became a new "silver bullet" in the software industry. Major companies, like IBM, BEA, Lobardi and others invest enormous capital to develop BPM solution suites. These suites should help developers to build software systems in reasonable time. Also Open Source providers, like JBoss develop their own SOA stack platform to capture all areas about SOA. Is this the right way?
I agree with Raynolds statement about the benefit of using BPM tools:
"BPM suites allow you to create multi-party process-oriented applications from scratch, deploy them to production, and maintain them over the long haul. You begin by diagramming the business process using a graphical notation such as the Business Process Modeling Notation (BPMN). The resultant Business Process Diagram (BPD) captures the highest level requirements in an executable process definition...This is one of the great things about BPM, the mapping between the requirement and the implementation couldn't be more straight-forward. The BPD can be stepped through with the business folks ad-infinitum to make sure that it's really correct, and together you can add in all of the (business) exception flows and caveats until everyone is happy."
All products try to abstract the underlying technologies by providing nice GUI-wizards and modeling tools. Additional they introduce their proprietary script languages which is only a subset of Java or Java Script. Especially in this area the BPM tools harm the creativity of software developers. Software development is a creative work!! However, the tools often don't use the full strength of a language, such as Java.
The Infoq article summarizes some statements about Java developers and why they hate BPM. I think the BPM area is too big for a single software system to capture all issues. The real challenge is to combine things together. At present I've not seen a solution suite which closes the gap between the business process modeling and their execution in an engine. Products, like WebSphere Business Modeler, are great tools to model and document your process, but ends with simulation. What about their execution? The real benefit comes with a good combination of both, modeling/documentation and execution in an engine (e.g. jbpm).
1 comment:
Well, I am not sure if programming should be a creative job. My feeling is rather, that in the commercial environment everyone tries to get it to a manageable, controlable process.
Creativity is not what would come to my mind here. I have to add, I would prefer a developer who writes a clean an well tested application or module following the requirements and not one who tries to express himself in a creative way ;-)
Post a Comment