Enhancing Trace Debugging with Algorithmic and Omniscient Debugging

During many years, Print Debugging has been the most used method for debugging. Nowadays, however, industrial languages come with a trace debugger that allows programmers to trace computations step by step using breakpoints and state viewers. Almost all modern programming environments include a trac...

ver descrição completa

Detalhes bibliográficos
Autores: González, Juan, Insa Cabrera, David, Silva, Josep|||0000-0001-5096-0008
Formato: capítulo de livro
Fecha de publicación:2013
País:España
Recursos:Universitat Politècnica de València (UPV)
Repositorio:RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia
Idioma:inglés
OAI Identifier:oai:riunet.upv.es:10251/72827
Acesso em linha:https://riunet.upv.es/handle/10251/72827
Access Level:acceso abierto
Palavra-chave:LENGUAJES Y SISTEMAS INFORMATICOS
Descrição
Resumo:During many years, Print Debugging has been the most used method for debugging. Nowadays, however, industrial languages come with a trace debugger that allows programmers to trace computations step by step using breakpoints and state viewers. Almost all modern programming environments include a trace debugger that allows us to inspect the state of a computation in any given point. Nevertheless, this debugging method has been criticized for being completely manual and time-consuming. Other debugging techniques have appeared to solve some of the problems of Trace Debugging, but they suffer from other problems such as scalability. In this work we present a new hybrid debugging technique. It is based on a combination of Trace Debugging, Algorithmic Debugging and Omniscient Debugging to produce a synergy that exploits the best properties and strong points of each technique. We describe the architecture of our hybrid debugger and our implementation that has been integrated into Eclipse as a plugin.