Friday, September 22, 2017

Watch Drools, jBPM and Optaplanner Day LIVE (Sept 26)

We will be streaming all the sessions of the Drools, jBPM and Optaplanner day in New York on September 26th 2017 LIVE !  Check the full agenda here.

Use the following link to watch:

Or watch it here:

Part 2:

Tuesday, August 8, 2017

jBPM 7.1 available

Since we have moved to a more agile delivery with monthly community releases, we are happy to announce the availability of jBPM 7.1.0.Final.

You can find all information here:
Release notes
Ready to give it a try but not sure how to start?  Take a look at the jbpm-installer chapter.

The focus of this release has been mostly on improving the experience and the capabilities for process and task administrators.  These admins are keeping an eye on your infrastruction, making sure the execution of all processes in your system is in good health and resolving any issues that might show up.

To make it easier for these process and task administrators to do their work, we have added a bunch of improvements and new features for them:
  • Error management: Errors that happen during the execution of your processes (or tasks, jobs, etc.) are now better detected and stored.  This could for example be an (unhandled) exception during the execution of your process instance or a job that has hit its retry limit.  
    • At the core engine level, errors are stored in the database and can be acknowledged.  Note that the engine will always guarantee a consist state of all your process instances, so when an exception like this happens, the engine is rolled back to last known state and the error is logged.
    • Through the web-based console, process admins can take a look at any exception that might have happened in detail throught the new Execution errors view, acknowledge them and if possible take action to resolve the issue.
    • The process instance list has been extended with a new column to show any errors possibly related to that instance.

  • Quick filters: Searching for information about specific process instances, tasks, jobs or errors is now made easier by offering a new search tab where you can try to find the data you need by adding quick filters (for example related to the state of your process instances or the time it was started, the name of the task, etc.)
  • Navigation: new actions have been added to the process instance, task, jobs and errors view to more easily navigate between them where appropriate.  For example, you can navigate to the errors associated with a specific process instance (if any) or to take a look at the process instance associated with a specific task or job.
  • Task admin view: the task view that was included in previous versions has been split into two separate views:
    • Tasks: Aims to be used by task operators / end users to work on tasks assigned (or potentially assigned) to them
    • Task administration: Designed to be used by administrators, to manage tasks belonging to other users. This perspective is only available for users with roles admin and process-admin. It is similar to the former "Admin" filter tab on the former tasks perspective.
  • Project and team metrics
    • A brand new dashboard is now available for every project listed in the authoring library. After opening the project details page, a metrics card shows up on the right side of the screen. The cards shows the history of contributions (commits) made to that specific project over time. Clicking on the View All link gives access to the full dashboard which shows several metrics all about the project’s contributions.

    • A brand new dashboard has also been added to the Teams page. A metrics card on the right side shows the history of all contributions (commits). Clicking on the View All link gives access to a full dashboard showing overall contributions metrics. 

More detail can be found in the full release notes.  Especially to our process and task administrators, enjoy !

Drools, jBPM and Optaplanner are switching to agile delivery!

Edson recently blogged about how Drools, jBPM and Optaplanner are moving towards a more agile delivery.  The goal is to be able to release new features much quicker and more often to the community, by having monthly community releases.

Since this obviously has an impact to our entire community (hopefully overall a positive impact of course ;)), wanted to highlight some of the most important consequences as well:
  • More frequent releases gives the community earlier access to new features
  • Reducing the scope of each release allows us to do more predictable releases
  • Since bug fixes as usual are included in each release as well, users will be able to pick those up quicker as well
As a result, starting with v7.0 a few weeks ago, you should see releases more often now.  It does mean that each individual release will be smaller in size.  But overall we believe we will be able to deliver new features and fixes faster and more predictable !

Feel free to take a look at Edson's blog for a little more details.

Tuesday, August 1, 2017

Drools, jBPM and Optaplanner Day: September 26 / 28, 2017 (NY / Washington)

Red Hat is organizing a Drools, jBPM and Optaplanner Day in New York and Washington later this year to show how business experts and citizen developers can use business processes, decisions and other models to develop modern business applications.
This free full day event will focus on some key aspects and several of the community experts will be there to showcase some of the more recent enhancements, for example:
  • Using the DMN standard (Decision Model and Notation) to define and execute decisions
  • Moving from traditional business processes to more flexible and dynamic case management
  • The rise of cloud for modeling, execution and monitoring
