From text-based system specifications to UML diagrams: A bridge between words and models
Zakaria Babaalla, El Mahi Bouziane, Abdeslam Jakimi, Mohamed Oualla · 2024
Today, the production of software systems is becoming an activity that is essential to the daily lives of individuals and companies. This laborious process involves several stakeholders who must respond to different aspects of the system, starting from a requirements document expressed in natural language. However, developing a software system from these textual specifications is a complex task that requires a large-scale understanding of all these aspects. The advent of MDE model-driven engineering has profoundly contributed to partially removing this complexity by adopting a new model-centric approach throughout the software development cycle. MDA model-driven architecture has placed UML diagrams at the heart of this process, as they serve as a bridge between the conceptual system diagram and its implementation. However, manually creating these diagrams can be tedious and error-prone, especially when the specifications are long and/or complex. In this article, we propose an approach to analyze textual specifications and extract the relevant elements to construct both UML class and use case diagrams, based on natural language processing (NLP) tools and linguistic practices.