Regression testing techniques are commonly used to validate the correctness of upgrades. When a regression test fails, testers must understand the erroneous behaviors that caused the failure and identify the fault that originated these erroneous behaviors. In many cases, identifying the causes of a failure is difficult and time consuming. The analysis of regression problems provides interesting opportunities to validation and verification techniques. In fact, by comparing the execution of the base version and the upgraded version of the same program it is possible to automatically deduce information about incorrect behavior of the program. In this paper we present RADAR (Regression Analysis with Diff And Recording), a dynamic analysis technique, which analyzes regression problems and automatically identifies the chain of erroneous events that lead to a failure in C/C++ programs. RADAR exploits information about changes and the availability of multiple versions of the same program to automatically distinguish correct and suspicious events. Empirical experience with industrial and open source cases shows that RADAR can effectively support testers in the investigation of regression problems. Thus, RADAR can drive and simplify the debugging process. © 2012 IEEE.

Pastore, F., Mariani, L., Goffi, A., Oriol, M., Wahler, M. (2012). Dynamic Analysis of Upgrades in C/C++ Software. In 2012 IEEE 23rd International Symposium on Software Reliability Engineering, ISSRE 2012 (pp.91-100). IEEE [10.1109/ISSRE.2012.9].

Dynamic Analysis of Upgrades in C/C++ Software

PASTORE, FABRIZIO;MARIANI, LEONARDO;
2012

Abstract

Regression testing techniques are commonly used to validate the correctness of upgrades. When a regression test fails, testers must understand the erroneous behaviors that caused the failure and identify the fault that originated these erroneous behaviors. In many cases, identifying the causes of a failure is difficult and time consuming. The analysis of regression problems provides interesting opportunities to validation and verification techniques. In fact, by comparing the execution of the base version and the upgraded version of the same program it is possible to automatically deduce information about incorrect behavior of the program. In this paper we present RADAR (Regression Analysis with Diff And Recording), a dynamic analysis technique, which analyzes regression problems and automatically identifies the chain of erroneous events that lead to a failure in C/C++ programs. RADAR exploits information about changes and the availability of multiple versions of the same program to automatically distinguish correct and suspicious events. Empirical experience with industrial and open source cases shows that RADAR can effectively support testers in the investigation of regression problems. Thus, RADAR can drive and simplify the debugging process. © 2012 IEEE.
paper
Debugging, dynamic analysis, model inference, failure analysis
English
International Symposium on Software Reliability Engineering (ISSRE 2012)
2012
2012 IEEE 23rd International Symposium on Software Reliability Engineering, ISSRE 2012
978-076954888-3
2012
91
100
6405357
open
Pastore, F., Mariani, L., Goffi, A., Oriol, M., Wahler, M. (2012). Dynamic Analysis of Upgrades in C/C++ Software. In 2012 IEEE 23rd International Symposium on Software Reliability Engineering, ISSRE 2012 (pp.91-100). IEEE [10.1109/ISSRE.2012.9].
File in questo prodotto:
File Dimensione Formato  
Pastore-Radar-ISSRE-2012.pdf

accesso aperto

Tipologia di allegato: Other attachments
Dimensione 293.99 kB
Formato Adobe PDF
293.99 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/42674
Citazioni
  • Scopus 14
  • ???jsp.display-item.citation.isi??? ND
Social impact