Integrating pair programming into a software development process

被引:29
|
作者
Williams, L [1 ]
机构
[1] N Carolina State Univ, Dept Comp Sci, Raleigh, NC 27695 USA
关键词
D O I
10.1109/CSEE.2001.913816
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:27 / 36
页数:10
相关论文
共 50 条
  • [1] Globally distributed software development and pair programming
    Flor, Nick V.
    [J]. COMMUNICATIONS OF THE ACM, 2006, 49 (10) : 57 - 58
  • [2] Software process fusion: Uniting pair programming and solo programming processes
    Lui, Kim Man
    Chan, Keith C. C.
    [J]. SOFTWARE PROCESS CHANGE, 2006, 3966 : 115 - 123
  • [3] Software process fusion by combining pair and solo programming
    Lui, K. M.
    Chan, K. C. C.
    [J]. IET SOFTWARE, 2008, 2 (04) : 379 - 390
  • [4] INTEGRATING CONCEPT SELECTION IN A SOFTWARE DEVELOPMENT PROCESS
    Singiresu, Manoj
    Boggavarapu, Kumar
    Takai, Shun
    [J]. DECT2008: PROCEEDINGS OF THE ASME INTERNATIONAL DESIGN ENGINEERING TECHNICAL CONFERENCE AND COMPUTERS AND INFORMATION IN ENGINEERING CONFERENCE, VOL 5, 2009, : 159 - 169
  • [5] Integrating performance modeling in the software development process
    Balsamo, S
    Simeoni, M
    [J]. RADICAL INNOVATIONS OF SOFTWARE AND SYSTEMS ENGINEERING IN THE FUTURE, 2004, 2941 : 35 - 49
  • [6] Enhancing Software Development in the MIS Curriculum using Pair Programming
    Ndabvonga-Dongo, Tendai
    Reed, April H.
    [J]. AMCIS 2015 PROCEEDINGS, 2015,
  • [7] Integrating project planning and process modeling for software development
    Chung, LML
    Chan, KCC
    [J]. ASSET'99: 1999 IEEE SYMPOSIUM ON APPLICATION-SPECIFIC SYSTEMS AND SOFTWARE ENGINEERING & TECHNOLOGY - PROCEEDINGS, 1999, : 276 - 279
  • [8] Integrating static analysis into a secure software development process
    Kleidermacher, David N.
    [J]. 2008 IEEE CONFERENCE ON TECHNOLOGIES FOR HOMELAND SECURITY, VOLS 1 AND 2, 2008, : 367 - 371
  • [9] Pair programming in software development teams - An empirical study of its benefits
    Bipp, Tanja
    Lepper, Andreas
    Schmedding, Doris
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2008, 50 (03) : 231 - 240
  • [10] Integrating agile software development and software process improvement: a longitudinal case study
    Salo, O
    Abrahamsson, P
    [J]. 2005 International Symposium on Empirical Software Engineering (ISESE), Proceedings, 2005, : 187 - 196