PlanIT! A New Integrated Tool to Help Novices Design for Open-ended Projects

Project-based learning can encourage and motivate students to learn through exploring their own interests, but introduces special challenges for novice programmers. Recent research has shown that novice students perceive themselves to be "bad at programming, especially when they do not know how to start writing a program, or need to create a plan before getting started. In this paper, we present PlanIT, a guided planning tool integrated with the Snap! programming environment designed to help novices plan and program their open-ended projects. Within PlanIT, students can add a description for their project, use a to do list to help break down the steps of implementation, plan important elements of their program including actors, variables, and events, and view related example projects. We report findings from a pilot study of high school students using PlanIT, showing that students who used the tool learned to make more specific and actionable plans. Results from student interviews show they appreciate the guidance that PlanIT provides, as well as the affordances it offers to more quickly create program elements.

[1]  Johan Jeuring,et al.  Code Quality Issues in Student Programs , 2017, ITiCSE.

[2]  Eleanor O'Rourke,et al.  Why do CS1 Students Think They're Bad at Programming?: Investigating Self-efficacy and Self-assessments at Three Universities , 2020, ICER.

[3]  Albert T. Corbett,et al.  Effectiveness of cognitive apprenticeship learning (CAL) and cognitive tutors (CT) for problem solving using fundamental programming concepts , 2011, SIGCSE '11.

[4]  John Maloney,et al.  Alice, Greenfoot, and Scratch -- A Discussion , 2010, TOCE.

[5]  Moira Maguire,et al.  Doing a thematic analysis: A practical, step-by-step guide for learning and teaching scholars. , 2017 .

[6]  Joseph Jay Williams,et al.  Engaging Students with Instructor Solutions in Online Programming Homework , 2020, CHI.

[7]  Elizabeth T. Turner,et al.  Meeting Learners' Needs through Project-Based Learning , 2012, Int. J. Adult Vocat. Educ. Technol..

[8]  Michail N. Giannakos,et al.  Introductory programming: a systematic literature review , 2018, ITiCSE.

[9]  Lucy Suchman Plans and situated actions: the problem of human-machine communication , 1987 .

[10]  Mohammed Ibrahim,et al.  THEMATIC ANALYSIS: A CRITICAL REVIEW OF ITS PROCESS AND EVALUATION , 2012 .

[11]  RepenningAlexander,et al.  Scalable Game Design , 2015 .

[12]  Albert T. Corbett,et al.  Evaluation of Guided-Planning and Assisted-Coding with Task Relevant Dynamic Hinting , 2014, Intelligent Tutoring Systems.

[13]  Aman Yadav,et al.  The Influence of Problem Solving Abilities on Students' Performance on Different Assessment Tasks in CS1 , 2016, SIGCSE.

[14]  Nicholas Lytle,et al.  Crescendo: Engaging Students to Self-Paced Programming Practices , 2020, SIGCSE.

[15]  Fang Wei,et al.  From objects-first to design-first with multimedia and intelligent tutoring , 2005, ITiCSE '05.

[16]  James Clarke,et al.  THE CHECKLIST MANIFESTO , 2011, The Ulster Medical Journal.

[17]  A. James 2010 , 2011, Philo of Alexandria: an Annotated Bibliography 2007-2016.

[18]  Michael Kölling,et al.  The Greenfoot Programming Environment , 2010, TOCE.

[19]  Chinma Uche,et al.  Analyzing Year One of a CS Principles PD Project , 2015, SIGCSE.

[20]  Yasmin B. Kafai,et al.  What Videogame Making Can Teach Us About Literacy and Learning: Alternative Pathways into Participatory Culture , 2007, DiGRA Conference.

[21]  Li Sun,et al.  Exploring the Difficulties African-American Middle School Girls Face Enacting Computational Algorithmic Thinking over three Years while Designing Games for Social Change , 2017, Computer Supported Cooperative Work (CSCW).

[22]  F. Paas,et al.  Cognitive Architecture and Instructional Design , 1998 .

[23]  Kirsti Ala-Mutka,et al.  A study of the difficulties of novice programmers , 2005, ITiCSE '05.

[24]  Daniel D. Garcia,et al.  The beauty and joy of computing , 2015, Inroads.

[25]  Carl Alphonce,et al.  Green: a customizable UML class diagram plug-in for eclipse , 2005, OOPSLA '05.

[26]  Kyungbin Kwon,et al.  Novice programmer’s misconception of programming reflected on problem-solving plans , 2017, Int. J. Comput. Sci. Educ. Sch..

[27]  Beatriz Pérez,et al.  A Project-Based Learning Approach for Enhancing Learning Skills and Motivation in Software Engineering , 2020, SIGCSE.

[28]  A. Burke,et al.  An Exploratory Study Comparing Goal-Oriented Mental Imagery with Daily To-Do Lists: Supporting College Student Success , 2014 .

[29]  Mary Shaw,et al.  The state of the art in end-user software engineering , 2011, ACM Comput. Surv..

[30]  Keith Quille,et al.  Programming: predicting student success early in CS1. a re-validation and replication study , 2018, ITiCSE.