Improving Run-Time Bug Detection in Aviation Software Using Program Slicing

We present an improvement to run-time bug detection by using program slicing instead of a heuristic to identify relevant program variables to monitor. Our results show that selecting variables using the program slice produces higher sensitivity compared to selecting variables heuristically. Moreover, at least in the experiments conducted, program slicing resulted in more consistent detection, with lower variance in sensitivity as compared to the heuristic approach.

[1]  Daniel L. Dvorak,et al.  NASA Study on Flight Software Complexity , 2009 .

[2]  Bernhard Schölkopf,et al.  Estimating the Support of a High-Dimensional Distribution , 2001, Neural Computation.

[3]  Hanêne Ben-Abdallah,et al.  Formally specified monitoring of temporal properties , 1999, Proceedings of 11th Euromicro Conference on Real-Time Systems. Euromicro RTS'99.

[4]  Grigore Rosu,et al.  Mop: an efficient and generic runtime verification framework , 2007, OOPSLA.

[5]  Frank Tip,et al.  A survey of program slicing techniques , 1994, J. Program. Lang..

[6]  Hu Huang,et al.  Applying Machine Learning for Run-time Bug Detection in Aviation Software , 2016 .

[7]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[8]  Kishor S. Trivedi,et al.  An empirical investigation of fault types in space mission system software , 2010, 2010 IEEE/IFIP International Conference on Dependable Systems & Networks (DSN).