Requirements and Design Consistency: A Bi-directional Traceability and Natural Language Processing Assisted Approach
Résumé
phase in the Software Development Life Cycle (SDLC). The design phase follows it. Traceability is one of the core concepts in software engineering; it is used to follow updates to make consistent items. This paper aimed to cover consistency through bi-directional traceability between requirements and design phase in a semi-automatic way. The Natural Language Processing (NLP) was used to analyze the requirements text and generate a class diagram; then, the generated items can be traced back to requirements. We developed a novel process to support consistency and bi-directional traceability. To ensure our proposed process's practical applicability, we implemented a tool named as Requirements and Design Bi-directional Traceability (RDBT). RDTB receives textual format requirements, performs NLP tasks (Tokenization, Part-of-Speech Tagging, etc.), generates UML class diagram, and finally performs traceability management to ensure consistency of requirements and UML class diagram. The work evaluation reveals good results, which indicates it can be used efficiently as a guide to generate the UML class diagram semi-automatically and manage traceability.