Exploiting Agile Practices to Teach Computational Thinking

1Citations
Citations of this article
40Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Computational Thinking has been introduced as a fundamental skill to acquire, just like basic skills like reading, writing, and numeracy. The reason is that Computational Thinking is one of the most important skills for XXI century citizens, in particular for programmers and scientists at large. Currently, Computer Science teaching practices focus on individual programming and Computational Thinking first, and only later address students to work in teams. We study how Computational Thinking can be enhanced with social skills and teaming practices, aiming at training our students in Computational Thinking exploiting Agile values and practices. Based on prior studies, we describe and compare the four traditional software development learning approaches: solo programmer, pair programmers, self-organized teams, and directed teams. Such approaches have been explored in a number of teaching experiments, involving a significant number of students, over several years. Accordingly, we induced a model that we call Cooperative Thinking, based on such previous evidence and grounded in literature. This paper provides a research synthesis of previous works contextualized in a pedagogical framework, and proposes a new learning paradigm for software engineering education.

Cite

CITATION STYLE

APA

Ciancarini, P., Missiroli, M., & Russo, D. (2020). Exploiting Agile Practices to Teach Computational Thinking. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 12055 LNCS, pp. 63–83). Springer. https://doi.org/10.1007/978-3-030-39306-9_5

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free