[Context and motivation] User stories (USs) are a widely used notation for requirements in agile software development. [Question/problem] In large software projects, redundancies between USs can easily occur, and unresolved redundancies can impact software quality. It is crucial for requirements engineers to know where redundancy occurs in their projects. However, some forms of redundancy may be acceptable. [Principal ideas/results] We present two automated approaches for detecting redundancy in a set of USs in order to prevent a decrease of software quality due to the realisation of redundant USs. The first approach is based on annotation graphs, containing the main actions and entities of a US. By design, this approach effectively identifies a strict form of redundancy. The second approach detects redundancies of a more semantic nature using large language models (LLMs). [Contribution] We present the concepts and tools of both approaches and evaluate their potential and limitations by applying them to a large corpus of USs. Our results show that the inherently fuzzy LLM-based approach is able to detect most of the strict redundancies and additionally finds many more non-strict semantic redundancies. Thus, this study contributes to the advancement of automated quality control of USs.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Detecting Redundancies Between User Stories with Graphs and Large Language Models

  • Lukas Sebastian Hofmann,
  • Alexander Lauer,
  • Jens Kosiol,
  • Arno Kesper,
  • Philipp Wieber,
  • Amir Rabieyan,
  • Gabriele Taentzer

摘要

[Context and motivation] User stories (USs) are a widely used notation for requirements in agile software development. [Question/problem] In large software projects, redundancies between USs can easily occur, and unresolved redundancies can impact software quality. It is crucial for requirements engineers to know where redundancy occurs in their projects. However, some forms of redundancy may be acceptable. [Principal ideas/results] We present two automated approaches for detecting redundancy in a set of USs in order to prevent a decrease of software quality due to the realisation of redundant USs. The first approach is based on annotation graphs, containing the main actions and entities of a US. By design, this approach effectively identifies a strict form of redundancy. The second approach detects redundancies of a more semantic nature using large language models (LLMs). [Contribution] We present the concepts and tools of both approaches and evaluate their potential and limitations by applying them to a large corpus of USs. Our results show that the inherently fuzzy LLM-based approach is able to detect most of the strict redundancies and additionally finds many more non-strict semantic redundancies. Thus, this study contributes to the advancement of automated quality control of USs.