Building Vaadin UIs for Activiti-based BPM Applications

Petter Holmström
On Apr 14, 2011 11:23:00 AM

What characterizes an enterprise application? Is it the platform it is deployed on? Is it the number of LOCs? Is is the number and complexity of integrations with other systems, where a more complex system is more "enterprisy" than a less complex one?

Well, if you asked me, I would say that an enterprise application is an implementation of one or more business processes. In this context, I consider a business process to be a series of tasks that needs to be performed in a certain order, by certain people in order to achieve a certain result that usually provides business value. Even an extremely simple application can be an enterprise application if it helps its users to do business.

In today's world, business processes change rapidly. In order to remain useful, the enterprise systems also need to keep up. For complex business processes implemented in some programming language (e.g. Java), this can be difficult to achieve. This is where BPM (Business Process Management) engines come into the picture.

Simply put, a BPM engine brings business people (who work with business processes) and software engineers (who work with code) together. The processes can be defined graphically in BPMN and executed inside an enterprise application.

One BPM engine that is feature rich but yet easy to use is Activiti. It is written in 100% Java and plugs seamlessly into any Java application - including Vaadin applications. Likewise, as it turns out, it is very easy to create a Vaadin front-end on top of an existing Activiti-based application.

I have written an article that hopefully will help you to get your first BPM-based Vaadin application up and running in only a few hours. Check it out!

Petter Holmström
Petter (with two T:s) works as a software architect at Vaadin, mostly in customer projects. He is constantly on the lookout for new and better ways of writing software and he likes to try out new things. On his spare time, he likes to put out fires.
Other posts by Petter Holmström