The case for collaborative programming
Communications of the ACM
The Unified Modeling Language user guide
The Unified Modeling Language user guide
The Rational Unified Process: an introduction
The Rational Unified Process: an introduction
Extreme programming explained: embrace change
Extreme programming explained: embrace change
Software Metrics: A Rigorous and Practical Approach
Software Metrics: A Rigorous and Practical Approach
Pair Programming Illuminated
The effects of pair-programming on performance in an introductory programming course
SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education
Strengthening the Case for Pair Programming
IEEE Software
A Metrics Suite for Object Oriented Design
IEEE Transactions on Software Engineering
The impact of pair programming on student performance, perception and persistence
Proceedings of the 25th International Conference on Software Engineering
An Empirical Study about the Feelgood Factor in Pair Programming
METRICS '04 Proceedings of the Software Metrics, 10th International Symposium
Two controlled experiments concerning the comparison of pair programming to peer review
Journal of Systems and Software
Proceedings of the 4th international workshop on End-user software engineering
Saros: an eclipse plug-in for distributed party programming
Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering
Drivers of agile software development use: Dialectic interplay between benefits and hindrances
Information and Software Technology
Hi-index | 0.00 |
We present the results of an extensive and substantial case study on pair programming, which was carried out in courses for software development at the University of Dortmund, Germany. Thirteen software development teams with about 100 students took part in the experiments. The groups were divided into two sets with different working conditions. In one set, the group members worked on their projects in pairs. Even though the paired teams could only use half of the workstations the teams of individual workers could use, the paired teams produced nearly as much code as the teams of individual workers at the same time. In addition, the code produced by the paired teams was easier to read and to understand. This facilitates finding errors and maintenance.