テスト駆動開発で品質が上がる証拠

テスト駆動開発(TDD)で品質が上がる証拠を得た。

Realizing quality improvement through test driven development: result and experiences of four industrial teams*1

性質が異なる4つの製品の開発プロジェクトで TDD を行って、TDD でない類似の開発プロジェクトとの比較をした。4つのプロジェクトはデバイスドライバ・OS・Webアプリケーション・PCアプリケーションと全く異なる種類のものである。

f:id:fjkz:20160708213157p:plain

欠陥密度は40%から90%減少し、一方で実装時間は15%から35%増加するという結果が得られた。データだけ見ると、TDDの導入は投資としてはお得だと言える。