=Paper= {{Paper |id=Vol-1735/paper1 |storemode=property |title=Gamification of Software Modelling Learning |pdfUrl=https://ceur-ws.org/Vol-1735/paper1.pdf |volume=Vol-1735 |dblpUrl=https://dblp.org/rec/conf/models/Yohannis16 }} ==Gamification of Software Modelling Learning== https://ceur-ws.org/Vol-1735/paper1.pdf
    Gamification of Software Modelling Learning

                                   Alfa Yohannis

    Department of Computer Science, University of York, York, United Kingdom
                              ary506@york.ac.uk



      Abstract. Software modelling has a fundamental role in software engi-
      neering. However, it is perceived as relatively challenging for learners to
      develop the necessary abstraction skills to master the subject. On the
      other side, gamification is now flourishing as a popular strategy to en-
      gage learners. This research attempts to exploit gameful design as an
      innovative approach, used to create games that reinforce learners’ mas-
      tery of software modelling by developing their abstraction skills. Our
      approach to gameful design brings together gamification development
      concepts such as the Lens of Intrinsic Skill Atoms, and pedagogical de-
      sign principles from several learning theories and models. The research
      follows the Design Science Research Methodology and exploits Model-
      Driven Engineering best practices. The target outputs of this research
      are a modelling game design and generation framework, and a number
      of games produced using it. The effectiveness of the framework and its
      games will be evaluated using controlled experiments.

      Keywords: software modelling, gamification, learning, abstraction


1   Introduction
Software modelling is commonly perceived as a demanding subject since it re-
quires a mastery of abstraction [1]. However, this subject has a fundamental and
crucial role in software engineering education and practice. Failure to master
this topic will affect the students abstraction capability which is essential for
analysing and designing real-world software. Weak software modelling skills will
likely cause software engineering students to face further with their degrees, as
most of the software engineering related subjects involve of intrinsic abstraction
problems [2].
    The problems of learning appropriate abstraction skills for software mod-
elling is similar to problems in mathematics, where most of the concepts can
only be accessed through symbolical representations [3]. Abstraction also re-
quires students to grasp information hiding, generalisation, approximation or
reformulation, and separating relevant from irrelevant aspects [4]. To overcome
these challenges, we need to put more effort into software modelling learning de-
sign, developing a more concrete and motivating presentation which can engage
students and facilitate deep learning.
    In recent years, the use of games or game elements for purposes other than
leisure has drawn significant attention. Gamification [5] and Serious Games [6]
2       Gamification of Software Modelling Learning

have been proposed as solutions to motivational problems that emerge when
users are required to engage in activities that they perceived as boring, irrelevant,
or difficult, e.g. Learning sorting algorithms [7] or C-programming [8].
    The purpose of this research is to investigate and develop a software mod-
elling game design framework that systematically and semi-automatically drives
gamification design to produce better-designed software modelling games. More
precisely, this research aims to answer the following research questions:
 1. Which processes, aspects, principles, or components of software modelling
    and their teaching and learning practices would benefit from gamification?
 2. What types of game elements and in what roles can deliver software mod-
    elling learning best?
 3. What kind of orchestrating framework is needed to design the interaction
    between software modelling and game elements to achieve software modelling
    gamification?
 4. To what extent does gamification of software modelling improve learners’
    motivation, engagement, and performance?
 5. To what extent do software modelling tutors benefit from the software mod-
    elling game design framework?
   Due to space restrictions, this paper does not cover some aspects of this re-
search, such as the architecture of the software modelling game design framework
and the validation methods applied to evaluate models created by learners.


2   Related Works
Several approaches attempt to bring software modelling into a more concrete
presentation that can be easily understood by learners, ranging from didac-
tic learning [9], modelling tools utilization [10], learning modelling language
through alternative communication channels [11], immersive visual modelling
through virtual environments [12], project-based learning [13], to learning mod-
elling from code generation investigation [14]. However, most of the approaches
have weaknesses in motivating learners to engage continuously, frequently, and
actively to learn software modelling, which are the important aspects impacting
greatly on learning [15].
    To address the lack of engagement, we investigate gamification of learning, an
approach that provides students with a new way of learning software modelling
that is more fun and engaging. Gamification design is still an ongoing challenge
[16], and, to date, there is no software modelling game design framework that
particularly structures the design of software modelling games.
    There is very little work on software modelling gamification. Most of the
software-related gamification studies available are related to software engineer-
ing in a larger context or to other aspects of software engineering, such as soft-
ware implementation and project management [17]. After extensive literature
exploration, only four works have been identified on applying gamification for
software modelling. None of these works addresses software modelling learning
                                Gamification of Software Modelling Learning         3

in general. Instead, they address specific topics such as activity diagramming
[18], coupling and cohesion [19], and enterprise architectures [20], [21]. Most of
the works also cover pedagogical aspect superficially or not at all and validation
is restricted to a very limited number of users [18], [19], [20].


3    Research Methods

Since the output of this work is a design artefact—a software modelling game
design framework that enables software modelling tutors to design and develop
games for software modelling learning, we decided to utilise the Design Science
Research Methodology (DSRM) [22] as our umbrella methodology. DSRM is
selected because it provides a comprehensive high-level conceptual framework
for all the stages of the research process. It also provides six activity guidelines
for understanding, developing, executing, and evaluating design artefacts. The
six activities are (1) problem identification and motivation, (2) definition of
objectives for a solution, (3) setting of targets for a solution, (4) design and
development, (5) demonstration and evaluation, and (6) communication.
    The high-level characteristics of DSRM mean that we can employ other re-
search methods as sub-methods in each activity. For examples, we employ inter-
views, literature reviews, and discussion with experts as our methods in problem
identification and motivation activity, as well as using the Lens of Intrinsic Skill
Atoms [23] to produce a gameful design in the design and development activity.


4    Game Design

Gamification has been successfully for a variety of purposes, but there is very
little work on software modelling gamification. We wish to assess whether gam-
ification is beneficial for learners of graphical software modelling languages. For
each modelling language, we envision the development of a dedicated game con-
taining game elements that will be derived from the Lens of Intrinsic Skill Atoms
[23]. The generated game will mimic a graphical modelling tool and at each level,
it will require the learner to graphically construct or adapt a model to satisfy a
set of requirements and constraints.
     The game will have levels with gradually increasing difficulty as well as variety
in its challenges, to expose learners to different kinds of domains, models, and
diagrams. Tutorials are planned to be embedded into the game to help learners
familiarise themselves with the control system and the flow of the game.
     The game will include interim goals and intrinsic rewards to motivate learn-
ers. For software modelling, each type of modelling (e.g. object modelling, collab-
oration, process) will have several stories. A story will represent a specific case
study to introduce learners to problems in specific domains. Every story will
consist of several levels, and every level will have one or more objectives that a
learner needs to accomplish to complete it. A level may also be a continuation of
a previous level, giving the learner a sense of step-by-step progress to complete
4       Gamification of Software Modelling Learning

the domain problems. Each story and level will introduce new concepts and link
them with previously introduced concepts.
    A real-world problem can be very complex and time-consuming to model.
Thus, the extraneous activities that are not relevant to the core concepts that
are being taught should be removed. As a result, learners will be more focused
on the main concepts. Thus, game elements like bite-sized actions (e.g. drag and
drop), limited choices (i.e. only limited items can be dragged), and microflows
(i.e. put the right element to its right place) will be implemented to facilitate
learners in performing the core activities. Likewise, fuzziness will also be used to
provoke learners’ creativity since most of the time there is no single correct model
for the problem at hand. Attractive design will also be significant to motivate
learners to interact with the game. Games should be able to give immediate,
glanceable, and actionable feedback to keep learners on track and monitor their
progress. Interesting and varied feedback should be designed to appeal to the
learners’ motives.
    To reduce bias, we plan to experiment with several modelling languages (e.g.
BPMN, state-charts, GSN, UML). We also plan to implement these games using
web technologies so that they are easily accessible to a wide audience.


5   Modelling Game Design Framework

Instead of developing the software modelling games manually, we plan to follow
a model-based approach. We will use metamodel annotations, in the spirit of Eu-
genia [24], to define the graphical syntaxes of modelling languages and separate
models to specify the game elements (levels, objectives, constraints, etc.) of each
game. These models will be then consumed by a model-to-text transformation to
produce fully-functional language-specific games. Therefore, the framework sup-
ports software modelling tutors in the design and customisation of the games at
the high level of abstraction and so as to automatically build the game. So far
we have implemented a metamodel for specifying game elements (flows, levels,
challenges, and objectives) and a supporting Eclipse-based graphical editor (Fig.
1), and a prototype game (Fig. 2) for object diagrams.


6   Evaluation

We wish to evaluate (1) the effectiveness of the modelling games discussed above
and (2) the productivity and maintainability benefits of the modelling game
design framework. For the effectiveness evaluation, controlled experiments will
be used. The participants, software modelling students, will be divided into two
groups, a control group and an experimental group. The control group will learn
software modelling using traditional methods while the experimental group will
learn with support from the games. Then, their performance of the two groups
will be measured by their ability to solve a set of related modelling problems.
                              Gamification of Software Modelling Learning      5




             Fig. 1. Graphical editor for the game specification DSL.




                    Fig. 2. The display of the generated game.


    For the evaluation of the modelling game design framework, the participants
will be software modelling tutors; they will be devided into two groups, one that
will develop games with the framework and one without the frameworks (i.e.
using existing web technologies). They will be asked to elaborate their games
6       Gamification of Software Modelling Learning

into their teaching instructions and use them in their teaching. The comparison
will be on their productivity and the maintainability of their games. To evaluate
the generality of the results of both evaluation processes, conducting experiments
in different years and countries is also considered.
    Additionally, surveying with questionnaires or interviews might be conducted
to investigate the underlying variables or processes. Structural equation mod-
elling [25] is also an option if measuring the effects of the identified underlying
variables is required. An alternative method for understanding of the underlying
variables and processes is through investigating the games’ event logs using data
mining or machine learning techniques.


7   Conclusion
This paper explains our research motivation and problem statements, proposed
solution and objectives, research methods, the current progress of the game
and framework, and the evaluation plan. So far, this research has been focused
on software modelling learning. In the future, there is a plan also to address
metamodelling and model transformation learning.

Acknowledgments. Thanks to York Masters, who participated in our prelimi-
nary surveys. This research is supported by Lembaga Pengelola Dana Pendidikan
Indonesia (Indonesia Endowment Fund for Education).


References
 1. J. Börstler, L. Kuzniarz, C. Alphonce, W. B. Sanders, and M. Smialek, “Teaching
    software modeling in computing curricula,” in Proceedings of the final reports on
    Innovation and technology in computer science education 2012 working groups,
    pp. 39–50, ACM, 2012.
 2. J. Kramer, “Is abstraction the key to computing?,” Communications of the ACM,
    vol. 50, no. 4, pp. 36–42, 2007.
 3. R. Duval, “A cognitive analysis of problems of comprehension in a learning of
    mathematics,” Educational studies in mathematics, vol. 61, no. 1-2, pp. 103–131,
    2006.
 4. L. Saitta and J.-D. Zucker, Abstraction in artificial intelligence and complex sys-
    tems, vol. 456. Springer, 2013.
 5. S. Deterding, D. Dixon, R. Khaled, and L. Nacke, “From game design elements
    to gamefulness: defining gamification,” in Proceedings of the 15th international
    academic MindTrek conference, pp. 9–15, ACM, 2011.
 6. D. R. Michael and S. L. Chen, Serious games: Games that educate, train, and
    inform. Muska & Lipman/Premier-Trade, 2005.
 7. A. Yohannis and Y. Prabowo, “Sort attack: Visualization and gamification of sort-
    ing algorithm learning,” in the 7th VS-Games, pp. 1–8, IEEE, 2015.
 8. M.-B. Ibanez, A. Di-Serio, and C. Delgado-Kloos, “Gamification for engaging com-
    puter science students in learning activities: A case study,” IEEE Transactions on
    Learning Technologies, vol. 7, no. 3, pp. 291–301, 2014.
                                 Gamification of Software Modelling Learning         7

 9. S. Moisan and J.-P. Rigault, “Teaching object-oriented modeling and uml to var-
    ious audiences,” in International Conference on Model Driven Engineering Lan-
    guages and Systems, pp. 40–54, Springer, 2009.
10. S. Akayama, B. Demuth, T. C. Lethbridge, M. Scholz, P. Stevens, and D. R.
    Stikkolorum, “Tool use in software modelling education.,” in EduSymp@ MoDELS,
    2013.
11. M. Brandsteidl, K. Wieland, and C. Huemer, “Novel communication channels in
    software modeling education,” in International Conference on Model Driven Engi-
    neering Languages and Systems, pp. 40–54, Springer, 2010.
12. B. J. Neubauer and J. D. Harris, “Immersive visual modeling: potential use of
    virtual reality in teaching software design,” Journal of Computing Sciences in Col-
    leges, vol. 18, no. 6, pp. 142–150, 2003.
13. R. Szmurlo and M. Śmialek, “Teaching software modeling in a simulated project en-
    vironment,” in International Conference on Model Driven Engineering Languages
    and Systems, pp. 301–310, Springer, 2006.
14. A. Schmidt, D. Kimmig, K. Bittner, and M. Dickerhof, “Teaching model-driven
    software development: revealing the great miracle of code generation to students,”
    in Proceedings of the Sixteenth Australasian Computing Education Conference-
    Volume 148, pp. 97–104, Australian Computer Society, Inc., 2014.
15. T. L. Naps, “Jhavé: Supporting algorithm visualization,” IEEE Computer Graphics
    and Applications, vol. 25, no. 5, pp. 49–55, 2005.
16. S. Deterding, S. L. Björk, L. E. Nacke, D. Dixon, and E. Lawley, “Designing gam-
    ification: creating gameful and playful experiences,” in CHI’13 Extended Abstracts
    on Human Factors in Computing Systems, pp. 3263–3266, ACM, 2013.
17. O. Pedreira, F. Garcı́a, N. Brisaboa, and M. Piattini, “Gamification in software
    engineering–a systematic mapping,” Information and Software Technology, vol. 57,
    pp. 157–168, 2015.
18. O. Richardsen, “Learning modeling languages using strategies from gaming,” Mas-
    ter’s thesis, Norwegian University of Science and Technology, Norway, 2014.
19. D. R. Stikkolorum, M. R. Chaudron, and O. de Bruin, “The art of software
    design, a video game for learning software design principles,” arXiv preprint
    arXiv:1401.5111, 2014.
20. J. Groenewegen, S. Hoppenbrouwers, and E. Proper, “Playing archimate models,”
    in Enterprise, Business-Process and Information Systems Modeling, pp. 182–194,
    Springer, 2010.
21. D. Ionita, R. Wieringa, J.-W. Bullee, and A. Vasenev, “Tangible modelling to elicit
    domain knowledge: an experiment and focus group,” in International Conference
    on Conceptual Modeling, pp. 558–565, Springer, 2015.
22. K. Peffers, T. Tuunanen, M. A. Rothenberger, and S. Chatterjee, “A design science
    research methodology for information systems research,” Journal of management
    information systems, vol. 24, no. 3, pp. 45–77, 2007.
23. S. Deterding, “The lens of intrinsic skill atoms: A method for gameful design,”
    Human–Computer Interaction, vol. 30, no. 3-4, pp. 294–335, 2015.
24. D. S. Kolovos, A. Garcı́a-Domı́nguez, L. M. Rose, and R. F. Paige, “Eugenia:
    towards disciplined and automated development of gmf-based graphical model ed-
    itors,” Software & Systems Modeling, pp. 1–27, 2015.
25. J. F. Hair Jr, G. T. M. Hult, C. Ringle, and M. Sarstedt, A primer on partial least
    squares structural equation modeling (PLS-SEM). Sage Publications, 2016.