The International Arab Journal of Information Technology (IAJIT)

..............................
..............................
..............................


Generating Sequence Diagrams from Arabic User Requirements using MADA+TOKAN Tool

A new semi-automated approach for generating sequence diagrams from Arabic user requirements is presented. In this novel approach, the Arabic user requirements are parsed using a natural language processing tool called MADA+TOKAN to generate the Part Of Speech (POS) tags of the parsed user requirements, then a set of heuristics are applied on the resulted tags to obtain the sequence diagram components; objects, messages and work flow transitions (messages). The generated sequence diagram is expressed using Extensible Markup Language (XMI) to be drawn using sequence diagrams drawing tools. Our approach achieves better results than students in generating sequence diagrams. It also has better accuracy in generating the participants and less accuracy in generating messages exchanged between participants. The proposed approach is validated using a set of experiments involving a set of real cases evaluated by a group of software engineers and a group of graduate students who are familiar with sequence diagrams.


[1] Alami N., Arman N., and Khamayseh F., “A Semi-automated Approach for Generating Sequence Diagrams from Arabic User Requirements Using a Natural Language Processing Tool,” in Proceedings of International Conference on Information Technology, Amman, 2017.

[2] Arman N. and Jabbarin S., “Generating Use Case Models from Arabic User Requirements in a Semiautomated Approach Using a Natural Language Processing Tool,” Journal of Intelligent Systems, vol. 24, no. 2, pp. 277-286, 2015.

[3] Díaz I., Moreno L., Fuentes I., and Pastor O., in Proceedings of the International Conference on Intelligent Text Processing and Computational Linguistics, Mexico City, pp. 560-571, 2005.

[4] Elallaoui M., Nafil K., and Touahni R., “Automatic Generation of UML Sequence Diagrams from User Stories in Scrum Process,” in Proceedings of International Conference on Intelligent Systems: Theories and Applications, Rabat, pp. 1-6, 2015.

[5] Gegentana X., “A Systematic Review of Automated Software Engineering,” Master of Science Thesis in Program Software Engineering and Management, University of Gothenburg, 2011.

[6] Harmon P. and Watson M., Understanding UML- The Developers Guide, Morgan Kaufmann Publishers, 2005.

[7] Habash N., Rambow O., and Roth R., “MADA+TOKAN: A Toolkit for Arabic Tokenization, Diacritization, Morphological Disam-biguation, POS Tagging, Stemming and Lemmatization,” in Proceedings of the 5th International Conference on Language Resources and Evaluation, Genoa, pp. 102-109, 2006.

[8] Ilieva M. and Ormandjieva O., “Models Derived from Automatically Analyzed Textual User Requirements,” in Proceedings of the 4th International Conference on Software Engineering Research, Management and Applications, Seattle, pp. 13-21, 2006.

[9] Jabbarin S. and Arman N., “Constructing Use Case Models from Arabic User Requirements in A Semi-Automated Approach,” in Proceedings of the World Congress on Computer Applications and Information Systems, Hammamet, pp. 1-4, 2014.

[10] Li L., “Translating use Cases to Sequence Diagrams Automated Software Engineering,” in Proceedings of the 50th IEEE International Conference on, Grenoble, pp. 293-296, 2000.

[11] Mason P. and Supsrisupachai S., “Paraphrasing use Case Descriptions and Sequence Diagrams: An Approach with Tool Support,” in Proceedings of the 6th International Conference on Electrical Engineering/Electronics, Computer, Telecommunications and Information Technology, Pattaya, pp. 722-725, 2009.

[12] Nassar I. and Khamayseh F., “Constructing Activity Diagrams from Arabic User Requirements using Natural Language Processing Tool,” in Proceedings of the Conference on Information and Communication Systems, Amman, pp. 50-54, 2015.

[13] Nassar I. and Khamayseh F., “A Semi- Automated Generation of Activity Diagrams from Arabic User Requirements,” NNGT International Journal on Software Engineering, vol. 2, pp. 1-5, 2015.

[14] Nuseibeh B. and Easterbrook S., “Requirements Engineering: A Roadmap,” in Proceedings of the Conference on The Future of Software Engineering, Limerick, pp. 35-46, 2000.

[15] Popescu D., Rugaber S., Medvidovic N., and Daniel M., “Reducing Ambiguities in Requirements Specifications via Automatically Created Object-Oriented Models Innovations for Requirement Analysis From Stakeholders Needs to Formal Designs,” in Proceedings of the Monterey Workshop, Monterey, pp. 103-124, 2008.

[16] Pressman R., IEEE Recommended Practice for Software Requirements Specifications, IEEE Computer Society, 1998.

[17] Samarasinghe N. and Stephane S., “Generating a Domain Model from a Use Case Model,” in Proceedings of the ISCA 14th International Conference on Intelligent and Adaptive Systems and Software Engineering, Natural Sciences and Engineering Research Council of Canada, Toronto, pp. 23-29, 2005. 72 The International Arab Journal of Information Technology, Vol. 17, No. 1, January 2020

[18] Sharma R., Gulia S., and Biswas K., “Automated Generation of Activity and Sequence Diagrams From Natural Language Requirements,” in Proceedings of the 9th International Conference on Evaluation of Novel Approaches to Software Engineering, Lisbon, pp. 1-9, 2014.

[19] Shatnawi A. and Shatnaw R., “Generating a Language-Independent Graphical User Interfaces from UML Models,” The International Arab Journal of Information Technology, vol. 13, no. 6, pp. 291-295, 2016.

[20] Souza F. and Giorno F., “Automatic Generation of Sequence Diagrams and Updating Domain Model from Use Cases,” in Proceedings of The 1st International Conference on Advances and Trends in Software Engineering, Barcelona, pp. 85-92, 2015.

[21] Thakur J. and Gupta A., “Automatic generation of Sequence Diagram from Use Case Specification,” in Proceedings of the 7th India Software Engineering Conference, Chennai, pp. 20, 2014.

[22] Yue T., Briand L., and Labiche Y., “Automatically Deriving UML Sequence Diagrams from Use Cases,” Technical Report 2010-04, Carleton University, 2010. Nermeen Alami received her BS in Information Technology and MS in Informatics from Palestine Polytechnic University in 2016. She worked as a teaching assistant at department of Computer Science and IT, Palestine Polytechnic University. Nabil Arman is a Computer Science professor at Palestine Polytechnic University. He received his BS in Computer Science with high honours from Yarmouk University, Jordan in 1990 and an MS in Computer Science from The American University of Washington, DC USA in 1997, and his PhD from George Mason University, Virginia, USA in 2000. Dr. Arman is interested in Database and Knowledge-Base Systems, Algorithms, and Automated Software Engineering. Faisal Khamayseh is a Computer Science associate professor at Palestine Polytechnic University. He received his BS and MS in Computer Science from Southern Illinois University, USA 1995 and his PhD in Computers and Information Systems from the College of Computers and Information, Helwan University, Egypt, in 2009. He is a faculty member at the Department of Computer Science and IT. He is interested in Computer Algorithms and Software Engineering.