Friday, November 18, 2016

bpmNEXT recording on case management

The recordings from the bpmNEXT 2016 conference (which I blogged about here) are available (for quite some time already it seems, I must have missed it somehow), but wanted to share the video of the presentation I did related to case management. 

It's a topic we are asked about regularly, and this presentation + demo might give you a good idea of where we are going:

Since then, we've made good progress, if you want to know more, take for example a look at the blog series by Maciej about case management as well.

Tuesday, October 25, 2016

jBPM 6.5.0.Final available

While we have been working on jBPM v7 for quite a while now, we still wanted to deliver a few more features that were requested by users.

You can find all information here:

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

So on top of a bunch of bug fixes, you can expect the following new features:

Core Engine

Process instance migration

Process instance migration allows you to upgrade an already active process instance to a newer version of the process definition (than the one it was started with). Optionally it allows to perform node mapping of active node instances within process instance (to accommodate for use cases where currently active nodes might have changed).  The jBPM services have been extended with a new more powerful API and the same functionality is available remotely through the kie-server API.
JMS interaction patterns
When using the remote API of our kie-server, the JMS version now also supports different interaction patterns (on top of the request-response already supported):
  • fire and forget
  • asynchronous with callback
Task variables support in listeners

Added operations to easily get access to task variables from within task listeners.

Remote API improvements for deployments

Additional operations have been added to the remote API to simplify integration: operations to get deployment information of your projects based on their group, id and/or version (GAV).

Process Designer

Improved automation importing service tasks in Designer

You can import custom service tasks from a service repository into Designer so they can be used in your process, like for example Twitter, FTP, etc. The workbench now automates a lot of the additional configuration as well:
  •     Installs the service configuration (wid) into the users Workbench project
  •     Installs the service icon (defined in the service configuration)
  •     Installs the service maven dependencies into the project POM
  •     Installs the service default handler into the project Deployment Descriptor
Using start up parameters, you can also register a default service repositories and even install service tasks by default for new projects. More details are available in the documentation.


You can now also perform copy/paste operations across different processes.


Using workbench and kie-server together

Various small improvements allow you to use the workbench together with (one or more) kie-server execution servers to manage your process instances and tasks (sharing the same underlying datasource). As a result, processes and task created on one of the execution servers can now be managed in the workbench UI as well.

The jbpm-installer is now configured out-of-the-box to have a managed kie-server deployed next to it where you can deploy your processes to as well.

Support for enums in data modeler
The data modeler now supports selecting enums as the type when defining the parameters of a data object.


Various components have been added / upgraded:
  • Upgraded to WildFly 10
  • Added support for EAP 7
  • Upgraded to Spring 4
The jbpm-installer now uses WildFly 10.0.0.Final as the default. 
Enjoy !

Monday, October 24, 2016

London JBug: v7 Roadmap (November 22nd)

On November 22nd, we will be doing a JBug in London where we will be showing (live) what's on our roadmap for v7 for Drools, jBPM, Optaplanner etc.

This will include for example details on some of our key initiatives:
  • Case Management
  • The new Process Designer 
  • Our new Rich Client Platform
  • Improved Forms and Page building 
  • Improved Advanced Decision Tables and new Decision Model Notation
  • Fully integrated DashBuilder reporting 
  • New OptaPlanner features & performance improvements 

If you're interested, please register here.
Apparently there will be beer and pizza as well :)

Other team members will try to set up similar JBugs in a location near you, so stay tuned for more info if you would like to have a sneak peak as well!

Thursday, June 23, 2016

Process-driven applications on Red Hat Summit 2016

Next week (June 27 - July 1st 2016), Red Hat Summit and DevNation are taking place again, in San Francisco.  As usual, it's a huge event with a ton of interesting talks.  Learn the latest and greatest from all different products Red Hat offers (cloud, data, automation, integration, you name it), with something for everyone (admins, architects, managers, etc.).

I'll be doing a session on Tuesday June 28, 3:30 - 4.30pm, on Process-driven applications: let BPM do some of your work.  It will be a (quick) overview of what we've been building out over the last few years with jBPM (and Red Hat JBoss BPM Suite as the product offering) and how you can use it to build your applications.  But we give you the option to choose which building blocks you find valuable, and keep trying to add more and more value (for example in the context of case management or rapid application development).