IT executives, architects, software developers, and business analysts who want to learn about the latest open source, low-code application development technologies.

Detailed agenda and list of speakers can be found on each of the event pages.

Places are limited, so make sure to register asap !

Tuesday, July 4, 2017

Take a look at jBPM 7.0

It's been a while since we released a new mayor version of the jBPM project, but I'm happy to announce that jBPM 7.0.0.Final is now available.
For those not yet familiar with our project, jBPM is a completely open-source Business Process Management (BPM) and case management solution.  It supports to full life cycle of processes and cases, from authoring tools through execution all the way to monitoring and management.
For the readers that don't have too much time to read all of the details below, some of the major new features include:
  • Case management capabilities
  • New simplified authoring experience for creating projects
  • Business dashboards
  • Process and task admin api
  • Process and task console can connect to any (set of) execution server(s)
  • Preview of a new process designer and form modeler
  • A new security management UI
  • Upgrades to Java8, WildFly 10, EAP 7, etc.
You can find all information here:
Release notes

Ready to give it a try but not sure how to start?  Take a look at the jbpm-installer chapter.

A quick introduction to some of the most important features is available below.

Case management 

Case management has been a hot topic in the BPM world for a few years now (and maybe even longer under terms like flexible and adaptive processes etc.).   Case management use cases are different from more traditional business processes since they (typically) require more flexibility and support more unstructured and unplanned work. Rather than following a nicely predefined plan from start to finish, actions are more ad-hoc decisions, what to do next is more based on the data associated with the case, the end user needs to be given the flexibility to decide what to do next (although recommendations are welcome), etc.
Ever since v5 our core engine has always had a lot of advanced features to support more flexible and adaptive use cases. While we did introduce some case management building blocks in v6 already, v7 comes with a lot more extensive support for case management use cases:
  • Core engine: extended to support more advanced features like case file, ad hoc and dynamic work, stages and milestones, case roles, etc.  All these features are available through the remote API as well.
  • The web-based authoring environment has been extended to support defining your own cases, with a case project wizard, additional case building blocks and properties in the process editor, etc.
  • A new web-based case management UI that showcases how you can use the latest features and manage cases.  This UI is built from a number of independent UI building blocks that you can use in your own application as well.

New authoring experience

The experience you get when you open the workbench for the first time, create a new project (or import an example one) and create your first processes, data models and forms has been updated significantly.

Business dashboards

Where it was possible to create your own dashboards in v6 using the (separate) dashbuilder application, dashbuilder has been refactored completely to better align with the workbench technology.  It is now possible to do all of this from within the workbench, and integrate it in your own applications as well.

Process and task admin api

A new API has been introduced that includes powerful capabilities for process and task administrators. The process admin API allows you to:
  • get all process definition nodes
  • cancel node instance
  • retrigger node instance
  • update timer (absolute or relative)
  • list timer instances
  • trigger node
The task admin API allows you to:
  • add/remove potential owners, excluded owners and business admins
  • add/remove task inputs and outputs
  • list/create/cancel escalations and notifications
Process and task console separate from execution server

Our web-based management and monitoring console used an embedded execution server in v6 to execute all process and task operations.  We also offered a standalone process execution server.  In v7 the monitoring console is a UI front-end only, all requests for process and task data and operations on them are delegated to a standalone execution server.   The main advantage is that the console can now 'connect' to basically any (set of) execution servers out there.  

When multiple independent kie-servers are used, you can either connect to a specific one or use the smart router to aggregate information across multiple servers:
  • requests can be sent to the smart router, it will be able to figure out which of the known kie-server instances the request should be sent to
  • when trying to retrieve information, the smart router can collect information from different servers and aggregate that information for you
Preview of new form modeler

The form modeler has been upgraded significantly as well.  The new form layout system (based on the Bootstrap Grid system) allows more advanced and flexible layouts, new widgets, generation of forms, a Java-based file format and much more.  We will do a few more feature enhancements before we will remove the old form modeler in one of the future minor releases.

Preview of a new process designer

