ABSTRACT
Analysis 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 been a few efforts to automate this task, but they seem to be largely constrained by the language related issues as well as the lack of a systematic transformation process. In this paper, we propose a systematic, automated transformation approach which first interprets the specification sentences based on the Hornby's verb patterns, and then uses semantic relationships between the words in the sentences, obtained from Type Dependencies using Stanford NL Parser, to identify the domain elements from them. With the help of a controlled experiment, we show that the analysis class diagrams generated by the proposed approach are far more correct, far more complete and less redundant than those generated by the exiting automated approaches.
- T. Arendt and G. Taentzer. UML model smells and model refactorings in early software development phases. Universitat Marburg, 2010.Google Scholar
- E. Arisholm, L. C. Briand, S. E. Hove, and Y. Labiche. The impact of UML documentation on software maintenance: An experimental evaluation. Software Engineering, IEEE Transactions on, 32(6):365–381, 2006. Google ScholarDigital Library
- E. Arisholm and D. I. Sjoberg. Evaluating the effect of a delegated versus centralized control style on the maintainability of object-oriented software. Software Engineering, IEEE Transactions on, 30(8):521–534, 2004. Google ScholarDigital Library
- 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. M. Cer, M.-C. De Marneffe, D. Jurafsky, and C. D. Manning. Parsing to stanford dependencies: Trade-offs between speed and accuracy. In LREC, 2010.Google Scholar
- K. Cox. Heuristics for use case descriptions. PhD thesis, Bournemouth University, 2002.Google Scholar
- M.-C. De Marneffe and C. D. Manning. The stanford typed dependencies representation. In Coling 2008: Proceedings of the workshop on Cross-Framework and Cross-Domain Parser Evaluation, pages 1–8. Association for Computational Linguistics, 2008. 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
- J. Eastwood. Oxford guide to English grammar. Oxford University Press, 1994.Google Scholar
- F. Fabbrini, M. Fusani, S. Gnesi, and G. Lami. The linguistic approach to the natural language requirements quality: benefit of the use of an automatic tool. In Software Engineering Workshop, 2001. Proceedings. 26th Annual NASA Goddard, pages 97–105. IEEE, 2001. 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
- R. W. Holt, D. A. Boehm-Davis, and A. C. Shultz. Mental representations of programs for student and professional programmers. In Empirical studies of programmers: Second workshop, pages 33–46. Ablex Publishing Corp., 1987. Google ScholarDigital Library
- A. S. Hornby, A. P. Cowie, and J. W. Lewis. Oxford advanced learner’s dictionary of current English, volume 4. Oxford University Press, 1974.Google Scholar
- M. Host, B. Regnell, and C. Wohlin. Using students as subjects - a comparative study of students and professionals in lead-time impact assessment. Empirical Software Engineering, 5(3):201–214, 2000. Google ScholarDigital Library
- M. Ilieva and O. Ormandjieva. Models derived from automatically analyzed textual user requirements. In Software Engineering Research, Management and Applications, 2006. Fourth International Conference on, pages 13–21. IEEE, 2006. Google ScholarDigital Library
- I. Jacobson. Object-oriented software engineering: a use case driven approach. Pearson Education India, 1992. Google Scholar
- E. Kamsties and B. Peach. Taming ambiguity in natural language requirements. In Proceedings of the Thirteenth International Conference on Software and Systems Engineering and Applications, 2000.Google Scholar
- H. Lee, Y. Peirsman, A. Chang, N. Chambers, M. Surdeanu, and D. Jurafsky. Stanford’s multi-pass sieve coreference resolution system at the conll-2011 shared task. In Proceedings of the Fifteenth Conference on Computational Natural Language Learning: Shared Task, pages 28–34. Association for Computational Linguistics, 2011. 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
- C. D. Manning. Part-of-speech tagging from 97% to 100%: is it time for some linguistics? In Computational Linguistics and Intelligent Text Processing, pages 171– 189. Springer, 2011. Google ScholarDigital Library
- D. McClosky, E. Charniak, and M. Johnson. Effective self-training for parsing. In Proceedings of the main conference on human language technology conference of the North American Chapter of the Association of Computational Linguistics, pages 152–159. Association for Computational Linguistics, 2006. Google ScholarDigital Library
- J. Misra and S. Das. Entity disambiguation in natural language text requirements. In Software Engineering Conference (APSEC, 2013 20th Asia-Pacific, volume 1, pages 239–246. IEEE, 2013. 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
- B. Nuseibeh, S. Easterbrook, and A. Russo. Making inconsistency respectable in software development. Journal of Systems and Software, 58(2):171–180, 2001.Google ScholarCross Ref
- 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
- A. Porter and L. Votta. Comparing detection methods for software requirements inspections: A replication using professional subjects. Empirical software engineering, 3(4):355–379, 1998. 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
- D. I. Sjøberg, J. E. Hannay, O. Hansen, V. B. Kampenes, A. Karahasanovic, N.-K. Liborg, and A. C. Rekdal. A survey of controlled experiments in software engineering. Software Engineering, IEEE Transactions on, 31(9):733–753, 2005. Google ScholarDigital Library
- J. S. Thakur and A. Gupta. Anmodeler - a tool for generating domain models from textual specifications. In Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering. IEEE/ACM, 2016. 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
- S. Wehmeier and A. S. Hornby. Oxford advanced learner’s dictionary of current English. Cornelsen & Oxford, 2000.Google Scholar
- K. Wiegers and J. Beatty. Software requirements. Pearson Education, 2013. Google ScholarDigital Library
- C. Wohlin, M. Höst, and K. Henningsson. Empirical research methods in software engineering. In Empirical Methods and Studies in Software Engineering, pages 7– 23. Springer, 2003.Google Scholar
- C. Wohlin, P. Runeson, M. Hst, M. C. Ohlsson, B. Regnell, and A. Wessln. Experimentation in software engineering. Springer Publishing Company, Incorporated, 2012. Google ScholarCross Ref
- H. Yang, A. De Roeck, V. Gervasi, A. Willis, and B. Nuseibeh. Extending nocuous ambiguity analysis for anaphora in natural language requirements. In Requirements Engineering Conference (RE), 2010 18th IEEE International, pages 25–34. IEEE, 2010. 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. Facilitating the transition from use case models to analysis models: Approach and experiments. ACM Transactions on Software Engineering and Methodology (TOSEM), 22(1):5, 2013. Google ScholarDigital Library
- 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
- Identifying domain elements from textual specifications
Recommendations
AnModeler: a tool for generating domain models from textual specifications
ASE '16: Proceedings of the 31st IEEE/ACM International Conference on Automated Software EngineeringThis 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 ...
Automatic generation of sequence diagram from use case specification
ISEC '14: Proceedings of the 7th India Software Engineering ConferenceIn this paper we propose a tool supported automated approach for the generation of sequence diagrams from use case specifications written in some natural language. The approach uses natural language parser to identify problem level objects and ...
Morphosyntactic Parser and Textual Corpora: Processing Uncommon Phenomena of Tibetan Language
IMS2017: Proceedings of the International Conference IMS-2017This article analyzes the problems of parsing texts with linguistic phenomena of controversial nature which may rarely be encountered in NLP projects focusing on Indo-European languages, but are quite frequent in other languages, e.g. in the corpus of ...
Comments