I hope to see some of you in San Francisco, feel free to come and ask questions at my session, try to find me (or some of the other engineering team members) at the middleware booth, just say hi if you see me walking around somewhere or drop me a message if you can't find me but would like to meet up ;)

There are a lot of other interesting session, but highlighting a few others that are related (in chronological order):

Friday, April 29, 2016

bpmNEXT 2016 retrospective

Concluding with a few impressions from bpmNEXT last week.  While it's impossible to summarize everything that happened there (I guess you could just join next year), here are some of my key takeaways:
  • BPM has reached maturity stage, we're past the hype phase (at least that's what some of the analysts seem to be saying).  Innovation is still there, although more by the smaller players (typically in specific areas).  The main features of BPMS's are well understood.  Big vendors are trying to differentiate in other areas (sometimes even moving away from the BPM name).  As a result, BPM is becoming 'invisible': it's always there, people can always rely on the power it provides, but it has become more mainstream.
  • Are BPM products growing or are they becoming part of a bigger ecosystem?  And what should we call this bigger entity then?  Luckily we didn't go into finding a new name, but there seems to be some agreement that we are (still) struggling with defining what BPM is (even after a few decades!).
  • Open-source is an important aspect of the BPM eco-system, both for commoditization, free entry and for innovative research.
  • A common misunderstanding is that low-code BPM is for business analysts only.  Low-code BPM tries to lower the entry barrier by hiding some of the underlying complexity and offering easier to use user interfaces / experience.  While this is an absolute requirement to get business analysts involved, low-code BPM can be just as useful for the hardcore developer as well (as long as they still have full control and can take advantage of the full power of the engine)!
  • Most BPM vendors seem to moving towards supporting 'adaptive cases' or more 'unstructured processes' as well.  While there might be various approaches (like for example using the ad-hoc sub-process in BPMN2 vs calling a separate CMMN case vs some custom solution), I expect more convergence in the next few years.
  • DMN was a hot topic amongst several vendors, gaining a lot of traction it seems.  CMMN seems to be struggling more though, and a healthy part of the discussion was around what we might learn from this and where it should lead us.
  • Fun fact for those that attended: A tractor can actually look like a bison ! During one of the demos, Watson was used to do automatic recognition of images.  After uploading the image of a tractor, Watson decided it might be a bison.  While most of us found that funny (and it made bison one of the buzzwords of the conference), it might seem that Watson was right after all: apparently bison is a brand of tractors as well.  As we probably should have expected, AI is already smarter than us.
I blogged earlier about each of the presentations and demos on-site here: day 1 (part1 and part2), day2 (part3 and part4) and day3 (part5).  Recordings should hopefully be available soon on the bpmNEXT website as well.

Personally, I'd like to thank Bruce Silver and Nathaniel Palmer (and everyone that helped, in or outside the spotlight) on organising this great conference !  And all the attendees as well for the interesting discussions.  It's a unique experience to have vendors discuss strategy in such an open way.  And the venue and conference schedule are ideal to continue discussions over lunch or during the evening (with a nice beer on the rooftop).

Already hoping I'll be able to come back next year !

Thursday, April 21, 2016

bpmNEXT 2016 (part 5)

Final half-a-day of bpmNEXT presentations and demos, before heading back home.

Intent-driven and future-proof user experiences
Appian talked about UIs.  They have created an architecture called Sail UI using a server-side approach to UI and focusing on the intent of the UI (rather than the details / technology) so it can evolve over time. The same UI design can be applied to radically different architectures like GWT, Facebook React or native mobile apps.  The UI adapts automatically based on the environment (for example barcode scanning component behaves radically differently on desktop vs mobile).

Continuous integration: tools to empower DevOps in process-based application
Bonitasoft talked about testing processes using CI when doing live changes to your processes and applications.  Using Docker, JUnit and Jenkins, they run various tests on Jenkins on newer versions of the process to detect regressions.

