Saturday, 6 September 2008

Workflows dissected

In New Zealand the concept of web-service or grid Workflow is very new, with a morass of new nomenclature, that I have found difficult to grasp all in one. So I have attempted to relate objects, names and concepts in the workflow world to their functional equivalents in traditional programming development and execution environments, that are more widely known. This is not to pretend that a web service and a file, for example are the same, but instead to recognise that within the two different domains they fulfill functionally equivalent roles. By seeing things in this way, it becomes easier to understand how all the new nomenclature fits together. Of course sometimes the functional fit is very loose and at other times the equivalence is very close. So this is the conclusion that I have come to, if it helps you as well, then thats is usefull, if I have missed something fundamental, then I'm happy to be corrected and to adjust the table – so if you are an expert feel free to comment, but bear in mind that this is a table to emphasize functional similarities from the perpsective of newbies to the workflow space. Following blogs will hopefully expand on key differences.

OK first attempt at the table - as yet incomplete:
Functional RoleTraditional Environment Web-service based Workflow - Taverna Grid based Workflow - Triana Web-service based Workflow - Sedna
Scripting tools AML, shell script SCUFL ? Domain PEL & Scientific PEL
Programming Language C++, Fortran, Java n/a ? BPEL
Integrated Development Environment MS Visual Studio Taverna Triana Sedna plugin to Eclipse IDE
Callable object DLL file Web Service Java Unit Web Service
Executable Object EXE file Taverna workflow Triana workflow BPEL bpr archives
Process launch & control, or enactment Windows, Linux Freefluo workflow enactor GAP ActiveBPEL engine
File/data objects File, database Web service Grid service protocol GridFTP Web service

table v0.1, Sep 5th, 2008

No comments: