BPEL lacks many of Taverna’s features but presents the possibility of providing a standard runtime platform for a server side workflow engine. Taverna is designed to present a workflow model where entities within the workflow map as far as is possible onto entities within a scientist’s description of the eScience process the workflow defines. This leads to a dataflow view of the world – the workflow is constructed from data processing and data transport (processors and data links).

In contrast, BPEL is a process-centric model where the nodes in the workflows are activities and the “data” passed between them form a control system rather than being a genuine flow of messages. Alongside other facilities, such as Taverna’s implicit iteration mechanism (single node implicit parallelism, in BPEL this is a complete workflow in itself), the workflow models in Taverna can be extremely small for achieving very high grade of functionality. A workflow that looks simple in Taverna (a two stage pipeline, for example) can be orders of magnitude more complex in BPEL as the latter forces an explicit representation of the parallelism and data staging implicit to Taverna’s world view.

In addition to this Taverna is service agnostic – while some tools are available as SOAP services, many are not (and should not be – a data warehouse streaming gigabytes of data makes a poor Web service!). BPEL has a very fixed Web service world view, and whilst in a particular case that could be changed through vendor specific extensions you would then lose the multi-platform advantage. Taverna, in contrast, was designed to be entirely extensible in this area. If SOAP services were all replaced tomorrow with something completely different (say REST), Taverna would carry on working and we would adapt to the new “standard” within days.

However, if your application is such that you think you do require a BPEL Workflow Engine, then you should investigate the OMII-UK BPEL Designer.