Showing posts with label release. Show all posts
Showing posts with label release. Show all posts

Wednesday, April 22, 2020

Kogito 0.9.1 released

We are glad to announce the Kogito 0.9.1 release is now available!  This goes hand in hand with the Kogito Tooling 0.3.1 release.

From a feature point of view there are only minor changes compared to 0.9.0, but on top of bug fixing we have also spent quite some time on following areas:
This is a milestone for us as we wanted to bring an end-to-end story and focus on our documentation and getting started experience to help you with your first steps on Kogito.  Take a look and let us know if you have further questions or recommendations!

New to Kogito? 
Check out our website https://kogito.kie.org/
Click on the "Get Started" button.

All artefacts are available now:
  • Kogito runtime artefacts are available on Maven Central
  • Kogito examples can be found here
  • Kogito images are available on quay
  • Kogito operator is available in the OperatorHub in OpenShift
  • Kogito tooling 0.3.1 artefacts are available here
As announced last week we've also introduced a chat channel where you can reach the core team or interface with the community, so hope to see you all there !

Detailed release notes for 0.9.1 in JIRA can be found here.



Monday, July 16, 2018

Red Hat Process Automation Manager v7.0

jBPM is completely open-source and therefore most of my blogs are typically about the latest and greatest feature that was just introduced in the community.  However, Red Hat also offers a supported version, with the testing, certification, and maintenance releases necessary for enterprise production use (for a quick intro on potential differences, take for example a look here).

And recently, as announced in this press release, Red Hat unveiled Red Hat Process Automation Manager 7.  The most obvious change you might notice immediately is that the product was renamed - formerly known as Red Hat JBoss BPM Suite.  Since jBPM has evolved beyond just BPM - with features such as decision management, case management and constraint solving closely integrated - it was time to also reflect that in the product naming.  Similarly, Red Hat Decision Manager 7 was released a few months ago, focusing on the Drools and Optaplanner bits.

However, nothing changes structurally.  Red Hat Process Automation Manager is based on jBPM (to be more precise, it was based on the jBPM 7.7.0.Final release) and actually is a super-set of Red Hat Decision Manager, so it also includes all the rules and constraint solving capabilities as well (Drools and Optaplanner).  Since it is completely open-source, you will see the same set of components there as you see in the community: the process execution server (kie-server), the web-based console (business-central aka the workbench - for both authoring and runtime deployment and administration), smart router, controller, Eclipse tooling, etc.  OpenShift images and templates (supporting these capabilities in the cloud) are available too for those targeting cloud deployment.

Red Hat Process Automation Manager also includes an advanced open source user experience platform from Red Hat partner Entando. It can be used to quickly develop modern UI/UX layers for user interaction with business process applications, including a drag & drop UI development tool with widgets to create task lists, forms, process graphs, etc.

Red Hat Process Automation Manager is part of the Business Automation portfolio, which includes Red Hat Process Automation Manager and Red Hat Decision Manager, but also the Red Hat Mobile Application Platform and in the future also big data analytics through Daikon.

More questions?  Take a look at the product pages !

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:
Downloads
Documentation
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, 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:
Downloads
Documentation
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 !

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.

Copy/Paste

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


Workbench

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.


Upgrades

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 !

Tuesday, April 19, 2016

jBPM 6.4.0.Final

The jBPM 6.4.0.Final release is now available.  It brings a new look and feel and a select set of features, some extremely powerful like advanced query capabilities or

A highlight of some of the most important changes is added below, full details can be found in the release notes.
To get started:
Downloads
Documentation
Release Notes

Ready to give it a try but not sure how to start?  Take a look at the jbpm-installer chapter.
jBPM 6.4 is released alongside Drools (for business rules), check out the new features in the Drools release blog.
We thank everyone who helped out!

Core engine

The query capabilities of the engine have been extended significantly to support searching for process instances or tasks in combination with process instance or task data to almost any complexity (including complex constraints) in a very efficient mannerThis is available through both Java and remote APIs.  Maciej blogged about this already, see:
Others improvements include:
 - improved auditing for task data (so it can be queried more easily)
 - pluggable notifications for task deadlines

Workbench

The entire workbench was updated with a new look and feel (based on Bootstrap3 and PatternFly), making it look cleaner, we hope you like it !


