A review of active open source workflow projects that are written in Java.
Here's a review of Open Source Workflow Engines that are written in Java:
Enhydra Shark
Shark is completely based on standards from WfMC and OMG using XPDL as its
native workflow definition format. Storage of processes and activities
is done using Enhydra DODS.
Codehaus Werkflow
- Werkflow is a flexible, extensible process- and state-based workflow engine. It
aims to satisfy a myriad of possible workflow scenarios, from
enterprise-scale business processes to small-scale user-interaction
processes. Using a pluggable and layered architecture, workflows with
varying semantics can easily be accomodated.
OpenSymphony OSWorkflow
- What makes OSWorkflow different is that it is extremely flexible.
jBpm
- jBpm is a flexible, extensible workflow management system. Business
processes , expressed in a simple and powerfull language and packaged
in process archives, serve as input for the jBpm runtime server. jBpm
combines easy development of workflow-applications with excellent
enterprise application integration (EAI) capabilities. jBpm includes a
web-application and a scheduler. jBpm is a scalable J2EE application.
wfmOpen
- WfMOpen is a J2EE based implementation of a workflow facility (workflow
engine) as proposed by the Workflow Management Coalition (WfMC) and the
Object Management Group (OMG). Workflows are specified using WfMC's XML
Process Definition Language (XPDL) with some extensions.
OFBiz Workflow Engine
- The Open for Business Workflow Engine is based on the WfMC and OMG
spec. OFBiz Workflow Engine uses XPDL as its process definition
language.
ObjectWeb Bonita
- Bonita is a flexible cooperative workflow system, compliant to WfMC
specifications. A comprehensive set of integrated graphical tools for
performing different kind of actions such as process conception,
definition, instanciation, control of processes, and interaction with
the users and external applications. 100% browser-based environment
with Web Services integration that uses SOAP and XML Data binding
technologies in order to encapsulate existing workflow business methods
and publish them as a J2EE-based web services. A Third Generation
Worflow engine based in the activity anticipation model.
Bigbross Bossa
- The engine is very fast and lightweight, uses a very expressive Petri
net notation to define workflows, does not requires a RDBMS and is very
simple to use and to integrate with java applications. Actually, it was
designed to be embedded.
Taverna
- The Taverna project aims to provide a language and software tools to
facilitate easy use of workflow and distributed compute technology
within the eScience community. Taverna is both a workflow enactor and
also an editing suite.
JFolder
- JFolder (formerly PowerFolder) contains features critical to many
applications - including web pages, workflow, security, persistence,
email, file management, and data access.
Open Business Engine
- Open Business Engine is an open source Java workflow engine which supports the Workflow Management Coalition's
(WfMC)
workflow specifications, including interface 1, also known as XPDL,
interface 2/3 known as WAPI and interface 5 for auditing. OBE provides
an environment for executing activities in a controlled, centralized
environment. OBE supports both synchronous and asynchronous execution
of workflows. The primary OBE implementation is based on J2EE.
OpenWFE
- OpenWFE is an open source java workflow engine. It features 3
components, easily scalable : an engine, a worklist and a web
interface. Its workflow definition language is inspired of Scheme, a
Lisp dialect, though it is expressed in XML.
Freefluo
- Freefluo is a workflow orchestration tool for web services. It can
handle WSDL based web service invocation. It supports two XML workflow
languages, one based on IBM's WSFL and another named XScufl. Freefluo
is very flexible, at its core is a reusable orchestration framework
that is not tied to any workflow language or execution architecture.
Freefluo includes extension libraries that enable execution of
workflows written in a subset of WSFL.
ZBuilder
- ZBuilder3 is a second generation of workflow development and
management system which intends to be an open source product. It
defines a set of standard JMX management interfaces for different
workflow engines and their workflows.
Micro-Workflow
- The micro-workflow framework targets developers who want to separate
the control and logic aspects in their programs, thus making them flow
independent. A well-factored flow independent application facilitates
change because the most frequent business changes translate into
process changes, thus leaving the code intact. Flow independence also
fosters reuse, because domain objects make fewer assumptions about the
control context in which they operate
con:cern
- con:cern is a workflow engine based on an extended case handling
approach. A process is described as a set of activities with pre- and
postconditions. An activity is executed when its preconditions are met.
It manipulates the process item, thereby creating postconditions. The
process flow is determined at run-time. This approach is superior to
the conventional process flow approach.
Twister
Twister's
aim is to provide a new generation, easily integrable, B2B oriented
workflow solution in Java, based on the latest specification efforts in
this field. The process engine is based on the BPEL business process
specifications and Web Services standards.
It uses well-knows open source components like Hibernate, Apache, Tomcat and
Axis. A simple user interface is included, but Twister’s real strength should
be process orchestration through web services.
YAWL
- YAWL (Yet Another Workflow Language), an open source workflow
language/management system, is based on a rigorous analysis of existing
workflow management systems and workflow languages. Unlike traditional
systems it provides direct support for most of the workflow patterns
(http://www.workflowpatterns.com). YAWL supports the control-flow
perspective, the data perspective, and is able to interact with web
services declared in WSDL. It is based on a distributed, web-friendly
infrastructure.
Zebra
- Zebra is a workflow engine - originally developed to fill in the gaps
in some commercial and open source workflow engines. The key
differences between it and other workflow systems are able to model all
the workflows described in workflow patterns, a GUI designer and
Hibernate persistence layer.
ActiveBPEL
- ActiveBPEL engine is a robust runtime environment that is capable of
executing process definitions created to the Business Process Execution
Language for Web Services (BPEL4WS, or just BPEL) 1.1 specifications.
XFlow2
- Inspired by simple workflow definition language in XFlow developed to
improve its implementation. Externalized SQL in iBatis mapping files.
Works as embedded workflow engine.
Apache Agila
- A simple business process management (BPM) product that can be easily
embedded in other applications and run on a range of devices, including
handheld computers.
Antflow
- AntFlow is a tool for the automation and scheduiling of data system
tasks, including those with complex dependencies and workflow logic.
Antflow represents a new approach to simplifying system automation that
leverages pipelines of hot folders chained together to perform a given
task. Using XML, Antflow associates an automated task, such as data
transfer, compression, or encryption, with a directory on the local
system. Whenever a file is copied or written into the hot folder, the
associated task is executed and the file is moved to the next hot
folder in the pipeline for further processing.
MidOffice BPEL Engine
- MidOffice BPEL Editor (MOBE) is an open-source platform for process
orchestration which executes, monitors, adjusts and terminates
pre-defined processes). The platform is implemented using J2EE
technologies and standards like BPEL, XML and SOAP.
Please let me know if I missed something that should be in the list.
other open source resources:
http://www.manageability.org/blog/opensource/view?b_start:int=10
方向:分布式系统设计