Satellites are an invisible part of the vital infrastructure we all rely on day-to-day — from navigating with GPS, receiving weather alerts, and calling home — but they are poised to become an even more important part of our increasingly connected world. “Satellites themselves are becoming floating internet of things (IoT) devices — people are putting increasingly more up in orbit and expecting them to do more for less investment,” says SnT’s Dr. Fabrizio Pastore. A lot already hangs in the balance, and our dependence on reliable satellites for safety at home will only increase. As satellites are becoming smaller and less expensive, the budgets and timeframes for preparing them for launch are getting tighter and tighter. “The industry needs more options for automation and streamlining throughout the entire production process,” says Pastore. This is exactly how his new project, Fault-based, Automated Quality Assurance Assessment and Augmentation for Space Software (FAQAS), began.
The project will be a leap forward for satellite design teams and will empower them to not only keep up with the accelerating pace of development in the commercial space industry, but also to ensure that the products they produce are as safe as possible. It is a consortium involving the Software Verification and Validation (SVV) Lab of SnT, GomSpace Luxembourg, LuxSpace and the European Space Agency (ESA), the main promoter of the project. “At the end of our project, we will have a method to automatically evaluate the efficacy and completeness of any satellite-software test suite,” says Pastore, who is the project’s principal investigator. “The method we are applying, mutation testing, already exists out in the wild, but because of the complexities of space systems it has never been applied systematically to the field.” By testing the tests, his team will help engineers decide where to invest their limited resources and ensure that any lingering test-suite weaknesses get fixed. The result will help developers create suites with high-impact and low costs.
There are two major obstacles to implementing mutation testing for satellite systems — scalability, and a phenomenon known as “equivalent mutants”, which means test results can be ambiguous and require manual investigation. These difficulties had prevented the application of mutation testing methods to space systems in the past. “The tool we will develop will overcome these challenges by automatically selecting a good, representative subset of mutants, and also by identifying true mutants through the automatic detection of software behaviour deviations,” says Pastore. This will make mutation-testing viable in the rigorous context of space missions for the first time — and will significantly streamline the satellite software testing process.
Automated test-generation tools generally work by processing a source code and identifying input variables that trigger specific software behaviours. But when this approach is applied in the same context as complex satellite flight simulators it breaks down. The FAQAS project will adapt this technology to the space sector, by starting not with the un-altered original source code, but rather with mutants that slipped past a test suite. New tests will be automatically generated and added to the suite to catch the evasive mutant.
This process will then be rinse-wash-repeated until gradually — but automatically — the test suite is improved until perfected, without a software engineer’s manual intervention. The result for the space sector will be the rapid development of effective and comprehensive software test suites, which will help reduce the cost of safely reaching orbit and improve mission success rates thereafter.
FAQAS will open up an opportunity to apply the highest software testing standards to even the most demanding contexts, which will put ensuring safety — on the ground and in orbit — within everyone’s reach.