Computational Thinking Practiced with a Casual Serious Game in Higher Education Adilson Vahldick1,2,António José Mendes2,Maria José Marcelino2,Paulo Roberto Farah1
Total Page:16
File Type:pdf, Size:1020Kb
Osprey Security [email protected] www.ospreysecurity.com Computational thinking Practiced with a Casual Serious Game in Higher Education Adilson Vahldick1,2,António José Mendes2,Maria José Marcelino2,Paulo Roberto Farah1 1High Education Centre Vale do Itajaí (CEAVI) State University of Santa Catarina (UDESC) - Ibirama, SC - Brazil 2CenterInformatics and Systems of the University of Coimbra (CISUC) University of Coimbra - Portugal {adilson.vahldick, paulo.farah}@udesc.br {toze, zemar}@dei.uc.pt Abstract. in this paper we discuss the importance for students in introductory courses of undergraduate programming begin their learning with developing skills thinking Computer (PC). Due to time constraints in the semester, it is difficult for teachersprovide this opportunity through specific authoring environments, like Alice and Scratch. For this reason, a serious casual game was created to support the development of these skills. Casual games are characterized by short, quick missions, and this can be favorable as extracurricular activities. An evaluation cycle has been completed in an undergraduate course and another is in progressanother course. The details of the game, from its use, the opinion of the students and the opinion of the teacher are presented in this article. The main contribution of this paper islist some principles that can assist in the development of games for the programming learning through tasks with PC. Abstract. This paper discusses the importance to Develop Computational Thinking (CT) skills in undergraduate introductory programming courses. Due to time constraints, it is hard for teachers Provide this opportunity specific authoring environments through, like Alice and Scratch. For this reason, it was created to casual serious game to support the development of These skills. Casual games are Characterized by fast and short missions, and this can be favorable extra classes activities. An evaluation cycle was finished in an undergraduate course and another is underway. The details of the game, the opinion of students and the teacher are presented in this article. The main contribution of this work is to list some principles que supports the development of games for learning through programming tasks with CT. 1. Introduction The games are easy and fun interactive experiences. Usually do not require training or foreign aid, unless the comments of the people who enjoyed playing (Prensky, 2001). The game-based learning(GameBased Learning - GBL) is an alternative in which students can learn in a personalized way (the game follows the evolution of the player) and assisted self (the player realizes his mistakes by failing the missions, or game teaches the player howperform some action) (Whitton, 2010). Serious games (or educational) provide a relevant context that helps make abstract concepts more concrete (Eagle & Barnes, 2009). Using a game naturally Osprey Security [email protected] www.ospreysecurity.com involves problem solving activities (Schell, 2008). It is precisely the failure to appropriation of the problem solving ability that results in the largest failure in learning programming (Robins et al., 2003). The programming learning is a process that requires profound cognitive changes and development in the mastery of skills complex (Gomes & Mendes, 2007). Writing programs involves understanding the problem and abstracting a model, divide the problem into smaller parts, decide the best strategy to solve each of the parties, and apply or adapt already known solutions (Winslow, 1996). The skills and competences (abstraction, decomposition, analysis, etc.) to perform this process is described as Computational Thinking (PC) (Wing, 2008). Research for the PC learning has been focused on basic education (France & Tedesco, 2015) due to the possibility to aggregate it with other disciplines such as mathematics and biology. Although there are several games available for practice and programming learning and PC (Vahldick et al., 2014), there are gaps for the sustainability of the teaching-learning process. These games do not cover in depth the issues in the discipline, nor provide a monitoring system of student progress. This article discusses the advantages of PC learning in higher education in introductory courses in programming and has the experience of using a serious casual game to promote this learning. Casual games require very few instructions to learn how to play them (Kadle, 2009). For educational purposes, this characteristic favors for the student to focus more on instructional tasks to spend your time in learning the mechanics and other game elements (Landers & Callan, 2011). The article describes the game as to their elements and instructional design. The work is structured as follows: in the second section is the importance justified the use of blocks for programming learning in higher education; the third sectionbased on the use of games programming and PC learning; in the fourth section the game developed in research is presented; Thursday experiments are described in the game; on Friday the results of these experiments; and finally are made the conclusions about the results. 2. Blocks for the programming of learning in higher education It has been observed failure in the ability to solve problems in subjects like math and science in high school youth (Grover & Pea, 2013). Teach computer skills in Brazilian basic education has been the challenge and research to try to alleviate this situation (France & Tedesco, 2015). Regarding the PC approach to teaching in undergraduate courses, there are proposals for mathematics disciplines to mitigate the high levels of tax evasion and failure in such disciplines (Barcelos et al., 2015). These proposals are still recent efforts and isolated. Several generations of freshmen never had contact with this knowledge, which can be appreciated in Table 1 where 66.7% corroborate this argument. This table shows the demographic data from two experiments, described below, that involved 96 students infirst semester of undergraduate courses. Reproaches and evasions are high in introductory courses in programming. One of the serious problems of students is abstraírem the notion of how the machine interprets a program (Du Boulay, 1986). To support the development of this notion of abstract machine, the strategy adopted by educational programming environments like Alice and Scratch is that students start with evidence and gradually be conducted to understand the abstract aspects of computing (Dann & Cooper, 2009). In these types of environments the student practice and develops the construction of computational solutions through Osprey Security [email protected] www.ospreysecurity.com concrete elements. To achieve this solution is necessary to perform troubleshooting tasks, and so practice and learn abstraction, decomposition and analysis, which are essential skills for writing computer programs. These environments use a visual language based on the construction of programs using blocks(Block-BasedProgramming - BBP). These blocks physically represent the programming languages of commands which makes easier the initiation of beginners students and keep them attracted to the task (Weintrop & Wilensky, 2015). In addition, the animations act as a natural tool for debugging, showing step-apasso program execution and the state of variables. 3. Games asmeans to practice computational thinking Alice and Scratch are authoring environments, ie, allow the student freely build your solution. These environments are rich in resources and opportunities, however, take time for the studentdevelop the programs. Its adoption in the course of introducing programming requires that consume hours / class of the menu that were planned in the course for solving educational problems with a real programming language. Games have been used in education to introduce and reinforce concepts and to practice as an alternative to traditional exercises (Whitton, 2010). The biggest challenge is to maintain self-esteem and motivation for studentsinsist to try and win the game. However, the fun allows the studentperform its easiest tasks, even when requires more effort (Prensky, 2001). The main factor to promote the programming learning is that the student disciplined practice intensively (Robins et al., 2003). However, often lack motivation to get involved in these tasks. The practice in solving the problems in the games, which are more motivating than traditional exercise, builds confidence and experience, building a structured set of solutions patterns, which will be very useful when you encounter problems using programming languages real (Barnes et al., 2007). the casual games share this idea to have a few goals in tasks. The player is encouraged to quickly overcome the missions and stay involved with the game. The rewards with victories can be converted into new powers, customization of your character, or points to rank it a ranking among other players (Trefry, 2010). For education, casual games can be useful because, in addition to ease of use, and few tasks to keep the player always motivated, they provide feedback, immediate mission replayability to allows you to upgrade and test new possibilities, and are easy to be installed or run on browser (Landers & Callan, 2011). 4. game NoBug's Snack Bar Considering the benefits and opportunities set out in sections 2 and 3, was developed a game for learning and practice of PC techniques. The game mechanics are inspired by the casual game time