Abstract
The task of debugging software failures is generally time consuming and involves substantial manual effort. A crucial part of this task lies in the reproduction of the reported failure at the developer’s site. In this paper, we propose a novel framework that aims to address the problem of failure reproduction by employing an adaptive search-based approach in combination with a limited amount of instrumentation. In particular, we formulate the problem of reproducing failures as a search problem: reproducing a software failure can be viewed as the search for a set of inputs that lead its execution to the failing path. The search is guided by information obtained through instrumentation. Preliminary experiments on small-size programs show promising results in which the proposed approach outperforms random search.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Arcuri, A.: It does matter how you normalise the branch distance in search based software testing. In: 2010 Third International Conference on Software Testing, Verification and Validation (ICST), pp. 205–214 (April 2010)
Arcuri, A., Fraser, G.: On Parameter Tuning in Search Based Software Engineering. In: Cohen, M.B., Ó Cinnéide, M. (eds.) SSBSE 2011. LNCS, vol. 6956, pp. 33–47. Springer, Heidelberg (2011)
Artzi, S., Kim, S., Awasthi, P.: ReCrash: Making Software Failures Reproducible by Preserving Object States. In: Dell’Acqua, P. (ed.) ECOOP 2008. LNCS, vol. 5142, pp. 542–565. Springer, Heidelberg (2008)
Bettenburg, N., Just, S., Schröter, A., Weiss, C., Premraj, R., Zimmermann, T.: What makes a good bug report. In: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of Software Engineering, SIGSOFT 2008/FSE-16, pp. 308–318. ACM, New York (2008)
Castro, M., Costa, M., Martin, J.-P.: Better bug reporting with better privacy. In: Proceedings of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS XIII, pp. 319–328. ACM, New York (2008)
Clause, J., Orso, A.: Camouflage: automated anonymization of field data. In: 2011 33rd International Conference on Software Engineering (ICSE), pp. 21–30 (May 2011)
Crameri, O., Bianchini, R., Zwaenepoel, W.: Striking a new balance between program instrumentation and debugging time. In: Proceedings of the Sixth Conference on Computer Systems, EuroSys 2011, pp. 199–214. ACM, New York (2011)
Eiben, A., Hinterding, R., Michalewicz, Z.: Parameter control in evolutionary algorithms. IEEE Transactions on Evolutionary Computation 3(2), 124–141 (1999)
Jin, W., Orso, A.: BugRedux: Reproducing Field Failures for In-house Debugging. In: 2012 34th IEEE and ACM SIGSOFT International Conference on Software Engineering (ICSE) (June 2012)
McMinn, P.: Search-based software test data generation: a survey: Research articles. Softw. Test. Verif. Reliab. 14(2), 105–156 (2004)
Zamfir, C., Candea, G.: Execution synthesis: a technique for automated software debugging. In: Proceedings of the 5th European Conference on Computer Systems, EuroSys 2010, pp. 321–334. ACM, New York (2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kifetew, F.M. (2012). A Search-Based Framework for Failure Reproduction. In: Fraser, G., Teixeira de Souza, J. (eds) Search Based Software Engineering. SSBSE 2012. Lecture Notes in Computer Science, vol 7515. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33119-0_22
Download citation
DOI: https://doi.org/10.1007/978-3-642-33119-0_22
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-33118-3
Online ISBN: 978-3-642-33119-0
eBook Packages: Computer ScienceComputer Science (R0)