I recently hosted an episode of Software Engineering Radio called "Will McGugan on Text-Based User Interfaces"!

  • Home
  • Teaching
    • Overview
    • Data Abstraction
    • Operating Systems
  • Research
    • Overview
    • Papers
    • Presentations
  • Outreach
    • Software
    • Service
    • Blog
  • About
    • Biography
    • Schedule
    • Contact
    • Blog
    • Service
    • Papers
    • Presentations

Contents

  • Introduction
  • Contributions
  • Future

Exploring database-aware automated fault localization

post
research paper
database testing
Can fault localization work for database applications?
Author

Gregory M. Kapfhammer

Published

2012

Introduction

Ever found yourself confounded by the task of debugging a database application? In a recent research paper (Clark et al. 2011) , my co-authors and I introduce a game-changing approach to automated fault localization that’s specifically designed for database applications. This approach significantly enhances the debugging process, making it more efficient and accurate. Keep reading this short post to discover some of the key findings of this new paper!

Contributions

The paper makes several important contributions:

  • Automated Technique: The introduction of the first-ever database-aware fault-localization technique, a statistical method that takes into account an application’s interactions with its database when it uses information arising from test execution to automatically rank the program and schema locations that are the likely sources for a fault.

  • Quantitative Results: Using three Java programs, an empirical study demonstrating that our new technique can improve the effectiveness of finding structured query language (SQL) faults by as much as 94.6% over existing techniques that do not carefully consider a program’s interactions with the database through SQL statements.

  • Qualitative Results: A case study that uses concrete examples from real-world programs to show that the presented technique provides additional benefits, such as a potentially more efficient debugging process, which are difficult to quantify numerically.

Future

The results of the empirical studies in this paper demonstrate that, in some cases, a statistical, statement-based approach to fault-localization is effective at locating database-related faults. However, if the application uses a database, then the statement-based approach is insufficient and fault-localization is considerably more effective with a database-aware approach.

This research opens up several exciting avenues for future work. For instance, we plan to expand the class of faults that the technique finds to include multiple-attribute faults and faults within other parts of the SQL command. Additionally, we are working on techniques that can localize data and schema faults, which are not captured by analyzing SQL commands.

Further Details

If you’re interested in diving deeper into this research, I encourage you to read the full paper (Clark et al. 2011) . Your insights and suggestions are appreciated! If you have ideas or experiences related to this topic, please contact me. If you want to stay informed about new developments and blog posts related to the field of software testing, consider subscribing to my mailing list.

Return to Blog Post Listing

References

Clark, Sarah R., Jake Cobb, Gregory M. Kapfhammer, James A. Jones, and Mary Jean Harrold. 2011. “Localizing SQL Faults in Database Applications.” In Proceedings of the 26th International Conference on Automated Software Engineering.

GMK

Top