Recomendação de requisitos não funcionais em projetos ágeis baseados em Scrum. - RAMOS, Felipe Barbosa Araújo. (2019)
O desenvolvimento ágil de software concentra-se em entregas rápidas e flexibilidade para mudanças de requisitos. Apesar de ser eficaz no fornecimento de requisitos funcionais de qualidade, as práticas ágeis tendem a negligenciar requisitos não funcionais até os últimos estágios do desenvolvimento do produto de software. Porém, não considerar devidamente requisitos não funcionais durante a análise de requisitos pode resultar em falhas de projetos iguais ou superiores a 60%. Nesta tese, propõe-se uma solução para auxiliar integrantes de equipes de projetos ágeis na definição de requisitos não funcionais durante o processo de análise de requisitos. A solução proposta é baseada em um sistema de recomendação baseado em memória que é viabilizado por uma adaptação do método ágil Scrum, que visa estruturar informações de projetos por meio da atribuição de tags. Para validar a solução, foram conduzidos experimentos off-line com dados coletados de 13 projetos de uma empresa de software brasileira. Os experimentos foram executados de acordo com o protocolo de validação cruzada leave-p-out. Como resultado, o sistema de recomendação proposto mostrou uma taxa de F-measure de até 79%. Além disso, foi realizada uma avaliação de usuário por meio de um estudo de caso com quatro equipes da mesma empresa citada anteriormente, em que foram avaliadas a utilidade prática de uma ferramenta que integra a solução proposta e a precisão das predições de requisitos não funcionais. De forma geral, as quatro equipes consideraram a ferramenta útil para o gerenciamento de requisitos não funcionais e foi obtida uma taxa de precisão de 81,8% das recomendações. Dessa forma, conclui-se que o sistema de recomendação é capaz de realizar previsões de requisitos não funcionais com eficácia satisfatória e, portanto, é útil para auxiliar nas tomadas de decisões de projetos baseados em Scrum.