Kris Verlaenen [
http://community.jboss.org/people/KrisVerlaenen] modified the document:
"jBPM5 Roadmap"
To view the document, visit:
http://community.jboss.org/docs/DOC-15344
--------------------------------------------------------------
This document describes a proposal for the jBPM5 roadmap, based on the feedback of the
community on the suggested features in the jBPM5 request for comments
(
http://community.jboss.org/docs/DOC-15172). It will constantly be updated with the
necessary details (feature lists, dates) based on community feedback, etc.
More features will be added in the following releases to work towards our full vision.
Feedback on the roadmap is welcome on the jbpm-dev(a)lists.jboss.org
(mailto:jbpm-dev@lists.jboss.org) mailing list. If you want to help out (big or small,
from new features or patches to documentation or testing), that's the place to go as
well ! Or come have a chat at #jbpm on
irc.codehaus.org.
*DISCLAIMER:* this roadmap is not considered to be finalized yet, it is a proposal that
might still be changed according to customer / community feedback
*jBPM 5.1*
Target date: May 2nd, 2011 *
*
*New BPMN 2.0 Eclipse editor*
A new BPMN 2.0 Eclipse editor will be created, supporting full the BPMN2 syntax and most
of the BPMN2 constructs. It will also allow you to constrain which elements and
attributes should be shown (for example to create a jBPM 5 profile that only shows the
elements and attributes as supported by jBPM 5).
*Designer*
The web-based designer (based on Oryx) will be updated to support full round-tripping and
include support for custom jBPM5 attributes. This will allow you to create executable
BPMN2 using the Designer only (without requiring filling in the execution details in
Eclipse.
*Web service integration*
Improved web service integration (using pluggable work items) and UI enhancements to
enhance service orchestration capabilities
*Repository of domain-specific services*
The set of out-of-the-box services will be extended and includes a repository where these
definitions can be downloaded from.
*Business Activity Monitoring (BAM)*
Extend BAM reporting / direct intervention capabilities
h1. History
History of roadmap for released version
*jBPM 5.0
*
The first release of jBPM5 will include support for business processes in their entire
life cycle (modeling, deployment, execution, monitoring) with the following key
characteristics:
* native BPMN2 engine
* light-weight, embeddable or "as a service"
* higher-level, domain-specific processes
* strong rule and event processing integration
* web tooling for more business-oriented users
As requested by most community members, the first release will focus on the core of the
various components, with simple tooling associated with it. The core can then be extended
with more advanced features and tooling in the following releases.
Clean, separate, simple *knowledge-oriented API* for setting up sessions, loading process
definitions, executing process instances, event listeners, etc.
*Core process engine using BPMN 2.0* process definition format. The specification
document and associated XSD definition files can be found here
(
http://www.omg.org/spec/BPMN/2.0/). The engine will (at least) support the "common
executable" subclass as defined in the specification (a minimal set of elements /
attributes for specifying executable processes), but in a Java developer context (meaning
supporting Java domain model and expression language). The specification defines that the
following elements (and associated attributes) are part of this subclass:
| sequenceFlow (unconditional) | id, (name), sourceRef, targetRef |
| sequenceFlow (conditional) | id, name, sourceRef, targetRef, conditionExpression |
| sequenceFlow (default) | id, name, sourceRef, targetRef, default |
| subProcess (expanded) | id, name, flowElement, loopCharacteristics,** boundaryEventRefs
|
| exclusiveGateway | id, name, gatewayDirection (only converging and diverging), default
|
| parallelGateway | id, name, gatewayDirection (only converging and diverging) |
| startEvent (None) | id, name |
| endEvent (None) | id, name |
| eventBasedGateway | id, name, gatewayDirection, eventGatewayType |
| userTask | id, name, renderings, implementation, resources, ioSpecification,
dataInputAssociations, dataOutputAssociations, loopCharacteristics, boundaryEventRefs |
| serviceTask | id, name, implementation, operationRef, ioSpecification,
dataInputAssociations, dataOutputAssociations, loopCharacteristics, boundaryEventRefs |
| callActivity | id, name, calledElement, ioSpecification, dataInputAssociations,
dataOutputAssociations, loopCharacteristics, boundaryEventRefs |
| dataObject | id, name, isCollection, itemSubjectRef |
| textAnnotation | id, text |
| dataAssociation | id, name, sourceRef, targetRef, assignment |
| messageStartEvent | id, name, messageEventDefinition (either ref or contained),
dataOutput, dataOutputAssociations |
| messageEndEvent | id, name, messageEventDefinition, (either ref or contained),
dataInput, dataInputAssociations |
| terminateEndEvent | (Terminating trigger in combination with one of the other end
events) |
| Catching message IE | id, name, messageEventDefinition (either ref or contained),
dataOutput, dataOutputAssociations |
| Throwing message IE | id, name, messageEventDefinition (either ref or contained),
dataInput, dataInputAssociations |
| Catching timer IE | id, name, timerEventDefinition (contained) |
| Boundary error IE | id, name, attachedToRef, errorEventDefinition, (contained or
referenced), dataOutput, dataOutputAssociations |
Depending on the progress, additional node types will probably already be supported by
that time as well. The list of supported elements and attributes will regularly be
updated so you can have a clear idea of what to expect in each release.
The core BPMN2 engine of course includes
* persistence (JPA-based with pluggable variable persistence)
* transaction support
* auditing
* history log
* basic process instance migration
* etc.
Also support for domain-specific nodes and powerful rules integration.
*Human tasks*
Independent human task service for managing human tasks based on the WS-HumanTask
specification.
Simple web-based human task web console supporting the task life cycle (claim, start,
complete, etc.) and custom task forms.
*Eclipse-based tooling for creating BPMN2 processes*
Eclipse-based plugin that allows developers to graphically create BPMN2 processes,
including basic validation, testing and debugging.
*Web-based tooling for creating BPMN2 processes*
We'd like to continue the integration of the web-based BPMN2 editor based on the
open-source Oryx editor.
*Process repository*
Knowledge repository for storing process definitions.
Simple web-based repository management console for storing process definitions,
versioning, releasing, etc.
*Process management console*
Simple web-based console for starting processes, managing running instances, checking
current state of one specific instance, aborting, etc.
*Reporting*
Customizable reports using BIRT
Simple web-based console for viewing real-time reports
*Installation* script (and demo setup)
*Documentation*
*Migration*
Support for migration from jPDL3 (product) and jPDL4 (community), in the form of a
semi-automatic, one-shot, user-assisted transformation process to BPMN2 for process
definitions and documentation.
--------------------------------------------------------------
Create a new document in jBPM Development at Community
[
http://community.jboss.org/choose-container!input.jspa?contentType=102&am...]