Overview

Business Processes are often long running and involve human intervention. Business Process Management or BPM is used to attempt to automate these business processes. To get some idea of what could consitute a business process, see the examples page.

Business Processes are often hard to write because:

  • Business Processes are typically long running
  • Business Processes often need user interaction
  • Business Processes need to be monitored and managed
  • Business Processes need to be checkpointed / persisted
  • Business Processes may need to migrate in the event of hardware failure or for performance
  • Business Processes need to scale without holding onto resources such as threads
  • Business Processes may need to be passivated
  • Business Processes are stateful

BpmScript aims to make writing Business Processes simple by handling all of these requirements for you, leaving the only hard part writing the Business Processes themselves (and BpmScript aims to make that as easy as possible too).

As well as Business Process Management, BpmScript can be used to do:

  • Workflow
  • Web Services Orchestration
  • Sheduling

Current Features

  • Rhino based continuation framework
  • Runs on ServiceMix 3.0.1 JBI Container
  • Clustered container support
  • Persistent processes
  • Versioned process support
  • Remote API
  • Web Console
  • Worklist
  • Future based API for parallel processing
  • Mid process synchronous replies (Half-Async pattern)
  • Recursive processes
  • Child processes

Requirements

BpmScript requires Java 1.5 or above.