Software

The software is complex and comprises of a number of layers. From the lowest level upwards:

  • Hardware device drivers for the all the various pieces of equipment.
  • Relational databases and associated administration software to hold results and experiment tracking data as well as equipment methods, meta-data and experiment protocols.
  • Fault diagnosis and reporting software to communicate errors to the project team. This is written variously in C, VBA and Java depending on equipment/purpose. Most errors are currently trapped by CLARA and communicated via email and in the operating GUI to the project team.
  • System integration and control software (currently CLARA and VBA/excel, supplied by Caliper Life Sciences). Each subsystem is individually controlled by CLARA with an Microsoft Excel spreadsheet to hold the experiment data and running Visual Basic for Applications (VBA) macros to perform functions. The main system then integrates and controls all three sub-systems using VBA code within another Excel spreadsheet.
  • Administration and results software to maintain the Yeast library, view experiment tracking data and growth curves, and view equipment meta-data such as that from environmental sensors. JBoss container running JSP web pages created dynamically using data pulled from the main MySQL relational database.
  • GRID job submission software used to submit manual or automated tasks for the robot. This is based on the Globus Toolkit using WS-GRAM.
  • Artificial Intelligence software that generates new hypotheses, designs experiments to test the hypotheses, analyses experimental results, and handles biological model construction/revision. This is mainly Prolog code.