Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

aToucan: An Automated Framework to Derive UML Analysis Models from Use Case Models

Published: 13 May 2015 Publication History

Abstract

The transition from an informal requirements specification 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, providing automated support for this transition is challenging, mostly because, in practice, requirements are 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 article, we propose a method and a tool called aToucan, building on existing work, to automatically generate a UML analysis model comprising class, sequence and activity diagrams from a use case model and to automatically establish traceability links between model elements of the use case model and the generated analysis model. Note that our goal is to save effort through automated support, not to replace human abstraction and decision making.
Seven (six) case studies were performed to compare class (sequence) diagrams generated by aToucan to the ones created by experts, Masters students, and trained, fourth-year undergraduate students. Results show that aToucan performs well regarding consistency (e.g., 88% class diagram consistency) and completeness (e.g., 80% class completeness) when comparing generated class diagrams with reference class diagrams created by experts and Masters students. Similarly, sequence diagrams automatically generated by aToucan are highly consistent with the ones devised by experts and are also rather complete, for instance, 91% and 97% message consistency and completeness, respectively. Further, statistical tests show that aToucan significantly outperforms fourth-year engineering students in this respect, thus demonstrating the value of automation. We also conducted two industrial case studies demonstrating the applicability of aToucan in two different industrial domains. Results showed that the vast majority of model elements generated by aToucan are correct and that therefore, in practice, such models would be good initial models to refine and augment so as to converge towards to correct and complete analysis models. A performance analysis shows that the execution time of aToucan (when generating class and sequence diagrams) is dependent on the number of simple sentences contained in the use case model and remains within a range of a few minutes. Five different software system descriptions (18 use cases altogether) were performed to evaluate the generation of activity diagrams. Results show that aToucan can generate 100% complete and correct control flow information of activity diagrams and on average 85% data flAow information completeness. Moreover, we show that aToucan outperforms three commercial tools in terms of activity diagram generation.

Supplementary Material

a13-yue-app.pdf (yue.zip)
Supplemental movie, appendix, image and software files for, aToucan: An Automated Framework to Derive UML Analysis Models from Use Case Models

References

