オルタナティブ・ブログ > 森崎修司の「どうやってはかるの?」 >

計測できそうでできない多くのこと。エンピリカル(実証的)アプローチで。

TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社

»

ここ(本ブログの過去エントリ)で、IBMとMSでのTDD(Test Driven Development)の適用評価事例を報告する論文を紹介した。TDDの適用評価は他にもあり、ここで紹介するのも、そのうちの1つ。

Boby George, a and Laurie Williams: A structured experiment of test-driven development, Journal of Information and Software Technology Vol. 46, No. 5, p. 337-342(2004)

論文では、24人の実務経験者を対象にテスト駆動開発をした場合としなかった場合(設計→実装→テスト)の比較をしている。報告されている主な知見は以下のとおり。

  • TDDを実施した場合に機能テスト(ブラックボックス)で不具合を検出するテーストケース数が削減された(不具合を検出したテストケースが18%減少)。
  • TDDを実施した場合に、コーディング(実装)の時間が16%増えた。
  • TDDを実施した場合、テストのカバレッジが大きくなった。

被験者を対象としたアンケートでは、以下を含む結果が得られた。

  • 96%の被験者がデバッグの工数を減らすと感じた。
  • 88%の被験者が要求が洗練されると感じた。
  • 92%の被験者がコードの品質を上げると感じた。
  • 50%の被験者が開発工数を減らすと感じた。

対象ソフトウェアは商用のものではなく、小規模のものだそうだ。グループを2つにわけ、TDD+ペアプログラミングのグループ、設計→実装→テストのグループとしている。

Comment(2)