The Impact of Different Teaching Approaches and Languages On
Total Page:16
File Type:pdf, Size:1020Kb
The Impact of Different Teaching Approaches and Languages on Student Learning of Introductory Programming Concepts A Thesis Submitted to the Faculty of Drexel University by Wanda M. Kunkle in partial fulfillment of the requirements for the degree of Doctor of Philosophy September 2010 Copyright 2010 Wanda M. Kunkle. All Rights Reserved. ii DEDICATIONS I dedicate this dissertation to the memory of Nathan J. Kunkle the loving father who encouraged me to become the person I was meant to be and the highly respected educator who inspired me to follow in his footsteps. Nathan J. Kunkle (1907 – 1965) iii ACKNOWLEDGEMENTS I wish to thank my advisor, Robert Allen, and the members of my dissertation committee for their support and guidance in doing the research and writing required to complete this work. I also wish to thank the Computer Science instructors who helped me recruit the students who participated in my research study, as well as the students themselves. Without the students, there would have been no study. I especially wish to thank the friends and family who encouraged me to keep going when I began to falter because I was feeling overwhelmed by the amount of time and effort I needed to put in to complete this dissertation. Some of those friends are on my dissertation committee, so they are getting thanked twice. Finally, a special thanks goes out to my cousin, Durand Kunkle, who regularly called to ask how I was progressing with my dissertation. He has been planning the celebration for some time now. iv TABLE OF CONTENTS LIST OF FIGURES .......................................................................................................ix ABSTRACT ....................................................................................................................xiii CHAPTER 1: INTRODUCTION..................................................................................1 1.1 Problem Statement..........................................................................................1 1.2 Novice Teaching Approaches in Practice .....................................................2 1.3 Contribution to Computer Science Education Research ............................5 CHAPTER 2: APPROACHES FOR TEACHING OBJECT-ORIENTED PROGRAMMING .................................................................................6 2.1 Brief Descriptions............................................................................................6 2.2 Detailed Descriptions ......................................................................................7 2.2.1 Objects-First Approach Using BlueJ .......................................................7 2.2.2 Objects-First or Objects-Early Approach Using Alice ............................9 2.2.3 Imperative-First Approach Using Python ...............................................12 2.3 Distinctive Features ........................................................................................14 CHAPTER 3: REVIEW OF NOVICE PROGRAMMER LITERATURE ..............16 3.1 Programming Language Knowledge.............................................................16 3.1.1 Procedural and Functional Languages ...................................................16 3.1.2 Object-Oriented Languages .....................................................................17 3.2 Programming Misconceptions .......................................................................18 3.3 Scaffolding for Learning Object-Oriented Programming ..........................20 3.3.1 Definition of Scaffolding ..........................................................................20 3.3.2 Key Features of Scaffolding .....................................................................21 v 3.3.3 Scaffolding to Support Learning to Program ..........................................21 3.4 Theories of Learning to Program ..................................................................22 3.4.1 Constructivism .........................................................................................22 3.4.2 Assimilation Encoding Theory .................................................................24 3.4.3 Advance Organizers .................................................................................25 3.5 Model of Object-Oriented Programming .....................................................26 3.6 Transfer in Computing Environments .........................................................26 3.6.1 Definition of Transfer ..............................................................................26 3.6.2 Theories of Transfer .................................................................................26 3.6.3 New Learning as Transfer from Previous Learning ................................27 3.6.4 Transfer Between Programming Languages and Text Editors................28 CHAPTER 4: EDUCATIONAL ASSESSMENT ........................................................29 4.1 Assessment in Computing ..............................................................................29 4.2 Principles of Assessment.................................................................................30 4.3 Approaches to Assessment .............................................................................30 4.4 Existing Tools ..................................................................................................31 4.4.1 Mathematics, Science, and Engineering ..................................................31 4.4.2 Computing ................................................................................................32 4.5 A Tool for Introductory Computing .............................................................33 4.5.1 Rationale ..................................................................................................33 4.5.2 Characteristics of the Tool.......................................................................34 4.5.3 Tool Development ....................................................................................41 4.5.4 Reliability and Validity of the Tool ..........................................................42 vi CHAPTER 5: PILOT STUDY.......................................................................................46 5.1 Purpose.............................................................................................................46 5.2 Participants ......................................................................................................46 5.3 Task ..................................................................................................................46 5.4 Results ..............................................................................................................47 5.5 Analysis ............................................................................................................49 CHAPTER 6: RESEARCH QUESTIONS AND HYPOTHESES .............................51 6.1 Research Questions .........................................................................................51 6.2 Related Hypotheses .........................................................................................52 CHAPTER 7: EXPERIMENTAL STUDY DESIGN ..................................................53 7.1 Purpose of Study .............................................................................................53 7.2 Description of Methodology (General)..........................................................53 7.2.1 Time Dimension .......................................................................................53 7.2.2 Units of Analysis ......................................................................................53 7.2.3 Units of Observation (Participants).........................................................53 7.2.4 Constructs ................................................................................................54 7.2.5 Terms or Components ..............................................................................54 7.2.6 Level of Measurement ..............................................................................55 7.3 Description of Methodology (Detailed) .........................................................55 7.3.1 Description ...............................................................................................55 7.3.2 Research Questions ..................................................................................55 7.3.3 Related Hypotheses ..................................................................................56 7.3.4 Methodology ............................................................................................56 vii 7.3.5 Data Analysis ...........................................................................................57 CHAPTER 8: MAIN STUDY DESCRIPTION AND RESULTS ..............................58 8.1 Purpose.............................................................................................................58 8.2 Participants ......................................................................................................58 8.3 Task ..................................................................................................................60 8.4 Results ..............................................................................................................60 8.5 Assessment Tool ..............................................................................................61 8.5.1 Scoring Procedure ...................................................................................61