Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Teaching Computational Thinking Using Agile Software Engineering Methods: A Framework for Middle Schools

Published: 24 August 2017 Publication History

Abstract

Computational Thinking (CT) has been recognized as one of the fundamental skills that all graduates should acquire. For this reason, motivational concerns need to be addressed at an early age of a child, and reaching students who do not consider themselves candidates for science, technology, engineering, and mathematics disciplines is important as well if the broadest audience possible is to be engaged. This article describes a framework for teaching and assessing CT in the context of K-12 education. The framework is based on Agile software engineering methods, which rely on a set of principles and practices that can be mapped to the activities of CT. The article presents as well the results of an experiment applying this framework in two sixth-grade classes, with 42 participants in total. The results show that Agile software engineering methods are effective at teaching CT in middle schools, after the addition of some tasks to allow students to explore, project, and experience the potential product before using the software tools at hand. Moreover, according to the teachers’ feedback, the students reached all the educational objectives of the topics involved in the multidisciplinary activities. This result can be taken as an indicator that it is possible to use computing as a medium for teaching other subjects, besides computer science.

References

[1]
Pekka Abrahamsson, Ilenia Fronza, Raimund Moser, Jelena Vlasenko, and Witold Pedrycz. 2011. Predicting development effort from user stories. In Proceedings of the 2011 International Symposium on Empirical Software Engineering and Measurement (ESEM’11). 400--403
[2]
Joel C. Adams and Andrew R. Webster. 2012. What do students learn about programming from game, music video, and storytelling projects? In Proceedings of the 43rd ACM Technical Symposium on Computer Science Education (SIGCSE’12). ACM, New York, NY, 643--648.
[3]
Alfred V. Aho. 2012. Computation and computational thinking. Comput. J. 55, 7 (July 2012), 832--835.
[4]
Lorin W. Anderson, David R. Krathwohl, Peter W. Airasian, Kathleen A. Cruikshank, Richard E. Mayer, Paul R. Pintrich, James Raths, and Merlin C. Wittrock. 2001. A Taxonomy for Learning, Teaching, and Assessing: A Revision of Bloom’s Taxonomy of Educational Objectives. Allyn 8 Bacon (Pearson Education Group), Boston, MA.
[5]
Valerie Barr and Chris Stephenson. 2011. Bringing computational thinking to K-12: What is involved and what is the role of the computer science education community?ACM Inroads 2, 1 (Feb. 2011), 48--54.
[6]
Brigid Barron, Caitlin Martin, Eric Roberts, Alex Osipovich, and Michael Ross. 2002. Assisting and assessing the development of technological fluencies: Insights from a project-based approach to teaching computer science. In Proceedings of the Conference on Computer Support for Collaborative Learning: Foundations for a CSCL community, 2002. International Society of the Learning Sciences, 668--669.
[7]
Beverley Bell and Bronwen Cowie. 2001. The characteristics of formative assessment in science education. Sci. Educ. 85, 5 (2001), 536--553.
[8]
Ernest N. Biktimirov and Linda B. Nilson. 2006. Show them the money: Using mind mapping in the introductory finance course. J. Financ. Educ. 32, 3 (2006), 72--86.
[9]
Benjamin S. Bloom and David R. Krathwohl. 1956. Taxonomy of Educational Objectives: The Classification of Educational Goals, by a Committee of College and University Examiners. Handbook I: Cognitive Domain. Longmans, Green, New York, NY.
[10]
Bryce Boe, Charlotte Hill, Michelle Len, Greg Dreschler, Phillip Conrad, and Diana Franklin. 2013. Hairball: Lint-inspired static analysis of scratch projects. In Proceeding of the 44th ACM Technical Symposium on Computer Science Education (SIGCSE’13). ACM, New York, NY, 215--220.
[11]
Karen Brennan and Mitchel Resnick. 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 (AERA’12). 1--25.
[12]
Tony Buzan and Barry Buzan. 2000. The Mind Map Book. BBC Books, London.
[13]
Mario Cardinal. 2013. Executable Specifications with Scrum: A Practical Guide to Agile Requirements Discovery (1st ed.). Addison-Wesley Professional.
[14]
Patricia Charlton. 2013. Computational Thinking and Computer Science in Schools. Retrieved Januay 2, 2015 from http://www.lkl.ac.uk/cms/files/jce/articles/time_to_re-loadwhattheresearchsaysbriefing27april2012.pdf.
[15]
Mike Cohn. 2004. User Stories Applied: For Agile Software Development. Addison-Wesley Professional.
[16]
Mike Cohn. 2005. Agile Estimating and Planning. Pearson Education.
[17]
Steve Cooper and Steve Cunningham. 2010. Teaching computer science in context. ACM Inroads 1, 1 (March 2010), 5--8.
[18]
National Research Council. 2010. Committee for the Workshops on Computational Thinking: Report of a Workshop on the Scope and Nature of Computational Thinking. Technical Report. National Research Council.
[19]
Dan Crow. 2014. Why Every Child Should Learn to Code. (feb 2014). Retrieved November 3, 2015 from http://www.theguardian.com/technology/2014/feb/07/year-of-code-dan-crow-songkick.
[20]
Martin Davies. 2011. Concept mapping, mind mapping and argument mapping: What are the differences and do they matter? Int. J. High.Educ. Educati. Plan. 62, 3 (September 2011), 279--301.
[21]
Peter J. Denning and Peter A. Freeman. 2009. The profession of IT: Computing’s paradigm. Commun. ACM 52, 12 (Dec. 2009), 28--30.
[22]
Enrico Di Bella, Ilenia Fronza, Nattakarn Phaphoom, Alberto Sillitti, Giancarlo Succi, and Jelena Vlasenko. 2013. Pair programming and software defects—A large, industrial case study. IEEE Trans. Softw. Eng. 39, 7 (2013), 930--953.
[23]
Tore Dybå. 2000. Improvisation in small software organizations. IEEE Softw. 17, 5 (Sept. 2000), 82--87. 0740-7459
[24]
Norman E. Fenton and Niclas Ohlsson. 2000. Quantitative analysis of faults and failures in a complex software system. IEEE Trans. Softw. Eng. 26, 8 (Aug. 2000), 797--814.
[25]
Allan Fisher and Jane Margolis. 2002. Unlocking the Clubhouse: The Carnegie Mellon Experience. MIT Press, Cambridge, MA.
[26]
Ilenia Fronza, Nabil El Ioini, and Luis Corral. 2015. Students want to create apps: Leveraging computational thinking to teach mobile software development. In Proceedings of the 16th Annual Conference on Information Technology Education (SIGITE’15). ACM, New York, NY, 21--26.
[27]
Ilenia Fronza, Nabil El Ioini, Andrea Janes, Alberto Sillitti, Giancarlo Succi, and Luis Corral. 2014. If I had to vote on this laboratory, I would give nine: Introduction on computational thinking in the lower secondary school: Results of the experience. Mond. Digit. 13, 51 (2014), 757--765.
[28]
Ilenia Fronza and Giancarlo Succi. 2009. Modeling spontaneous pair programming when new developers join a team. In Proceedings of the 10th International Conference on Agile Processes and eXtreme Programming in Software Engineering (XP’09).
[29]
Ilenia Fronza and Patrick Zanon. 2015. Introduction of computational thinking in a hotel management school [Introduzione del computational thinking in un istituto alberghiero]. Mond. Digit. 14, 58 (2015), 28--34.
[30]
Shuchi Grover. 2015. “Systems of assessments” for deeper learning of computational thinking in K-12. In Proceedings of the Annual Meeting of the American Educational Research Association. 1--9.
[31]
Shuchi Grover, Stephen Cooper, and Roy Pea. 2014. Assessing computational learning in k-12. In Proceedings of the 2014 Conference on Innovation and Technology in Computer Science Education (ITiCSE’14). ACM, New York, NY, 57--62.
[32]
Shuchi Grover and Roy Pea. 2013. Computational thinking in k--12: A review of the state of the field. Educ. Res. 42, 1 (Jan./Feb. 2013), 38--43.
[33]
Richard F. Gunstone. 1992. Probing Understanding. Falmer.
[34]
Susanne Hambrusch, Christoph Hoffmann, John T. Korb, Mark Haugan, and Antony L. Hosking. 2009. A multidisciplinary approach towards computational thinking for science majors. SIGCSE Bull. 41, 1 (March 2009), 183--187.
[35]
ISTE and CSTA. 2011. Computational Thinking: Teacher Resources (2nd ed). Retrieved December 2014 from http://csta.acm.org/Curriculum/sub/CompThinking.html. (2011).
[36]
Italian Ministry of Education. 2014. Retrieved May 20, 2015 from La buona scuola in 12 punti. https://labuonascuola.gov.it/documenti/I_12_punti.pdf?v=b4d78c0.
[37]
Association for Computing Machinery (ACM) Joint Task Force on Computing Curricula and IEEE Computer Society. 2013. Computer Science Curricula 2013: Curriculum Guidelines for Undergraduate Degree Programs in Computer Science. ACM, New York, NY.
[38]
Magne Jorgensen and Martin Shepperd. 2007. A systematic review of software development cost estimation studies. IEEE Trans. Softw. Eng. 33, 1 (2007), 33--53.
[39]
Karl M. Kapp. 2013. The Gamification of Learning and Instruction Fieldbook: Ideas into Practice (1st ed.). Pfeiffer 8 Company.
[40]
Jon R. Katzenbach and Douglas K. Smith. 1993. The Wisdom of Teams: Creating the High-performance Organization. Harvard Business Press.
[41]
Caitlin Kelleher and Randy Pausch. 2007. Using storytelling to motivate programming. Commun. ACM 50, 7 (July 2007), 58--64.
[42]
Paul A. Kirschner, John Sweller, and Richard E. Clark. 2006. Why minimal guidance during instruction does not work: An analysis of the failure of constructivist, discovery, problem-based, experiential, and inquiry-based teaching. Educ. Psychol. 41, 2 (2006), 75--86.
[43]
Kyu Han Koh, Ashok Basawapatna, Vicki Bennett, and Alexander Repenning. 2010. Towards the automatic recognition of computational thinking for adaptive visual language learning. In Proceedings of the 2010 IEEE Symposium on Visual Languages and Human-Centric Computing (VLHCC’10). IEEE Computer Society, Washington, DC, 59--66.
[44]
Kyu Han Koh, Ashok Basawapatna, Hilarie Nickerson, and Alexander Repenning. 2014. Real time assessment of computational thinking. In Proceedings of the 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC’14). 49--52.
[45]
Lucas Layman, Laurie Williams, Kelli Slaten, Sarah Berenson, and Mladen Vouk. 2008. Addressing diverse needs through a balance of agile and plan-driven software development methodologies in the core software engineering course. Int. J. Eng. Educ. 24 (2008), 659--670.
[46]
Michael Lodi. 2014. Imparare il pensiero computazionale, imparare a programmare. Mond. Digit. 13, 51 (2014).
[47]
Jane Margolis. 2008. Stuck in the Shallow End: Education, Race, and Computing. The MIT Press.
[48]
Robert Cecil Martin. 2003. Agile Software Development: Principles, Patterns, and Practices. Prentice Hall PTR, Upper Saddle River, NJ.
[49]
Thomas J. McCabe. 1976. A complexity measure. IEEE Transactions on Software Engineering SE-2, 4 (Dec 1976), 308--320.
[50]
Orni Meerbaum-Salant, Michal Armoni, and Mordechai (Moti) Ben-Ari. 2010. Learning computer science concepts with scratch. In Proceedings of the 6th International Workshop on Computing Education Research (ICER’10). ACM, New York, NY, 69--76.
[51]
Jesús Moreno-León, Gregorio Robles, and Marcos Román-González. 2015. Dr. Scratch: Automatic analysis of scratch projects to assess and foster computational thinking. Revi. Educ. Dist. 46 (September 2015), 1--23.
[52]
Jesús Moreno-León, Gregorio Robles, and Marcos Román-González. 2016. Comparing computational thinking development assessment scores with software complexity metrics. In Global Engineering Education Conference (EDUCON'16). IEEE, 1040--1045.
[53]
Fersun Paykoç, Bünyamin Mengi, Pınar Olgun Kamay, Pınar Önkol, Birikim Özgür, Olga Pilli, and Hamide Yıldırım. 2004. What are the major curriculum issues? The use of mindmapping as a brainstorming exercise. In Proceedings of the 1st International Conference on Concept Mapping, Vol. 2. 457--467.
[54]
Ljubomir Perković, Amber Settle, Sungsoon Hwang, and Joshua Jones. 2010. A framework for computational thinking across the curriculum. In Proceedings of the 15th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE’10). ACM, New York, NY, 123--127.
[55]
Jane Chu Prey and Alfred C. (Alf) Weaver. 2013. Fostering gender diversity in computing. Computer 46, 3 (March 2013), 22--23.
[56]
Syed M. Rahman and Paul L. Juell. 2006. Applying software development lifecycles in teaching introductory programming courses. In Proceedings of the 19th Conference on Software Engineering Education Training (CSEET’06). 17--24.
[57]
Eric Steven Raymond. 2004. The Art of Unix Programming. Addison-Wesley.
[58]
Alexander Repenning, David Webb, and Andri Ioannidou. 2010. Scalable game design and the development of a checklist for getting computational thinking into public schools. In Proceedings of the 41st ACM Technical Symposium on Computer Science Education (SIGCSE’10). ACM, New York, NY, 265--269.
[59]
Mitchel Resnick, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum, Jay Silver, Brian Silverman, and Yasmin Kafai. 2009. Scratch: Programming for all. Commun. ACM 52, 11 (Nov. 2009), 60--67.
[60]
Amber Settle, Baker Franke, Ruth Hansen, Frances Spaltro, Cynthia Jurisson, Colin Rennert-May, and Brian Wildeman. 2012. Infusing computational thinking into the middle- and high-school curriculum. In Proceedings of the 17th ACM Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE’12). ACM, New York, UNY, 22--27.
[61]
Allen Tucker, Dennis McCowan, Fadi Deek, Chris Stephenson, Jill Jones, and Anita Verno. 2003. A Model Curriculum for K-12 Computer Science: Report of the ACM K-12 Task Force Computer Science Curriculum Committee. ACM, New York, NY.
[62]
Anna Van der Aa. 2014. Should our software development process begin with storyboarding? Retrieved from http://www.ensci.com/uploads/media/memoire_Anna_VanderAa.pdf.
[63]
R. Vinayakumar. 2014. Learning computational thinking with scratch programming. Retrieved from http://scratched.gse.harvard.edu/sites/default/files/.
[64]
Jagoda Walny, Sheelagh Carpendale, Nathalie Henry Riche, Gina Venolia, and Philip Fawcett. 2011. Visual thinking in action: Visualizations as used on whiteboards. IEEE Trans. Vis. Comput. Graph. 17, 12 (Dec 2011), 2508--2517.
[65]
Linda Werner, Jill Denner, Shannon Campe, and Damon Chizuru Kawamoto. 2012. The fairy performance assessment: Measuring computational thinking in middle school. In Proceedings of the 43rd ACM Technical Symposium on Computer Science Education (SIGCSE’12). ACM, New York, NY, 215--220.
[66]
Jeannette M. Wing. 2006. Computational thinking. Commun. ACM 49, 3 (2006).
[67]
Jeannette M. Wing. 2014. Computational thinking benefits society. Retrieved September 17, 2015 from http://socialissues.cs.toronto.edu.
[68]
Claes Wohlin, Per Runeson, Martin Höst, Magnus C. Ohlsson, Björn Regnell, and Anders Wesslén. 2012. Experimentation in Software Engineering. Springer Science 8 Business Media.

