Visual OGSA-DAI Workflow Editor
The OGSA-DAI project provides Web Service based access to structured data and provides the base capabilities to build higher level functionality such as distributed query processing. An OGSA-DAI service has a number of activities, basic units of functionality, that may be chained together to form a workflow that operates at a given service. Data is streamed through the workflow acted on by these activities. Typically a workflow will follow a Query-Transform-Deliver pattern but the activity combinations can be much more complex allowing data to be analysed near its source.
A number of activities already come bundled in with an OGSA-DAI distribution, e.g. as SQLQuery, XQuery, XSLTransform, etc. (see here for a complete list]) they can also be added to or customised by the service deployers - this is one of the extensibility points for OGSA-DAI. A Java based API (Client Toolkit) is available to provide end-users tools - this abstracts away from the XML based communication protocols. However, what would be really nice is to provide a GUI that queries the service, finds out what activities are available and allows these to be composed into one of the OGSA-DAI centric-workflow which can then be sent to the service. This could then be provided as an end-user tool.
If this can be achieved there is a lot more that could be done with this - for instance: such tooling could be incorporated into other tools such as the P-Grade Portal to construct OGSA-DAI workflows or, even more powerfully, be included as a Taverna plugin to construct OGSA-DAI workflows, that operate at a service, within a much larger service orchestration composed using Taverna.
The project goals are:
- Create a Java based GUI that:
- Queries the activities that are available through an OGSA-DAI service
- Represents these graphically and allows these to be composed into an OGSA-DAI workflow
- Allows the workflow to be deployed to the service
It would be ideal to try and design this so that it can act as a stand-alone application or that it can be embedded within other applications such as the P-Grade portal, a Taverna plug-in, etc.
To be able to do this project the student must be able to program in Java. Familiarity with GUI writing in Java would also be an advantage.