[en] The use of games as a learning method to motivate students to achieve knowledge and skills in a more pleasant way is a technique that has long been used. But it was not until early this millennium when the term gamification was coined and began to gain importance. This method is being increasingly used not only with children, but it has also been applied in professional contexts, ranging from surgical virtualizations for doctors to flight simulators for pilots. The goal of this project is to create a platform that allows students to improve their knowledge on object-oriented design, more specifically on UML class diagrams, by means of gamification techniques. For this purpose, we have created Diagame, a system that includes a management module, an exercise generation module, and a game module. The management module allows teachers to create problem statements and their solution diagrams. The exercise generation module creates faulty versions of the solutions provided the teacher, by injecting them different types of error randomly. Finally, in the game module, students play the role of owner of a small business. In order to increase the value of the company, students must solve UML class diagrams correctly, obtaining profits in return. With this money, the student may hire employees and buy special bonuses which will increase the value of the next solved diagrams, in order to obtain further benefits and lead the ranking of most valuable companies.

[es] El uso del juego como método de aprendizaje para motivar a los alumnos a adquirir conocimientos y competencias de forma más amena es una técnica utilizada desde hace tiempo. Pero no fue hasta principios de este milenio cuando fue bautizado con el término gamificación y comenzó a cobrar importancia. Este método cada vez es más usado y no sólo con niños, también se han aplicado estas técnicas al ámbito profesional, desde recreaciones de quirófano para médicos hasta simuladores de vuelo para pilotos. El objetivo de este proyecto es crear una plataforma que permita a los alumnos mejorar sus conocimientos sobre el diseño orientado a objetos, más concretamente sobre los diagramas de clases UML, utilizando técnicas de gamificación. Con este objetivo, se ha desarrollado Diagame, un sistema que consta de un módulo de gestión, un módulo de generación de ejercicios, y un módulo de juego. El módulo de gestión permite a los profesores crear enunciados y sus diagramas de clases solución. El módulo de generación de ejercicios crea versiones erróneas de las soluciones proporcionadas por el profesor mediante la inyección aleatoria de distintos tipos errores, con objeto de obtener automáticamente ejercicios que ofrecer a los estudiantes. Por último, el módulo de juego, donde el alumno adoptará el papel de dueño de una pequeña empresa. Para incrementar el valor de la empresa el usuario deberá resolver correctamente diagramas de clases UML que le aportarán unos beneficios. Con este dinero el alumno puede contratar empleados y bonificadores especiales que incrementen el valor de los próximos diagramas que resuelva el usuario, para obtener beneficios muchos mayores y subir posiciones en el ranking de empresas más valiosas.