[1]
R. J. Abbott. 1983. Program design by informal English descriptions Commun. ACM 26, 882--894
[2]
C. Achour, C. Rolland, C. Souveyet, and N. A. M. Maiden. 1999. Guiding use case authoring: Results of an empirical study. In Proceedings of the 4th IEEE International Symposium on Requirements Engineering (RE'99). 36--43.
[3]
E. Arisholm and D. I. K. Sjoberg. 2004. Evaluating the effect of a delegated versus centralized control style on the maintainability of object-oriented software. IEEE Trans. Software Eng. 30, 521--534.
[4]
K. Bittner and I. Spence. 2002. Use Case Modeling. Addison-Wesley.
[5]
L. C. Briand, Y. Labiche, and T. Yue. 2006. Automated traceability analysis for UML model refinements Inf Software Tech 51, 512--527.
[6]
K. Brown and J. Miller. 1992. Syntax: A Linguistic Introduction to Sentence Structure. 2nd Ed. Routledge.
[7]
B. Bruegge and A. H. Dutoit. 2009. Object-Oriented Software Engineering Using UML, Patterns, and Java. 3rd Ed. Prentice Hall.
[8]
CaseComplete The CaseComplete tool. http://www.casecomplete.com/.
[9]
A. Cockburn. 2001. Writing Effective Use Cases. Addison-Wesley.
[10]
D. K. Deeptimahanti and R. Sanyal. 2011. Semi-automatic generation of UML models from natural language requirements. In Proceedings of the 4th India Software Engineering Conference. ACM, 165--174.
[11]
A. C. Dias Neto, R. Subramanyan, M, Vieira, and G. H. Travassos. 2007. A survey on model-based testing approaches: A systematic review. In Proceedings of the 1st ACM International Workshop on Empirical Assessment of Software Engineering Languages and Technologies. ACM.
[12]
I. Diaz, F. Losavio, A. Matteo, and O. Pastor. 2004. A specification pattern for use cases. Inf. Management 41, 961--975.
[13]
T. A. Duran, B. Bernardez, C. Ruíz, and B. M. Toro. 1999. A requirements elicitation approach based in templates and patterns. In Proceedings of the Workshop de Engenharia de Requisitos.
[14]
M. B. Dwyer, L. A. Clarke, J. M. Cobleigh, and G. Naumovich, 2004. Flow analysis for verifying properties of concurrent software systems. ACM Trans. Softw. Engin. Methodol. 13, 359--430.
[15]
Eclipse Foundation Eclipse Compare. http://www.eclipse.org/emt/compare/.
[16]
Eclipse Foundation Eclipse modeling framework. http://www.eclipse.org/modeling/emf/.
[17]
A. Egyed, S. Biffl, M. Heindl, and P. Grunbacher. 2005. Determining the cost-quality trade-off for automated software traceability. In Proceedings of the 20th IEEE/ACM International Conference on Automated Software Engineering. ACM.
[18]
A. Fantechi, S. Gnesi, Lami Giuseppe, Maccari Alessandro. 2003. Applications of linguistic techniques for use case analysis. Requirements Engin. 8, 161--170.
[19]
C. J. Fillmore. 1968. The case for case. In Universals in Linguistic Theory. 3, 1--90.
[20]
M. H. Fortuna, C. M. L. Werner, and M. R. S. Borges. 2008. Info cases: Integrating use cases and domain models. In Proceedings of the 16th IEEE Conference on International Requirements Engineering (RE'08).
[21]
M. Fowler. Refactoring home page. http://www.refactoring.com/.
[22]
V. Gervasi and D. Zowghi. 2005. Reasoning about inconsistencies in natural language requirements ACM Trans. Softw. Engin. Methodol. 14, 277--330.
[23]
M. Glinz. 2000. Improving the quality of requirements with scenarios. In Proceedings of the 2nd World Congress on Software Quality. 55--60.
[24]
H. Gomaa. 2000. Designing Concurrent, Distributed, and Real-Time Applications with UML. Addison-Wesley.
[25]
S. Greenbaum. 1998. The Oxford English Grammar. Oxford Paperback Reference. Oxford University Press.
[26]
J. J. Gutiérrez, C. Nebut, M. J. Escalona, M. Mejías, and I. M. Ramos. 2008. Visualization of use cases through automatically generated activity diagrams. In Model Driven Engineering Languages and Systems Lecture Notes in Computer Science, vol. 5301, Springer, 83--96.
[27]
R. W. Holt, D. A. Boehm-Davis, and A. C. Shultz. 1987. Mental representations of programs for student and professional programmers. In Empirical Studies of Programmers: 2nd Workshop. Ablex Publishing Corp., 33--46.
[28]
M. Höst, B. Regnell, and C. Wohlin. 2000. Using students as subjects - comparative study of students and professionals in lead-time impact assessment Empirical Softw. Eng. 5, 201--214.
[29]
IBM Rational Software Architect. http://www.ibm.com/developerworks/downloads/r/architect/.
[30]
IBM Rational Unified Process. http://en.wikipedia.org/wiki/Rational_Unified_Process.
[31]
I. Jacobson, G. Booch, and J. Rumbaugh. 1999. The Unified Software Development Process. Addison-Wesley Professional.
[32]
H. Kaindl et al. 2007. ReDSeeDS Deliverable D2.4: Requirements Specification Language Definition.
[33]
A. Kalnins et al. 2007. ReDSeeDS Deliverable D3.3: Reusable Case Transformation Rule Specification.
[34]
Kermeta Kermeta metaprogramming environment. Triskell team. http://www.kermeta.org/.
[35]
A. van Lamsweerde. 2009. Requirements Engineering: from Systems Goals to UML Models to Software Specifications. Wiley.
[36]
C. Larman. 2004. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. 3rd Ed. Prentice-Hall.
[37]
C. Manning and H. Schutze. 1999. Foundations of Statistical Natural Language Processing. 1st Ed. MIT Press.
[38]
T. Nakatani, T. Urai, S. Ohmura, and T. Tetsuo. 2001. A requirements description metamodel for use cases. In Proceedings of the Asia-Pacific Conference on Software Engineering IEEE.
[39]
OMG MOF 2.0 Core Specification formal/2006-01-01, 2.0 ed.
[40]
OMG OMG Knowledge Discovery Meta-Model KDM formal/2009-01-02, 2.0 ed.
[41]
OMG UML 2.2 Superstructure Specification formal/2009-02-04.
[42]
Papyrus Papyrus UML modeler. http://www.eclipse.org/modeling/mdt/papyrus/.
[43]
RAVENFLOW. http://www.ravenflow.com/.
[44]
ReDSeeDS. http://www.redseeds.eu/.
[45]
D. Richards. 2003. Merging individual conceptual models of requirements Requirements Engin. 8, 4, 195--205.
[46]
C. Rolland, C. Souveyet, and C. B. Achour. 1998. Guiding goal modeling using scenarios. IEEE Trans. Softw. Eng. 24, 1055--1071.
[47]
P. Runeson, M. Host, A. Rainer, and B. Regnell. 2012. Case Study Research in Software Engineering: Guidelines and Examples, 1st Ed. Wiley.
[48]
J. Ryser, M. Glinz. 1999. A practical approach to validating and testing software systems using scenarios In Proceedings of the 3rd Quality Week Europe.
[49]
A. Sinha, A. Paradkar, P. Kumanan, and B. Boguraev. 2009. DA linguistic analysis engine for natural language use case description and its application to dependability analysis in industrial use cases. In Proceedings of the IEEE/IFIP International Conference on Dependable Systems & Networks (SN'09). IEEE, 327--336.
[50]
M. Smialek, J, Bojarski, W. Nowakowski, A. Ambroziewicz, and T. Straszak. 2007. Complementary use case scenario representations based on domain vocabularies. In Model Driven Engineering Languages and Systems. Springer.
[51]
M. Smialek, A. Kalnins, E. Kalnina, A. Ambroziewicz, T. Straszak, and K. Wolter. 2010. Comprehensive system for systematic case-driven software reuse. In Proceedings of the 36th Conference on Current Trends in Theory and Practice of Computer Science. Springer 697--708.
[52]
Stanford Parser version 1.6. http://nlp.stanford.edu/software/lex-parser.shtml.
[53]
D. Svetinovic, D. M. Berry, N. A. Day, and M. W. Godfrey. 2007. Unified use case statecharts: Case studies Requirements Engin. 12, 4, 245--264.
[54]
Visual paradiagm International. Visual Paradigm for UML. http://www.visual-paradigm.com/.
[55]
T. Yue. 2006. Towards Vertical Impact Analysis of UML Models. Carleton University.
[56]
T. Yue. 2014. aToucan evaluation models. https://sites.google.com/site/taoyue/atoucan-models. 2014.
[57]
T. Yue, S. Ali, and L. Briand. 2011a. Automated transition from use cases to UML state machines to support state-based testing. In Proceedings of the 7th European Conference on Modelling Foundations and Applications.
[58]
T. Yue, L. C. Briand, and Y. Labiche. 2009. A use case modeling approach to facilitate the transition towards analysis models: Concepts and empirical evaluation. In Proceedings of the ACM/IEEE 12th International Conference on Model Driven Engineering Languages and Systems. Springer, 484--498.
[59]
T. Yue, L. C. Briand, and Y. Labiche. 2011b. A systematic review of transformation approaches between user requirements and analysis models Requirements Engin. 16, 2, 75--99.
[60]
T. Yue, L. C. Briand, and Y. Labiche. 2011c. Facilitating the transition from use case models to analysis models: Approach and experiments ACM Trans. Softw. Engin. Methodol. 22.
[61]
T. Yue, L. C. Briand, and Y. Labiche. 2013. Automatically deriving a UML analysis model from a use case model. Tech. Rep., Simula Research Laboratory.
[62]
T. Yue, L. C. Briand, and Y. Labiche. 2010. An automated approach to transform use cases into activity diagrams. In Proceedings of the 6th European Conference on Modelling Foundations and Applications. Springer, 337--353.

Cited By

View all
  • (2025)A hybrid approach to extract conceptual diagram from software requirementsScience of Computer Programming10.1016/j.scico.2024.103186239(103186)Online publication date: Jan-2025
  • (2024)A scoping review of auto-generating transformation between software development artifactsFrontiers in Computer Science10.3389/fcomp.2023.13060645Online publication date: 8-Jan-2024
  • (2024)Model Generation with LLMs: From Requirements to UML Sequence Diagrams2024 IEEE 32nd International Requirements Engineering Conference Workshops (REW)10.1109/REW61692.2024.00044(291-300)Online publication date: 24-Jun-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Software Engineering and Methodology
ACM Transactions on Software Engineering and Methodology  Volume 24, Issue 3
May 2015
293 pages
ISSN:1049-331X
EISSN:1557-7392
DOI:10.1145/2776776
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 May 2015
Accepted: 01 February 2014
Revised: 01 January 2013
Received: 01 January 2012
Published in TOSEM Volume 24, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. UML
  2. Use case modeling
  3. activity diagram
  4. analysis model
  5. automation
  6. class diagram
  7. sequence diagram
  8. traceability
  9. transformation

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • National Research Fund, Luxembourg (FNR/P10/03)

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)101
  • Downloads (Last 6 weeks)12
Reflects downloads up to 22 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2025)A hybrid approach to extract conceptual diagram from software requirementsScience of Computer Programming10.1016/j.scico.2024.103186239(103186)Online publication date: Jan-2025
  • (2024)A scoping review of auto-generating transformation between software development artifactsFrontiers in Computer Science10.3389/fcomp.2023.13060645Online publication date: 8-Jan-2024
  • (2024)Model Generation with LLMs: From Requirements to UML Sequence Diagrams2024 IEEE 32nd International Requirements Engineering Conference Workshops (REW)10.1109/REW61692.2024.00044(291-300)Online publication date: 24-Jun-2024
  • (2024)Deriving Domain Models From User Stories: Human vs. Machines2024 IEEE 32nd International Requirements Engineering Conference (RE)10.1109/RE59067.2024.00014(31-42)Online publication date: 24-Jun-2024
  • (2024)Automatic generation of system model diagrams driven by multi-source heterogeneous dataJournal of Engineering Design10.1080/09544828.2024.236085335:11(1442-1486)Online publication date: 6-Jul-2024
  • (2024)Advances in automated support for requirements engineering: a systematic literature reviewRequirements Engineering10.1007/s00766-023-00411-029:2(177-207)Online publication date: 1-Jun-2024
  • (2024)Requirements Modeling and Automatic Transformations Towards Autonomous Driving Scenarios DescriptionIntelligent Systems and Applications10.1007/978-3-031-47718-8_53(826-846)Online publication date: 14-Feb-2024
  • (2023)RM2DM: A Tool for Automatic Generation of OO Design Models from Requirements ModelsProceedings of the 45th International Conference on Software Engineering: Companion Proceedings10.1109/ICSE-Companion58688.2023.00020(36-40)Online publication date: 14-May-2023
  • (2023)Automated Requirements Engineering in Agile Development: A Practitioners Survey2023 3rd International Conference on Electrical, Computer, Communications and Mechatronics Engineering (ICECCME)10.1109/ICECCME57830.2023.10253030(1-7)Online publication date: 19-Jul-2023
  • (2023)Generating multiple conceptual models from behavior-driven development scenariosData & Knowledge Engineering10.1016/j.datak.2023.102141145:COnline publication date: 5-Jun-2023
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media