Hackathons as a Pedagogical Strategy to Engage Students to Learn and to Adopt Software Engineering Practices - Steglich, Caio; Salerno, Larissa; Fernandes, Thaís; Marczak, Sabrina; Dutra, Alessandra; Bacelo, Ana Paula; Trindade, Cássio (Anais do Simpósio Brasileiro de Engenharia de Software (SBES), 2020)
Teaching Software Engineering is not a trivial duty since several pedagogical strategies can be used and sometimes the impact of these on students is uncertain. Hackathons are similar to marathons, however used to produce solutions to solve a specific problem in a short period of time and based on intense collaboration. Educational hackathons aim to promote learning in such an environment. The Undergraduate computing programs of PUCRS decided to use a hackathon as a pedagogical strategy aiming to motivate the students to practice the adoption of software development practices and to work in groups as a means to practice the development of social skills. Therefore, we conducted a case study to investigate: 1) The motivations to students to attend or not attend an educational hackathon, 2) The students perceptions about this hackathon, 3) The Software Engineering practices adopted by students. In this study, we identified factors that may affect students motivation to participate (e.g., improve the teamwork skills), some students expectations about the hackathon (e.g., work in teams), and the practices adopted by the students (e.g., pair programming). Some of our findings include that students enjoy participating in an informal educational environment (e.g., hackathons) to improve their technical skills and to build network with some colleagues. This study can provide insights to teachers that wants to organize some activity than traditional teaching and the students perspective about this kind of strategy.