Towards auto-completion on software requirements statements

Carlos Alberto dos Santos,Fabio Petrillo
DOI: https://doi.org/10.48550/arXiv.2106.13908
2021-06-26
Abstract:As software systems become more complex, modern software development requires more attention to human perspectives, and active participation of development teams in requirements elicitation tasks. In this context, incomplete or ambiguous requirements descriptions do not guide the development of good software products. We hypothesize that the text auto-completion feature improves the quality of the software requirements artifacts. We present the motivation for this study, related works, our approach and future research efforts.
Software Engineering
What problem does this paper attempt to address?
The problem that this paper attempts to solve is the incompleteness or ambiguity in software requirement descriptions, which can impede the development of high - quality software products. Specifically, the author believes that in the current software development process, the quality of requirement descriptions directly affects the quality of the final software product. To improve the quality of requirement descriptions, the author proposes a method based on text auto - completion functionality to assist in writing software requirements. ### Core Problems of the Paper 1. **Quality Problems of Requirement Descriptions**: - Incomplete or ambiguous requirement descriptions can cause the development team to misunderstand user requirements, thus affecting the functionality and performance of the software. - The quality of requirement descriptions is crucial for ensuring that the software meets user expectations, especially in the agile development process, where the accuracy and clarity of requirements are particularly important. 2. **Deficiencies of Existing Solutions**: - Existing methods and techniques have limitations when dealing with the quality problems of requirement descriptions, such as the inefficiency of manual review and the limited effectiveness of automated tools. - A more efficient and intelligent way is needed to improve the quality of requirement descriptions. ### Proposed Solution The author proposes using text auto - completion functionality to improve the quality of software requirement descriptions. Specifically: - **Auto - Completion Functionality**: By suggesting appropriate words and phrases, it helps developers and business analysts write requirement documents more quickly and accurately. - **Reduce Ambiguity and Spelling Errors**: Auto - completion can eliminate ambiguity and spelling errors in requirement descriptions, ensuring the clarity and accuracy of requirement descriptions. - **Accelerate the Writing Process**: The auto - completion functionality can speed up the writing of requirement documents, enabling writers to focus more on business logic rather than language expression. ### Verification Steps To verify this hypothesis, the author plans to take the following steps: 1. **Literature Review**: Research existing related work on software requirement quality to understand existing methods and their limitations. 2. **Grey Literature Research**: Evaluate how the industry deals with requirement quality problems to understand actual requirements and challenges. 3. **Tool Analysis**: Analyze existing requirement management tools to understand how they control text quality and organize business knowledge. 4. **Prototype Development**: Develop a prototype of a tool based on reinforcement learning to evaluate the effectiveness of the auto - completion functionality. 5. **User Experience Evaluation**: Through simulating the requirement - definition environment, evaluate the experience of users (such as developers and business analysts) using this tool. ### Conclusion The core objective of this paper is to improve the overall quality of software development by introducing text auto - completion functionality to improve the quality of software requirement descriptions.