Pair Programming Re-Design

  • Larry Leifer and Jan Chong | Stanford Center for Design Research, Hasso Plattner Institute of Design

Several academic and industry studies have documented substantial improvements in code design and defect rate when programs are written by pairs of programmers (two people working shoulder-to-shoulder at a single computer) versus individual programmers working independently (solo). Collateral benefits are reported to include improved morale and project knowledge shared efficiently across the development team in a manner that improves productivity in subsequent development cycle.

In our initiative to better understand and manage pair-programming phenomena, this study examines professional pair-programming practices in detail to understand when, how, and when pair programming is most effective. The presentation shares preliminary findings from Phase-1 of the project, a six month ethnographic observation of professional programmers working in pairs using eXtreme Programming software development methodology. Based on fieldwork, we present six hypotheses about the social and cognitive mechanisms that appear to drive pair programming success. We also present the design of a controlled lab experiment under development to test the hypotheses. We are particularly eager to discuss the findings and refine forthcoming experiments.

Pair Programming Re-Design will be presented from the design-thinking-research perspective of the new Hasso Plattner Institute of Design at Stanford (the d.school). An introduction to the d.school is included.

Speaker Details

Larry Leifer is Professor of Mechanical Engineering Design and founding Director of the Stanford Center for Design Research (CDR). A member of the Stanford faculty since 1976, he teaches a master’s course in “Team-Based Product Innovation with Corporate Partners,” a thesis seminar, “Design Theory and Methodology Forum,” and a freshman seminar “Designing the Human Experience.” Research interests includes: 1) creating collaborative environments for distributed product innovation teams; 2) instrumenting the environment for engineering design knowledge capture, indexing, reuse and performance assessment; and 3), design-for-wellbeing, a socially responsible engineering paradigm. Regarding what’s hot, his top priority is continuing development of the Hasso Plattner Institute of Design at Stanford (the d.school). Larry holds a B.S. in general engineering, an M.S. in Product Design, and a Ph.D. in Bioengineering (neurosciences) from Stanford University.ACKNOWLEDGEMENTS: Members of the Pair-Programming research team at Stanford include: Robert Plummer, Scott Klemmer, George Toye, Brandon Burr, and Tom Hurlbutt in addition to Larry Leifer and Jan Chong.

Jan Chong is a fifth year doctoral student in the Department of Management Science and Engineering at Stanford University. She is affiliated with the Center for Work, Technology and Organization. Her research interests include the management of technical work, computer supported collaborative work and software engineering. Jan holds a B.S. and an M.S. in Computer Science from Stanford University.ACKNOWLEDGEMENTS: Members of the Pair-Programming research team at Stanford include: Robert Plummer, Scott Klemmer, George Toye, Brandon Burr, and Tom Hurlbutt in addition to Larry Leifer and Jan Chong.

    • Portrait of Jeff Running

      Jeff Running