Font Size: a A A

Impact of a pre-programming course in a computer science curriculum

Posted on:2004-05-16Degree:Ph.DType:Dissertation
University:Union Institute and UniversityCandidate:Faux, Robert JamesFull Text:PDF
GTID:1460390011477475Subject:Computer Science
Abstract/Summary:
The value of integrating problem solving, algorithm development, algorithm testing, pseudocode, and diagramming techniques into introductory computer science courses has not been quantified in past research. It was hypothesized that the introduction of problem solving and algorithm development topics prior to the introduction of a programming language would reduce the learning curve requirements and increase the success rate for beginning programmers. Existing research suggests that advance organizers may aid learning tasks; this research seeks to confirm whether the addition of algorithm development concepts to the introductory curriculum serve as appropriate organizers for programming learning.;Supplementary materials were developed and used in a typical breadth-first, introductory computer science course (CSO). Weak treatment (control) and strong treatment (treatment) cohorts were tracked through their experiences in the subsequent programming course (CS1). The data collected in the CS1 course followed a standard treatment-posttest-posttest study format, with the treatment occurring in the CSO course. Baseline problem solving skills, demographic information, and satisfaction ratings were collected at the beginning of the CS1 course and were paired with programming skill and satisfaction ratings at the end of that course.;Quantitative data analysis revealed that posttest programming scores for like tests exhibited no significant difference within the sample. However, there was an observed difference with the treatment group performing better than the control group. Specifically, members of the treatment group reported a better experience than the control in the introductory (CSO) course, with significantly different results between groups on a standard Lickert scale. Similarly, the treatment group expressed opinions in qualitative evaluations that supported the conclusions suggested by scaled results. Treatment group members used pseudocode more consistently and applied diagramming concepts to aid in writing code during their posttest experience. Triangulation provided consistent results, which indicated that treatment group participants successfully applied algorithm development processes as part of a programming strategy. In contrast, control group members cited shortcomings in the original introductory curriculum that were directly addressed by the new approach. This confirms experiential and anecdotal evidence that suggests that prior learning of algorithm development skills can have a positive impact on programming learning.
Keywords/Search Tags:Course, Algorithm development, Computer science, Programming, Problem solving, Introductory
Related items