Reference : When does my program do this? learning circumstances of software behavior
Scientific congresses, symposiums and conference proceedings : Paper published in a book
Engineering, computing & technology : Computer science
Security, Reliability and Trust
http://hdl.handle.net/10993/46095
When does my program do this? learning circumstances of software behavior
English
Kampmann, Alexander mailto [CISPA Helmholtz Center for Information Security Saarbrücken, Germany]
Havrikov, Nikolas mailto [CISPA Helmholtz Center for Information Security Saarbrücken, Germany]
Soremekun, Ezekiel mailto [University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > SerVal >]
Zeller, Andreas mailto [CISPA Helmholtz Center for Information Security Saarbrücken, Germany]
8-Nov-2020
Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering
1228-1239
Yes
International
Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering
6 - 16 November 2020
[en] debugging ; error diagnosis ; machine learning
[en] We introduce Alhazen — an approach that automatically determines the circumstances under which a particular program behavior, such as a failure, takes place. Alhazen starts with a run that exhibits this behavior and automatically determines input features associated with the behavior in question: (1) We use a grammar to parse the input into individual elements. (2) We determine features from the elements such as existence, length, or numerical values. (3) We use a decision tree learner to observe and learn which input features are associated with the behavior in question. (4) We use the grammar to generate additional inputs to further strengthen or refute hypotheses as learned associations. (5) By repeating steps 2 to 4, we obtain a theory that explains and predicts the given behavior. In our evaluation using inputs for find, grep, NetHack, and a JavaScript transpiler, the theories produced by Alhazen predict and produce failures with high accuracy and allow developers to focus on a small set of input features: “grep fails whenever the --fixed-strings option is used in conjunction with an empty search string.”
http://hdl.handle.net/10993/46095

File(s) associated to this reference

Fulltext file(s):

FileCommentaryVersionSizeAccess
Open access
fse2020-alhazen.pdfAuthor postprint703.54 kBView/Open

Bookmark and Share SFX Query

All documents in ORBilu are protected by a user license.