Graphical monitoring for BPEL 2.0
For the last week, I've been looking into ways to expose business process monitoring in GlassFish ESB in a way that makes more sense to a business analyst, rather than the person who actually implemented the process. There's a broad spread of technical interfaces available but options for graphical views are more limited.
Let's take an example BPEL 2.0 process which crops up often in demos and tutorials: the loan application. Here's the BPEL model I came up with:
You can figure out the flow here fairly easily - but you have to think about it and trace through the steps. From a high level, there's a lot here that you're not interested in and have to mentally filter out. All you really care about are the invoke statements, and the overall flow (in this case, which branch of the if statement it took).
Here's an SVG model of the pieces I'm interested in, modeled using Inkscape. The trick now is to marry this to the BPEL monitoring API and for this I've chosen to build a web application using jMaki.
Here's the a screenshot of the resulting application:
What's happening behind the scenes is that for an activity instance in the monitoring database, we look for an SVG element with the same name as the BPEL activity and modify the attribute so that it's either opaque (successfully processed) or translucent (not yet processed). This can be extended to show other states, such as in progress or to indicate an error.
There are numerous advantages for using SVG models:
- Easy to create
- The SVG model can be as abstract as you want
- Can look very nice!
- Support for animations
- Easy to manipulate programatically
- Potential to be interactive
So far I only have a prototype and I'm looking for feedback to see if this is could be useful to anyone. Leave a comment and let me know!



It looks quite cool, and the idea how to select the active activities looks really simple. But one improvement which comes instantly to my mind is the highlighting of the arrows of the path. And I wonder if this still can be achieved so easily, or if in the end there will be the need for a more complex mapping of BPEL/SVG.
While the approach seems to be good for business analysts, there is still the need of a diagram which resembles the BPEL-Code. And this should be oriented at the BPMN-Standard.
http://www.diveintobpm.org/
Posted by Jan Müller on October 06, 2008 at 08:27 AM BST #
In my humble opinion, this is precisely the way to go, and investiguate deeply.
One of the most common problem of SOA/BPE is that it s very hard to share the same vocabulary between business and IT people.
That s the real challenge. by proving a high level GUI, IT people would be in a situation where they give some power/responsability to the business people, while being sure that the (business) concepts that are behind the diagram will be nally well understood by the SOA/BPEL IT people. By delegating to the business, everyone is a winner.
The more IT delegates to the business the business logic, the better the resulting application will be (shorter life cycle, more iterative), while better separating the business logic, from the It logic (architecture, process, workflows..).
Finally, it would also be very helpful to get those dynamic SVG views used to monitor the flow of events in the business workflow (BAM).
Posted by philippe provost on October 10, 2008 at 09:44 AM BST #