NASA NTRS · 20150006916
Software Certification - Coding, Code, and Coders
Abstract
We describe a certification approach for software development that has been adopted at our organization. JPL develops robotic spacecraft for the exploration of the solar system. The flight software that controls these spacecraft is considered to be mission critical. We argue that the goal of a software certification process cannot be the development of "perfect" software, i.e., software that can be formally proven to be correct under all imaginable and unimaginable circumstances. More realistically, the goal is to guarantee a software development process that is conducted by knowledgeable engineers, who follow generally accepted procedures to control known risks, while meeting agreed upon standards of workmanship. We target three specific issues that must be addressed in such a certification procedure: the coding process, the code that is developed, and the skills of the coders. The coding process is driven by standards (e.g., a coding standard) and tools. The code is mechanically checked against the standard with the help of state-of-the-art static source code analyzers. The coders, finally, are certified in on-site training courses that include formal exams.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Havelund, Klaus, Holzmann, Gerard J.. 2011-10-08. Software Certification - Coding, Code, and Coders. https://ntrs.nasa.gov/citations/20150006916
Cite the original work for its findings. Save a collection to share your selection of sources.