Aplicação de kdd em dados de iterações de desenvolvimento de software
Resumo
Resumo: O software está presente em várias categorias de sistemas atualmente. Ele pode ser desenvolvido de diferentes formas, o Desenvolvimento Iterativo é uma delas. Esse modelo de processo de software é a base para processos ou métodos amplamente praticados na indústria de software. Ele é capaz de lidar mais facilmente com softwares modernos, os quais estão cada vez complexos e exigindo entregas mais frequentes que agreguem valor ao serviço ou produto do cliente. Nessa abordagem o software é desenvolvido por meio de várias iterações. Esse processo pode gerar um grande volume de dados tornando- se inviável uma análise manual. É comum, portanto, que grandes empresas apliquem métodos ou processos específicos para obter conhecimento a partir desses dados para na sequência difundi-lo dentre os seus integrantes buscando melhorar seus processos produtivos. Nesse contexto, o objetivo deste trabalho foi identificar modelos e padrões que sejam válidos e potencialmente interpretáveis de tal forma que possam auxiliar as equipes de software na tomada de decisões inerente à realização de iterações de desenvolvimento de software. Esse objetivo foi norteado pelas seguintes questões, dadas as informações históricas dessas iterações: "é possível prever o resultado de uma iteração?" e "esses dados podem revelar algum padrão relacionado às práticas das equipes de software?". Para alcançar esse objetivo, foi aplicado um método de estudo baseado no KDD-process envolvendo dados de projetos reais e as técnicas de mineração de dados Árvore de Decisão e Floresta Aleatória. Foram identificados modelos capazes de prever o sucesso (ou falha) de uma iteração de software com até 93% de acurácia e padrões que evidenciam, por exemplo, a importância da prática de constantemente analisar e refinar os itens do backlog do produto.