Automated debugging techniques aim to help developers locate and understand the cause of a failure, an extremely challenging yet fundamental task. Most state-of-the-art approaches suffer from two problems: they require a large number of passing and failing tests and report possible faulty code with no explanation. To mitigate these issues, we present MIMIC, a novel automated debugging technique that combines and extends our previous input generation and anomaly detection techniques. MIMIC (1) synthesizes multiple passing and failing executions similar to an observed failure and (2) uses these executions to detect anomalies in behavior that may explain the failure. We evaluated MIMIC on six failures of real world programs with promising results: for five of these failures, MIMIC identified their root causes while producing a limited number of false positives. Most importantly, the anomalies identified by MIMIC provided information that may help developers understand (and ultimately eliminate) such root causes.

Zuddas, D., Jin, W., Pastore, F., Mariani, L., Orso, A. (2014). MIMIC: Locating and Understanding Bugs by Analyzing Mimicked Executions.. In Proceedings of the International Conference on Automated Software Engineering (ASE) (pp.815-826) [10.1145/2642937.2643014].

MIMIC: Locating and Understanding Bugs by Analyzing Mimicked Executions.

PASTORE, FABRIZIO;MARIANI, LEONARDO;
2014

Abstract

Automated debugging techniques aim to help developers locate and understand the cause of a failure, an extremely challenging yet fundamental task. Most state-of-the-art approaches suffer from two problems: they require a large number of passing and failing tests and report possible faulty code with no explanation. To mitigate these issues, we present MIMIC, a novel automated debugging technique that combines and extends our previous input generation and anomaly detection techniques. MIMIC (1) synthesizes multiple passing and failing executions similar to an observed failure and (2) uses these executions to detect anomalies in behavior that may explain the failure. We evaluated MIMIC on six failures of real world programs with promising results: for five of these failures, MIMIC identified their root causes while producing a limited number of false positives. Most importantly, the anomalies identified by MIMIC provided information that may help developers understand (and ultimately eliminate) such root causes.
paper
Debugging, execution synthesis, anomaly detection
English
International Conference on Automated Software Engineering (ASE)
2014
Proceedings of the International Conference on Automated Software Engineering (ASE)
978-1-4503-3013-8
2014
815
826
open
Zuddas, D., Jin, W., Pastore, F., Mariani, L., Orso, A. (2014). MIMIC: Locating and Understanding Bugs by Analyzing Mimicked Executions.. In Proceedings of the International Conference on Automated Software Engineering (ASE) (pp.815-826) [10.1145/2642937.2643014].
File in questo prodotto:
File Dimensione Formato  
Mariani-ASE-2014.pdf

accesso aperto

Dimensione 496.36 kB
Formato Adobe PDF
496.36 kB Adobe PDF Visualizza/Apri

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10281/54529
Citazioni
  • Scopus 20
  • ???jsp.display-item.citation.isi??? ND
Social impact