ABSTRACT
The enrolment of software engineering students has increased rapidly in the past few years following industry demand. At the same time, model-driven engineering (MDE) continues to become relevant to more domains like embedded systems and machine learning. It is therefore important to teach students MDE skills in an effective manner to prepare them for future careers in academia and industry. The use of interactive online tools can help instructors deliver course material to more students in a more efficient manner, allowing them to offload repetitive or tedious tasks to these systems and focus on other teaching activities that cannot be easily automated. Interactive online tools can provide students with a more engaging learning experience than static resources like books or written exercises. Domain modeling with class diagrams is a fundamental modeling activity in MDE. While there exist multiple modeling tools that allow students to build a domain model, none of them offer an interactive learning experience. In this paper, we explore the interactions between a student modeler and an interactive domain modeling assistant with the aim of better understanding the required interaction. We illustrate desired interactions with three examples and then formalize them in a metamodel. Based on the metamodel, we explain how to form a corpus of learning material that supports the assistant interactions.
- Deniz Akdur, Vahid Garousi, and Onur Demirörs. 2018. A survey on modeling and model-driven engineering practices in the embedded software industry. Journal of Systems Architecture 91 (2018), 62 -- 82. Google ScholarCross Ref
- Weiyi Bian, Omar Alam, and Joerg Kienzle. 2019. Automated Grading of Class Diagrams. In 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C). 700--709. Google ScholarDigital Library
- Daria Bogdanova and Monique Snoeck. 2019. Use of Personalized Feedback Reports in a Blended Conceptual Modelling Course. In 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C). 672--679. Google ScholarCross Ref
- Jordi Cabot, Robert Clarisó, Marco Brambilla, and Sébastien Gérard. 2018. Cognifying Model-Driven Software Engineering. In Software Technologies: Applications and Foundations, Martina Seidl and Steffen Zschaler (Eds.). Springer International Publishing, Cham, 154--160.Google Scholar
- Mauricio Ronny de Almeida Souza et al. 2017. Gamification in Software Engineering Education: An Empirical Study. In 2017 IEEE 30th Conference on Software Engineering Education and Training (CSEE T). 276--284. Google ScholarCross Ref
- Google Developers. 2020. ML Kit Smart Reply. Retrieved July 23, 2020 from https://developers.google.com/ml-kit/language/smart-replyGoogle Scholar
- Akil Elkamel, Mariem Gzara, and Hanene Ben-Abdallah. 2016. An UML class recommender system for software design. In 2016 IEEE/ACS 13th International Conference of Computer Systems and Applications (AICCSA). 1--8. Google ScholarCross Ref
- Norman Gibbs and Gary Ford. 1986. The Challenges of Educating the Next Generation of Software Engineers. (06 1986), 12.Google Scholar
- Ashok K. Goel, Brian Creeden, Mithun Kumble, Shanu Salunke, Abhinaya Shetty, and Bryan Wiltgen. 2015. Using Watson for Enhancing Human-Computer Co-Creativity. In AAAI Fall Symposia.Google Scholar
- Object Management Group. 2017. OMG® Unified Modeling Language® (OMG UML®). Retrieved June 3, 2020 from https://www.omg.org/spec/UML/2.5.1/PDFGoogle Scholar
- Robert W. Hasker. 2011. UMLGrader: An Automated Class Diagram Grader. J. Comput. Sci. Coll. 27, 1 (Oct. 2011), 47--54.Google Scholar
- Gil Hoggarth and Mike Lockyer. 1998. An Automated Student Diagram Assessment System. SIGCSE Bull. 30, 3 (Aug. 1998), 122--124. Google ScholarDigital Library
- Jozef Hooman, Hillel Kugler, and Iulian Ober et al. 2008. Supporting UML-based development of embedded systems by formal techniques. Software and Systems Modeling 7, 2 (May 2008), 131--155. Google ScholarCross Ref
- Galina Ivanova, Vasil Kozov, and Pavel Zlatarov. 2019. Gamification in Software Engineering Education. In 2019 42nd International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). 1445--1450. Google ScholarCross Ref
- Stephan Krusche and Nadine von Frankenberg et al. 2020. An Interactive Learning Method to Engage Students in Modeling. In Software Engineering Education and Training (ICSE-SEET'20) (Seoul, Republic of Korea) (ICSE '20). ACM, New York, USA, 12--22. Google ScholarDigital Library
- Timothy Lethbridge. 2014. Umple: An open-source tool for easy-to-use modeling, analysis, and code generation. CEUR Workshop Proceedings 1255 (01 2014), 30--34.Google Scholar
- Timothy Lethbridge. 2020. UmpleOnline: Generate Java, C++, PHP, Alloy, NuSMV or Ruby code from Umple. Retrieved August 17, 2020 from http://try.umple.org/Google Scholar
- Timothy Lethbridge and Robert Laganière. 2005. Object-Oriented Software Engineering: Practical Software Development using UML and Java (2nd ed.). McGraw-Hill Education, 1221 Avenue of the Americas, New York, NY 10020.Google Scholar
- Daniel Lucredio, Renata Fortes, and Jon Whittle. 2012. MOOGLE: A metamodel-based model search engine. Software and Systems Modeling 11 (05 2012), 183--208. Google ScholarCross Ref
- Elena Manishina, Bassam Jabaian, Stéphane Huet, and Fabrice Lefèvre. 2016. Automatic Corpus Extension for Data-Driven Natural Language Generation. In 10th International Conference on Language Resources and Evaluation (LREC). Portorož, Slovenia, 3624--3631. https://hal.archives-ouvertes.fr/hal-02021894Google Scholar
- Gunter Mussbacher, Daniel Amyot, and Ruth Breu et al. 2014. The Relevance of Model-Driven Engineering Thirty Years from Now. In Model-Driven Engineering Languages and Systems. Springer, Cham, 183--200. Google ScholarCross Ref
- Anton Nijholt, Andreea I. Niculescu, Valitutti Alessandro, and Rafael E. Banchs. 2017. Humor in Human-Computer Interaction: A Short Survey. (10 2017).Google Scholar
- Terence John Parr. 2004. Enforcing Strict Model-View Separation in Template Engines. In Proceedings of the 13th International Conference on World Wide Web (New York, NY, USA) (WWW '04). Association for Computing Machinery, New York, NY, USA, 224--233. Google ScholarDigital Library
- Sara Pérez-Soler, Esther Guerra, and Juan de Lara. 2018. Collaborative Modeling and Group Decision Making Using Chatbots in Social Networks. IEEE Software 35, 6 (November 2018), 48--54. Google ScholarCross Ref
- Sara Pérez-Soler, Esther Guerra, Juan de Lara, and Francisco Jurado. 2017. The rise of the (modelling) bots: Towards assisted modelling via social networks. (Oct 2017), 723--728. Google ScholarCross Ref
- Maxime Savary-Leblanc. 2019. Improving MBSE Tools UX with AI-Empowered Software Assistants. In 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C). 648--652. Google ScholarDigital Library
- Josep Soler, Imma Boada, Ferran Prados, Jordi Poch, and Ramon Fabregat. 2010. A web-based e-learning tool for UML class diagrams. In IEEE EDUCON 2010 Conference. 973--979. Google ScholarCross Ref
- Antoine Toulmé. 2006. Presentation of EMF compare utility. Eclipse Modeling Symposium (01 2006).Google Scholar
- McGill University. 2018. Enrolment Report Fall 2018: Total (FT and PT) Enrolments by Faculty, by Degree and by Gender. Retrieved June 3, 2018 from https://www.mcgill.ca/es/files/es/fall_2018_-_total_ft_and_pt_enrolments_by_faculty_by_degree_and_by_gender.pdfGoogle Scholar
Index Terms
- Towards a better understanding of interactions with a domain modeling assistant
Recommendations
UML - a universal modeling language?
ICATPN'00: Proceedings of the 21st international conference on Application and theory of petri netsThe Unified Modeling Language (UML) is the de facto industrial standard of an object-oriented modeling language. It consists of several sublanguages which are suited to model structural and behavioral aspects of a software system. The UML was developed ...
Formalization of UML diagrams and their consistency verification: A Z notation based approach
ISEC '08: Proceedings of the 1st India software engineering conferenceIn this paper, we have suggested a methodology for formalizing some of the commonly used UML diagrams that are used in different phases of software development in Z notation, establish their relationship and then represent the "formalized" diagrams ...
Assessing the use of slicing-based visualizing techniques on the understanding of large metamodels
ContextMetamodels are cornerstones of various metamodeling activities. Such activities consist of, for instance, transforming models into code or comparing metamodels. These activities thus require a good understanding of a metamodel and/or its parts. ...
Comments