Ken Wilner, Progress’ VP of Technology for the OpenEdge product, gave a breakout session on OpenEdge BPM, which integrates the former Savvion BPM platform into the OpenEdge application development environment to allow the business process to be made explicit – externalized from the application – in order to improve agility and visibility. It’s interesting to hear this message, which is no longer even a topic of conversation in mainstream BPM circles because it is so well-understood, presented to a group of OpenEdge application developers.
Does the integration of BPM just relegate OpenEdge to the scripting/coding language slaved to BPM? Maybe, but that’s not necessarily a bad thing. Instead of layering BPM on top of a monolithic application developed with OpenEdge, it’s about having an integrated development platform that includes BPM as a part of the toolkit. It will be interesting to see how well this message is received by the OpenEdge development community, and how long it takes to actually impact their development methods. I had a number of questions yesterday during my workshop on exactly this issue: how does BPM fit with an application developed in OpenEdge? It’s about pulling the process out of the app and into BPM, as Wilner pointed out, but also about orchestrating and integrating apps including OpenEdge and other systems such as CRM and accounting.
Although (Savvion) BPM Studio and the OpenEdge Architect development environment are both Eclipse-based, it doesn’t appear that they’ve been integrated in any significant manner. Similarly, there are two different servers – although a BPM process can call an OpenEdge functionality, using web services at least – and two different end-user portal environments, where the BPM server functionality can be surfaced in the OpenEdge portal.
He gave a live demo of creating a process in BPM Studio. This was pretty straightforward, a BPMN diagram of a five-step order processing flow with roles assigned to human steps, plus a simple data model with specific fields exposed at the steps in order to auto-generate the related forms. He then assigned a system step to an OpenEdge function, using web services (SOAP) calls, and another system step using the standard Savvion email functionality. He ran the process in the BPM portal, showing how the tasks were routed to the different users, and how you can monitor the process as it moves through the steps. Nice, and probably new and exciting for the purely OpenEdge people in the audience, but so far, this is just standard BPM with no specific integration between OpenEdge and Savvion BPM, only the standard loosely-coupled web services that would have been there in BPM anyway.
Wilner discussed (but did not demo) the high level of reusability of existing OpenEdge application components in the context of a BPM process, including the use of existing UI forms, but it’s not clear that this is a level of integration specific to OpenEdge, or just using standard integration points and/or custom development.
There is no doubt that BPM provides value as a tool for any application developer, but this demo could have been done with any BPMS, and/or any application that exposes functionality as a web service. I know that this session was listed as an introduction to OpenEdge BPM, but appears to be more of an introduction to BPM for OpenEdge developers. I hope that there is more to OpenEdge BPM than this, as well as a comprehensive roadmap for further integration. His closing slides indicated that this was coming in OpenEdge 11 at the end of this year, and I look forward to seeing how they are going to push this forward.