A Family of Experiments on Test-Driven Development

April 29, 2022

コードの品質への影響を調査するTDDの先行研究は複数あるが、研究手法、被検者、プログラミング環境などの実験条件は様々、結論は違い、明確なこたえはない。 表題の論文は、個別のTDDの実験結果の精度と汎化性を上げることにあり、そのために、結果に影響すると考えられる実験条件をかえ、TDDとITL(iterative test-last development)を比較する12の実験を実施した。 被検者は4大学と企業12社、5つのトイタスクを解き、通ったテストオラクルの割合で実装の品質を評価した。 結果、TDDをはじめたばかりの被検者はITLによる実装のほうが品質が高かった。 エディタや言語、ITLとTDDの実験の被験順序、TDDとITLをどちらを先に学んだかは品質に影響しなかった。 学生よりも企業に所属するプロフェッショナルのほうがTDD、ITL両方で品質がよかったが、TDDで実装したときの品質の下がり幅は学生の下がり幅の2倍に及んだ。

論文へのリンク