We are working on a completely new web-based process designer, and this release introduces a early preview (where we only support a small subset of the full feature set).  The idea is to move away from a very developer-focused UI and introduce an easier to use interface for different kinds of users.  Properties behave much more as advanced forms (rather than a table of key-value pairs) and the user is assisted as much as possible whenever we can (using content assist, etc.).

Currently it is still recommended to use the existing designer for modeling your business processes (since the capabilities of the new one are still limited) but feel free to give it a try and let us know what you think.

A new security management UI

While it was already possible to define users and groups (and their relationship), a new security management UI allows you to define permissions for all of these users (or groups).  You can control who can use which part of the UI, but also which projects users have access to, etc.

Decision Model and Notation (DMN)

Drools has introduced support for the DMN standard, and since jBPM integrates closely with Drools for rule execution, you can now trigger DMN rules from a business rule task.

Other features
  • Minimum Java version was upgraded to Java8
  • Support for WildFly 10 and EAP7
  • New preferences page
  • Data source management
Please take a look at the full release notes for more details. jBPM is integrated closely with the Drools and Optaplanner projects (for business rules and constraint optimization respectively), so take a look at the Drools and Optaplanner release announcements for more details on how some of the new features you can use in combination with your processes as well !

Thursday, April 27, 2017

BPM at Red Hat Summit 2017 !

Red Hat Summit is happening next week and I'm very excited to be able to join again! As I blogged before, there are going to be a ton of presentations related to BPM, BRMS and beyond.  And this year we are joining with a pretty big team as well, so I expect a lot of interesting side conversations as well.

Apart from the presentations, there are going to be a lot of other interesting other things as well, like training, workshops, Birds of a Feather sessions, etc.  In the exhibition area, there are going to be numerous booths where you will be able to talk to us (and other experts) or come and ask questions. The Red Hat Summit Party is even going to be at a Red Sox game at Fenway Park (they are playing the Baltimore Orioles)!

If you want to meet up (with any of us), during the day or in the evening, feel free to let me know !  Or just come to one of my presentations and ask questions there :-)

Thursday, April 20, 2017

bpmNEXT 2017 (part5)

Last half day of bpmNEXT is starting. Today I will up as the second presenter of the day, doing my demo on our case modeler and continuous task optimization.

Making business processes dance to the user's tune
Paul Holmes Higgin - Flowable Project

Paul introduced Flowable, a recent fork of Activiti (where most of that engineering team followed), and how it can be used for case management due to its dynamic modification capabilities that are coming in v6. In the example he showed, he dynamically added a new (not predefined) task or even a complete new process into a running instance. 

Supporting unstructured work
Kris Verlaenen - Red Hat

I presented on some of the challenges our customers are seeing in the context of unstructured work.  Firstly, modeling unstructured work confronts us with the limitations of existing standards like BPMN2, so we are presenting a higher-level model where the work is modeled as a number of stages, each containing any number activities.  It is however a visualization layer and developers can still rely on the capabilities of the underlying specification for the execution semantics.  Secondly, since unstructured work is typically unplanned, we are using continuous optimization (using OptaPlanner) for task assignment, so we can help users to work on the most important tasks first, taking into account user's constraints and preferences.

As an intermezzo, Lloyd presented on the Business Architecture Meta-Model, where they are trying to link a lot of the concepts that are used at different levels, linking Business Architecture to BPM concepts.  As we all agree that using a term like activity or process can be very ambiguous.  It's an OMG RFP where Lloyd invited everyone that might be interested to take a look.

Digital strategy deployment using business capabilities
Denis Gagne - Trisotech

Denis presented Trisotech Digital Enterprise Suite.  They are combining models and concepts at different level (like strategies and capabilities all the way to BPMN, DMN and CMMN models, etc.), and linking them for being to trace the relationship between all of these.   In the demo he showed an example where you could see how capabilities where implemented using processes (BPMN2) and decision logic (DMN).  Their landscaping tool (as they call it) can be used for brainstorming and collecting ideas, from free flow to based on existing models / approaches.  However, these ad-hoc models (as the result of the brainstorm) can later be linked to future models all the way up to the implementation.  Because models are connected, they can be used for getting executive overviews (for example related to maturity, performance, technical dept, etc.).  All of this information goes into one big digital enterprise graph.

With that, presentations are done.  Time to wrap up and start preparing for next year !