ROOT: Requirements Organization and Optimization Tool

Katherine R. Dearstyne,Alberto D. Rodriguez,Jane Cleland-Huang
2024-08-20
Abstract:Software engineering practices such as constructing requirements and establishing traceability help ensure systems are safe, reliable, and maintainable. However, they can be resource-intensive and are frequently underutilized. To alleviate the burden of these essential processes, we developed the Requirements Organization and Optimization Tool (ROOT). ROOT centralizes project information and offers project visualizations and AI-based tools designed to streamline engineering processes. With ROOT's assistance, engineers benefit from improved oversight and early error detection, leading to the successful development of software systems. Link to screen cast: <a class="link-external link-https" href="https://youtu.be/3rtMYRnsu24" rel="external noopener nofollow">this https URL</a>
Software Engineering
What problem does this paper attempt to address?
The problem that this paper attempts to solve is that in software engineering practice, although key processes such as constructing requirements and establishing traceability are helpful to ensure the security, reliability and maintainability of the system, these processes are often resource - intensive and are easily overlooked or poorly executed. Especially in start - ups and small companies, due to the priority of speed, these important requirements engineering processes are often ignored or delayed. To alleviate the burden on engineers brought by these key processes, the author has developed a tool named ROOT (Requirements Organization and Optimization Tool). The main objectives of ROOT include: 1. **Centralize project information**: Centralize all project information on one platform to facilitate user navigation and management. 2. **Provide project visualization**: Display the project structure in multiple ways (such as tree diagrams, table views) to help users quickly understand the overall situation of the project. 3. **Integrate AI - assisted tools**: Use AI technology to generate documents, automatically summarize projects, predict tracking links, detect inconsistencies and ambiguities in requirements, and provide a project - specific chat interface to accelerate problem - solving. Through these functions, ROOT aims to provide engineers with better supervision and early error detection, thereby promoting more efficient requirements management and software development processes, and ultimately helping development teams build safer and more reliable systems more quickly. ### Core problem summary - **Resource - intensive requirements engineering processes**: Processes such as requirements construction and traceability management are time - consuming and labor - intensive, resulting in being often overlooked or simplified in actual operations. - **Challenges of cross - team collaboration**: Difficulties in coordinating among team members with different backgrounds and professional knowledge may lead to failures in the later stages of the project. - **Lack of automation support**: Existing tools and technology have not fully alleviated the burden of requirements engineering, especially in start - ups and small companies. By introducing the ROOT tool, the paper attempts to solve the above problems through automation and AI - assisted means, and improve the efficiency and quality of requirements management in the software development process.