Please use this identifier to cite or link to this item: https://repositorio.ufu.br/handle/123456789/17552
Document type: Dissertação
Access type: Acesso Aberto
Title: Construção de um classificador automático de severidade de bugs para sistemas open source
Author: Sousa, Cláudio Ribeiro de
First Advisor: Maia, Marcelo de Almeida
First member of the Committee: Julia, Stéphane
Third member of the Committee: Song, Mark Alan Junho
Summary: A análise de bugs de software é uma das atividades mais importantes na Qualidade de Software. A rápida e correta implementação do reparo necessário tem influência tanto para os desenvolvedores, que devem deixar o software funcionando plenamente, quanto para os usuários, que precisam executar suas tarefas diárias. Neste contexto, caso haja incorreta caracterização no relato dos bugs, podem ocorrer situações indesejadas. Um dos principais fatores a serem atribuídos ao bug no ato de seu relato inicial é severidade, que diz respeito à urgência da correção aquele problema. Diante deste cenário, identificou-se em conjuntos de dados bugs extraídos de cinco sistemas open source (Apache, Eclipse, Kernel, Mozilla e Open Office), que há uma distribuição não uniforme dos bugs com relação às severidades existentes nesta amostra, o que é um indícioinicial de má classificação. Nos dados analisados existe uma taxa de cerca de 85% de bugs sendo classificados com apenas a severidade normal. Logo, esta taxa de classificação pode influenciar negativamente no contexto do desenvolvimento do software, em que o bug mal classificado pode ser alocado para um desenvolvedor com pouca experiência para poder resolvê-lo e assim, a correção do mesmo pode demorar, ou ainda gerar uma implementação incorreta. Vários trabalhos na literatura tem desconsiderado os bugs normais, trabalhando apenas com a porção de bugs considerados severos ou não severos inicialmente. Este trabalho teve como principal objetivo investigar esta porção dos dados, com finalidade de identificar se a severidade normal reflete a real urgência de correção do bug, investigar se existem bugs (classificados inicialmente como normais) que poderiam ser classificados com outra severidade, além de avaliar se há impactos para os desenvolvedores neste sentido. Para isso, foi desenvolvido um classificador automático, que baseou-se em três algoritmos(Näive Bayes, Max Ent e Win now) para aferir se a severidade normal está correta para os bugs assim categorizados inicialmente. Os algoritmos apresentaram a curácia de cerca de 80%,e mostraram que entre 21% e 36% dos bugs deveriam ter sido classificados de outra forma(dependendo do algoritmo), o que representa algo entre 70.000 e 130.000 bugs da amostra coletada.
Abstract: Software bug analysis is one of the most important activities in Software Quality. The rapid and correct implementation of the necessary repair influence both developers, who must leave the fully functioning software, and users, who need to perform their daily tasks. In this context, if there is an incorrect classification of bugs, there may be unwanted situations. One of the main factors to be assigned bugs in the act of its initial report is severity, which lives up to the urgency of correcting that problem. In this scenario, we identified in datasets with data extracted from five open source systems (Apache, Eclipse, Kernel, Mozilla and Open Office), that there is an irregular distribution of bugs with respect to existing severities, which is an early sign of misclassification. In the dataset analyzed, exists a rate of about 85% bugs being ranked with normal severity. Therefore, this classification rate can have a negative influence on software development context, where the misclassified bug can be allocated to a developer with little experience to solve it and thus the correction of the same may take longer, or even generate a incorrect implementation. Several studies in the literature have disregarded the normal bugs, working only with the portion of bugs considered severe or not severe initially. This work aimed to investigate this portion of the data, with the purpose of identifying whether the normal severity reflects the real impact and urgency, to investigate if there are bugs (initially classified as normal) that could be classified with other severity, and to assess if there are impacts for developers in this context. For this, an automatic classifier was developed, which was based on three algorithms (Näive Bayes, Max Ent and Winnow) to assess if normal severity is correct for the bugs categorized initially with this severity. The algorithms presented accuracy of about 80%, and showed that between 21% and 36% of the bugs should have been classified differently (depending on the algorithm), which represents somewhere between 70,000 and 130,000 bugs of the dataset.
Keywords: Computação
Software - Qualidade - Controle
Software - Testes
Qualidade de software
Bug trackers
Repositório de bugs
Severidade de bugs
Software quality
Bug repository
Bug severity
Area (s) of CNPq: CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Language: por
Country: Brasil
Publisher: Universidade Federal de Ubelândia
Program: Programa de Pós-graduação em Ciência da Computação
Quote: SOUSA, Cláudio Ribeiro de. Construção de um classificador automático de severidade de bugs para sistemas open source. 2016. 72 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Uberlândia, Uberlândia, 2016.
URI: https://repositorio.ufu.br/handle/123456789/17552
Date of defense: 11-Mar-2016
Appears in Collections:DISSERTAÇÃO - Ciência da Computação

Files in This Item:
File Description SizeFormat 
ConstrucaoClassificadorAutomatico.pdfDissertação821.54 kBAdobe PDFThumbnail
View/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.