ABSTRACT
This paper presents AnModeler, a tool for generating analysis models from software requirements specified using use cases. The tool uses the Stanford natural language parser to extract type dependencies (TDs) and parts of speech tags (POS-tags) of sentences from input Use Case Specification (UCS). Then, it identifies sentence structures using a set of rules framed based on Hornby's verb patterns. With the information of the TDs, POS tags, and the identified sentence structures, the tool discovers domain elements, viz.: domain objects (including their attributes and operations) and interactions between them; it consolidates the domain information as a class diagram (as well as a sequence diagram). An experiment conducted on 10 UCSs with two industry experts as subjects showed that the analysis class diagrams generated by AnModeler were remarkably close to those generated by the two industry experts. Being lightweight and easy to use, the tool can also be used to assist students and young developers in acquiring object-oriented domain modeling skills quickly.
- V. Ambriola and V. Gervasi. Processing natural language requirements. In Automated Software Engineering, 1997. Proceedings., 12th IEEE International Conference, pages 36–45. IEEE, 1997. Google ScholarDigital Library
- T. Arendt and G. Taentzer. UML model smells and model refactorings in early software development phases. Universitat Marburg, 2010.Google Scholar
- G. Booch, R. A. Maksimchuk, M. W. Engle, B. Young, J. Conallen, and K. Houston. Object Oriented Analysis & Design with Application 3rd Edition. Pearson Education India, 2010. Google ScholarDigital Library
- B. Bruegge and A. A. Dutoit. Object-oriented software engineering; conquering complex and changing systems. Prentice Hall PTR, 1999. Google ScholarDigital Library
- D. K. Deeptimahanti and R. Sanyal. Semi-automatic generation of UML models from natural language requirements. In Proceedings of the 4th India Software Engineering Conference, pages 165–174. ACM, 2011. Google ScholarDigital Library
- H. Gomaa. Software modeling and design: UML, use cases, patterns, and software architectures. Cambridge University Press, 2011. Google ScholarDigital Library
- H. Harmain and R. Gaizauskas. Cm-builder: A natural language-based case tool for object-oriented analysis. Automated Software Engineering, 10(2):157–181, 2003. Google ScholarDigital Library
- A. G. Kleppe, J. B. Warmer, and W. Bast. MDA explained: the model driven architecture: practice and promise. Addison-Wesley Professional, 2003. Google ScholarDigital Library
- O. I. Lindland, G. Sindre, and A. Solvberg. Understanding quality in conceptual modeling. Software, IEEE, 11(2):42–49, 1994. Google ScholarDigital Library
- D. Liu, K. Subramaniam, A. Eberlein, and B. H. Far. Natural language requirements analysis and class model generation using ucda. In Innovations in Applied Artificial Intelligence, pages 295–304. Springer, 2004. Google ScholarDigital Library
- P. Mohagheghi, V. Dehlen, and T. Neple. Definitions and approaches to model quality in model-based software development–a review of literature. Information and Software Technology, 51(12):1646–1669, 2009. Google ScholarDigital Library
- M. O’Docherty. Object-Oriented Analysis and Design Understanding System Development with UML 2.0. John Wiley & Sons Ltd, 2005. Google ScholarDigital Library
- S. P. Overmyer, B. Lavoie, and O. Rambow. Conceptual modeling through linguistic analysis using LIDA. In Proceedings of the 23rd international conference on Software engineering, pages 401–410. IEEE Computer Society, 2001. Google ScholarDigital Library
- D. Popescu, S. Rugaber, N. Medvidovic, and D. M. Berry. Reducing ambiguities in requirements specifications via automatically created object-oriented models. In Innovations for Requirement Analysis. From Stakeholders’ Needs to Formal Designs, pages 103–124. Springer, 2008. Google ScholarDigital Library
- P. Roberts. Patterns of English. Harcourt, Brace, 1956.Google Scholar
- D. Rosenberg and M. Stephens. Use case driven object modeling with UML. APress, Berkeley, USA, 2007. Google ScholarDigital Library
- D. Rosenberg and M. Stephens. Use Case Driven Object Modeling with UML: Theory and Practice. Springer Science & Business, 2008. Google ScholarDigital Library
- N. Samarasinghe and S. S. Somé. Generating a domain model from a use case model. In IASSE, page 278, 2005.Google Scholar
- J. S. Thakur and A. Gupta. Automatic generation of sequence diagram from use case specification. In Proceedings of the 7th India Software Engineering Conference, page 20. ACM, 2014. Google ScholarDigital Library
- J. S. Thakur and A. Gupta. Automatic generation of analysis class diagrams from textual specifications. Technical report, Software Engineering Research Group, IIITDM Jabalpur, India, February 2016.Google Scholar
- J. S. Thakur and A. Gupta. Identifying domain elements from textual specifications. In Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering. IEEE/ACM, 2016. Google ScholarDigital Library
- T. Yue, L. Briand, and Y. Labiche. Automatically deriving a UML analysis model from a use case model. Technical Report 2010-15 (Version 2), Simula Research Laboratory, January 2013.Google Scholar
- T. Yue, L. C. Briand, and Y. Labiche. atoucan: An automated framework to derive UML analysis models from use case models. ACM Transactions on Software Engineering and Methodology (TOSEM), 24(3):13, 2015. Google ScholarDigital Library
Index Terms
- AnModeler: a tool for generating domain models from textual specifications
Recommendations
Identifying domain elements from textual specifications
ASE '16: Proceedings of the 31st IEEE/ACM International Conference on Automated Software EngineeringAnalysis modeling refers to the task of identifying domain objects, their attributes and operations, and the relationships between these objects from software requirements specifications which are usually written in some natural language. There have ...
A new tool for URDAD to Java EE EJB transformations
SAICSIT '13: Proceedings of the South African Institute for Computer Scientists and Information Technologists ConferenceFollowing the Object Management Group's (OMG) Model-Driven Architecture (MDA) approach, the semi-formal, service-orientated "Use Case, Responsibility Driven Analysis and Design" (URDAD) method is used by requirements engineers to specify a software ...
Mapping visual notations to MOF compliant models with QVT relations
SAC '07: Proceedings of the 2007 ACM symposium on Applied computingModel-centric methodologies rely on the definition of domain-specific modeling languages for being able to create domain-specific models. With MOF the OMG adopted a standard which provides the essential constructs for the definition of semantic language ...
Comments