JBPM is a java based business process definition suite that allows people to define business processes. When I first heard about JBPM I was skeptical, but I can see how it could be used to document and improve processes in medium to large enterprise.
An example of JBPM might be the provisioning of a new Internet service. The sales person shows up at your site or talks to you over the phone. When you indicate that you want a new service, he/she goes to the web portal and starts the new service process.
A form pops up asking for customer information, so the sales person asks the appropriate questions, enters the data and clicks “ok”. The process checks the data and will prompt for corrections if there is a problem. When all is good, the process executes some back end java code to check for available resources (People, network capacity and hardware). The software then indicates to the sales person when the service will be installed.
The process continues to execute, adding tasks to the appropriate players. When the service tech connects to the portal, he/she sees a new task which describes what is expected. When the task is completed, the tech clicks “ok” and things proceed in that fashion until all the work is done.
The last person in the chain might be the accountant who connects to the portal and gets a task to indicate that the service is on-line. When the accountant approves the service, back end java code adds the user to the billing system so that a bill will be generated as part of the next billing cycle.
JBPM comes with integrated dashboard tools that allow business people to monitor the progress of tasks. This can be used to adjust pricing, produce various reports for management or to improve the process. Automation can be added at any block and code can be used to prevent mistakes.
Every organization tends to do things differently so the same process could be moved to company B and easily modified to meet their needs. Sample processes come with JBPM and other open source processes can be downloaded from the Internet to jump start development.
I’m planning a JBPM6 Tutorial in the future, but at a high level this is it.