Translations for Russian and Traditional Chinese were also added.

Other improvements include:
 - duplicate version detection for projects
 - ability to disable automatic building of projects

User and group management UI

You can now manage your users and groups inside the workbench using new perspective to manage users and groups (and assign users to groups).  It is based on a pluggable implementation to support plugging in different kinds of authentication security domains, configurable in the application server.



New execution server management UI

The execution server UI (to create and manage deployments to one or multiple kie-server instances) has been redesigned.



Runtime Console

The task list can also visualize task data, configurable as additional columns in the task table (similar to how this was provided for process instances in the 6.3 release).



Designer

Our web-based process designer includes a new 'Process Documentation' panel that gives an overview of the most important information of each of the nodes in the process (details that aren't typically visible in the diagram) and can be printed (to paper or pdf) for documentation purposes.



Dashboards

New process and task dashboards included in the workbench, showing all your important runtime information.


Monday, September 28, 2015

jBPM 6.3 released

jBPM 6.3.0.Final has been released !

In this release we focused on bringing a bunch of (typically smaller but powerful) features that our users were asking for.  A quick highlight is added below, but full details can be found in the release notes.

To get started:
Downloads
Documentation
Release Notes

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

jBPM 6.3 is released alongside Drools (for business rules), check out the new features in the Drools release blog.
Thanks to all contributors! 


Core engine improvements
  • Support for JavaScript as script / constraint language in processes
  • Asynchronous processing improvements, including
    • the (re)introduction of asynchronous continuation (where you can mark a transition as to be executed asynchronously in a separate transaction)
    • ability to mark signal throw events as asynchronous
    • jbpm-executor (our asynchronous job executor) got configurable retry mechanisms and improved performance due to new JMS-based triggering
  • Signal scopes for throwing signal events, so you can better decide who the event should be sent to (process instance, ksession, project or external)
Configurable and extensible task and process instance list
  • Custom filters:
    The process process instance list and task list in the workbench can now be configured even more by the end user by adding custom filters.  This allows you to create new tabs that show a subset of your tasks (or process instances), based on parameters you decide yourself.
  • Domain-specific columns in the process instance list
    You can show now show (domain-specific) data related to the process instance variables in the process instance table directly, by creating a custom filter that restricts the data to one specific process.  Doing this allows you to then add domain-specific columns: additional columns can be added to the table that show the value of variables of that specific process.

Data mapping in Designer

When you have a lot of data being managed in your process, defining the data flow among all the nodes can become pretty complex.  A new data mapper has been added to Designer to simplify this task: it has the ability to do all you might need in one place (like adding new data inputs / outputs while you've already started doing the data mapping) and simplifies data assignments (either by giving a direct value or by mapping an existing variable).


Embeddable process / process instance image 

New operations were added to the remote API to allow retrieving the process image or annotated process instance image (showing which nodes are active / completed).  This image is similar to the one you were already able to access inside the workbench already, but is now also available remotely for embedding in external applications.


JPA support in the Data Modeler

The data modeler in the workbench now also exposes properties that allows you model a data object as a JPA entity.  When a data object is modeled as a JPA entity, it is not stored as part of the process instance state but stored in a separate (set of) database table(s), making it easy accessible from outside as well.

Case management API

The core process engine has always contained the flexibility to model adaptive and flexible processes. These kinds of features are typically also required in the context of case management. To simplify picking up some of these more advanced features, we created a (wrapper) API that exposes some of these features in a simple API: process instance description, case roles, ad-hoc cases, case file, ad-hoc tasks, dynamic tasks and milestones.

Support for these features in our workbench UI is being worked on for version 7.0.

Unified execution server

A lot of work went into the creation of unified, highly configurable, minimal execution server - ideal for cloud-based or micro-services architectures.  Since v6.0 the workbench has included an execution server that could be accessed remotely.  This was however embedded into the workbench and designed to operate in a symmetric way when deployed in a clustered environment (all nodes in the cluster were able to execute all processes / requests).  In Drools v.6.2 a new minimal decision service was introduced that allows only deploying specific rule sets to specific containers, giving the user full control over deployment.  This has now been unified, resulting in a lightweight execution server where you can execute your processes, rules, tasks and async jobs.  It can be set up as a single execution server for all your projects, or different execution server instances (possibly one for each project).

Thursday, April 23, 2015

JBoss BPM Suite v6.1 available

Last week, Red Hat annouced the official release of JBoss BPM Suite v6.1. This brings you (almost) all of the new features that came in jBPM 6.1 and 6.2 into the supported offering.

You can take a look at the release notes of jBPM 6.1 and jBPM 6.2 to see all the details, but at a (very) high level this for example brings you new features:
  • Document attachments: attach documents to forms and manage them in your processes
  • Embeddable forms: embed process and task forms in your own application
  • Remote EJB + WS interfaces
  • Camel service tasks
  • Social features: profile page, follow other people using event streams, etc.
  • Customizable workbench: extend the workbench web UI with your own views
  • Asset management [Tech Preview]: manage assets moving from a development branch into a production branch before being pushed into production
  • Certification on top of EAP 6.4, WebLogic, Fuse and Java8
A lot of effort was also put into stabilizing and improving existing features.

Since JBoss BPM Suite is a super-set of JBoss BRMS, you get an integrated solution that offers  support for your business rules, complex event processing and optimization problems as well (based on Drools and Optaplanner v6.2).   This for example introduces a new 'realtime decision server' as part of BRMS 6.1.

If you want to know more, take a look at the following page:
http://www.jboss.org/products/bpmsuite/overview/

Eric also posted a blog with some more details and a bunch of examples to get started !

Below are some slides that list most of the features.

Friday, March 6, 2015

jBPM 6.2.0.Final released

The bits for the jBPM 6.2 release are now available for you to download and try out!  

Version 6.2 comes with a few new features and a lot of bug fixes !  New features include a.o. EJB, (improved) OSGi and Camel endpoints support, a new asset management feature (to introduce a development and release branch and promote assets between both), social profiles and feeds and the ability to extend the workbench with your own plugins!

More details below, but if you want to jump right in:

Downloads
Documentation
Release Notes

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

jBPM 6.2 is released alongside Drools (for business rules) and Optaplanner (for planning and constraint solving), check out the new features in the Drools release blog, including a brand new rules execution server and the Optaplanner release blog as well.

A big thank you to everyone who contributed to this release!

Some highlights from the release notes.

Core services

  • EJB: the jBPM execution server (that is for example embedded in our web-based workbench) now also comes with an EJB interface.  A refactoring of the underlying jbpm-services now makes the execution services accessible using pure Java, CDI, EJB and Spring. Remote interfaces using REST and JMS are still available as well of course !  A lot more details are described in Maciej's blog here.
  • Deployments (defining which versions of which projects are currently active in the execution server) are now by default stored in the database.  This greatly simplifies the architecture in a clustered environment in case you are only using our runtime side of our web tooling (for example by having dedicated execution servers in production).
  • Our asynchronous job executor has improved support for requeuing failed jobs and for recurring jobs (e.g. daily tasks).
  • OSGi: Full core engine functionality is now available on top of OSGi.  A significant number of additional jars (including for example the human task service, the runtime managers, full persistence, etc.) were "OSGi-fied". Specific extensions and tests showing it in action are available for Apache Karaf and Aries Blueprint (in the droolsjbpm-integration repository).
  • Camel endpoint URIs: A new out-of-the-box service task has been implemented for using Apache Camel to connect a process to the outside world using some of the numerous Camel endpoint URIs. The service task allows you to for example specify how to pass data to an FTP endpoint by configuring properties such as hostname, port, username, payload, etc. for some common endpoints like (S)FTP, File, JMS, XSLT, etc. but you can use virtually any of the available endpoints by defining the URI yourself (http://camel.apache.org/uris.html).

Workbench
  • Form Modeler comes with improved support for adding custom logic to your forms using JavaScript on changes, and support for configurable ComboBox and RadioGroup fields, and simple List types.
  • Asset management: It is now possible to make a repository a "managed repository".  This allows you to split up a repository in multiple branches, one for doing development and on for releasing.  Users can then request various assets to be promoted to the resource branch when ready.  This promotion process, and the linked build and deploy processes, are defined using a BPMN2 process as well and include approval and build tasks.  Check the documentation for more details.

  • Social features, like user profiles (including gravatar pictures), and various event feeds like the most recent assets you worked on, on recent changes by other users.


  • Contributors perspective is a new out-of-the-box report (using the new dashbuilder technology) that gives high-level insight in who is changing what in your repositories.
  • Pluggable workbench:  you can now extend the workbench with your own views, menus, etc. using workbench plugins. Available features includes creation of perspectives via a programmable or a drag and drop interface, create new screens, editors, splashscreens and dynamic menus. 

Monday, September 2, 2013

jBPM 6.0.0.CR2 available

We just put out our second release candidate for the jBPM 6.0 release.  All the components are feature complete and we're working on solving the last remaining issues.  So now is a good time to check out what's coming and give feedback on some of the new features or issues you may encounter.
 
You can download the (full) installer from the download pages or get the artefacts from the JBoss Maven repo.
 
The getting started documentation should help you running the installer and starting your first process in the jBPM web console and/or Eclipse tools.
 
To highlight some of the new features and components, I'll start doing regular blogs showcasing a particular component, feature, example, etc. in the next few weeks!
 
 
Like for example:
  • getting started with the jbpm-installer
  • web-based jBPM console (for managing process instances and tasks)
  • the improved jbpm-designer (for modeling and simulating your business processes)
  • the graphical form modeler (for creating human task and process forms)
  • the data modeler (for creating data models)
  • the Guvnor workbench (for building and deploying)
  • the dashboard builder (for monitoring, dashboards and charts)
  • the remote apis (REST, JMS, Java client)
  • the updated Eclipse plugins
 In case you have any questions or feedback, you can contact us through the usual channels (irc, forum, JIRA, etc.).

Monday, May 6, 2013

jBPM 6.0 Beta2 available

For developers that want to have a sneak peak at what's coming in jBPM 6.0, we've just released jBPM 6.0.0.Beta2.  We've added several large improvements:
  • jbpm-console, our web-based management console (where you can start new process instances, complete your task list, etc.) has been redesigned completely

    • new task UI
    • new process instance management UI

    • one web application that combines the entire life cycle (process modeling, deployment, execution and monitoring) into one web application
    • based on UberFire, which provides a configurable and pluggable workspace
  • RuntimeManager allows you to easily get access to a ksession and/or task service without needing to worry about how to create the session, where to find it, how to link it to the task service, etc.  There are predefined strategies for:
    • singleton: one singleton session is used to execute all requests
    • session per request: a new session is used for each request (and destroyed afterwards)
    • session per process instance: each process instance has its own session context, all commands for that process instance are automatically executed in that context

  • jbpm-services: core engine exposed as a service that can be deployed in a clustered environment, with lots of smaller improvements as well:
    • timer service that will be able to handle timers in a clustered environment and automatically restore the appropriate sessions if timers need to be fired
    • instead of using the process instance id as the unique identifier of one specific process instance, you can also correlate with your own business key now
    • history logging has been extended to log additional information and an asychronous logger (using JMS) is available as well
    • all services are exposed using CDI
    • ! Note that remoting capabilities using REST / JMS are currently not available yet in Beta2 but will be available soon
  • The Guvnor repository has been refactored:
    • The repository back-end is implemented using a Virtual File System (VFS) with a git back-end as the default implementation.  This allows you to connect to your repository taking advantage of all the features that GIT provides out-of-the-box.
    • The repository now uses maven to build all the processes, rules, models, forms etc. in your projects and produces kjars (knowledge jars).  These kjars can be treated as normal maven dependencies in your projects and the repository exposes itself as a maven repository as well.
  • A Dashboard web application can be used to monitor your system and generate meaningful reports.  Some default reports are available out-of-the-box (showing information about running process instances, outstanding tasks, etc.), but the tool can also be used to combine those with your own business datam create your own KPIs and customized reports.

  • Improved exception handling when performing service tasks, where the process that requested the service could be notified using a combination of techniques, including boundary events, event sub-processes, intermediate events, etc.
  • The new Eclipse BPMN2 Modeler replaced the old BPMN2 editor and has been extended to support a lot more constructs.  Designer has been updated accordingly as well.
  • Designer now supports the BPSim 1.0 specification for simulating your processes.
You can download the installer from here and follow the installer documentation and screencasts (below) to get your first processes running, both in Eclipse (for developers and in the web (for business analysts or even end users as well).



Note that this is a beta release, so unfortunately, most of the documentation is still missing, and there probably are some rough edges and/or bugs in there.  But do give it a try and let us know, so we can try to still improve these.


Tuesday, November 27, 2012

jBPM 5.4 released !

We are proud to announce the release of jBPM 5.4.0.Final.  

The bits were ready more than a week ago already (and looking at the download statistics quite a few of you already found them ;)), but a busy travel schedule made it difficult to complete the work and announce everything.  But here it is !

Downloads:
Documentation:

The jBPM installer is probably the best way to get started.  Download the full installer and follow the documentation here to walk through some of the most important components.

So what's new?
Simulation

We've added simulation capabilities to the web-based process designer, that allows you to simulate how a process might behave at runtime.  This includes the addition of various simulation-related properties (like resources and duration-related attributes for tasks, and probabilities for diverging gateways etc.).  Our implementation is based on the specification created by the BPSWG (Business Process Simulation Working Group).

Based on these properties, you can run a number of instances of your process and:
  • Use the path finder to look at all identified paths
  • Look at the generated charts containing information about minimal, maximum and average completion times, etc. using (horizontal and vertical barcharts, pie charts or tables.
  • Check the timeline to get an overview of all the recorded events
Maciej did a blog recently on the ideas and concepts behind it, and Tihomir did a blog, including a 12-minute video, that shows simulation in action.



Local task service

When human actors participate in a business process (also known as human workflow), a task service is used to manage the life cycle of the tasks (claiming, completing, task lists, etc.).  While we supported the use of a centralized task service (using HornetQ for remoting), we now also support a local version that runs as a simple Java component next to the engine and all the work it does is synchronous and nicely integrated with the transaction of the process engine.

org.jbpm.task.service.TaskService taskService = 
    new org.jbpm.task.service.TaskService(
        emf, SystemEventListenerFactory.getSystemEventListener());
LocalTaskService localTaskService = new LocalTaskService(taskService);
LocalHTWorkItemHandler humanTaskHandler = new LocalHTWorkItemHandler(
    localTaskService, ksession, OnErrorAction.RETHROW);
humanTaskHandler.connect();
ksession.getWorkItemManager().registerWorkItemHandler(
    "Human Task", humanTaskHandler);

Spring 

We have improved our Spring support, where you can use a Spring configuration file to configure your environment and inject a ksession and/or task service into your application code.  For transactions, it integrates with the Spring transaction manager, supporting both JTA and RESOURCE_LOCAL with shared entity manager factory (emf) or shared entity manager (em).

JPA2

jBPM runtime persistence can now also use JPA2 for persistence.  That means it is completely independent of the underlying persistence provider (we use Hibernate by default but other persistence providers should be possible as well).  You can use Hibernate4 with JPA2 for even better performance.  For all the details on how to do this, here's a link to a persistence configuration file for both JPA1 and JPA2.

Some of the other features
  • Improvements on some of the BPMN 2.0 constructs in the core engine, related to error events, terminating end events in sub processes,
     
  • Introduction of a business calendar related to timers etc.
  • The ability to start a process by name, which will automatically start the latest version of that process.
  • We created separate wars for EE6 (AS7) and EE5 (AS5) to avoid a lot of manual dependency management.  JBoss AS 7.1.1 is now the new default application server in the installer.
  • Improved support for invoking web services from inside your processes.
  • A database-backed solution for managing which users are part of which group (UserGroupCallback).
  • When configuring handlers for domain-specific services, the ksession is automatically injected as an optional constructor parameter in the handler configuration file.
The details on all fixed issues and new features can be found in detail in JIRA.
jBPM 5.4.0.Final has been released in sync with the latest Drools 5.5.0.Final release.

If you have any questions / issues, let us know:
The jBPM team

Monday, May 21, 2012

jBPM 5.3 released !

jBPM 5.3 has just been released.  It includes a large amount of smaller improvements and fixes, and also contains a few new bigger features as well:
  • We would like to introduce our new Eclipse editor for defining business process in Eclipse (using the BPMN 2.0 standard).  This editor will offer support for the full BPMN2 specification, and currently offers support for at least the same constructs as the previous plugin.  We will continue to extend it over time with all the other constructs the jBPM core engine already supports, but we would like to hear your feedback as well !


  • A first version of the form builder has been released as well.  This form builder allows you to create and edit your forms (for tasks and processes) in a graphical way, using drag and drop.  It supports the usual components like labels, text fields and areas, buttons, etc. but already has support for various layouts, scripting, building your own components, etc.  [Note: this first version is currently only supported on FireFox but we're working on adding support for all other browsers as well]


  • The web designer received a lot of love as well, with new features like user-friendly property editors, color themes, a dictionary, inline form editing, etc.

  • The jbpm-human-task module has been split up in a jbpm-human-task-core module and sub-modules for the different transport protocols available (hornetq, mina, jms), and a separate war that can be deployed in the application server (and is made easily configurable now).  The installer now uses the war (with HornetQ) by default.
  • Integration between the jBPM console and Guvnor has been upgraded, to support new packages being added in Guvnor, removal of processes, etc.
  • The human task module now supports escalations and notifications.
  • Lots of persistence improvements to better support different databases, and we're using a new serialization technology (Protobuf) to better support upgrading / migration in the future.

You can download the release here (if you're not sure what you're looking for, downloading the full installer and then following the installer chapter to set up your environment and run through the tooling with a simple example is probably a good idea), or browse the documentation and javadocs.

jBPM 5.3.0.Final has been released in sync with the latest Drools 5.4.0.Final release.

We're still updating our docs and writing some blogs on the new features as we speak, so you can expect more updates from us soon!

If you have any questions / issues, let us know:
The jBPM team

Monday, December 12, 2011

jBPM 5.2 released

The team is proud to present the next release of jBPM. jBPM is an open-source business process engine, supporting BPMN2. I think we have a few very nice new features in this release, with for example
A full list of features is added below.

You can download the artefacts here.
Documentation can be found here.

To get started, it is probably best to download the full installer and follow the installer documentation, to guide you through the tools with a simple example. You can also import the examples module to have look at the numerous examples included in there.

We'll be updating some of the documentation and adding some quick starts and more examples in the next few weeks, so stay tuned!

Have fun!


Release notes

On top of some optimizations, bug fixes and small improvements, these are the most important new features in jBPM 5.2.0.Final.

Core engine
  • domain-specific service repository: the ability to import domain-specific services from a repository so you can immediately use them in your processes, e.g. twitter integration, FTP, web or REST service, etc. This is ideal for non-technical users to integrate with external services
  • improved persistence support for multiple databases and backwards compatibility
  • jbpm-test: new module that offers improved support for JUnit testing of processes, including the automatic setup of the necessary datasources and services on the fly
  • support for Java7

Installer

  • added support for JBoss AS7, which is now used as the default application server in the jbpm-installer

Web-based designer
  • Integration with the domain-specific service repository
  • Visual Process Validation: new features allows users to visually validate their processes at edit time
  • Ability to view the process in ERDF, JSON, PDF, PNG, BPMN2, and SVG formats
  • New Process Information section: contains information about the process, such as name, creation date, version, etc
  • jBPM 3.2 Process Migration: new feature allows users to migrate existing jBPM 3.2-based processes to BPMN2
  • Ability to import existing bpmn2 processes straight into designer
  • Ability to create "sharable" process image, PDF, and ability to generate code for embedding designer in custom applications
  • Support four boundary events
  • Visual support for Text Annotations, Groups, and Lanes
  • Support for sub-processes
  • Update to latest Guvnor

Human task service
  • introduction of the task service interface, and interface to interact with the (default) human task service (independent of the underlying communication pattern and technology)
  • user group callback: easily integrate with your own service for user / group validation and user-group-management (which users are part of which groups)
  • local task service: a local implementation of the task service that runs locally, next to the process engine, and (re)uses the same transaction of the core engine
  • human task service war: deploy the human task service as a service on your application server

jBPM console
  • updated to latest version of the JBoss BPM console
  • console synchronizes with the process definitions (and other assets) from all packages in the Guvnor repository
  • updated BIRT reporting to latest version

Eclipse plugin
  • jBPM perspective: Eclipse perspective that simplifies workspace configuration
  • more advanced jBPM project wizard