Francis Schneider , Jet Propulsion Laboratory / California Institute of Technology
Steve M. Easterbrook , NASA/WVU Software Research Lab
John R. Callahan , NASA/WVU Software Research Lab
Gerard J. Holzmann , Computing Sciences Research, Bell Laboratories
Abstract: Model checking is shown to be an effective tool in validating the behavior of a fault tolerant embedded spacecraft controller. The case study presented here shows that by judiciously abstracting away extraneous complexity, the state space of the model could be exhaustively searched allowing critical functional requirements to be validated down to the design level. Abstracting away detail not germane to the problem of interest leaves by definition a partial specification behind. The success of this procedure shows that it is feasible to effectively validate a partial specification with this technique. Three anomalies were found in the system. One was an error in the detailed requirements, and the other two were missing/ambiguous requirements. Because the method allows validation of partial specifications, it is also an effective approach for maintaining fidelity between a co-evolving specification and an implementation.