b r a y d e n . o r g / Software

/ WebHome / ProjectPages / WorkFlow

This Web


WebHome  
Topic List  
Web Statistics 

All Webs


Books
Main
Random
Software
TWiki  

brayden.org


Home
Monthly Digest
Today's Links
Resumé
Reading List
Books RSS
Random RSS
Software RSS

Other


Dale's Blog

currently-reading
TextDrive

Work Flow



Workflow management systems are a kind of holy grail among software developers. Such systems have the promise of subsuming more specialized types of applications, such as project tracking, bug tracking, etc. In fact, there's scarcely any business application that could not be integrated with, or made part of, a work flow management system.

I think the 2 main characteristics of work flow management systems that I find interesting are

  1. They are a challenge to design and build, because they need to be able to integrate with a wide array of existing systems and must support a wide range of work flow activities
  2. They have the potential of making a lot of money for the developer

See: WorkFlowDesignNotepad

Links

Enhydra Shark

The Enhydra Shark project delivers a workflow server with a difference.

Shark is an extendable workflow engine framework including a standard implementation completely based on WfMC specifications using XPDL (without any proprietary extensions !) as its native workflow process definition format and the WfMC "ToolAgents" API for serverside execution of system activities.

The Enhydra JaWE graphical XPDL editor can be used to produce XPDL process definitions for Enhydra Shark !

OpenFlow

OpenFlow is among the first workflow engines fully Open Source. Like GNU/Linux it is distributed under GNU GPL (GNU General Public License); OpenFlow is freely available both in binary and in source code, and the freedom to run, copy, distribute, study, change and improve the software is guaranteed.

OpenFlow is born as Open Source, and has a rich community made of developers from many different countries collaborating with Icube: from USA to Mexico, to New Zealand, the interest in such a project is high. The great number of developers in the community guarantees a wide-range testing, and a development based on real deployment situations.

Icube strongly believes in the philosophy and in the advantages of Open Source Software, and its mission is to "enhance the offer of products and services of the information technology professionals, by means of the free software".

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. Processes can revolve around documents, objects or any other entity. The core werkflow engine can be accessed through a Java API, EJB, JMS, SOAP and other conduits.

Open Symphony OSWorkFlow

OSWorkflow is fairly different from most other workflow systems available, both commercially and in the open source world. What makes OSWorkflow different is that it is extremely flexible. This can be hard to grasp at first, however. For example, OSWorkflow does not mandate a graphical tool for developing workflows, and the recommended approach is to write the xml workflow descriptors 'by hand'. It is up to the application developer to provide this sort of integration, as well as any integration with existing code and databases. These may seem like problems to someone who is looking for a quick "plug-and-play" workflow solution, but we've found that such a solution never provides enough flexibility to properly fulfill all requirements in a full-blown application.

OSWorkflow gives you this flexibility.

OSWorkflow can be considered a "low level" workflow implementation. Situations like "loops" and "conditions" that might be represented by a graphical icon in other workflow systems must be "coded" in OSWorkflow. That's not to say that actual code is needed to implement situations like this, but a scripting language must be employed to specify these conditions. It is not expected that a non-technical user modify workflow. We've found that although some systems provide GUIs that allow for simple editing of workflows, the applications surrounding the workflow usually end up damaged when changes like these are made. We believe it is best for these changes to be made by a developer who is aware of each change. Having said that, the latest version provides a GUI designer that can help with the editing of the workflow.

jBpm - Java Business Process Management

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 bridges the gap between managers and developers by giving them a common language : the jBpm Process definition language (jPdl). This gives software project managers much more control on their software development efforts. After loading the process archive, users or systems perform single steps of the process. jBpm maintains the state, logs and performs all automated actions. 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 clusterable J2EE application. For easy of evaluation, the binary download contains a preconfigured JBoss application server.

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).

