Playing the Project: Incorporando a Gamificação em Abordagens Baseadas em Projetos para a Educação em Engenharia de Software
In Software Engineering higher education, besides learning theory and acquiring technical skills, students need to develop the ability to apply, evolve, and practice those skills throughout their lifetime. From 2016 to 2018, we had been adapting an introductory Software Engineering course from a theory-oriented course to a more practical experience for students. Therefore, the goal of this paper is to describe our experience incorporating Project-based Learning (PBL) principles and gamification elements in practical assignments for SE education. To achieve this goal, we present the structure of PBL projects we have been using and how we adapted game elements to the context of SE education in order to create a gamified course. Based on our experience, we defined 17 guidelines that instructors may follow when defining a practical assignment for SE education. While PBL was helpful to create a practice-oriented teaching experience, gamification was not only useful in improving the engagement of students, but also in creating a roadmap of activities and a structure for students to self-assess their progress in the project.
Bender, W. N. (2012) “Project-Based Learning: Differentiating Instruction for the 21 st Century”. Corwin. ISBN 978-1-4129-9790-4.
Bessa, B., Cunha, M., and Furtado, F. (2012) “Engsoft: Ferramenta para simulação de ambientes reais para auxiliar o aprendizado baseado em problemas (pbl) no ensino de engenharia de software”. XX Workshop sobre Educação em Computação (WEI).
Blumenfeld, P. C., Soloway, E., Marx, R. W., Krajcik, J. S., Guzdial, M., and Palincsar, A. (1991) “Motivating project-based learning: Sustaining the doing, supporting the learning”. Educational Psychologist, 26(3-4):369–398.
Deterding, S., Sicart, M., Nacke, L., O’Hara, K., and Dixon, D. (2011). Gamification. using game-design elements in non-gaming contexts. In CHI’11 Extended Abstracts on Human Factors in Computing Systems, pages 2425–2428.
Gary, K. (2015) “Project-based learning”. Computer, 48(9):98–100. ISSN 0018-9162.
IEEE/ACM, T. J. T. F. o. C. C. A. (2015) “Software engineering 2014: Curriculum guidelines for undergraduate degree programs in software engineering”. Technical report, New York, NY, USA.
Jazayeri, M. (2015) “Combining mastery learning with project-based learning in a first programming course: An experience report”. In IEEE/ACM 37th IEEE International Conference on Software Engineering, pages 315–318. ISSN 0270-5257.
Laskowski, M. (2015). Implementing gamification techniques into university study path – a case study. In 2015 IEEE Global Engineering Education Conference (EDUCON), pages 582–586. ISSN 2165-9559.
Marques, M. R., Quispe, A., and Ochoa, S. F. (2014) “A systematic mapping study on practical approaches to teaching software engineering”. IEEE Frontiers in Education Conference (FIE), pages 1–8. ISSN 0190-5848.
Pedreira, O., García, F., Brisaboa, N., and Piattini, M. (2015). Gamification in software engineering – a systematic mapping. Information and Software Technology, 57:157– 168. ISSN 0950-5849.
Prikladnicki, R., Albuquerque, A. B., von Wangenheim, C. G., and Cabral, R. (2009) “Ensino de engenharia de software: Desafios, estratégias de ensino e lições aprendidas”. Fórum de Educação em Engenharia de Software (FEES).
Rodrigues, P., Souza, M., & Figueiredo, E. (2018). “Games and Gamification in Software Engineering Education: A Survey with Educators”. In 2018 IEEE Frontiers in Education Conference (FIE) (pp. 1-9).
Sancho-Thomas, P., Fuentes-Fernández, R., and Fernández-Manjón, B. (2009) “Learning teamwork skills in university programming courses”. Computers Education, 53(2):517–531. ISSN 0360-1315.
Schwaber, K. and Sutherland, J. (2016) “The scrum guide”. Available at: http://www. scrumguides. org/docs/scrumguide/ v1/scrum-guide-us.pdf.
Singer, L. and Schneider, K. (2012). It was a bit of a race: Gamification of version control. In 2012 Second International Workshop on Games and Software Engineering: Realizing User Engagement with Game Engineering Techniques (GAS), pages 5–8.
Souza, M. R. A., Constantino, K., Veado, L., and Figueiredo, E. (2017). “Gamification in Software Engineering Education: An Empirical Study” in IEEE 30th Conference on Software Engineering Education & Training (CSEE&T).
Souza, M. R. A., Veado, L., Moreira, R. T., Figueiredo, E., and Costa, H. (2018). “A systematic mapping study on game-related methods for software engineering education”. Information and Software Technology, 95:201–218. ISSN 0950-5849.