Automatic relative debugging
Searle, Aaron James (2006) Automatic relative debugging. PhD thesis, Queensland University of Technology.
Abstract
Relative Debugging is a paradigm that assists users to locate errors in programs that have been corrected or enhanced. In particular, the contents of key data structures in the development version are compared with the contents of the corresponding data structures, in an existing version, as the two programs execute. If the values of two corresponding data structures differ at points where they should not, an error may exist and the user is notified.
Relative Debugging requires users to identify the corresponding data structures within the two programs, and the locations at which the comparisons should be performed.
To quickly and effectively identify useful data structures and comparison points requires that users have a detailed knowledge of the two programs under consideration. Without a detailed knowledge of the two programs, the task of locating useful data structures and comparison points can quickly become a difficult and time consuming process. Prior to the research detailed in this thesis, the Relative Debugging paradigm did not provide any assistance that allowed users to quickly and effectively identify suitable data structures and program points that will help discover the source of an error.
Our research efforts have been directed at enhancing the Relative Debugging paradigm. The outcome of this research is the discovery of techniques that empower
Relative Debugging users to become more productive and allow the Relative Debugging paradigm to be significantly enhanced. Specifically, the research has resulted in the following three contributions:
1. A Systematic Approach to Relative Debugging.
2. Data Flow Browsing for Relative Debugging.
3. Automatic Relative Debugging.
These contributions have enhanced the Relative Debugging paradigm and allow errors to be localized with little human interaction. Minimizing the user's involvement reduces the cost of debugging programs that have been corrected or enhanced, and has a significant impact on current debugging practices.
Citations:
Citation countsare sourced monthly from Scopus and Web of Science citation databases.
These databases contain citations from different subsets of available publications and different time periods and thus the citation count from each is usually different. Some works are not in either database and no count is displayed. Scopus includes citations from articles published in 1996 onwards, and Web of Science generally from 1980 onwards.
Citations counts from the Google Scholar™ indexing service can be viewed at the linked Google Scholar™ search.
Full-text downloads:
Full-text downloadsdisplays the total number of times this work’s files (e.g., a PDF) have been downloaded from QUT ePrints as well as the number of downloads in the previous 365 days. The count includes downloads for all files if a work has more than one.
| ID Code: | 16445 |
|---|---|
| Item Type: | QUT Thesis (PhD) |
| Supervisor: | Gough, Kevin, Roe, Paul, & Abramson, David |
| Keywords: | Relative Debugging, Automatic Debugging, Automatic Relative Debugging, data flow browsing, testing and debugging tools |
| Divisions: | Past > QUT Faculties & Divisions > Faculty of Science and Technology Past > Schools > Information Systems |
| Department: | Faculty of Information Technology |
| Institution: | Queensland University of Technology |
| Copyright Owner: | Copyright Aaron James Searle |
| Deposited On: | 03 Dec 2008 14:03 |
| Last Modified: | 29 Oct 2011 05:48 |
Export: EndNote | Dublin Core | BibTeX
Repository Staff Only: item control page