Hi, my name is Kris Verlaenen and I'm the jBPM project lead. The jBPM project is a completely open-source BPM project and there's also a supported offering based on this by Red Hat called JBoss BPM Suite.
What I would like to present today is how we are including support for more adaptive and dynamic cases. We see this as an extension to processes, supporting more flexibility using more advanced features.
We believe that there is a wide spectrum of processes, from well-structured to completely dynamic, where nothing is defined upfront, and that there is no line between where a process ends and where a case starts.
The approach we have taken is to add support for these more advanced features, that aren't unique to cases, on top of what we already have, a flexible process engine based on BPMN 2.0.
The close integration that we have with business rules and event processing inside the engine makes it possible to extract certain business logic in adaptive cases under the format of for example rules or decision tables.
In the demo I will present a simple healthcare example where a patient is followed across multiple stages of diagnosis and treatment, and it's the doctor who will be making all the decisions.
But users don't just want to build processes or cases, they typically need applications that end users can depend on to achieve certain goals, and we want to help developers with that as well.
Our approach is to offer all the building blocks so our users can quickly create these applications by combining and customizing the features and UI building blocks they need.
A first reason that explains the need for custom application is that the various UIs that a BPM solution offers to keep track of running instances or task lists are usually too generic and not using the language the end user is expecting.
On top of that, UIs that are customized and tailored to the specific use case of the end user are much more capable of showing exactly the right data in the right way.
And while cases can potentially use advanced features like milestones and ad-hoc tasks, every case is different and so the user can choose which features are relevant.
For example, our demo application consists of a UI that is custom built for our use case. As you can see it's using healthcare-specific concepts and everything can be customized to the detail.
But this UI is based on more generic building blocks for showing for example case details, milestones that have been achieved, case roles that are participating, tasks, etc.
Those screen components get their information from our intelligent process execution server, that offers easy-to-consume REST endpoints to provide the data that is required and to interact with the cases.
Our workbench allows you to combine existing UI building blocks, like small screen components or reporting charts into these custom views and applications using drag and drop.
Administrators can extend the workbench itself with custom screens and entire perspectives, and expose their custom built applications to end users, either within the workbench or as separate applications.
By combining and customizing out-of-the-box UI building blocks, you are able to rapidly prototype and show immediate value during development of case applications.
And by looking at your case model, we might even be able to generate this application for you (in the future), based on the features you've been using in your case.
This approach also enables building vertical solutions on top. Because you can package predefined processes, additional UI building blocks or even customizable applications on top of our product.
In the demo I will be showing a healthcare case related to treating a patient and how our workbench can be extended with a custom application for the doctor and nurses.