Entity and non-functional-requirement extraction from user stories: evidence from supervised sequence models and reproducible LLM benchmarking
Este artigo avalia modelos de sequência supervisionados e LLMs de pesos abertos para extrair entidades e requisitos não funcionais de histórias de usuário, demonstrando que um modelo BiLSTM-CRF supera significativamente os LLMs zero-shot e one-shot em um benchmark recém-lançado e reproduzível.
Artigo original sob licença CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo
As equipes de software frequentemente escrevem seus planos como frases curtas e naturais chamadas histórias de usuário. Essas notas seguem um padrão simples: "Como um [pessoa], eu quero [ação], para que [razão]". Elas servem para capturar o que um pedaço de software deve fazer e por que isso é importante. Embora os humanos consigam ler essas notas facilmente, os computadores têm dificuldade em entendê-las. As frases são frequentemente desordenadas, com partes faltando ou escritas de uma forma que não se ajusta a um modelo rígido. Para construir melhores ferramentas para gerenciar software, pesquisadores precisam de uma maneira de ensinar os computadores a ler essas histórias e extrair as peças específicas de informação: quem está envolvido, o que querem fazer e por que querem isso. Eles também precisam identificar requisitos ocultos, como regras sobre velocidade, privacidade ou facilidade de uso do sistema, que muitas vezes estão enterrados no texto ou não foram ditos.
Uma equipe de pesquisadores partiu para resolver esse problema testando duas abordagens diferentes para ensinar computadores a extrair esses detalhes. A primeira abordagem utiliza um tipo especializado de programa de computador treinado em milhares de exemplos para agir como um editor cuidadoso, destacando as palavras exatas que se encaixam em cada categoria. A segunda abordagem utiliza modelos de linguagem de grande escala, que são sistemas de inteligência artificial poderosos, capazes de compreender e gerar linguagem humana sem a necessidade de treinamento específico para a tarefa. Os pesquisadores queriam ver qual método poderia extrair com mais precisão a informação correta de uma grande coleção de histórias de software, e se as novas e mais flexíveis ferramentas de IA poderiam superar as mais antigas e rígidas.
A equipe começou reunindo uma coleção massiva de 2.234 histórias de usuário em inglês de várias fontes públicas, incluindo comunidades de desenvolvimento de software e bancos de dados de requisitos. Eles rotularam essas histórias manualmente, marcando exatamente quais palavras representavam a pessoa, a ação e o objetivo. Em seguida, testaram uma série de modelos de computador nesses dados. O modelo mais bem-sucedido foi um sistema que lê o texto em ambas as direções simultaneamente, permitindo que entenda o contexto de uma palavra ao olhar para as palavras antes e depois dela. Este modelo, quando treinado na coleção original, identificou corretamente as partes fundamentais das histórias 96,2% das vezes. Quando os pesquisadores adicionaram mais exemplos aos dados de treinamento criando variações leves das histórias existentes, a precisidade do modelo melhorou para 98,6%. Este sistema também provou ser muito bom em detectar os cinco aspectos de qualidade que a equipe estava procurando: privacidade, desempenho, usabilidade, escalabilidade e manutenibilidade.
Para garantir que seus resultados fossem justos e pudessem ser verificados por outros, os pesquisadores criaram um novo conjunto de teste compartilhado que foi mantido separado dos dados de treinamento. Eles convidaram sete modelos de linguagem de grande escala diferentes para tentar a mesma tarefa. Esses modelos receberam as histórias e foram instruídos a retornar as respostas em um formato estrito, sem explicações extras. Os pesquisadores mediram o sucesso verificando se a resposta do computador correspondia à resposta rotulada pelo humano palavra por palavra e na mesma ordem exata. Os resultados mostraram uma lacuna clara entre os dois tipos de tecnologia. O programa de computador especializado treinado nos dados específicos alcançou uma pontuação de precisão de 0,953 no novo conjunto de teste. Mesmo quando os pesquisadores adicionaram um pequeno número de exemplos modificados e seguros ao seu treinamento, a pontuação subiu para 0,961.
Em contraste, os modelos de linguagem de grande escala, mesmo os mais poderosos disponíveis, tiveram dificuldades significativas ao tentar corresponder aos limites exatos das palavras. O modelo de linguagem de grande escala com melhor desempenho, sem nenhum exemplo específico para aprender a tarefa, obteve apenas 0,414. Quando os pesquisadores deram a esse mesmo modelo um exemplo para mostrar como realizar a tarefa, sua pontuação melhorou ligeiramente para 0,434. O principal problema foi que, embora esses modelos frequentemente compreendessem o significado geral da história, eles frequentemente incluíam palavras demais ou de menos em suas respostas, ou escolhiam os pontos de início e fim errados para as frases. Como o teste exigia uma correspondência exata, esses pequenos erros contavam como falhas. O programa especializado, no entanto, foi projetado especificamente para encontrar esses limites exatos, tornando-se muito mais confiável para este trabalho específico.
O estudo também analisou a velocidade desses sistemas. O programa especializado podia processar uma única história em menos de meio milissegundo em um computador padrão, tornando-o incrivelmente rápido para grandes coleções de dados. Os modelos de linguagem de grande escala levavam muito mais tempo, com uma média de cerca de 0,7 segundos por história, uma diferença significativa ao lidar com milhares de documentos. Os pesquisadores observaram que, embora os modelos de linguagem de grande escala sejam excelentes em compreender a ideia geral e possam ser úteis para uma revisão humana rápida, eles ainda não estão prontos para substituir os programas especializados para tarefas que exigem a extração precisa e automatizada de detalhes específicos.
Os pesquisadores foram cuidadosos ao apontar os limites de seu trabalho. Eles não puderam reproduzir totalmente os resultados de um experimento anterior, maior, porque alguns dos dados e registros originais estavam faltando. Eles também observaram que o benchmark compartilhado que criaram deixou intencionalmente os rótulos de aspectos de qualidade (NFR) vazios porque os dados de origem disponíveis não foram validados para categorias ao nível de história. Consequentemente, este novo conjunto de teste compartilhado não permite uma comparação justa de como os modelos de linguagem de grande escala lidaram com esses requisitos não funcionais específicos. O estudo conclui que, para equipes que precisam classificar automaticamente milhares de histórias de software para encontrar atores, ações e objetivos específicos, o programa de computador especializado continua sendo a ferramenta mais precisa e eficiente. Os modelos de linguagem de grande escala podem servir como um assistente útil para um analista humano, mas ainda não podem ser confiados para realizar o trabalho sozinhos sem uma verificação cuidadosa. Os pesquisadores disponibilizaram seus dados e ferramentas para que outros cientistas possam verificar essas descobertas e continuar a melhorar a tecnologia.
Afogado em artigos na sua área?
Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.