How to integrate scientific applications as new components


Integrating new applications into the Virtual Laboratory is rather easy as the software infrastructure provides substantial support for connecting programs to the Web, for building appropriate Web user interfaces, for constructing Web-accessible online documentation, and for registering the new component in the Virtual Laboratory\x{2019}s databases. If the program is able to run on one of the supported platforms (Intel/Linux and SPARC/Solaris at this time), no internal changes whatsoever are needed to transform a command line program into a readily usable web application.

In the current pilot phase, the first step is to contact the administrator via e-mail to, describing all characteristics of the program relevant to its ability to be executed on the VL cluster (OS platform, dependencies on special compilers or libraries, nonstandard resource requirements, etc.). If integration can proceed, the administrator's reply will provide detailed instructions.

Currently, the integration process works roughly as follows:

1. User obtains "integrator" access privileges and new component area from administrator

The user (now acting as integrator) obtains a Unix shell account on a staging server in the Virtual Laboratory network. On that machine, a new directory is created, too, which will store all information related to the new component. 

2. Integrator writes and tests I/O description for component

This abstract description says which input data the web user interface should request from the user, and which output data are generated. After completing simple offline tests using the shell account, the integrator copies the executable program into the componnet area and proceeds to online tests: The staging server offers web-based execution of the new component in the same way it will later be available on the main server, just that access is exclusive to the integrator for now.

3. Integrator writes and checks documentation for component

In creating documentation that follows the structure standardized in the the Virtual Laboratory, the integrator is free to use the text processor of his/her choice, can re-use existing text blocks, and is supported by dedicated tools e.g. for creating a document "skeleton" which just needs to be filled with application-specific content.

4. Integrator requests "go-live"

The administrator transfers the new component to the main server and activates it.


A web-based "assistant" will further ease the integration process in the near future, so working through a shell account will no longer be necessary.