「TDDの本ってあまり売れないんだそうですよ」から始まる、その理由の考察などのまとめ

「TDDの本ってあまり売れないんだそうですよ。」と言う発言から思ったことをつぶやたら思いがけない広がりになったので、まとめてみました。(未完)
19
irof @irof

TDDするとある程度以上の規模か複雑さを持つものならば実装工数は減るんだけど、工数で数字遊びしてる方々には都合の悪い事実なので伏せられてる。

2011-05-24 22:47:33
さかば @sakaba37

保守の工程=リファクタリング RT: @kanu_: 「テストの自動化を行っても、開発工程においてはメリットが少なく、逆に工数が増えるというデメリットがある。効果が出るのは主に保守の工程である。」

2011-05-24 22:49:09
Ryo Asai @ryoasai74

確かに、むしろそれが真実かも。よい設計のプログラムは機能が追加される程再利用により工数が減る傾向になる。RT @irof: TDDするとある程度以上の規模か複雑さを持つものならば実装工数は減るんだけど、工数で数字遊びしてる方々には都合の悪い事実なので伏せられてる。

2011-05-24 22:49:24
せとあず @setoazusa

SIで、保守性の向上をインセンティブにした契約とかできないんだろうか?

2011-05-24 22:50:55
yoh nakamura @yohhatu

@irof そうですねぇ、なかなかTDDが当たり前にならないのも、その辺りなんでしょうかね。

2011-05-24 22:52:48
神ノ離忍(かぬりに) @kanu_

@Qooh0 理解は出来てもExcelで算出した工数には反映しないので承諾しにくいみたいです。

2011-05-24 22:54:17
irof @irof

TDDの手法自体は簡単だけど、何気に前提条件に「リファクタリングを修得してる」があったりする。この時点で現場は大半アウトだったり…。

2011-05-24 23:04:44
せとあず @setoazusa

ソフトウェアテストの専門家にも、自動テストに懐疑的な人っているのよね(例えば http://amzn.to/jHKGBV )。まあ、彼らは実装に踏む込め(ま)ないから、テスト容易性の確保が難しいってのはあるんだろうけど...

2011-05-24 23:07:49
goyoki @goyoki

@setoazusa 話をテスト工程に限定してて、CIみたいな自動化利益が大きいデベロッパーテスティングをテーマ外にしているのも大きいかもしれません。開発しない人多いと思うので > ソフトウェアテストの専門家にも、自動テストに懐疑的な人っているのよね

2011-05-24 23:18:10
せとあず @setoazusa

CiNii ちょっと見てみたが、ソフトウェアのテスト容易性についての研究ってあまりないのか?それってどうなんだ?

2011-05-24 23:21:39
Nishimura Naoto @nawoto

@kanu_ まぁ、開発時に頻繁にリリースに近いとこまで持ってくや、フィードバックを取り込まない感じなら、そうなるよね

2011-05-24 23:08:47
ryos @ryos_

@kanu_ 未だに行数で値段が決まると思っている(実際そういう見積もりを要求してくる)会社がありますからね。TDDは製品コードではないのにコードが増える=吹っかけられるとでも思っているのではないかと。

2011-05-24 23:11:57
山本康彦@BluewaterSoft @biac

結合テストの工数見積もりに、バグ対応の工数を含めないのですねw (いや、マジでやりやがるから、アホかと… (--; ) #tddnet QT @kanu_: 「TDDを実践すると実装工程の工数が増え、結果として見積もりの工数が増やさざるを得ないので受託開発では実践しにくい。」

2011-05-24 23:12:24
山本康彦@BluewaterSoft @biac

採用する現場が少ないから、本も売れない… それはあるかもですね。VB.NETの入門書は売れてるらしいですし。 QT @kanu_: TL追いついてないのであれですが、TDD本が売れないのはそういった事情が有るからなのかなぁと思ったのです。

2011-05-24 23:13:52
神ノ離忍(かぬりに) @kanu_

まぁ何が駄目って、一番ダメなのは自分自身が現役のプログラマーじゃないこと。

2011-05-24 23:23:30
山本康彦@BluewaterSoft @biac

Visual Studioの開発なんて相当に大規模で複雑だと思うんだけど。実装工数は増加した。 http://tinyurl.com/yj7wyct #tddnet QT @kanu_: RT @irof: TDDするとある程度以上の規模か複雑さを持つものならば実装工数は減る…

2011-05-25 08:18:57
Kenichiro Ota @oota_ken

@biac @kanu_ @irof 工数ってどこまでを見ているかによりますよ。保守工数までのトータルだったら確かMSやIBMの調査でも下がったはずです。

2011-05-25 08:23:20
山本康彦@BluewaterSoft @biac

あ、トータル工数のデータが出てる調査があるですか? Nagappan論文には載ってなかった。 QT @oota_ken: @biac @kanu_ @irof 工数ってどこまでを見ているかによりますよ。保守工数までのトータルだったら確かMSやIBMの調査でも下がったはずです。

2011-05-25 08:26:28
Kenichiro Ota @oota_ken

@biac @kanu_ @irof 前見たやつにはあったようなw

2011-05-25 08:28:53
山本康彦@BluewaterSoft @biac

ぉお! 公開されてる資料だったら、(暇が出来たときに)教えてくだされ。保守どころか、リリースまでの工数比較で、TDDの方がおトクなはずだと感じてるものの、裏付けデータを知らないのです。 QT @oota_ken: @biac @kanu_ @irof 前見たやつにはあったようなw

2011-05-25 08:32:25
中村 薫 @kaorun55

TDDの話し、文脈が分かってないけど、いきなりTDDよりは、まずテストコードを書いてもらって、テストコードがないと不安な体にすればいいと思う。TDDが目的ではないのだから

2011-05-25 08:35:58
中村 薫 @kaorun55

動いてるコードに触るな。は真だけど、プロじゃないな

2011-05-25 08:40:02
yoh nakamura @yohhatu

最初に作って終わり!後はよろ~なら、(最初の作り手にとっての)価値はそれほどない・・・と判断するだろうけどなぁ。この辺の認識って何度いろんな人と話してもだいたい同じシナリオを辿ることが多い。「あぁ、デジャブだ・・・」みたいな感じで。

2011-05-25 08:59:08
ぎゃばん@手洗い @ledsun

TDDってメソッドのテストを先にかくんだから、メソッドレベルの仕様まで落とせなかったら、始めれないですよ。ただFixした仕様は必要ない、お試しで書いてあとで修正することを恐れない。

2011-05-25 09:04:09