From scripts to specifications: The evolution of a flight software testing effort

Alex Groce, Klaus Havelund, Margaret Smith

Research output: Chapter in Book/Report/Conference proceedingConference contribution

27 Scopus citations

Abstract

This paper describes the evolution of a software testing effort during a critical period for the flagship Mars Science Laboratory rover project at the Jet Propulsion Laboratory. Formal specification for post-run analysis of log files, using a domain-specific language, LogScope, replaced scripted real-time analysis. Log analysis addresses the key problems of on-the-fly approaches and cleanly separates specification and execution. Mining the test repository suggested the inadequacy of the scripted approach, and encouraged a partly engineer-driven development. LogScope development should hold insights for others facing the tight deadlines and reactionary nature of testing for critical projects. LogScope received a JPL Mariner Award for "improving productivity and quality of the MSL Flight Software" and has been discussed as an approach for other flight missions. We note LogScope features that most contributed to ease of adoption and effectiveness. LogScope is general and can be applied to any software producing logs.

Original languageEnglish (US)
Title of host publicationICSE 2010 - Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering
Pages129-138
Number of pages10
DOIs
StatePublished - 2010
Externally publishedYes
Event32nd ACM/IEEE International Conference on Software Engineering, ICSE 2010 - Cape Town, South Africa
Duration: May 1 2010May 8 2010

Publication series

NameProceedings - International Conference on Software Engineering
Volume2
ISSN (Print)0270-5257

Conference

Conference32nd ACM/IEEE International Conference on Software Engineering, ICSE 2010
Country/TerritorySouth Africa
CityCape Town
Period5/1/105/8/10

Keywords

  • Python
  • development practices
  • logs
  • runtime verification
  • space flight software
  • temporal logic
  • test infrastructure
  • testing

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'From scripts to specifications: The evolution of a flight software testing effort'. Together they form a unique fingerprint.

Cite this