dc.description.abstract |
The requirement phase stands as the keystone of the software development process, establishing the bedrock upon which successful software projects are built. This paper underscores the critical significance of the requirement phase and the timely resolution of inconsistencies within it. Accurate and complete requirement gathering forms the linchpin of software quality and functionality, making it pivotal for project success. However, manual identification of conflicts and inconsistencies in requirements can be a formidable task, often elusive due to their subtlety and concealed nature.
The ramifications of unresolved inconsistencies in software requirements can lead to chaos in later stages of development, necessitating costly and time-consuming revisions. To circumvent these challenges, there is a pressing need for automated conflict detection mechanisms in software requirements.
In this research, we present a novel automated approach based on rule-based techniques to detect redundant and conflicting requirements. Our methodology is structured into multiple layers, commencing with the identification of key elements such as actors, ac- tions, Action Negativity, events, event negativity, and restrictions within software re- quirements. To accomplish this, we harness the power of the CoreNLP library and implement specific Natural Language Processing (NLP) rules. Once these elements are discerned, we employ predefined rules to flag conflicts.
To validate the efficacy of our approach, we conducted extensive testing utilizing real- world datasets, including WorldVista and Pure. Our results showcase a remarkable performance, with an average precision rate of 92%, a recall rate of 94.5%, and an impressive F1-score of 93% for both the WorldVista and Pure datasets. This research paves the way for enhanced software requirement analysis and lays the foundation for more robust and error-free software development processes. |
en_US |