
It's been an action on me to find out about Taverna. Since the workflow session today was cancelled (national holidays? pah!) I'll report what I've learned so far here before I forget due to vacation. :-) Taverna is a data-oriented workflow system (as opposed to control-oriented, though it also supports control links between processors) for automating tasks as seen from the client-side; it's intended to replace "human workflows" which involved cutting and pasting chunks of text between web pages (previously a time-consuming and error-prone process). It's not designed to handle cases with complex recovery from failures, but is instead focussed on automated handling of sets of data. It's GUI-oriented (though there is a command-line execution module) and as such it has got a number of features to enable scaling of the complexity of workflows to scientifically-useful levels: in particular, it has recursive decomposition and a way to mark processing nodes as "not interesting" and hence normally hidden. One limitation is that Taverna essentially assumes that the processing nodes are free to use (both by the user *and* by anyone else) which has a consequence in terms of its (non-existent) security model[*]. It's also not designed with dynamic instantiation of services in mind (there's a plugin for service discovery, but it's not integrated into the workflow system itself, just the GUI design tool). In short, if you're doing scientific workflows that use local components and free static services available over the web, Taverna is very good. But it's got substantial weaknesses for domains where services are secured, costly or dynamic. Far more information than I've mentioned is available online at http://taverna.sourceforge.net/index.php?doc=docroot.html I hope this is informative. :-) Donal. [* I understand that there's work ongoing to add some kind of security support, but I don't know how that's progressing. It's not in the latest production release for sure. ]