jBpm.org -- java Business process management --   
home | demo | documentation | developers | forums | downloads | support
What is java Business process management
jBpm is a business process engine. Target use is a corporate environment. It combines easy development of business-process-applications with excellent enterprise application integration (EAI) capabilities. jBpm includes a web-interface which can be customized. A business process is any standardized procedure that is applied within an organisation. E.g. expense note, holiday request, recruitment of a new employee, a medicin approval process, request of a construction-permission from the government, ... jBpm is packaged as a java enterprise application. It is deployable on the JBoss application server.

jBpm bridges the gap between managers and developers by giving them a common language : the jBpm Process definition language (jPdl).
jBpm is open source
jBpm is distributed under the Lesser General Public Licence (LGPL). This is great news for organisations that are looking for
  • high-quality software, because the code is reviewed by the open source community.
  • independance, because you're able to modify/extend jBpm for your own purposes.
  • cost-efficiency, because it puts an upper limit on the price of consultancy. Any java developer is able install and maintain a jBpm system. On top of that, you don't have to pay a licence-fee to try or use it.
It is our goal to make jBpm the de facto standard for business process management. That is one of the main reasons to publish it open source. In the process engine market today, too many companies are trying to create standards for their own products. Wim Van Der Aalst is an authority in the area of business process management and the co-chair of BPM2003. In his article "Don't go with the flow" he explains why none of the existing standards are satisfactory. That is why jBpm choose to develop a new standard with emphasis on ease-of-use and completeness. jBpm is created from a clean sheet of paper without a legacy history. It combines all the ideas of previous standards and products. In order to give jBpm all chances of becoming a de facto standard, it is published under the LGPL which allows commercial companies to build closed source extensions, as long as the core jBpm-software remains open source and gets due credit.
Developers, line up here
jBpm is looking for java developers that are interested in swing, SWT or J2EE that want to participate on this exciting project. Read more ...
Feedback wanted !
Any feedback is appreciated. Please use the jBpm open discussion or send an email to Tom.

28 Jan 2003 : Added support.

20 Jan 2003 : Released the first version jbpm-1.0-beta1. One package for process designers (jbpm-1.0-beta1.zip) and one package for jbpm-developers (jbpm-1.0-beta1-src.zip). Download here.

10 Jan 2003 : Published the javadocs.

9 Jan 2003 : Published the jBpm white paper (pdf) in the documentation section.

8 Jan 2003 : Added components, deployment and integration to documentation.

6 Jan 2003 : Updated the documentation.

5 Jan 2003 : The demo is brought online.

4 Jan 2003 : 5, 4, 3, 2, 1 ... rrrrrrooooaaaaarrrrr ... and we have a lift off ! jBpm is present in sourceforge.net.


This model of interfaces between jBpm and the actors is inspired by the Workflow management coalition.

(1) Process definition

A process-definition is based on an UML-activity-diagram. The activity diagram shows the flow of execution between the activities of the process. This information is put in a xml-file. jBpm reads the process-definition and then it manages the executions of processes. The great thing about jBpm is that you don't need to code the business-logic or a web-application yourself. Composing a process-definition is a lot more easy then developing the business- and web-application-software. Read on to see what a process definition looks like...

(2) Process execution

Process execution is the interaction between users (or systems) and the jBpm-system. Each user is able to start processes. If a process execution arrives at an activity, jBpm looks at the process-definition to see who is responsible for the activity. jBpm creates a task for that user. Activities can be performed by human users (e.g. through a web-interface) or by IT-systems (e.g. through a web-service) Read more about process execution...

(3) Application interface

Integrating the existing IT-infrastructure is an essential part of business process management. jBpm provides a clean interface for interacting with the existing IT-infrastructure of an organisation. Interaction with systems can be initiated from the existing IT-system or from the jBpm-system. As jBpm grows, the number of default implementations will grow. Examples of such interactions are 'calling a web-service', 'sending an email', 'sending a message using a message-broker', 'update an SAP-system', 'query a database', ... Read more on how to use jBpm for enterprise application integration.
      SourceForge.net Logo