You are viewing a plain text version of this content. The canonical link for it is here.
Posted to architecture@airavata.apache.org by Shameera Rathnayaka <sh...@gmail.com> on 2015/02/06 20:57:22 UTC

Implementing a comprehensive futuristic workflow engine

Hi all,

Since last year we have been talking on improving airavata workflow
component to support latest airavata feature improvements. With the effort
of last few months we could able to re energize the workflow component and
make it work with the latest Airavata. As a results of that effort we
replaced XML based XWF language with JSON based workflow language. Latest
Airavata 0.14 release has the all improvements and it supports workflow
execution with monitoring.

By looking at the workflow component, it is overloaded with deprecated and
unused subcomponents like xsd, WSDL handlers, web services, cloud specific
code, and lots of JAXB codes which are deprecated with new JSON based
language replacement. Another major minus point to the existing workflow
component is, workflow data model is bound with xbaya gui tool. So this
limit the support of different workflow languages. Here[1] I am suggesting
a new architecture for the workflow component,  With this new solution we
can provide a clean API to plug different workflow languages to workflow
engine and decouple workflow data model with workflow description language.

As the first iteration of implement, we can come up with basic features to
run a workflow which doesn't have loops or conditional states. Future
iterations can extend the workflow engine to support complex scenario like
conditional states, optimize resources utilization of workflow process and
workflow debugging.

I have given permission to comment on the doc. All comments and suggestions
are welcome.

[1]
https://docs.google.com/document/d/1ZpnB3G1L0pR86IHiRrp_0EzSZoTgTxDXCdmS5wK1Ft0/edit


-- 
Best Regards,
Shameera Rathnayaka.

email: shameera AT apache.org , shameerainfo AT gmail.com
Blog : http://shameerarathnayaka.blogspot.com/