Apache Airavata software framework enables building Science Gateways empowering users to register and execute applications and compose, manage, execute and monitor distributed composite applications and workflows on computational resources. Airavata abstracts computational resources ranging from local resources to computational grids and clouds. The following figure illustrate these interactions and highlights different user roles.
- Gateay End Users - These users interacts with the portal and desktop user interfaces and are agnostic to the existance of Airavata.
- Gateway Developers - The primary target for Airavata Client SDK's is gateway developers. They program against Airavata API (eased through client sdk's in Java, or PHP or C++ or JS) and build science centric gateway interfaces.
- Gateway Adminstrators - These users are responsible for operating a developed gateway and are primary target for Airavata Adminstrative Tools which faciliate system level monitoring, security and user management and so forth.
- Airavata Framework Developers - These group of developers understand the internals of Airavata and develop, enhance, mainatain the core software.
Legacy Content - Needs Revsisting
Below we describe each of these user roles in detail and how they fit into Airavata's big picture.
End User is the one who will have a model code to do some scientific application. Sometimes this End User can be a Research Scientist. He/She writes scripts to wrap the applications up and by executing those scripts, they run the scientific workflows in Super Computers. This can be called a scientific experiment. Now the Scientist might have a requirement to call multiple of these applications together and compose a workflow. That's where the Gateway Developer comes into the picture.
The Research Scientist is the one who comes up with requirement of bundling scientific applications together and composing as a workflow.
The job of the Gateway Developer is to use Airavata and wrap the above mentioned model code and scripts together. Then, scientific workflows are created out these.
Above diagram depicts how Gateway Developer fits into the picture.
Core Developer is the one who develops and contributes to Airavata framework code-base. The Gateway Developers use the software developed by the Core Developers to create science gateways.