On the effects of pair programming on thoroughness and fault-finding effectiveness of unit tests

被引:0
作者
Madeyski, Lech [1 ]
机构
[1] Wroclaw Univ Technol, Inst Appl Informat, PL-50370 Wroclaw, Poland
来源
PRODUCT-FOCUSED SOFTWARE PROCESS IMPROVEMENT, PROCEEDINGS | 2007年 / 4589卷
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Code coverage and mutation score measure how thoroughly tests exercise programs and how effective they are, respectively. The objective is to provide empirical evidence on the impact of pair programming on both, thoroughness and effectiveness of test suites, as pair programming is considered one of the practices that can make testing more rigorous, thorough and effective. A large experiment with MSc students working solo and in pairs was conducted. The subjects were asked to write unit tests using JUnit, and to follow test-driven development approach, as suggested by eXtreme Programming methodology. It appeared that branch coverage, as well as mutation score indicator (the lower bound on mutation score), was not significantly affected by using pair programming, instead of solo programming. However, slight but insignificant positive impact of pair programming on mutations score indicator was noticeable. The results do not support the positive impact of pair programming on testing to make it more effective and thorough. The generalization of the results is limited due to the fact that MSc students participated in the study. It is possible that the benefits of pair programming will exceed the results obtained in this experiment for larger, more complex and longer projects.
引用
收藏
页码:207 / 221
页数:15
相关论文
共 46 条
[1]  
AMMANN P, 2008, IN PRESS INTRO SOFTW
[2]  
APA, 2001, Publication manual of the American Psychological Association, V5th, DOI DOI 10.1037/0000165-000
[3]   Evaluating pair programming with respect to system complexity and programmer expertise [J].
Arisholm, Erik ;
Gallis, Hans ;
Dyba, Tore ;
Sjoberg, Dag I. K. .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2007, 33 (02) :65-86
[4]  
Beck K., 2004, Extreme Programming Explained: Embrace Change, V2nd
[5]  
Beck Kent, 2003, Test-driven development: by example
[6]  
CAI X, 2005, SIGSOFT SOFTW ENG NO, V30, P1
[7]  
*CENQ PTY LTD, CLOV PROJ
[8]   A mutation analysis tool for Java programs [J].
P. Chevalley ;
P. Thévenod-Fosse .
International Journal on Software Tools for Technology Transfer, 2003, 5 (1) :90-103
[9]  
Cook T.D., 1979, QUASIEXPERIMENTATION
[10]  
CORNETT S, CODE COVERAGE ANAL