Semi-automatic bug localization in software maintenance
1990 (English)In: Software Maintenance, 1990, IEEE , 1990, 30-36 p.Conference paper (Refereed)
An algorithmic program debugger for imperative languages is presented, with Pascal as an example case. This debugger extends the power of existing debuggers by providing an interactive debugging facility where errors can be localized semiautomatically. The debugger is activated on demand when the user discovers a symptom of an error as the result of some computation. This symptom presumably denotes a difference between the intended program behavior and the actual behavior. The proposed approach consists of three phases: program transformation, tracing, and debugging. The first phase transforms the source program into an internal representation which is appropriate, according to the Shapiro model, for algorithmic debugging. This phase produces an intermediate program which is free from side effects and loops. The program tracing phase generates trace information which builds an execution tree for the erroneous program. The debugging phase performs bug localization through a number of user interactions. This phase consists of pure algorithmic program debugging and program slicing
Place, publisher, year, edition, pages
IEEE , 1990. 30-36 p.
Electrical Engineering, Electronic Engineering, Information Engineering
IdentifiersURN: urn:nbn:se:liu:diva-110060DOI: 10.1109/ICSM.1990.131319ISBN: 0-8186-2091-9OAI: oai:DiVA.org:liu-110060DiVA: diva2:742562
Conference on Software Maintenance, 26-29 November 1990, San Diego, CA, USA