Combining DMN with BPMN and CMMN - the open source way
Camunda showed how they implemented DMN (at least parts of) as a decision service.  DMN can be called from BPMN or CMMN using a decision task, or standalone.   Their Cockpit application allows you to figure out why certain decision have been made at runtime (for specific instances) by looking at the audit data - annotated on top of the decision table itself. 

How I learned to tell the truth with BPM
Gene Rawles is adding another dimension (yes, literally, 3D) to modeling processes, where you can have processes at different layers (2D) and use lines to connect them (in 3D), to simplify explaining what's actually going on for example.  They allow importing processes from different systems, and are not limited to processes but also a rules or a SOA (services) layer.

Self-managed agile organizations
Keith Swenson is ending the conference presentations with a talk on various topics:
  • Self-management.  Using the term 'sociocrary', it's about self-managed teams which are highly decentralised and about collaboration (using consensus rather than voting - to get everyone on board with the decision).  How can we support these teams better?
  • He made a distinction between token-based and state-based engines - where jBPM (since v5) definitely falls in the second category - and wondering if there's way to describe the difference and should we consider these in combination with BPMN or CMMN?
  • He launched the question if there should be one (1!) open-source DMN engine for everyone to use, although this sparked the question whether this would be a reference implementation, which one to use and if there's still differentiation possible for vendors.
  • And he wrapped up talking about the future, where he believes a more conversational model (focusing on easy interactions with the user rather than the process itself).

Unfortunately I'll have to miss the wrap up session, heading back to LA slightly early to catch my flight.

bpmNEXT 2016 (part 4)

The afternoon of day 2 is starting (after a long lunch break):

Decision modeling service
Oracle presented their decision modeling service, based on DMN, for extracting decision logic (for example from the process).  After a quick introduction to DMN and the Feel expression language, the demo dived into two examples to calculate cost and request approval.

Dynamic decision models
Jacob from OpenRules presented their decision analysis capabilities.  Decisions are typically a combination of a set of different rules, and using a web-based UI the user can activate and deactivate specific rules dynamically, to see how they influence the decision.  But they can even do what-if analysis to find the optimal solution, all based on the decision model already defined.

The dirty secret in process and decision managementt
Sapiens Decision Suite is analyzing business data (i.e. at the business level - business user friendly) that is going into decisions.  After hooking this business data (defined as a 'logical unit') up to actual data sources (supporting different types), you can generate a web service that represents the decision service.  Rather than the traditional approach of passing all the (low-level) data to the decision service to get your result (which might not even be possible in big data use csaes), this allows you to only pass business-level keys and the rest of the data is fetched on the fly from the underlying systems.

Business process management in the cloud: changing the playing field
IBM's perspective on (running processes on) the hybrid cloud and using analytics in there.  The demo is running a few processes on IBM BPM on Cloud and using services like Watson.  The claim process used Watson to recognize an uploaded image (as a car for example) and Spark machine learning for predictive analytics (based on previous data, create a model about how likely are we going to accept a claim).  The magic seemed to be in the services though, as from the process perspective it's just a matter of doing the right REST calls.

Model, generate, compile in the cloud and deploy ready-to-use mobile process apps
Orchestra BPMS is offering the ability to generate mobile applications for processes.  Rather than using a generic out-of-the-box mobile application, they offer different building blocks (to for example start new instances, a task list, audit capabilities, etc.) and after making your choice the application can be compiled and downloaded for iOS and Android.

Dynamic validation of integrated BPMN, CMMN and DMN
Trisotech is enabling companies to do digital transformation by using a 'digital enterprise graph' of the organisation and allows you to link concepts in different models. The 'Kommunicator' tool supports BPMN, CMMN (using a case task in the process model to call the case) and DMN (whenever you have a decision task).  Animation technology (across the different models) can be used for learning, validation and communication.

Simplified CMMN
Lloyd Dugan made (what he called) a modest proposal to drive adoption of CMMN, especially for use cases where BPMN really struggles to model in an understandable way.  For example by eliminating some of the CMMN constructs, mapping case management concepts to business architecture concepts, etc.  Could CMMN be the 'unification' that brings BPMN and DMN into a bigger world that BPMN and DMN can't describe on their own currently?