<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>A Model-based Approach to Gamify the Learning of Modeling</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Valerio Cosentino</string-name>
          <email>vcosentino@uoc.edu</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Se´bastien Ge´rard</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jordi Cabot</string-name>
          <email>jordi.cabot@icrea.cat</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CEA LIST</institution>
          ,
          <addr-line>Paris</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>ICREA</institution>
          ,
          <addr-line>Barcelona</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>SOM Research Lab, UOC</institution>
          ,
          <addr-line>Barcelona</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2017</year>
      </pub-date>
      <fpage>15</fpage>
      <lpage>24</lpage>
      <abstract>
        <p>Conceptual modeling is an essential activity in the development of any information system. But at the same time, it is a difficult one which may discourage some professionals that may be tempted to skip it altogether in favor of more code-oriented tasks. In recent years, gamification has emerged as a new approach to increase learner engagement and has been successfully applied to a wide range of training and educational scenarios. We believe gamification can play a key supportive role in teaching and learning conceptual modeling, an area where gamification has not been really applied so far. In this sense, this paper presents a model-based approach for gamifying scenarios for learning modeling. Our approach includes a new language for modeling the gamification process itself and an environment where this new language can be embedded in current modeling tools to allow instructors and students design and use gaming scenarios all within a full modeling infrastructure.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Modeling is a central activity in any engineering task. In the development of
information systems, (conceptual) schemas can even be the driving force of the whole
development process (what is known as conceptual-schema centric development [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], or more
generally, Model Driven Engineering).
      </p>
      <p>Among the plethora of modeling languages proposed so far, the ER and, lately,
the Unified Modeling Language (UML) are the most popular ones. When considering
the development process as a whole, modelers should also be knowledgeable in more
technical languages to tune/refine the implementation of the system derived from those
models. This is specially true for the database schema of the system-to-be. Almost all
vendors offer powerful code-generation features that would at least cover the creation
of the SQL scripts required to initialize such database.</p>
      <p>
        However, learning to use the full power of modeling and technical languages can
be a very difficult task due to the related theoretical and practical difficulties [
        <xref ref-type="bibr" rid="ref2 ref3 ref4">2–4</xref>
        ], thus
learners may become less and less engaged over time. This is a challenge that every
modeling teacher probably agrees with.
      </p>
      <p>
        In recent years, the gamification of learning [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] is arising as a new approach to
