Um Estudo para Identificar e Classificar Ambiguidades em Historias de Usuário usando Aprendizagem de Máquina
Ambiguidade em linguagem natural; Histórias de Usuário; Aprendizagem de Máquina.
Ambiguidade na escrita de requisitos é um dos defeitos mais encontrados nos documentos de requisitos. Existe uma variedade de conceitos sobre o que é ambiguidade em requisitos e para identificar os tipos de ambiguidade deve-se entender melhor cada conceito. A ambiguidade pode comprometer a qualidade das Histórias de Usuário e pode estar presente em requisitos escritos em linguagem natural. Na literatura, há poucos estudos que investigam o potencial dos algoritmos de Aprendizagem de Máquina para classificar ambiguidade em Histórias de Usuários. Esta dissertação tem como objetivo identificar e classificar ambiguidade em Histórias de Usuários através do uso de algoritmos de Aprendizado de Máquina. Dessa forma, foi elaborado um formulário baseado da literatura para ajudar na identificação da ambiguidades nas Histórias de Usuário e foi usada uma abordagem de Aprendizagem de Máquina utilizando dois algoritmos: (i) Support Vector Machine ; (ii) Random Forest. Para o estudo foram utilizadas 1.002 Histórias de Usuário e aplicadas técnicas (oversampling e undersampling) para balancear os dados desbalanceados, pois notou-se o desbalanceamento dos dados. Como resultados o tipo de ambiguidade mais identificado nas Histórias de Usuário foi adjetivos e advérbios ambíguos e o algoritmo que obteve o modelo de melhor desempenho ao classificar as Histórias de Usuário foi Random Forest.