  On-board embedded software developed for spaceflight systems (space software)
must adhere to stringent software quality assurance procedures. For example,
verification and validation activities are typically performed and assessed by
third party organizations. To further minimize the risk of human mistakes,
space agencies, such as the European Space Agency (ESA), are looking for
automated solutions for the assessment of software testing activities, which
play a crucial role in this context.
  Over the years, mutation analysis has shown to be a promising solution for
the automated assessment of test suites; it consists of measuring the quality
of a test suite in terms of the percentage of injected faults leading to a test
failure. A number of optimization techniques, addressing scalability and
accuracy problems, have been proposed to facilitate the industrial adoption of
mutation analysis. However, to date, two major problems prevent space agencies
from enforcing mutation analysis in space software development.
  In this paper, we enhance mutation analysis optimization techniques to enable
their applicability to embedded software and propose a pipeline that
successfully integrates them to address scalability and accuracy issues in this
context, as described above. Further, we report on the largest study involving
embedded software systems in the mutation analysis literature. Our research is
part of a research project funded by ESA ESTEC involving private companies
(GomSpace Luxembourg and LuxSpace) in the space sector. These industry partners
provided the case studies reported in this paper; they include an on-board
software system managing a microsatellite currently on-orbit, a set of
libraries used in deployed cubesats, and a mathematical library certified by
ESA.