strengthen the engagement of learners, and an increasing number of research efforts
report successful experiences in applying it [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Nevertheless, previous gamification
solutions have targeted specific scenarios and little attention has been paid to the learning
of modeling.
      </p>
      <p>In this paper, we propose a generic model-based approach to support gamification.
By leveraging on model-driven technologies, designers can easily define a game by
describing the achievements, badges and levels as well as the rules to earn them. The
game definition is then used to set up the gamification enviroment where the learner
actions are evaluated to assign rewards. Furthermore, our approach also provides
support to collect and analyse the gamification data, thus easing monitoring activities. Our
approach pays special attention to cheating prevention and user privacy, two common
pitfalls in gamification.</p>
      <p>This work has been done in collaboration with Papyrus1 representatives, with the
purpose of increasing the onboarding of new users for the Papyrus modeling tool in the
Eclipse platform. Thus, we have applied our gamification framework to the specific case
of learning UML, however to show the generality of the approach, we have also targeted
the learning of SQL, as an example of a very different language (more technical, textual)
that can be also gamified. The tool is available as a set of open source Eclipse plugins
together with the UML and SQL scenarios2.</p>
      <p>The remainder of the paper is organized as follows. Section 2 introduces
gamification, Section 3 and 4 present how gamification is modelled and the framework
underlying our approach, Section 5 discusses the related work and finally Section 6 ends the
paper with conclusion and further work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Background</title>
      <p>
        Gamification aims at incorporating the use of game elements in a non-game context to
encourage and engage users by leveraging on their motivations [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>
        There is no clear and commonly-accepted taxonomy of the game elements [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. A
recent work [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] has proposed a unified view of the different classifications, which
summarizes the gamification dimensions to three, respectively Components, Mechanics and
Dynamics. Components are the basic building blocks of gamification, they represent the
objects that the users see and interact with, such as badges, levels and points. Mechanics
define the game as a rule-based system, specifying how everything behaves and how the
player can interact with the game. Dynamics are the top level of gamification elements.
They include all aspects of the game that cannot be implemented and managed directly,
and are related to the emotional responses of the users (e.g., progression, exploration).
      </p>
      <p>
        The success of gamifying a given non-game context strongly depends on the
gamification design chosen for those dimensions. Several research efforts have focused on
identifying the phases composing the gamification design [
        <xref ref-type="bibr" rid="ref10 ref11">10, 11</xref>
        ]. However, and
similarly to the gamification elements taxonomy, there are no commonly-accepted phases,
they vary in numbers and terminology used. Nevertheless, we believe they can be
summarized in two phases Understanding and Gamifying, plus an optional one Monitoring.
1 https://eclipse.org/papyrus/
2 https://github.com/SOM-Research/gamification-modeling-learning
naRmees:oSutrricneg model 0..M1odel noti catsmiicoooenuNnsn0oPsda.at.Pigt1caheat::htS1S:ito.tSr.rn*itinnrrgigenwgards levels 1..*
Container 1 c1onctoanintaeirnelres 0..* cehxatenngseFiodin:le:B1Sotorllieenagn repbwoaaidnrgtdRse:1PeIawnttha:rdString Level
      </p>
      <p>1..* rewardables</p>
      <p>Rewardable group 1
name: String
description: String
Project
descriGptaiomne:String 1 ggaammeeS 0..* scirngeinasahteGteuddar::emEE:LeLEooSSnntgrging
currentScore: Int</p>
      <p>1..* levels
1 level LevelS</p>
      <p>levelS 0..* isCurrent: Boolean
level 1 1..* groups</p>
      <p>Group 1 group</p>
      <p>groupS 0..*
1..* achivements
Achievement 1 achv
achvS 0..*
level 1 1..* groups</p>
      <p>GroupS
group 1</p>
      <p>1..* achivements
AchievementS</p>
      <p>Status
achieved: ELong
complete: String
0..* folders
Folder
(a)
evaluation
achievement 1 1..* task</p>
      <p>Task
description: String 1 task
query: String taskS 0..*
(b)
achievement 1 1..* task</p>
      <p>TaskS
(c)
The first phase includes the identification of the business goal as well as the analysis of
the users and their motivations to interact with the gamified system. The second phase
focuses on defining the gamification environment. Thus, it is in charge of setting up
the game components and mechanics and presenting the gamification information. The
third phase focuses on monitoring the gamified environment to understand the
emotional responses of the users, prevent unintended outcome (e.g, cheating, decrease of
interest) and drive refinements of the business goal.</p>
      <p>
        The literature review suggests that gamification does work, but some caveats
exist [
        <xref ref-type="bibr" rid="ref11 ref12 ref13">11–13</xref>
        ]. They may arise when gamification is not properly designed, thus leading
to bad user behaviors and unintended consequences. Cheating and privacy issues are
two common concerns in gamification application, since they can induce declining
effects. The former can appear when users feel a disadvantage due to others cheating to
easily gain rewards, while the latter bears the risk that users perceive a high level of
surveillance. Thus, it is paramount for a gamification environment to define cheating
prevention controls as well as to allow any user the freedom to disclose her data.
      </p>
      <p>The next sections will present how our own gamification approach deals with all
these concepts.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Modeling Gamification</title>
      <p>To model a gamification environment, we propose to use a new Game metamodel
(shown in the center of Fig. 1) complemented with a textual syntax (see Fig. 2) to
easily specify such an environment.</p>
      <p>As a complement to this core metamodel, we also need two auxiliary schemas (left
and right parts of Fig. 1). The first one is needed to characterize the object to gamify,
in this case, files and projects where the game mechanics will be applied. The second
one to store the status of the environment for a given user. Both metamodels can be
specialized depending on the specific gamification scenario.</p>
      <p>Game and Project metamodels are instantiated at design time to model the game.
The Status metamodel is only used at run-time to track the game progress.
3.1</p>
      <sec id="sec-3-1">
        <title>Game Metamodel</title>
        <p>The game definition is shown in Fig. 1b. A game is defined by a description and contains
a set of levels. Each level (e.g., beginner, advanced and expert) contains groups, where
a group represents a specific domain area. Examples of areas in the context of modeling
could be the mastering of different UML diagrams (e.g., structural and behavioral ones).
Groups contain achievements, and each achievement may require several tasks to be
accomplished (e.g., create a UML file and a class in the corresponding model).</p>
        <p>
          A task comes with a description and it is linked to an OCL constraint [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] that must
evaluate to true for the task to be completed, i.e., the constraint must be true in the
model created by the user for the task to be marked as achieved. Levels, groups and
achievements are rewardable classes. The rewardable class has a name and description
and it is associated to a reward. A reward is represented by a number of points and a
badge (see badgePath attribute). Finally, a reward can be optionally linked to a
notification. A notification is presented to the user when she gets a reward, it comes with a
message, an icon and a sound (see attributes iconPath and soundPath).
        </p>
        <p>While a graphical notation to instantiate all these elements in a game model could
have been defined, we have opted for a textual syntax we believe is more direct in this
scenario. Figure 2 shows a small textual DSL we provide for this purpose, using railroad
syntax diagrams. As can be seen, the root rule is game, which expands to the rule level.
Level expands to group, group to achievement, etc. This grammar matches the game
metamodel described before and therefore both can be used interchangeably.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Project Metamodel</title>
        <p>The schema of the artefacts in a (software) project is shown in Fig. 1a. As can be
seen, project, folders and files are identified by a name (see class Resource). However,
project and folders can act like containers for files and folders (see class Container),
while a file stores also information about its extension, whether it changed after the last
modification (see attribute changed), and optionally a reference to the corresponding
model representation (if exists).
3.3</p>
      </sec>
      <sec id="sec-3-3">
        <title>Status Metamodel</title>
        <p>Status information is shown in Fig. 1c. As can be seen, all classes mirror a counterpart in
the Game Metamodel to add stautus (see attributes achieved and complete) information
to that game element for a specific game instance.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Gamification Framework</title>
      <p>With the previous metamodels, we can model a gamification project. In this section, we
explain how, because of our gamification framework, it is easily possible to execute the
game and monitor the users attempting to perform the game tasks.</p>
      <p>Our framework, shown in Fig. 3, is composed of three main components: game
settings, gamification environment and monitoring. The first component supports the
definition of games, the second one allows the user to interact with the game and
progress within it, while the latter enables the definition of general metrics collecting the
progress of learners.
4.1</p>
      <sec id="sec-4-1">
        <title>Game settings</title>
        <p>In the game settings component, the game designer indicates the metamodels for the
relevant file extensions that can appear in the project, i.e., the types of models we are
going to be dealing with in the gamification scenario. The corresponding model
discoveries (i.e., the components able to parse the source files and generate the corresponding
model AST from them) need also to be plugged in at this point.</p>
        <p>At this point, the game designer also specifies the game components and mechanics
using the textual language described in Figure 2 she wishes to include in the game.
4.2</p>
      </sec>
      <sec id="sec-4-2">
        <title>Gamification environment</title>
        <p>The gamification environment allows the learner to interact with the game as defined in
the previous secton.</p>
        <p>When the game is started for the first time, a Status model is instantiated
according to the game definition, and the attributes created and signature (see Fig. 1c) are
initialized at that specific time. An internal signature (based on hash values generated
from this timestamp and a textual representation of the game definition) is also
stored together with the status model. Every time this model is loaded later in the game,
this signature is checked to make sure the user has not altered the tasks proposed to
him (e.g., making them easier to accomplish). If the hashes differ, a cheating-detection
message is shown to the user.</p>
        <p>From this point on, after any action of the learner, the gamification environment
is in charge of performing the following steps: (1) collect the project data where the
action was performed, (2) execute the game mechanics, (3) process the gamification
data generated and (4) visualize it. Each step is described below.</p>
        <p>Collection The collection step relies on a listener that reacts to any creation or
modification of resources within a project. Once a change is detected, this step generates a
model that stores the information about the project where the change occurred. In case
the change happened on a file, the file is marked and, if there exists a model
discovery for it, its model-based representation is derived, linked to the file and added to the
generated project model. The obtained project model is passed then to the execution
step.</p>
        <p>Execution This step is in charge of executing the tasks associated to each game
achievement over the project model received as input. More specifically, for each
achievement, the list of the corresponding tasks is retrieved. As discussed before, each task
contains the name of an OCL constraint with the precise definition of what needs to be
found in the current project for the task to be completed. The output of the constraints
are boolean values, which are passed to the next step together with the corresponding
tasks.</p>
        <p>Listing 1.1 shows the example of an OCL constraint that requires the project (1)
contains only one folder and (2) the folder is named ’MyFirstFolder’.</p>
        <p>Listing 1.1. Example of OCL constraint
context Project =
inv createfolder:
self.folders-&gt;size()=1 and self.folders-&gt;forAll(f|
f.name = ’MyFirstFolder’)
Processing The processing step receives the gamification data, calculates which
rewards have been achieved and creates the notifications for the user. For each task
completed, the corresponding element is retrieved in the status model and its attributes
complete and achieved are updated. Then the processing step analyses which achievements
have been accomplished (the ones that have all tasks completed), updates the
corresponding status information, and in a similar way, it repeats the operations for groups
and levels. For each rewardable element completed (i.e., Level, Group, Achievement),
the corresponding points are added to the current score of the user, and a notification
containing a sound, a message, the points and the badge earned is created. Note that,
in case all the groups of the current level have been completed, the value of the latter
is updated to the next level (see attribute isCurrent of LevelS). Furthermore, if the user
has finished the game, a notification is created to acknowledge the user and the status
of the game is updated (see attribute finished, in the GameS).</p>
        <p>The status model is saved every time a reward is achieved in order to avoid
information loss in case of application failures. Furthermore, the model is also encrypted before
any saving operation to prevent cheating.</p>
        <p>Visualization The visualization step shows the game information to the user using
notifications and a global summary of her progress. It is worth noting that also this
step prevents cheating, since the information is presented in read-only mode within the
gamification environment and not externalized (e.g., via a web page). Thus, avoiding
malicious modifications of the game status information.</p>
        <p>When the user starts, stops or wins the game and for each reward earned, a
notification shows up in the gamification environment. Figure 4a shows the default notifications
used in the gamification environment. The first and second rows contain notifications
that appear when the user starts, stops and finishes the game. The remaining rows
include notifications used to inform the user about achievements, groups and levels
completed.</p>
        <p>The user can also check at any moment the game statistics, which contains both the
instructions to get rewards and her current advances. As can be seen in Fig. 4b, general
game statistics about the number of levels, points, groups and achievements completed
are shown on top. Information concerning the status of each level is presented in the
middle using a tabbed document interface, where achievements and groups still not
finished are gray-shaded. Finally, details about groups and achievements are shown at
the bottom, when clicking on the corresponding images.
4.3</p>
      </sec>
      <sec id="sec-4-3">
        <title>Monitoring</title>
        <p>
          The monitoring component can be used to support the definition of gamification
analytics [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] by collecting and analysing the advances of users. However, in order to protect
the user privacy, this component is defined in a non-intrusive way. Thus, the user is free
to share at any moment information regarding her progress to the remote server
configured to process, store and analyze the game information. Not sharing that information
does not affect in any way her game experience, it just limits the collective data on the
“teacher” side.
5
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Related Work</title>
      <p>5.1</p>
      <sec id="sec-5-1">
        <title>Gamification</title>
        <p>This section reviews previous works on gamification and learning of modeling. They
are discussed below.</p>
        <p>
          Many works in the field of gamification present extensible and generic approaches [
          <xref ref-type="bibr" rid="ref16 ref17 ref18">16–
18</xref>
          ], assist designers in the definition of games [
          <xref ref-type="bibr" rid="ref18 ref19">19, 18</xref>
          ] and provide gamification
environments [
          <xref ref-type="bibr" rid="ref18 ref20">20, 18</xref>
          ]. Nevertheless, they do not cover all the aspects that our framework
tries to address (for instance cheating and monitoring are often overlooked in previous
works). Furthermore, although a language has been already proposed for modeling
gamification concepts [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ], it cannot be used in our context. In particular, it is not clear
how the user actions within the model representation of a file (e.g., creating UML
classes of a given type) can be described and evaluated.
5.2
        </p>
      </sec>
      <sec id="sec-5-2">
        <title>Learning of modeling</title>
        <p>
          Several works attempt to address the complexity of learning the act of modeling. They
can be grouped in two categories, didactic-based and game-based approaches. The
former [
          <xref ref-type="bibr" rid="ref21 ref22 ref23 ref24">21–24</xref>
          ] provides automatic feedback on the user attempts to solve an assignment,
but they do not include game elements. The latter [
          <xref ref-type="bibr" rid="ref25 ref26">25, 26</xref>
          ] do rely on game elements to
support learning. However they adopt Serious Games solutions, thus the learner plays
in a fully fledged virtual game environment. As far as we know, no approach is really
proposing gamification to learn modeling.
        </p>
        <p>
          Moreover, our framework tries to overcome different limitations identified in
previous works. They are presented and compared with our proposal below.
– Extensibility. Modeling is an activity that can be performed using different
languages. Some previous works focus on SQL [
          <xref ref-type="bibr" rid="ref21 ref22 ref25 ref26">21, 22, 25, 26</xref>
          ], while other ones on
Entity-Relationship diagrams [
          <xref ref-type="bibr" rid="ref27 ref28">27, 28</xref>
          ] and UML [
          <xref ref-type="bibr" rid="ref23 ref24">23, 24</xref>
          ]. However none of them
comments on possible extensions to include other modeling languages.
Conversely, our framework can be easily extended to include learning support for other
modeling languages thanks to its model-based infrastructure.
– Genericity. Two different approaches have been used by previous works to assess
the correctness of learners’ solutions. The former, and most common, consists in
matching the proposed solutions to pre-calculated correct ones [
          <xref ref-type="bibr" rid="ref22 ref24">22, 24</xref>
          ]. However,
since the matching is a computationally expensive operation, the range of problems
that can be solved is generally limited. The latter relies on a set of constraints that
the learner’s answer has to satisfy in order to be accepted as a correct solution
[
          <xref ref-type="bibr" rid="ref21 ref23">21, 23</xref>
          ]. Constraint-based approaches are computationally less expensive and that’s
also the direction we follow. Nevertheless, previous works use ad-hoc constraint
languages that cannot be easily reused in other scenarios. In our framework, learner
solutions are evaluated by constraints written in OCL, which is a standard language
widely used in MDE. Thus, it is generic enough to be reused in different
modelbased scenarios.
– Cheating. Only two works [
          <xref ref-type="bibr" rid="ref21 ref22">21, 22</xref>
          ] discuss or define strategies to detect cheating
(or plagiarism). Our framework pays special attention to this issue by encrypting
the current status of the game in order to avoid malicious modifications.
– Privacy. None of the previous work mention measures to protect learner privacy.
        </p>
        <p>Our framework allows the learner to decide whether her advances in the game can
be collected and analysed.
6</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <p>In this paper we have presented a generic model-based approach to support
gamification, which can be easily applied to learning modeling scenarios. Our framework
provides means to prevent cheating and protects user privacy, and by leveraging on
Model-driven technologies, it is also easy to extend and generic.</p>
      <p>As further work, we would like to predefine a set of gamification learning paths and
exercises to help individual users to benefit from the approach. We are also interested
in completing the monitoring component by providing default analytics and extended
game session recording information for users, thus enabling a deeper analysis of the
evolution of the students of a “class”. Finally, we plan to provide a graphic
patternbased language to express the game tasks, to be used instead of OCL for those users
that prefer a more graphical (though less expressive) language. This was one of the first
feedback we got from the Papyrus community. Getting more validation from them is
also part of our future work.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. Olive´,
          <string-name>
            <surname>A.</surname>
          </string-name>
          :
          <article-title>Conceptual schema-centric development: a grand challenge for information systems research</article-title>
          . In: CAISE. (
          <year>2005</year>
          )
          <fpage>1</fpage>
          -
          <lpage>15</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Lu</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chan</surname>
            ,
            <given-names>H.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wei</surname>
            ,
            <given-names>K.K.</given-names>
          </string-name>
          :
          <article-title>A survey on usage of sql</article-title>
          .
          <source>SIGMOD Rec</source>
          .
          <volume>22</volume>
          (
          <issue>4</issue>
          ) (
          <year>1993</year>
          )
          <fpage>60</fpage>
          -
          <lpage>65</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Siau</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Loo</surname>
            ,
            <given-names>P.P.</given-names>
          </string-name>
          :
          <article-title>Identifying difficulties in learning uml</article-title>
          .
          <source>ISM</source>
          <volume>23</volume>
          (
          <issue>3</issue>
          ) (
          <year>2006</year>
          )
          <fpage>43</fpage>
          -
          <lpage>51</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Erickson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Siau</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Theoretical and practical complexity of modeling methods</article-title>
          .
          <source>Commun. ACM</source>
          <volume>50</volume>
          (
          <issue>8</issue>
          ) (
          <year>2007</year>
          )
          <fpage>46</fpage>
          -
          <lpage>51</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Kapp</surname>
            ,
            <given-names>K.M.:</given-names>
          </string-name>
          <article-title>The gamification of learning and instruction: game-based methods and strategies for training and education</article-title>
          . John Wiley &amp; Sons (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Dicheva</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dichev</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Agre</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Angelova</surname>
          </string-name>
          , G.:
          <article-title>Gamification in education: A systematic mapping study</article-title>
          .
          <source>Educ. Technol. Soc</source>
          .
          <volume>18</volume>
          (
          <issue>3</issue>
          ) (
          <year>2015</year>
          )
          <fpage>75</fpage>
          -
          <lpage>88</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Deterding</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sicart</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nacke</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>O'Hara</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dixon</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : Gamification.
          <article-title>using game-design elements in non-gaming contexts</article-title>
          .
          <source>In: CHI</source>
          . (
          <year>2011</year>
          )
          <fpage>2425</fpage>
          -
          <lpage>2428</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Pedreira</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          , Garc´ıa,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Brisaboa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            ,
            <surname>Piattini</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.:</surname>
          </string-name>
          <article-title>Gamification in software engineering-a systematic mapping</article-title>
          .
          <source>IST</source>
          <volume>57</volume>
          (
          <year>2015</year>
          )
          <fpage>157</fpage>
          -
          <lpage>168</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Shpakova</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , Do¨rfler, V.,
          <string-name>
            <surname>MacBryde</surname>
          </string-name>
          , J.:
          <article-title>The role(s) of gamification in knowledge management</article-title>
          .
          <source>In: EURAM</source>
          . (
          <year>2016</year>
          )
          <fpage>1</fpage>
          -
          <lpage>40</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Mora</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riera</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gonzalez</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Arnedo-Moreno</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>A literature review of gamification design frameworks</article-title>
          .
          <source>In: VS-Games</source>
          .
          <article-title>(</article-title>
          <year>2015</year>
          )
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Webb</surname>
            ,
            <given-names>E.N.</given-names>
          </string-name>
          :
          <article-title>Gamification: when it works, when it doesnt</article-title>
          . In: DUXU. (
          <year>2013</year>
          )
          <fpage>608</fpage>
          -
          <lpage>614</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Hamari</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Koivisto</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sarsa</surname>
          </string-name>
          , H.:
          <article-title>Does gamification work?-a literature review of empirical studies on gamification</article-title>
          .
          <source>In: HICSS</source>
          . (
          <year>2014</year>
          )
          <fpage>3025</fpage>
          -
          <lpage>3034</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Callan</surname>
            ,
            <given-names>R.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bauer</surname>
            ,
            <given-names>K.N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Landers</surname>
            ,
            <given-names>R.N.</given-names>
          </string-name>
          :
          <article-title>How to avoid the dark side of gamification: Ten business scenarios and their unintended consequences</article-title>
          . In:
          <article-title>Gamification in education and business</article-title>
          . (
          <year>2015</year>
          )
          <fpage>553</fpage>
          -
          <lpage>568</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Warmer</surname>
            ,
            <given-names>J.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kleppe</surname>
            ,
            <given-names>A.G.</given-names>
          </string-name>
          :
          <article-title>The object constraint language: getting your models ready for MDA</article-title>
          . (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Heilbrunn</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Herzig</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schill</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Tools for gamification analytics: A survey</article-title>
          .
          <source>In: UCC</source>
          . (
          <year>2014</year>
          )
          <fpage>603</fpage>
          -
          <lpage>608</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Piras</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mylopoulos</surname>
          </string-name>
          , J.:
          <article-title>Acceptance requirements and their gamification solutions</article-title>
          . In: RE. (
          <year>2016</year>
          )
          <fpage>365</fpage>
          -
          <lpage>370</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Piras</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paja</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mylopoulos</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cuel</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ponte</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Gamification solutions for software acceptance: A comparative study of requirements engineering and organizational behavior techniques</article-title>
          .
          <source>In: RCIS</source>
          . (
          <year>2017</year>
          )
          <fpage>255</fpage>
          -
          <lpage>265</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Sripada</surname>
            ,
            <given-names>S.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Reddy</surname>
            ,
            <given-names>Y.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Khandelwal</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Architecting an extensible framework for gamifying software engineering concepts</article-title>
          .
          <source>In: ISEC</source>
          . (
          <year>2016</year>
          )
          <fpage>119</fpage>
          -
          <lpage>130</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Herzig</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jugel</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Momm</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ameling</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schill</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Gaml-a modeling language for gamification</article-title>
          .
          <source>In: UCC</source>
          . (
          <year>2013</year>
          )
          <fpage>494</fpage>
          -
          <lpage>499</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Herzig</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ameling</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schill</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A generic platform for enterprise gamification</article-title>
          .
          <source>In: WICSA</source>
          . (
          <year>2012</year>
          )
          <fpage>219</fpage>
          -
          <lpage>223</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Sadiq</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Orlowska</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sadiq</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lin</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          :
          <article-title>Sqlator: an online sql learning workbench</article-title>
          .
          <source>In: SIGCSE Bull</source>
          . Volume
          <volume>36</volume>
          . (
          <year>2004</year>
          )
          <fpage>223</fpage>
          -
          <lpage>227</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Russell</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cumming</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Improving the student learning experience for sql using automatic marking</article-title>
          .
          <source>In: CELDA</source>
          . (
          <year>2004</year>
          )
          <fpage>281</fpage>
          -
          <lpage>288</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Sedrakyan</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Snoeck</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Technology-enhanced support for learning conceptual modeling</article-title>
          .
          <source>In: EIS</source>
          . (
          <year>2012</year>
          )
          <fpage>435</fpage>
          -
          <lpage>449</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Py</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Auxepaules</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Alonso</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Diagram, a learning environment for initiation to objectoriented modeling with uml class diagrams</article-title>
          .
          <source>JILR</source>
          <volume>24</volume>
          (
          <issue>4</issue>
          ) (
          <year>2013</year>
          )
          <fpage>425</fpage>
          -
          <lpage>446</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Soflano</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Connolly</surname>
            ,
            <given-names>T.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hainey</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>An application of adaptive games-based learning based on learning style to teach sql</article-title>
          .
          <source>Comput. Educ</source>
          .
          <volume>86</volume>
          (
          <year>2015</year>
          )
          <fpage>192</fpage>
          -
          <lpage>211</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Soflano</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>Modding in serious games: Teaching structured query language (sql) using neverwinter nights</article-title>
          .
          <source>In: Serious Games and edutainment applications</source>
          . (
          <year>2011</year>
          )
          <fpage>347</fpage>
          -
          <lpage>368</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Hall</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gordon</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A virtual learning environment for entity relationship modelling</article-title>
          .
          <source>In: SIGCSE Bull</source>
          . Volume
          <volume>30</volume>
          . (
          <year>1998</year>
          )
          <fpage>345</fpage>
          -
          <lpage>349</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28. de los Angeles Constantino-Gonzale´z,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Suthers</surname>
          </string-name>
          , D.D.:
          <article-title>A coached collaborative learning environment for entity-relationship modeling</article-title>
          .
          <source>In: ITS</source>
          . (
          <year>2000</year>
          )
          <fpage>324</fpage>
          -
          <lpage>333</lpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>