Published Papers | jump to submitted papers | jump to white papers

Empirical Assurance of Embedded Software using Realistic Simulated Failure Modes - Final Repor for the NASA Office of Safety and Mission Assurance Software Assurance Research Program Center Initiative CI2004-77. Bennett, T., Wennberg, P., December 2006.
SARP Results Web Site

Abstract:  Reliance on analysis alone to evaluate the effect of failure modes untestable in an integration lab setup will not fully ameliorate the added risks due to ever-increasing system complexities and the use of intelligent behavior in software designs.  Few would argue that evaluating system behavior through dynamic testing in its native target environment is the best method of verification, however, this is almost always infeasible for NASA space hardware.  In this study we simulated the NASA Mini-AERCam nanosatellite, running its uninstrumented flight software, in its orbital environment.  We then demonstrated how a high-fidelity virtual environment simulation can be used for  empirical assessment of system and software behavior in response to enhanced system and component failure conditions.  Failure-mode testing of the Mini-AERCam controlled by its flight software revealed dynamics and behaviors not discovered in prior failure modes and effects analysis efforts.  These results suggest improved mitigation strategies for recovery of the Mini-AERCam experiencing such a failure, and design modifications with the potential for improving controllability in the presence of such a failure.

Eliminating Embedded Software Defects Prior to Integration Test
Bennett, T. Wennberg, P., December 2005,  CrossTalk - The Journal of Defense Software Engineering

Eliminating Embedded Software Defects Prior to Integration Test
Bennett, T. Wennberg, P., October 2006, Quality Assurance Institute Journal

Abstract:  Research has shown that finding software faults early in the development cycle not only improves software assurance, but also reduces software development expense and time.  The root causes of the majority of embedded system software defects discovered during hardware integration test have been attributed to errors in understanding and implementing requirements.  The independence that typically exists between the system and software development processes provides ample opportunity for the introduction of these types of faults.  This article shows a viable method of verifying object software using the same tests created to verify the system design from which the software was developed.  After passing the same tests used to verify the system design, it can be said that the software has correctly implemented all of the known and tested system requirements.  This method enables the discovery of functional faults prior to the integration test phase of a project.

The Use of a Virtual System Simulator and Executable Specifications to Enhance Software Validation, Verification, and Safety Assurance - Final Report for the NASA Office of Safety and Mission Assurance Software Assurance Research Program Initiative 583. Bennett, T., Wennberg, P., June 2004.
SARP Results Web Site:  http://sarpresults.ivv.nasa.gov/ViewResearch/282/32.jsp

Abstract:  The root causes of the majority of software defects discovered during the integration test phase of an embedded system development project have been attributed to errors in understanding and implementing requirements.  The independence that typically exits between the system and software development processes provides ample opportunity for the introduction of these types of faults.  This research project has shown a viable method of verifying object software using the same tests created to verify an executable specification-based system design from which the software is developed.  If the object software passes the same tests used to verify the system design, it can be said that the software has correctly implemented all of the known system requirements.  This method enables the discovery of functional faults prior to the system integration test phase of a project.  Previous research has shown that finding software faults early in the development cycle not only improves software assurance, but also reduces software development expense and time.

Maintaining Verification Test Consistency Between Executable Specifications and Embedded Software in a Virtual System Integration Laboratory Environment. 
Proceedings of the 28th Annual IEEE/NASA Goddard Software Engineering Workshop.
Bennett, T., Wennberg, P., December 2003.
http://csdl.computer.org/comp/proceedings/sew/2003/2064/00/20640221abs.htm

Abstract:  The root causes of the majority of software defects discovered during the integration test phase of an embedded system development project have been attributed to errors in understanding and implementing requirements. The independence that typically exits between the system and software development processes provides ample opportunity for the introduction of these types of faults. This paper shows a viable method of verifying object software using the same tests created to verify an executable specification-based system design from which the software is developed. If the object software passes the same tests used to verify the system design, it can be said that the software has correctly implemented all of the known system requirements. This method enables the discovery of functional faults prior to the system integration test phase of a project. Previous research has shown that finding software faults early in the development cycle not only improves software assurance, but also reduces software development expense and time.

Note: This paper presents the preliminary results of the research presented in the Final Report for NASA initiative 583 (see prior paper).

Submitted for Publications

No unpublished submissions at this time.

Triakis White Paper

Using a Virtual System Simulation Environment for the Development of Avionics Systems & Software
Bennett, T., September 2003.
This paper describes how Triakis' IcoSim software application is effectively applied to the development of embedded avionics systems & software.