The following diagram shows the main architectural elements of the Open Business
Figure 1: Architecture Diagram, showing WfMC Interfaces
OBE implements several of the WfMC's Open Workflow
The Administration Tool is used to manage workflow
and the associated runtime process, activity and work item instances.
OBE provides a command-line administration tool.
The Worklist Handler is an application that enables a
participant to manage the work items which have been assigned to them.
The Worklist Handler also launches custom third party applications on
behalf of the participant. OBE provides command-line and web-based
These are custom applications that have been specially written to take
advantage of the workflow management system. They use WAPI (Workflow
API) to achieve a deep integration between application and worklist
Workflow Engine & Runner
Engine is the core of the workflow management system. It is responsible
for creating and enacting runtime instances of
business processes. To achieve this it creates process, activity and
work item instances and drives these through their standard life cycles
(defined by WfMC Interface 2) in order to realize the activity flows
defined in XPDL workflow models. The workflow engine relies upon
various services which are provided by the Service Manager.
The Service Manager provides various services to the
Engine. The services are completely pluggable to enable
extensibility and server-side integration with workflow enabled
applications. The implementations are specified by a configuration
file. OBE provides two configurations: a basic non-transactional,
non-persistent version based on in-memory JavaBeans and a robust,
scalable, transactional configuration based on J2EE session and
entity beans. Many of the services have their own XML configuration
External Persistence Services
The persistence layer provides long-term storage for workflow instance
data. Typical service implementations use a relational database
via JDBC and/or J2EE entity beans to achieve persistence and transactional
in-flight process data. Other possible implementations include
Hibernate and Spring.
External Event Sources
Workflows running under OBE have the ability to respond to a wide variety of
external event sources via the Application Event
External event sources can include both workflow-enabled applications
and non-workflow aware sources such as asynchronous message publishers
and relational database triggers. The default event broker
implementations use a pluggable event classification scheme that can
handle practically any kind of inbound data.
External Security Realm
The Realm service provides access to security principal information and
allows the Workflow Engine to assign work items to workflow
participants. In a J2EE configuration the Realm is typically
integrated with the Application Server's authentication and
authorization mechanisms, generally through JAAS (the Java
Authentication and Authorization Service). Such mechanisms are
generally backed by configuration files, relational stores or LDAP
OBE can integrate external applications and custom procedures by
launching them with parameters and data managed by the workflow system.
Applications are launched client-side, procedures are invoked