Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2591062.2591101acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

Reproducing software failures by exploiting the action history of undo features

Published: 31 May 2014 Publication History

Abstract

Bug reports seldom contain information about the steps to reproduce a failure. Therefore, failure reproduction is a time consuming, difficult, and sometimes impossible task for software developers. Users are either unaware of the importance of steps to reproduce, are unable to describe them, or do not have time to report them. Similarly, automated crash reporting tools usually do not capture this information. In order to tackle this problem, we propose to exploit the action history of undo features, i.e. the history of user actions captured by many applications in order to allow users to undo previous actions. As it is captured anyway, our approach does not introduce additional monitoring overhead. We propose to extract the action history upon occurrence of a failure and present it to developers during bug fixing. Our hypothesis is that information about user actions contained in the action history of undo features enables developers to reproduce failures. We support this hypothesis with anecdotal evidence from a small empirical study of bug reports. A thorough evaluation is necessary to investigate the applicability and impact of our approach and to compare it to existing capture/ replay approaches.

References

[1]
S. Artzi, S. Kim, and M. D. Ernst. ReCrash: Making software failures reproducible by preserving object states. In ECOOP 2008 - Object-Oriented Programming, volume 5142 of LNCS. Springer, 2008.
[2]
J. Bell, N. Sarda, and G. Kaiser. Chronicler: Lightweight recording to reproduce field failures. In ICSE 2013 Proceedings. IEEE, 2013.
[3]
B. Burg, R. Bailey, A. J. Ko, and M. D. Ernst. Interactive record/replay for web application debugging. In Proc. of the 26th Ann. ACM Symp. on User Interface Software and Technology. ACM, 2013.
[4]
K. Glerum, K. Kinshumann, S. Greenberg, G. Aul, V. Orgovan, G. Nichols, D. Grant, G. Loihle, and G. Hunt. Debugging in the (very) large: Ten years of implementation and experience. In Proc. of the 22nd ACM SIGOPS Symp. on Operating Systems Principles. ACM, 2009.
[5]
L. Gomez, I. Neamtiu, T. Azim, and T. Millstein. RERAN: Timing- and touch-sensitive record and replay for Android. In ICSE 2013 Proceedings. IEEE, 2013.
[6]
S. Herbold, J. Grabowski, S. Waack, and U. Bünting. Improved bug reporting and reproduction through non-intrusive GUI usage monitoring and automated replaying. In 4th Int. Conf. on Software Testing, Verification and Validation Workshops. IEEE, 2011.
[7]
W. Jin and A. Orso. BugRedux: Reproducing field failures for in-house debugging. In ICSE 2012 Proceedings. IEEE, 2012.
[8]
E. I. Laukkanen and M. V. Mantyla. Survey reproduction of defect reporting in industrial software development. In 2011 Int. Symp. on Empirical Software Engineering and Measurement. IEEE, 2011.
[9]
B. Murphy. Automating software failure reporting. ACM Queue, 2(8):42–48, 2004.
[10]
A. Orso and B. Kennedy. Selective capture and replay of program executions. In Proc. of the 3rd Int. Workshop on Dynamic Analysis. ACM, 2005.
[11]
R. Pham, H. Holzmann, K. Schneider, and C. Brüggemann. Tailoring video recording to support efficient GUI testing and debugging. Software Quality Journal, pages 1–20, 2013.
[12]
T. Roehm, N. Gurbanova, B. Bruegge, C. Joubert, and W. Maalej. Monitoring user interactions for supporting failure reproduction. In Proc. of the 21th IEEE Int. Conf. on Program Comprehension. IEEE, 2013.
[13]
J. Steven, P. Chandra, B. Fleck, and A. Podgurski. jRapture: A capture/ replay tool for observation-based testing. ACM SIGSOFT Softw. Eng. Notes, 25(5):158–167, 2000.
[14]
J. Tucek, S. Lu, C. Huang, S. Xanthos, and Y. Zhou. Triage: Diagnosing production run failures at the user’s site. In Proc. of 21th ACM SIGOPS Symp. on Operating Systems Principles. ACM, 2007.
[15]
A. Zeller. Why programs fail. Morgan Kaufmann, 2nd edition, 2009.
[16]
T. Zimmermann, R. Premraj, N. Bettenburg, S. Just, A. Schröter, and C. Weiss. What makes a good bug report? IEEE TSE, 36(5):618–643, 2010.

Cited By

View all
  • (2018)Replay without recording of production bugs for service oriented applicationsProceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering10.1145/3238147.3238186(452-463)Online publication date: 3-Sep-2018

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE Companion 2014: Companion Proceedings of the 36th International Conference on Software Engineering
May 2014
741 pages
ISBN:9781450327688
DOI:10.1145/2591062
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

  • TCSE: IEEE Computer Society's Tech. Council on Software Engin.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 31 May 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Action history of undo feature
  2. Bug fixing
  3. Fail- ure reproduction
  4. Software maintenance
  5. Steps to reproduce
  6. Undo
  7. User monitoring

Qualifiers

  • Article

Conference

ICSE '14
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)1
Reflects downloads up to 03 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2018)Replay without recording of production bugs for service oriented applicationsProceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering10.1145/3238147.3238186(452-463)Online publication date: 3-Sep-2018

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media