Automatically deriving a uml analysis model from a use case model

The transition from requirements expressed in Natural Language (NL) 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). However, its automation has received little attention, mostly because requirements are in practice expressed in NL 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 thesis, we propose a method and a tool, building on existing work, to automatically generate analysis models from requirements. Such models include class, sequence and activity diagrams to describe the structure and behavior of a system. It also includes automatically establishing traceability links between the requirements and the automatically generated analysis model. Requirements are assumed to be modeled with our use case modeling approach (RUCM), which we showed to have enough expressive power, to be easy to apply, to help improve the quality of manually derived analysis models. Seven (six) case studies were performed to compare class (sequence) diagrams generated by our tool to the ones created by experts, Masters students, and trained, 4th year undergraduate students. Our results show that our method performs well when compared to reference diagrams. Further, statistical test results show that our tool significantly outperforms 4 th year engineering students, thus demonstrating the value of automation. Performance analysis results show that the execution time of the tool remains within a range of a few minutes, thus suggesting the approach is scalable. Five case studies were performed to assess our approach's capability to generate activity diagrams. The results show that high quality activity diagrams can be generated and the analysis also shows that our approach outperforms existing academic approaches and commercial tools. We also conducted two industrial case studies, yielding results that demonstrate that RUCM is applicable in two different industrial domains and that aToucan-generated analysis models are largely correct and complete from the perspective of domain experts.

[1]  Anneke Kleppe,et al.  MDA explained - the Model Driven Architecture: practice and promise , 2003, Addison Wesley object technology series.

[2]  Axel van Lamsweerde,et al.  Requirements Engineering: From System Goals to UML Models to Software Specifications , 2009 .

[3]  Bernd Bruegge,et al.  Object-Oriented Software Engineering Using UML, Patterns, and Java , 2009 .

[4]  Lionel C. Briand,et al.  A Use Case Modeling Approach to Facilitate the Transition towards Analysis Models: Concepts and Empirical Evaluation , 2009, MoDELS.

[5]  Michal Smialek,et al.  Complementary use case scenario representations based on domain vocabularies , 2007, MODELS'07.

[6]  Takako Nakatani,et al.  A requirements description metamodel for use cases , 2001, Proceedings Eighth Asia-Pacific Software Engineering Conference.

[7]  RATIONAL UNIFIED PROCESS What is Rational Unified Process ? , 2022 .

[8]  Eduard Schibrowski,et al.  Model-Driven Architecture ( MDA ) and Data Warehouse Design , 2007 .

[9]  Peter Fettke,et al.  Model Driven Architecture (MDA) , 2003, Wirtsch..

[10]  Jim Miller,et al.  Syntax: A Linguistic Introduction to Sentence Structure , 2020 .

[11]  Benno Geißelmann,et al.  Program Design by Informal English Descriptions , 2001 .

[12]  Antonio Ruiz Cortés,et al.  A Requirements Elicitation Approach Based in Templates and Patterns , 1999, WER.

[13]  Hassan Gomaa,et al.  Designing concurrent, distributed, and real-time applications with UML , 2000, ICSE.

[14]  Stefan Biffl,et al.  Determining the cost-quality trade-off for automated software traceability , 2005, ASE.

[15]  Sidney Greenbaum,et al.  The Oxford English Grammar , 1996 .

[16]  Oscar Pastor,et al.  A specification pattern for use cases , 2004, Inf. Manag..

[17]  Alistair Cockburn,et al.  Writing Effective Use Cases , 2000 .