Improving adaptability via program steering

Download: PDF, slides (PowerPoint).

“Improving adaptability via program steering” by Lee Lin and Michael D. Ernst. In ISSTA 2004, Proceedings of the 2004 International Symposium on Software Testing and Analysis, (Boston, MA, USA), July 2004, pp. 206-216.
A previous version appeared as “Improving adaptability via program steering” by Lee Lin. Masters thesis, MIT Department of Electrical Engineering and Computer Science, (Cambridge, MA), August 12, 2004.
A previous version appeared as “Improving reliability and adaptability via program steering” by Lee Lin and Michael D. Ernst. In ISSRE Supplementary: Fourteenth International Symposium on Software Reliability Engineering, Supplementary Proceeding, (Denver, CO), Nov. 2003, pp. 313-314.

Abstract

A multi-mode software system contains several distinct modes of operation and a controller for deciding when to switch between modes. Even when developers rigorously test a multi-mode system before deployment, they cannot foresee and test for every possible usage scenario. As a result, unexpected situations in which the program fails or underperforms (for example, by choosing a non-optimal mode) may arise. This research aims to mitigate such problems by creating a new mode selector that examines the current situation, then chooses a mode that has been successful in the past, in situations like the current one. The technique, called program steering, creates a new mode selector via machine learning from good behavior in testing or in successful operation. Such a strategy, which generalizes the knowledge that a programmer has built into the system, may select an appropriate mode even when the original controller cannot. We have performed experiments on robot control programs written in a month-long programming competition. Augmenting these programs via our program steering technique had a substantial positive effect on their performance in new environments.

Download: PDF, slides (PowerPoint).

BibTeX entry:

@inproceedings{LinE2004,
   author = {Lee Lin and Michael D. Ernst},
   title = {Improving adaptability via program steering},
   booktitle = {ISSTA 2004, Proceedings of the 2004 International
	Symposium on Software Testing and Analysis},
   pages = {206--216},
   address = {Boston, MA, USA},
   month = jul,
   year = {2004}
}

Back to Publications whose methodology uses invariant detection.