Cited By

View all
  • (2024)Improving 6th Grade Students’ Creative Problem Solving Skills Through Plugged and Unplugged Computational Thinking ApproachesJournal of Science Education and Technology10.1007/s10956-024-10130-yOnline publication date: 8-Jun-2024
  • (2024)Enhancing rural students’ computer science self-efficacy in a robotics-based language arts courseEducation and Information Technologies10.1007/s10639-024-12875-wOnline publication date: 28-Jun-2024
  • (2023)Adjusting the ChildProgramming Methodology to Educational Robotics Teaching and DebuggingEducation Sciences10.3390/educsci1309093613:9(936)Online publication date: 14-Sep-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Computing Education
ACM Transactions on Computing Education  Volume 17, Issue 4
December 2017
123 pages
EISSN:1946-6226
DOI:10.1145/3134765
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 August 2017
Accepted: 01 February 2017
Revised: 01 February 2017
Received: 01 January 2016
Published in TOCE Volume 17, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Computational thinking
  2. K-12
  3. agile methods
  4. framework
  5. software engineering

Qualifiers

  • Research-article
  • Research
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)81
  • Downloads (Last 6 weeks)10
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Improving 6th Grade Students’ Creative Problem Solving Skills Through Plugged and Unplugged Computational Thinking ApproachesJournal of Science Education and Technology10.1007/s10956-024-10130-yOnline publication date: 8-Jun-2024
  • (2024)Enhancing rural students’ computer science self-efficacy in a robotics-based language arts courseEducation and Information Technologies10.1007/s10639-024-12875-wOnline publication date: 28-Jun-2024
  • (2023)Adjusting the ChildProgramming Methodology to Educational Robotics Teaching and DebuggingEducation Sciences10.3390/educsci1309093613:9(936)Online publication date: 14-Sep-2023
  • (2022)Developing a pedagogical evaluation framework for computational thinking supporting technologies and toolsFrontiers in Education10.3389/feduc.2022.9577397Online publication date: 16-Aug-2022
  • (2022)Case Studies on the Use of Storyboarding by Novice ProgrammersProceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 110.1145/3502718.3524749(318-324)Online publication date: 7-Jul-2022
  • (2022)A Guide Towards a Definition of Computational Thinking in K-122022 IEEE Global Engineering Education Conference (EDUCON)10.1109/EDUCON52537.2022.9766703(801-810)Online publication date: 28-Mar-2022
  • (2022)Computer science education and K-12 students’ computational thinking: A systematic reviewInternational Journal of Educational Research10.1016/j.ijer.2022.102008114(102008)Online publication date: 2022
  • (2022)Voraussetzungen für die erfolgreiche Nutzung von agilen Methoden und agiler Führung im SchulkontextAgilität in der Schulentwicklung10.1007/978-3-658-38175-2_5(53-73)Online publication date: 31-Aug-2022
  • (2021)Developing Eighth-Grade Students’ Computational Thinking with Critical ReflectionSustainability10.3390/su13201119213:20(11192)Online publication date: 11-Oct-2021
  • (2021)Unleashing the Potential of Abstraction From Cloud of Computational Thinking: A Systematic Review of LiteratureJournal of Educational Computing Research10.1177/0735633121105537960:4(877-905)Online publication date: 9-Dec-2021
  • Show More Cited By

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media