Dependency-Directed Localization of Software Bugs

Abstract

A software bug manifests itself as a violated specification. Debugging is the process that culminates in repairing a program so that it satisfies its specification. An important part of debugging is localization, whereby the smallest region of the program that manifests the bug is found. The Debugging Assistant (DEBUSSI) is a system that localizes bugs by reasoning about logical dependencies. Via queries to the user and automated deduction, DEBUSSI manipulates the assumptions that underlie a bug manifestation, eventually localizing the bug to one particular assumption. At the same time DEBUSSI incrementally acquires specification information, thereby extending its understanding of the buggy program. As part of the Programmer's Apprentice, DEBUSSI will be useful for validating partial designs, as well as for testing fully implemented code.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
May 01, 1989
Accession Number
ADA210837

Entities

People

  • Ron I. Kuper

Organizations

  • Massachusetts Institute of Technology

Tags

Communities of Interest

  • Biomedical
  • Ground and Sea Platforms
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Artificial Intelligence
  • Artificial Intelligence Computing
  • Cognition
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Control Systems
  • Debugging
  • Information Systems
  • Instructions
  • Language
  • Lisp Programming Language
  • Military Research
  • Programming Languages
  • Software Testing
  • User Interface

Fields of Study

  • Computer science
  • Engineering

Readers

  • Artificial Intelligence
  • Computer Science.
  • Virology (or Medical Virology).