The workflow component is based on a set of JAVA interfaces that define an API for a workflow management facility. The basic "omgcore" interfaces follow OMG's Workflow Management Facility Specification, V1.2 very closely, while making some modifications to adapt the CORBA service to the established design practices for a Java API.

Workflows are specified using WfMC's XML Process Definition Language (XPDL) with some extensions.

The workflow component may be used as the core for any process based application implementation and is thus e.g. suited to provide a solution for BPM (Business Process Management) related tasks.

The Open for Business Project

The Open for Business Workflow Engine is based on the WfMC and OMG spec; (See the related documents for information on these specs.) it is a member of the Services Framework, and is tightly integrated with the Entity Engine. It uses the entities found in entitymodel_workflow.XML for definition information and entitymode_workeffort for runtime storage. All changes to a process or activity are persisted real-time. Therefore, the engine does not run in a thread, it is simply a group of APIs and common objects which handle the flow. When a change to the workflow is made, the engine then processes that change. When finished, the engine returns. Hence, if the application does crash, or the system reboots, the workflow will continue right where it left off upon restart.

The Workflow Engine is not designed for processing flow of a web site. This is a common mis-conception. Web site flow is controlled by the Control Servlet. Workflow is the processing of manual and automatic activities to fulfill a specific goal.

OFBiz Workflow Engine uses XPDL as its process definition language. This is an open standard, and very flexible. In cases where the XPDL spec does not specifically state or leaves the implementation up to the vendor, we have noted them in the section XPDL Extensions.

Bonita

Bonita is a flexible cooperative workflow system, compliant to WfMC specifications, based on the workflow model proposed by the ECOO Team, which incorporates the anticipation of activities as a more flexible mechanism of workflow execution. Bonita is Open Source and is downloadable in LGPL License. The system provides:

BgBross Bossa

Bossa is a workflow engine written in Java. The engine is very fast and lightweight, uses a very expressive Petri net notation to define workflows, does not require a RDBMS and is very simple to use and to integrate with java applications.

Actually, it was designed to be embedded. Therefore, Bossa is organized as a library to be used by server side applications (especially web oriented ones) that need workflow services. We plan, in the future, to implement a shell over the current library to offer workflow services as a stand alone server.

XFlow Process Management System

XFlow is a pure J2EE platform for building, executing and managing business processes and workflows. It is a basis for building collaborative applications as well as integrating processes across an enterprise. XFlow has a small footprint but is extremely powerful. It is designed to be easy to use from the development, deployment and management standpoints.

XFlow runs within an EJB and servlet container. JBoss 4.0 (with bundled Tomcat) is the container used in this implementation. The architecture supports distributed and parallel processes within an organization's firewall as well as across organizational boundaries.

XFlow is designed for scalability, extensibility and ease of integration with security models and legacy processes. XFlow's service-oriented architecture supports both a simple Java API as well as a web-service (SOAP/HTTP) interface.

JFolder

JFolder (formerly PowerFolder) is workflow server and development studio. It can be configured to work on J2EE application servers and a variety of persistance stores (databases).

JFolder can be downloaded from the project's site and used without buying a license. It is open source (Lesser GNU license).

OpenWFE

OpenWFE means Open source WorkFlow Engine.

This engine is implemented in Java. It is available under a revised BSD licence.

OpenWFE not only features a workflow engine, but also a full Business Process Management Suite. As released, it features a Worklist component for storing workitems (tasks) for participants and a Reactor component, for automatic participants. It also features Droflo, a web based flow designer. OpenWFE doesn't require any Application Server, just a 1.4.x Java Development Kit.

Workflow definitions are expressed in our own language, which is extensible. An XPDL filter is under work : it will allow OpenWFE? to interpret and use XPDL defined business processes.

 
 
Current Rev: r1.1 - 24 Nov 2007 - 17:22 GMT - DaleBrayden, Revision History:Diffs | r1.1
© 2003-2011 by the contributing authors.