核心概念
A tool called "GeneUS" is developed to automatically generate user stories and test cases from software requirements documents using a large language model (LLM) and a novel prompting technique called "Refine and Thought" (RaT).
摘要
The content describes the development of a tool called "GeneUS" that automatically generates user stories and test cases from software requirements documents using a large language model (LLM). The key points are:
-
The Agile software development process relies heavily on user stories, which are created manually from requirements documents, a time-consuming task. The authors aim to automate this process using LLMs.
-
The authors propose a novel prompting technique called "Refine and Thought" (RaT) to improve the performance of LLMs in handling complex and redundant input, which is a common challenge in processing software requirements documents.
-
The GeneUS tool takes a requirements document as input and generates detailed user stories, including information about the user, the functionality, the purpose, the definition of done, functional and non-functional constraints, and test specifications.
-
The authors conducted a survey with 50 software engineering professionals to evaluate the quality of the automatically generated user stories and test cases using the RUST (Readability, Understandability, Specifiability, Technical-aspects) framework.
-
The survey results show that the overall quality of the generated user stories is rated as "Good" (4 out of 5), with some room for improvement in the Specifiability and Technical-aspects categories.
-
The authors plan to further enhance the tool's performance by incorporating domain-specific knowledge and leveraging knowledge embedding techniques to address issues related to LLM hallucinations.
統計資料
The system must collect real-time data from a sensor to monitor blood sugar levels.
The software must calculate the required amount of insulin based on the current blood sugar level.
The system should be able to control the insulin pump to deliver the calculated dose of insulin to the user.
The software must have mechanisms in place to ensure the correct amount of insulin is delivered accurately.
The system should be able to send signals to the pump promptly when insulin delivery is required.
The software must have fail-safe mechanisms to prevent over or under delivery of insulin.
The system should provide alerts or notifications to the user in case of any issues or failures in the insulin delivery process.
The software must be designed to operate reliably to ensure the health and safety of the user.
The system should have backup systems in place to ensure continuous operation in case of any failures.
引述
"Automating this process will certainly reduce additional load off the software engineers, and increase the productivity since they will be able to utilize their time on other prioritized tasks."
"As per our knowledge, it is the first attempt to automate the RE phase with LLM, which leads to a new SE research domain towards automating the Agile development process as we call AutoAgile which aims to automate the entire Agile development process end-to-end with the help of pre-trained LLMs, knowledge embedding, and prompt-engineering."