Detecção de módulos de software propensos a falhas através de técnicas de aprendizagem de máquina

Detalhes bibliográficos
Ano de defesa: 2008
Autor(a) principal: BEZERRA, Miguel Eugênio Ramalho
Orientador(a): MEIRA, Silvio Romero de Lemos
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
MDP
Link de acesso: https://repositorio.ufpe.br/handle/123456789/1748
Resumo: O sucesso de um software depende diretamente de sua qualidade. Tradicionalmente, métodos formais e de inspeção manual de código são usados para assegurá-la. Tais métodos, geralmente, possuem um custo elevado e demandam bastante tempo. Dessa forma, as atividades de teste devem ser planejadas cuidadosamente para evitar o desperdício de recursos. Atualmente, as organizações estão buscando maneiras rápidas e baratas de detectar defeitos em softwares. Porém, mesmo com todos os avanços dos últimos anos, o desenvolvimento de software ainda é uma atividade que depende intensivamente do esforço e do conhecimento humano. Muitos pesquisadores e organizações estão interessados em criar um mecanismo capaz de prever automaticamente defeitos em softwares. Nos últimos anos, técnicas de aprendizagem de máquina vêm sendo utilizadas em diversas pesquisas com esse objetivo. Este trabalho investiga e apresenta um estudo da viabilidade da aplicação de métodos de aprendizagem de máquina na detecção de módulos de software propensos a falhas. Classificadores como redes neurais artificiais e técnicas de aprendizagem baseada em instâncias (instance-based learning) serão usadas nessa tarefa, tendo como fonte de informação as métricas de software retiradas do repositório do Metrics Data Program (MDP) da NASA. Também será apresentado um conjunto de melhorias, propostas durante este trabalho, para alguns desses classificadores. Como a detecção de módulos defeituosos é um problema sensível a custo, este trabalho também propõe um mecanismo capaz de medir analiticamente o custo de cada decisão tomada pelos classificadores