T. Yue, L. Briand, and Y. Labiche (2010)
Automatically Deriving a UML Analysis Model from a Use Case Model
Simula Research Laboratory, Technical Report(2010-15)
The transition from requirements expressed in natural language to a structured, precise specification is an important challenge in practice. It is particularly so for object-oriented methods, defined in the context of the OMG’s Model Driven Architecture (MDA), where a key step is to transition from a use case model to an analysis model. However, its automation has received little attention, mostly because requirements are in practice expressed in natural language and are much less structured than other kinds of development artifacts. Such an automated transformation would enable at least the generation of an initial, likely incomplete, analysis model and enable automated traceability from requirements to code, through various intermediate models. In this paper, we propose a method and a tool, building on existing work, to automatically generate an analysis model from requirements and to automatically establish traceability links between these requirements and the model elements. Such model comprises both class diagrams and sequence diagrams, which are commonly used to describe the structure and behavior of a software system. Seven case studies were performed to compare class diagrams generated by our tool to class diagrams created by experts, Masters students, and trained, 4th year undergraduate students. Our results show that our method performs well regarding consistency (e.g., 92% class diagram consistency) and completeness (e.g., 73% class completeness) when comparing generated class diagrams with reference class diagrams. Further, statistical tests show that our tool significantly outperforms 4th year engineering students with that respect, thus demonstrating the value of automation. A performance analysis shows that the execution time of the tool is linearly dependent on the number of simple sentences contained in a use case model and remains within a range of a few minutes, thus suggesting the approach is scalable. We also compared sequence diagrams generated by our tool to the ones devised by experts and trained 4th year undergraduate students. Results show, as for class diagrams, that sequence diagrams automatically generated by our tool are highly consistent with the ones devised by experts and are also rather complete: e.g., 91% and 97% message consistency and completeness, respectively. Results further suggest that the automatically generated sequence diagrams are far more complete (+46%) than the ones manually created by trained students. We also conducted two industrial case studies demonstrating the applicability of RUCM in two different industrial domains and check whether our approach generates many incorrect model elements, where results showed that the vast majority of model elements generated by our approach and tool are correct and such models would, in practice, be good initial models to refine and augment to converge towards to correct and complete analysis models.
