Improving problem decomposition ability in CS1 through explicit guided inquiry-based instruction

CS1 students are often expected to learn to clarify a problem, decompose it into subproblems, solve and test these subproblems as units, and then recompose the tested units into an overarching solution. As other researchers have noted, problem decomposition is often taught only implicitly, but it is an important skill which benefits from both explicit instruction and practice. This paper describes our efforts to improve student problem decomposition ability by utilizing explicit guided inquiry-based instruction in problem decomposition. We applied a problem decomposition rubric adapted from an Association of American Colleges and Universities VALUE rubric to final course projects in two CS1 sections, a CS1 section with explicit instruction on problem decomposition compared against a CS1 section without the explicit instruction. Students in the section with the explicit instruction realized significant gains in problem decomposition ability and also seeming gains in the elective use of unit tests.

[1]  David Ginat On varying perspectives of problem decomposition , 2002, SIGCSE '02.

[2]  Bruria Haberman,et al.  Pattern-oriented instruction and its influence on problem decomposition and solution construction , 2007, ITiCSE.

[3]  Deborah Whitfield From university wide outcomes to course embedded assessment of CS1 , 2003 .

[4]  Helen H. Hu,et al.  Teaching CS 1 with POGIL activities and roles , 2014, SIGCSE.

[5]  Aaron W. Keen,et al.  Program Decomposition and Complexity in CS1 , 2015, SIGCSE.

[6]  Monica M. McGill,et al.  Student portfolios and software quality metrics in computer science education , 2006 .

[7]  Mark A. Toleman,et al.  Training strategic problem solvers , 2004, SGCS.

[8]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[9]  Walter Savitch Problem Solving with C++, 7th Edition , 2006 .

[10]  Cheng-Chih Wu,et al.  Computational Thinking Curriculum for K-12 Education -- A Delphi Survey , 2015, 2015 International Conference on Learning and Teaching in Computing and Engineering.

[11]  Mark Toleman,et al.  Incorporating programming strategies explicitly into curricula , 2007 .

[12]  Amber Settle,et al.  Turning the tables: learning from students about teaching CS1 , 2012, SIGITE '12.

[13]  C. Hmelo‐Silver,et al.  Scaffolding and Achievement in Problem-Based and Inquiry Learning: A Response to Kirschner, Sweller, and Clark (2006) , 2007 .

[14]  Jeannette M. Wing An introduction to computer science for non-majors using principles of computation , 2007, SIGCSE.

[15]  Cynthia Collins Selby,et al.  Promoting computational thinking with programming , 2012, WiPSCE.

[16]  Mark Toleman,et al.  Teaching and assessing programming strategies explicitly , 2009, ACE '09.

[17]  Debra T. Burhans,et al.  The evolution of CS1 textbooks , 2002, 32nd Annual Frontiers in Education.