Designing for Software Reuse - the Herschel Common Science System

by Peter Roelfsema

The development and operation of instruments in scientific satellites requires much software, to support instrument and satellite tests, for calibration and for scientific data gathering and analysis. Traditionally, different software systems are built for different mission phases. To support Herschel Space Observatory (HSO) instrument activities in all mission phases, ESA and SRON Netherlands Institute for Space Research adopted a new approach: an integrated system for data management and processing. The system allows for continuous reuse of components over the entire 20-year project lifespan.

SRON is the Dutch national centre of expertise for the development and exploitation of satellite instruments in astrophysics and earth system science. One of its projects is the building and operation of the Heterodyne Instrument for the Far Infrared (HIFI). HIFI is one of three astronomical research instruments on board the Herschel Space Observatory, a European Space Agency (ESA) cornerstone mission, which will be launched in 2008. The HSO should have a 3.5-year operational lifetime followed by many years of research based on the archived data. The main aim of the HIFI instrument will be to observe regions in the universe where stars and planetary systems are being formed to help further our understanding of the lifecycle of stars and planets.

The various data flows and processing centers of the HSO are indicated in the figure. The three Instrument Control Centers monitor the instrument behavior and carry out and analyze calibrations. The Herschel Science Centre (HSC) plans and maintains the overall scientific schedule of the mission and the Mission Operations Centre (MOC) maintains contact with the satellite. These five centers and the astronomical community are interacting with the mission objects -products and software- through a common repository - the Herschel Common Science System (HCSS).

Figure 1
Overview of data flows through the Herschel Common Science System during the operational phase of the Herschel Space Observatory.

When the instruments are operated, commands are sent to the control computer inside the instrument to carry out observations by letting it execute steps needed to set up the instrument for a measurement, reading out the signals from the detection system and packaging the read-outs for transmission to the ground. On the ground, using calibration procedures and parameters, the read-outs are converted to values that astronomers can use for comparison with physical models of the observed region. Tools to support these activities are implemented in the context of the HCSS: a commanding engine, a data storage and retrieval facility and analysis tools for scientific and calibration analysis. The full object oriented design is implemented utilising an object database with Java and Jython based application software.

In space missions, reliability and robustness is a prime condition; the software must be extremely well tested and verified. This is especially important for software elements involved with commanding the instruments, as improper commanding may have permanent adverse effects on instrument performance. Since the detailed behavior of the instrument in flight might well change with time –for instance, due to aging effects or subsystem failures- an essential requirement on all software is that it is not only robust but also easily modifiable.

During the building, integration and testing of the instrument all activities outlined above are performed and therefore tools designed for the operational phase can be used in earlier phases as well. The joint Herschel ground segment design team realized this in 1996 when the HSO satellite and instruments were still in the conceptual stage. For HCSS, development started parallel with instrument building and testing. By replacing the Mission Operations Centre with functionality to control the instrument under laboratory conditions all other HCSS elements could be used in the same mode as envisaged during operations. This would promote extensive ‘pre’-use of operational software during the instrument test phase providing early and extensive user testing of this software. Additionally for the tests only minimal extra software facilities needed to be implemented.

Over the past years, large parts of the HCSS have been implemented by a joint team of some 20 developers from the instrument teams and ESA distributed over many locations in Europe. Ten years after its original inception and at least two years before its true operational use, the HCSS and its development concepts have already proven to be successful. Instrument tests are currently being supported by using HCSS functionality for instrument and test support equipment commanding, for data storage and retrieval and for data processing. All these components were designed for the operational phase and their use in instrument testing shows that foresight has already started paying off. One example of real life testing is the use of the HCSS data analysis component for analysis of scientific data obtained with ground-based instruments equivalent to HIFI. The success of the HCSS tests suggests that this reuse will stay successful through the pre-launch and science harvesting phases.


Please contact:
Peter R. Roelfsema, SRON Netherlands, Institute for Space Research, The Netherlands
Tel: +31 50 3634043