<p>Can someone compare and contrast the following scientific workflow frameworks?</p>

<ul>
<li><p>Taverna <a href='http://www.taverna.org.uk/'>http://www.taverna.org.uk/</a></p></li>
<li><p>Pegasus <a href='http://pegasus.isi.edu/'>http://pegasus.isi.edu/</a></p></li>
</ul>

<p>What sort of criteria did you have in mind? Yes, they're both (fine) workflow systems but they're rather different from each other.</p>

<p>Pegasus is focused on coordinating programs that transform files into other files, which is definitely a powerful paradigm. In tooling terms, it works through command line tools only: if you're working with complex workflows, you'll _definitely_ want to have an extra tool around it to generate the workflow for you from some higher-level description. The tooling is such that it is relatively easy to use it behind websites, with other programs, etc. Because you typically generate the workflow programatically, you can easily adapt the workflow according to your particular requirements (provided you're a programmer).</p>

<p>Taverna is much more of an integrated system, and it works at a higher level of abstraction — not files, but rather the data that you might find in them, and not programs, but rather the operations you might do with them. It comes as a GUI workbench for creating the workflows, running them and visualizing them, a command line tool for just running them, and a server for running workflows when you need more power (e.g., to support a portal). The workflows are comparatively awkward to edit by mechanisms other than using the workbench.</p>

<p>To look at the other things you mention in your comment:</p>

<ul>
<li><strong>workflow and makefile concept features</strong> — Neither system is <code>make</code> and neither works like it. Yes, they all support branching, parallel execution and data merging, but some of the other things you mention under this just don't make sense.</li>
<li><strong>ease of development</strong> — It really depends on who you are and and how you like to develop. In my opinion, Pegasus is perhaps better for workflow creators who are principally programmers (because it has a less complex workflow format to generate) and Taverna is perhaps better for workflow creators who are principally scientists (because it comes with a GUI tool for the job).</li>
<li><strong>support</strong> — Both are supported. Both are producing new versions. There's multiple ways to get support in both cases. I'd call this one a score draw…</li>
<li><strong>cluster support and tracking</strong> — I'm not quite sure what you mean by this. The problem is that when you're dealing with workflows that may potentially be accessing many remote services (that might themselves be cloud-hosted), the meaning of clustering gets very… slippery… and I really don't know what you mean by tracking.</li>
<li><strong>workflow visualization</strong> — Taverna does this; has done for many years. There may be a separate tool for this with Pegasus, but I don't know it (and the different pattern of workflow that is often associated with Pegasus is considerably more difficult to visualize for various reasons, notably that Pegasus workflows are frequently using very wide span-outs; this is a problem that Taverna avoids by representing such things as a single processing element that has multiple data items flowing through it).</li>
</ul>

<p>_Declaration: I'm one of the Taverna developers._</p>
