Sign up & Download
Sign in

Taverna Workflows: Syntax and Semantics

by Paolo Missier, Daniele Turi, Carole Goble, Tom Oinn, David De Roure
Third IEEE International Conference on eScience and Grid Computing eScience 2007 (2007)

Abstract

This paper presents the formal syntax and the operational semantics of Taverna, a workflow management system with a large user base among the e-Science community. Such formal foundation, which has so far been lacking, opens the way to the translation between Taverna workflows and other process models. In particular, the ability to automatically compile a simple domain-specific process description into Taverna facilitates its adoption by e-scientists who are not expert workflow developers. We demonstrate this potential through a practical use case.

Cite this document (BETA)

Available from eprints.ecs.soton.ac.uk
Page 1
hidden

Taverna Workflows: Syntax and Semantics

Taverna Workflows: Syntax and Semantics
Daniele Turi, Paolo Missier, Carole Goble
School of Computer Science, University of Manchester, Manchester, UK
{pmissier,dturi,cgoble}@cs.manchester.ac.uk
David De Roure
School of Electronics and Computer Science, University of Southampton, UK
dder@ecs.soton.ac.uk
Tom Oinn
European Bioinformatics Institute, Cambridge, UK
tmo@ebi.ac.uk
Abstract
This paper presents the formal syntax and the opera-
tional semantics of Taverna, a workflow management sys-
tem with a large user base among the e-Science commu-
nity. Such formal foundation, which has so far been lack-
ing, opens the way to the translation between Taverna work-
flows and other process models. In particular, the ability to
automatically compile a simple domain-specific process de-
scription into Taverna facilitates its adoption by e-scientists
who are not expert workflow developers. We demonstrate
this potential through a practical use case.
1 Introduction
Past accounts of Taverna [OGAea06, SWAea07], a
workbench for the definition and execution of scientific
workflows, have been focusing mainly on its practical ap-
plications to e-Science. However, a formal foundation of
the Taverna model has so far been lacking. In this paper we
fill this gap by presenting both the formal syntax of Taverna,
and its operational semantics (Sections 2 and 3).
With this work, Taverna joins the ranks of other sci-
entific workflow management systems for which formal
models have been developed, notably Kepler [LABe05,
MBL06] based on Process Networks [KM77], and
BPEL [OVvdA+07], using Petri Nets. Some of the bene-
fits of providing a formal syntax and semantics for a work-
flow language are well-known, i.e., to apply process anal-
ysis techniques [OVvdA+07], and to enable unambiguous
mappings between models. Mappings, in turn, make inter-
model dataflow repositories a practical possibility. A recent
proposal for such a repository [HKS+07] uses Nested Re-
lational Calculus (NRC) [BNTW95] to describe dataflows.
As a further research contribution, in the second part of
this paper (Section 4) we illustrate a less-explored practi-
cal use of the workflow model, namely the formal descrip-
tion of workflows that result from the automated translation
from a high-level, domain-specific process model. This is
motivated by the need to provide users who are not expert
workflow developers, with a simple way to specify a stan-
dard coordination among processors that they are familiar
with.
Informally, a Taverna workflow consists of a collection
of processors with data and control links among them. Pro-
cessors may have multiple inputs and outputs; a data link
establishes a dependency between the output of a proces-
sor and the input of another. A control link indicates that
a processor can only begin its execution after some other
processor has successfully completed its execution. Pro-
cessors are implemented either as local Java classes, or as
Web Services, with input and output ports that correspond
to the operations defined in the service’s WSDL interface.
The workflow execution engine schedules the invocation of
the service operations, making sure that the dependencies
are not violated, and manages the flow of data among the
processors. A simple workflow, used as a running example
throughout the paper, is shown in Figure 1.
In this paper, the Taverna language is defined using
the computational lambda calculus [Mog91]. The use of
lambda calculus is motivated by the fact that Taverna work-
flow language can be defined in functional terms, although
it uses web services as its building blocks. The use of func-
tional languages to give formal meaning to workflows is not
new; an example is the use of the Haskell functional pro-

Sign up today - FREE

Mendeley saves you time finding and organizing research. Learn more

  • All your research in one place
  • Add and import papers easily
  • Access it anywhere, anytime

Start using Mendeley in seconds!

Already have an account? Sign in

Readership Statistics

19 Readers on Mendeley
by Discipline
 
 
 
by Academic Status
 
53% Ph.D. Student
 
26% Researcher (at an Academic Institution)
 
11% Doctoral Student
by Country
 
26% United Kingdom
 
11% Germany
 
11% France