Integrating pair programming into a software development process

被引:30
|
作者
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 条
  • [21] Integrating Knowledge Life Cycle within Software Development Process to Produce a Quality Software Product
    Sabri, Omar
    Alfifi, Fahad
    2017 INTERNATIONAL CONFERENCE ON ENGINEERING AND TECHNOLOGY (ICET), 2017,
  • [22] INTEGRATING CREATIVITY INTO EXTREME PROGRAMMING PROCESS
    Crawford, Broderick
    de la Barra, Claudio Leon
    ICEIS 2008: PROCEEDINGS OF THE TENTH INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS, VOL ISAS-1: INFORMATION SYSTEMS ANALYSIS AND SPECIFICATION, VOL 1, 2008, : 216 - +
  • [23] Pair Programming and Software Defects - An Industrial Case Study
    Phaphoom, Nattakarn
    Sillitti, Alberto
    Succi, Giancarlo
    AGILE PROCESSES IN SOFTWARE ENGINEERING AND EXTREME PROGRAMMING, 2011, 77 : 208 - 222
  • [24] Pair Programming for Software Engineering Education: An Empirical Study
    Karthiekheyan, Kavitha
    Ahmed, Irfan
    Jayalakshmi, Jalaja
    INTERNATIONAL ARAB JOURNAL OF INFORMATION TECHNOLOGY, 2018, 15 (02) : 246 - 255
  • [25] Integrating Software Process Reuse and Automation
    Rouille, Emmanuelle
    Combemale, Benoit
    Barais, Olivier
    Touzet, David
    Jezequel, Jean-Marc
    2013 20TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2013), VOL 1, 2013, : 380 - 387
  • [26] Integrating Vulnerability Risk into the Software Process
    Ezenwoye, Onyeka
    Liu, Yi
    ACMSE 2022: PROCEEDINGS OF THE 2022 ACM SOUTHEAST CONFERENCE, 2022, : 91 - 98
  • [27] Integrating Software Testing into Programming Courses (WISTPC 2014)
    Clarke, Peter J.
    Fu, Yujian
    Kiper, James
    Walia, Gursimran
    PROCEEDINGS OF THE 45TH ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION (SIGCSE'14), 2014, : 739 - 740
  • [28] Investigating the Effect of Pair Programming and Software Size on Software Quality and Programmer Productivity
    Sison, Raymund
    APSEC 09: SIXTEENTH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2009, : 187 - 193
  • [29] Integrating security design into the software development process for e-commerce systems
    Chan, M.T., 2001, Emerald Group Publishing Ltd. (09): : 2 - 3
  • [30] Integrating Usability in the Software Development Process in the Main Development Companies of Ecuador (Quito, Guayaquil and Cuenca)
    Salazar Jacome, Elizabeth
    Uyaguari Uyaguari, Fernando
    Intriago, Monserrate
    NEW CONTRIBUTIONS IN INFORMATION SYSTEMS AND TECHNOLOGIES, VOL 1, PT 1, 2015, 353 : 1081 - 1087