Please use this identifier to cite or link to this item: https://hdl.handle.net/10216/85732
Author(s): João Filipe Vieira Nadais
Title: Hooray, I found the bug
Issue Date: 2016-07-08
Abstract: Debugging has been a process that is causing various headaches to a large of programmers along time.Sometimes, the error is found at a very late stage of development, leading to added high costs for its correction. Other times, a function is not contemplating all the cases it should, specially some that are not easily perceptible, which lead to an indication by debugging tools that the fault is on related parts, since this function is seen as executed successfully. Some tools like Crowbar give us, from a set of tests, the possibility of having a more visual perception of the project that is being analyzed, as well as the probability of finding the error in certain parts of the code. Having its base on algorithms that strive for efficiency, such as Spectrum-based fault localization, and being integrated in the IDE, the user has the possibility of having a new approach to the fault localization problem. However, so far it is still not possible to state the real impact that having this kind of tool in the general user experience. Therefore, a user study was done to compare not only the fact of having or not a performance improvement by the users on locating faults, but also the importance of having this tool integrated in the IDE, the ease of use of the tool and finally obstacles that the user had due to the need of using a specific IDE. For those who will test the opposite case (the usual process with no tool), we aim to evaluate the approach used by the developer to find the error as well as the difficulty on finding it. By comparing these two experiences, with a relevant number of cases in each, it will be possible to conclude wether or not tools like Crowbar make users better.
Description: O processo de debugging tem sido um processo que ao longo dos tempos tem causado diversas dores de cabeça a muitos programadores. Algumas vezes acontece que o erro é encontrado numa fase muito tardia do projeto, o que torna a correção deste um processo custoso. Outras vezes, uma função não contempla todos os casos que seria necessário, e as ferramentas de debugging vão indicar o problema em partes relacionadas, por considerarem que a função foi executada com sucesso. Certas ferramentas como o Crowbar dão-nos, a partir de um conjunto de casos de teste, a possibilidade de ter uma perceção mais visual do projeto que está a ser analisado, bem como a probabilidade de encontrar o erro em certas partes do código. Tendo como base algoritmos que primam pela eficiência em projetos de elevada escala, como o Spectrum-based fault localization, e estando integrado no IDE, é possível ao utilizador ter uma nova abordagem ao problema de localização de falhas. No entanto, até à data ainda não é possível comprovar o verdadeiro impacto de ter uma ferramenta deste tipo na experiência geral do utilizador. Assim, um estudo foi realizado para comparar não só o facto de haver, ou não, uma melhoria da performance dos utilizadores em localizar falhas, assim como a pertinência de ter tal ferramenta integrada num IDE, a facilidade com que conseguiu utilizar a ferramenta e limitações sentidas ao usar o IDE em específico, enquanto que no caso oposto (sem ferramenta) pretendeu-se avaliar qual a abordagem utilizada pelo programador para encontrar o erro, dificuldade que teve no mesmo. Comparando estas duas diferentes experiências com um número relevante de casos em cada uma, será possível tirar conclusões sobre se de facto ferramentas como o Crowbar tornam os utilizadores melhores.
Subject: Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
Scientific areas: Ciências da engenharia e tecnologias::Engenharia electrotécnica, electrónica e informática
Engineering and technology::Electrical engineering, Electronic engineering, Information engineering
TID identifier: 201307332
URI: https://hdl.handle.net/10216/85732
Document Type: Dissertação
Rights: openAccess
License: https://creativecommons.org/licenses/by-nc/4.0/
Appears in Collections:FEUP - Dissertação

Files in This Item:
File Description SizeFormat 
150111.pdfHooray, I found the bug2.28 MBAdobe PDFThumbnail
View/Open


This item is licensed under a Creative Commons License Creative Commons