In my last blog post, I provided an overview of scientific workflows in general. I also covered the basics of informal workflows, i.e. flow charts and commented scripts. Well put away the tuxedo t-shirt and pull out your cummerbund and bow tie, folks, because we are moving on to formal workflow systems.
A formal workflow (let’s call them FW) is essentially an “analytical pipeline” that takes data in one end and spits out results on the other. The major difference between FW and commented scripts (one example of informal workflows) is that FW can be implemented in different software systems. A commented R script for estimating parameters works for R, but what about those simulations you need to run in MATLAB afterward? Saving the outputs from one program, importing them into another, and continuing analysis there is a very common practice in modern science.
So how do you link together multiple software systems automatically? You have two options: become one of those geniuses that use the command line for all of your analyses, or use a FW software system developed by one of those geniuses. The former requires a level of expertise that many (most?) Earth, environmental, and ecological scientists do not possess, myself included. It involves writing code that will access different software programs on your machine, load data into them, perform analyses, save results, and use those results as input for a completely different set of analyses, often using a different software program. FW are often called “executable workflows” because they are a way for you to push only one button (e.g., enter) and obtain your results.
What about FW software systems? These are a bit more accessible for the average scientist. FW software has been around for about 10 years, with the first user-friendly(ish) breakthrough being the Kepler Workflow System. Kepler was developed with researchers in mind, and allows the user to drag and drop chunks of analytical tasks into a window. The user can indicate which data files should be used as inputs and where the outputs should be sent, connecting the analytical tasks with arrows. Kepler is still in a beta version, and most researchers will find the work required to set up a workflow prohibitive.
Groups that have managed to incorporate workflows into their community of sharing are genomicists; this is because they tend to have predictable data as inputs, with a comparatively small set of analyses performed on those data. Interestingly, a social networking site has grown up around genomicists’ use workflows called myExperiment, where researchers can share workflows, download others’ workflows, and comment on those that they have tried.
The benefits of FW are the each step in the analytical pipeline, including any parameters or requirements, is formally recorded. This means that researchers can reuse both individual steps (e.g., the data cleaning step in R or the maximum likelihood estimation in MATLAB), as well as the overall workflow). Analyses can be re-run much more quickly, and repetitive tasks can be automated to reduce chances for manual error. Because the workflow can be saved and re-used, it is a great way to ensure reproducibility and transparency in the scientific process.
Although Kepler is not in wide use, it is a great example of something that will likely become common place in the researcher’s toolbox over the next decade. Other FW software includes Taverna, VisTrails, and Pegasus – all with varying levels of user-friendliness and varied communities of use. As the complexity of analyses and the variety of software systems used by scientists continues to increase, FW are going to become a more common part of the research process. Perhaps more importantly, it is likely that funders will start requiring the archiving of FW alongside data to ensure accountability, reproducibility, and to promote reuse.
A few resources for more info:
- My CiteULike list of workflow-related articles and publications
- Great book edited by Michener and Brunt, Ecological Data: Design, Management and Processing. (Blackwell, New York, 2000)