A multiple case study on the impact of pair programming on product quality
Proceedings of the 27th international conference on Software engineering
Investigating pair-programming in a 2nd-year software development and design computer science course
ITiCSE '05 Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education
Proceedings of the 11th annual SIGCSE conference on Innovation and technology in computer science education
A networking lab facility on the cheap: turning obstacles into opportunities
Journal of Computing Sciences in Colleges
The JavaFest: a collaborative learning technique for Java programming courses
Proceedings of the 6th international symposium on Principles and practice of programming in Java
An experimental investigation of personality types impact on pair effectiveness in pair programming
Empirical Software Engineering
Modeling dynamics in agile software development
ACM Transactions on Management Information Systems (TMIS)
A repository of agile method fragments
ICSP'10 Proceedings of the 2010 international conference on New modeling concepts for today's software processes: software process
SCRUB: a tool for code reviews
Innovations in Systems and Software Engineering
Construction of a collaborative learning environment through sharing of a single desktop screen
ACELAE'11 Proceedings of the 10th WSEAS international conference on communications, electrical & computer engineering, and 9th WSEAS international conference on Applied electromagnetics, wireless and optical communications
Social effects of pair programming mitigate impact of bounded rationality
Proceedings of the 45th ACM technical symposium on Computer science education
Hi-index | 0.00 |
Anecdotal and statistical evidence [1-3] indicates that pair programmers--two programmers working side-by-side at one computer, collaborating on the same design, algorithm, code or test--outperform individual programmers. One of the programmers, the driver, has control of the keyboard/mouse and actively implements the program. The other programmer, the observer, continuously observes the work of the driver to identify tactical (syntactic, spelling, etc.) defects, and also thinks strategically about the direction of the work. On demand, the two programmers can brainstorm any challenging problem. Because the two programmers periodically switch roles, they work together as equals to develop software. This practice of pair programming can be integrated into any software development process. As an example, this paper describes the changes that were made to the Personal Software Process (PSP) to leverage the power of two programmers working together, thereby formulating the Collaborative Software Process (CSP). The paper also discusses the expected results of incorporating pair programming into a software development process in which traditional, individual programming is currently used.