Abstract
Various approaches of game-based computational thinking (CT) environments were designed to better support the development of CT skills, such as abstraction, algorithmic thinking, generalization, or decomposition. We provide a classification of game-based environments for CT according to their characteristics such as the programming tools offered to the learners. In contrast to environments with open-ended tasks, goal-oriented learning environments have the potential to guide learners toward becoming a computational thinker. We present a framework for designing and evaluating game-based CT environments. This framework combines the use of methods of learning analytics with a suitable learning progression in order to provide appropriate dynamic guidance, scaffolds, and feedback to the learners depending on their actual state of programming. Finally, we evaluated our environment ctGameStudio with a study from the science festival “ScienceNight Ruhr 2018” using this framework.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
ScienceNight Ruhr, science festival: https://www.wissensnacht.ruhr/english/ retrieved 2019-02-18.
References
Ala-Mutka, K. M. (2005). A survey of automated assessment approaches for programming assignments. Computer Science Education, 15(2), 83–102.
Blikstein, P. (2011). Using learning analytics to assess students’ behavior in open-ended programming tasks. In: Proceedings of the 1st International Conference on Learning Analytics and Knowledge, (pp. 110–116). LAK ’11, ACM, New York, NY, USA.
Brennan, K., & Resnick, M. (2012). New frameworks for studying and assessing the development of computational thinking. In: Proceedings of the 2012 Annual Meeting of the American Educational Research Association, (Vol. 1, p. 25). Canada: Vancouver.
Budzik, J., & Hammond, K. J. (2000). User interactions with everyday applications as context for just-in-time information access. In: Proceedings of the 5th International Conference On Intelligent User Interfaces, (pp. 44–51). ACM.
Cosma, G., & Joy, M. (2012). An approach to source-code plagiarism detection and investigation using latent semantic analysis. IEEE Transactions on Computers, 61(3), 379–394.
Curtis, B. (1981). The measurement of software quality and complexity. Software Metrics: An Analysis and Evaluation, pp. 203–224.
Engler, D. R. (1996). Vcode: A retargetable, extensible, very fast dynamic code generation system. SIGPLAN Notices, 31(5), 160–170.
Ferguson, R. (2012). Learning analytics: Drivers, developments and challenges. International Journal of Technology Enhanced Learning, 4(5/6), 304–317.
Feurzeig, W., et al. (1969). Programming-Languages as a Conceptual Framework For Teaching Mathematics. Final report on the first fifteen months of the logo project.
González, M. R (2015). Computational thinking test: Design guidelines and content validation. In: Proceedings of EDULEARN15 Conference, (pp. 2436–2444).
Gorman, H., & Bourne, L. E. (1983). Learning to think by learning logo: Rule learning in third-grade computer programmers. Bulletin of the Psychonomic Society, 21(3), 165–167.
Gouws, L. A., Bradshaw, K., & Wentworth, P. (2013). Computational thinking in educational activities: An evaluation of the educational game light-bot. In: Proceedings of the 18th ACM Conference on Innovation and Technology in Computer Science Education, (pp. 10–15). ITiCSE ’13, ACM, New York, NY, USA.
Grover, S., & Basu, S. (2017). Measuring student learning in introductory block-based programming: Examining misconceptions of loops, variables, and boolean logic. In: Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education, (pp. 267–272). ACM.
Grover, S., Bienkowski, M., Niekrasz, J., & Hauswirth, M. (2016). Assessing problem-solving process at scale. In: Proceedings of the Third (2016) ACM Conference on Learning @ Scale, (pp. 245–248). L@S ’16, ACM, New York, NY, USA.
Halstead, M. H., et al. (1977). Elements of software science (operating and programming systems series). New York, NY: Elsevier Science Inc.
Hartmann, W., Nievergelt, J., & Reichert, R. (2001). Kara, finite state machines, and the case for programming as part of general education. In: Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments, 2001, (pp. 135–141). IEEE.
Hermans, F., & Aivaloglou, E. (2016, May). Do code smells hamper novice programming? A controlled experiment on scratch programs. In: 2016 IEEE 24th International Conference on Program Comprehension (ICPC), (pp. 1–10).
Hollingsworth, J. (1960). Automatic graders for programming classes. Communications of the ACM, 3(10), 528–529.
Hoppe, H. U., & Werneburg, S. (2018). Computational thinking—More than a variant of scientific inquiry. In: S.-C. Kong, H. A. (Ed.), Computational Thinking Education. Springer.
Hoppe, U. (2017). Computational methods for the analysis of learning and knowledge building communities. In: C. Lang, G. Siemens, A. F. Wise, & D. Gaevic, (Eds.), The Handbook of Learning Analytics, (1st ed., pp. 23–33). Society for Learning Analytics Research (SoLAR), Alberta, Canada. http://solaresearch.org/hla17/hla17-chapter1.
Ihantola, P., Ahoniemi, T., Karavirta, V., & Seppa¨l¨a, O. (2010). Review of recent systems for automatic assessment of programming assignments. In: Proceedings of the 10th Koli Calling International Conference on Computing Education Research, (pp. 86–93). Koli Calling ’10, ACM, New York, NY, USA.
Iyengar, S. S., Parameswaran, N., & Fuller, J. (1982). A measure of logical complexity of programs. Computer Languages, 7(3–4), 147–160.
Jamil, H. M. (2017, July). Automated personalized assessment of computational thinking mooc assignments. In: 2017 IEEE 17th International Conference on Advanced Learning Technologies (ICALT), (Vol. 00, pp. 261–263).
Ji, J. H., Woo, G., & Cho, H. G. (2007). A source code linearization technique for detecting plagiarized programs. In: ACM SIGCSE Bulletin, (Vol. 39, pp. 73–77). ACM.
Jost, B., Ketterl, M., Budde, R., & Leimbach, T. (2014). Graphical programming environments for educational robots: Open roberta-yet another one? In: 2014 IEEE International Symposium on Multimedia (ISM), (pp. 381–386). IEEE.
Kazimoglu, C., Kiernan, M., Bacon, L., & Mackinnon, L. (2012). A serious game for developing computational thinking and learning introductory computer programming. Procedia-Social and Behavioural Sciences, 47, 1991–1999.
Kelleher, C., Pausch, R., Pausch, R., & Kiesler, S. (2007). Storytelling alice motivates middle school girls to learn computer programming. In: Proceedings of the SIGCHI conference on Human Factors In Computing Systems, (pp. 1455–1464). ACM.
Kiesmüller, U. (2008). Automatisierte identifizierung der Problemlösestrategien von Programmieranfängern in der Sekundarstufe I. In: DDI, (pp. 33–43).
Kolb, D. A. (1976). Learning style inventory technical manual. MA: McBer Boston.
Kölling, M. (2010). The Greenfoot programming environment. ACM Transactions on Computing Education (TOCE), 10(4), 14.
Lee, I., Martin, F., Denner, J., Coulter, B., Allan, W., Erickson, J., et al. (2011). Computational thinking for youth in practice. ACM Inroads, 2(1), 32–37.
Lewis, C. M. (2010). How programming environment shapes perception, learning and goals: Logo vs. scratch. In: Proceedings of the 41st ACM Technical Symposium On Computer Science Education, (pp. 346–350). ACM.
MacLaurin, M. B. (2011). The design of Kodu: A tiny visual programming language for children on the xbox 360. In: ACM Sigplan Notices, (Vol. 46, pp. 241–246). ACM.
Manske, S., & Hoppe, H. U. (2014, July). Automated indicators to assess the creativity of solutions to programming exercises. In: 2014 IEEE 14th International Conference on Advanced Learning Technologies, (pp. 497–501).
Martin, R. C. (2009). Clean code: A handbook of agile software craftsmanship. Pearson Education.
McCabe, T. J. (1976, December). A complexity measure. IEEE Transactions on Software Engineering, SE-2(4), 308–320.
Meerbaum-Salant, O., Armoni, M., & Ben-Ari, M. (2011). Habits of programming in scratch. In: Proceedings of the 16th Annual Joint Conference on Innovation and Technology in Computer Science Education, (pp. 168–172). ITiCSE ’11, ACM, New York, NY, USA.
Mönig, J., & Harvey, B. (2018). Snap!: A Visual, Drag-and-Drop Programming Language. http://snap.berkeley.edu/snapsource/snap.html. Last accessed October 24, 2018.
Moreno, J., & Robles, G. (2014, October). Automatic detection of bad programming habits in scratch: A preliminary study. In: 2014 IEEE Frontiers in Education Conference (FIE) Proceedings, (pp. 1–4).
Moreno-León, J., & Robles, G. et al. (2015). Analyze your scratch projects with Dr. scratch and assess your computational thinking skills. In: Scratch Conference, (pp. 12–15).
Nelson, M., & Larsen, F. N. (2001). Robocode. IBM Advanced Technologies.
Ota, G., Morimoto, Y., & Kato, H. (2016, September). Ninja code village for scratch: Function samples/function analyser and automatic assessment of computational thinking concepts. In: 2016 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), (pp. 238–239).
Papert, S. (1980). Mindstorms: Children, computers, and powerful ideas. Basic Books, Inc.
Pattis, R. E. (1981). Karel the robot: A gentle introduction to the art of programming. Wiley & Sons, Inc.
Peppler, K., & Kafai, Y. (2005). Creative coding: Programming for personal expression. Retrieved August 30(2008), 314.
Peters, L. (2005). Change detection in xml trees: A survey. In: 3rd Twente Student Conference on IT.
Repenning, A. (1993). Agentsheets: A tool for building domain-oriented visual programming environments. In: Proceedings of the INTERACT’93 and CHI’93 Conference on Human Factors In Computing Systems, (pp. 142–143). ACM.
Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., et al. (2009). Scratch: Programming for all. Communications of the ACM, 52(11), 60–67.
Román-González, M., Moreno-León, J., & Robles, G. (2017). Complementary tools for computational thinking assessment. In: S. C Kong, J Sheldon, & K. Y Li (Eds.), Proceedings of International Conference on Computational Thinking Education (CTE 2017), (pp. 154–159). The Education University of Hong Kong.
Rose, S., Habgood, J., & Jay, T. (2018). Pirate plunder: Game-based computational thinking using scratch blocks. In: Proceedings of the Academic Conferences and Publishing International Limited.
Ryder, B. (1979). Constructing the call graph of a program. IEEE Transactions on Software Engineering, 5, 216–226.
Seiter, L., & Foreman, B. (2013). Modeling the learning progressions of computational thinking of primary grade students. In: Proceedings of the Ninth Annual International ACM Conference on International Computing Education Research, (pp. 59–66). ICER ’13, ACM, New York, NY, USA.
Shneiderman, B. (1977). Measuring computer program quality and comprehension. International Journal of Man-Machine Studies, 9(4), 465–478.
Smith, D. C., Cypher, A., & Schmucker, K. (1996). Making programming easier for children. Interactions, 3(5), 58–67.
Smith, D. C., Cypher, A., & Spohrer, J. (1994). Kidsim: Programming agents without a programming language. Communications of the ACM, 37(7), 54–67.
Waguespack, L., Jr., & Badiani, S. (1987). Software complexity assessment: Annotated bibliography. SIGSOFT Softw. Eng. Notes, 12(4), 52–71.
Wang, L., & Chen, M. (2010). The effects of game strategy and preference matching on flow experience and programming performance in gamebased learning. Innovations in Education and Teaching International, 47(1), 39–52.
Weintrop, D., & Wilensky, U. (2012). Robobuilder: A program-to-play constructionist videogame. In: Proceedings of the Constructionism 2012 Conference. Athens, Greece.
Weintrop, D., & Wilensky, U. (2014). Program-to-play videogames: Developing computational literacy through gameplay. In: Proceedings of the 10th Games, Learning, and Society Conference, (pp. 264–271).
Weintrop, D., & Wilensky, U. (2015). To block or not to block, that is the question: Students’ perceptions of blocks-based programming. In: Proceedings of the 14th International Conference on Interaction Design and Children, (pp. 199–208). ACM.
Werneburg, S., Manske, S., Feldkamp, J., & Hoppe, H. U. (2018). Improving on guidance in a gaming environment to foster computational thinking. In: Proceedings of the 26th International Conference on Computers in Education. Philippines.
Werneburg, S., Manske, S., & Hoppe, H. U. (2018). ctstudio. https://ct.collide.info. Last accessed October 24, 2018.
Werneburg, S., Manske, S., & Hoppe, H. U. (2018). ctGameStudio—A game-based learning environment to foster computational thinking. In: Proceedings of the 26th International Conference on Computers in Education. Philippines.
Willems, C., Holz, T., & Freiling, F. (2007). Toward automated dynamic malware analysis using cwsandbox. IEEE Security and Privacy, 5(2), 32.
Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3), 33–35.
Acknowledgements
We dedicate this publication to the memory of Sören Werneburg who designed and developed the ctGameStudio and ctMazeStudio environments and conducted this study.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Singapore Pte Ltd.
About this chapter
Cite this chapter
Manske, S., Werneburg, S., Hoppe, H.U. (2019). Learner Modeling and Learning Analytics in Computational Thinking Games for Education. In: Tlili, A., Chang, M. (eds) Data Analytics Approaches in Educational Games and Gamification Systems. Smart Computing and Intelligence. Springer, Singapore. https://doi.org/10.1007/978-981-32-9335-9_10
Download citation
DOI: https://doi.org/10.1007/978-981-32-9335-9_10
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-32-9334-2
Online ISBN: 978-981-32-9335-9
eBook Packages: Computer ScienceComputer Science (R0)