22 JUN. 2009 publication date 21129 Views

Software is the term given to coded sets of instructions that tell the system what to do in a given situation. Thus, the software represents the “intelligence” of a certain system. As the sophistication and on-board intelligence of spacecraft has increased, e.g. to become more autonomous from ground, so too has the size and complexity of their associated software programs, stretching to hundreds of thousands of lines of code (and up to one million lines of code for the Jules Verne ATV).


What is the Software Systems domain?

The domain of Software Systems covers most aspects of the software in the service of ESA space missions. In particular it covers:

  • software engineering methods and tools;

  • software technology for onboard and ground systems

  • software architectures and building blocks;

  • system-software co-engineering techniques in which computer code is specified in a concurrent way together with the system;

  • real-time software embedded in spacecraft systems and payloads;

  • ground facilities software, including electrical ground support equipment, testbenches, databases and simulation and modelling tools;

  • verification and validation techniques for checking mission-critical software

  • software standards.


ESA's ATV Control Centre, Toulouse, during Demonstration Day 2

Why is Software Systems important?

Software enables highly complex activities - such satellite precision manoeuvres, autonomous navigation of rovers on a planetary terrain - and provides a means to recover from malfunctions and compensate for hardware equipment defects. Software must work correctly first time in orbit, and getting it right is crucial to mission success: software bugs have been the doom of many spacecraft, going back to the earliest days of space exploration.

The added value of software to space systems has increased greatly in recent decades, reflecting the ever growing functionality and autonomy of spacecraft and the amount of mission data to be collected and processed.

Software systems engineering is needed to ensure that the software is properly designed, developed and verified, like for any physical equipment.


Related links

Software Technology Section (TEC-SWT)

Software Systems Engineering

fallback image 2

stay updated

Subscribe to our newsletter to receive the latest news, mission updates, and exclusive insights directly in your inbox. Be the first to know about our upcoming projects and breakthroughs.