: Guoping Rong, He Zhang, Mingjuan Xie, and Dong ShaoVenue
: International Conference on Software EngineeringDate
: 2012Type of Experiement
: Controlled ExperimentSample Size
: 21Class/Experience Level
: Undergraduate StudentParticipant Selection
: Freshmen students that received a score between 82 and 87 in a beginning Java courseData Collection Method
: Project Artifact(s)
In the interest of improving the way that PSP is taught to computer science students in order to better prepare them for software engineering processes in industry, this study analyzes possible improvements in teaching PSP to students. In particular, this study addresses the effects of pair programming while learning PSP techniques.
The study was performed on students taking a PSP course at the Software Institute of Nanjing University. Only first-year students that had a similar performance in a beginning Java course at the university were selected. Of the twenty-one students that were analyzed, fourteen were put into pair-programming teams and seven were forced to work solo. At the end of the course, data was gathered based on inconsistent items (inaccurate time logs, errors in following the coding standard, incomplete implementation, etc.), program quality (determined by the number of defects discovered through testing by the TAs of the course), exam scores, and assignment duration.
The study concluded finding that students in the pair-programming group had fewer overall inconsistent items, better overall program quality, and better scores on exams. However, there was no large difference in assignment duration between the two groups. Based on their results, the authors have recommended pair programming as a means to help students learn and perform PSP processes better.