Monday, December 05, 2005

Business State Machines

One of the new features in WebSphere Process Server is support for the concept of a "Business State Machine". The concept of a state machine is hardly new but this is the first time I've seen an engine implement them in the context of a business process.

The idea is that many business processes are inherently event-driven and are not linear. For example, the processing of a mortgage application follows a pretty rigid set of steps. If you want to model your process with a view to automating it, it makes sense to draw it as a logical sequence of steps.

However, some business processes are not like this at all. I saw a colleague use the great example of a DVD-rental store today. If we treat the lifecycle of a DVD rental as a process, then we quickly see that the process is entirely driven by events - the hiring of a DVD, the return of a DVD, the expiry of a rental period, the making of a reservation, etc, etc.

Until now, modelling such a process with standard business modeling tools was difficult.

WebSphere Process Server allows you, instead, to model the process in a far more natural manner and the tooling and runtime work together to take care of the execution for you.

It's an area I'm still investigating but I can think of several client engagements from the past that would have been a lot easier with this technology.

No comments: