summary


  • 17:00 今週のジャンプはSKET DANCEがキレてた。ペロペロペロキャンペロペロキャン♪ #
  • 17:40 @yoshiori @t_wada @kakutani 「TDDはテスト手法ではない、開発手法」って言は、TDDが実証テストのみの場合は真だが、反証テストを含むなら誤り。反証テストを含むなら立派にテスト手法でもある。 #
  • 17:55 @kakutani 実際問題、TDDで実証テスト(正常に動くことを確認する)は当然やってるだろうけど、反証テスト(エラーを起こそうとして確認する)は書いてる?それとも別のテストで補填してる? fyi: @t_wada @yoshiori #
  • 18:06 @kakutani は興味なくても、あのスライドだと @yoshiori の誤った考え方(である可能性がある)に、権威付けを与えている。「@kakutani @t_wada 直伝だ」と見える。この議論いかんであの言が偽だったら、@yoshiori はスライドを訂正した方が良い。 #
  • 18:13 @yksk ボタンクリックしてる。古い発言に答えてくれてありがとう。 #
  • 18:23 @kakutani #devsumi2010 を見てればわかるけど、@yoshiori のスライドが今すごい勢いで広がってる。「TDDはテスト手法じゃないんだ」ってことで別の手順を用意するのはDRYでないし、プログラミング界全体で損失だと私は考える。TDDがテスト手法も兼ねる場合 #
  • 18:25 @yoshiori なぜ品質担保のテストはTDDで兼ねない方がいいと思うのですか? #
  • 18:35 @yoshiori 品質担保の全てをやれとか言ってません。「TDDには品質担保は(一部でも)含まれないのか?」を問題にしています。 #
  • 18:43 @yoshiori 一連の流れを読みました。個人の考えで敢えて言ってるわけですね。それならばスライドを修正する必要はありません。が、私は暴論だと思いますし、この考えが一般的になるのを憂慮しています。 #
  • 18:48 @yoshiori ケント・ベック著『テスト駆動開発入門』p.vi にも、「欠陥密度が充分に削減されれば、QA(品質保証)は受動的な作業から能動的な作業になる」と明瞭に書いてあります。その後、ケント・ベックが言を翻していなければですが。翻していてもそもそもはそういう目的です。 #
  • 18:53 @yoshiori 「オレオレTDD」を広めるなら、但し書きを付けるなどの、誠実な対応を望みます。 #
  • 18:58 @yoshiori 速度は落ちますがリズムは崩れません。 #
  • 19:03 @yoshiori さんの言うのはTDDじゃなくてBDDじゃないですか? BDDが名前からテストを抜いたのは、実証のみに絞るという態度の現れだと思いますので、@yoshiori さんの言うTDDに近いと思います。 #
  • 19:34 "「ヒトラーがドイツでやったことはすべて合法だったことを忘れるな」 (Never forget that everything Hitler did in Germany was legal)..." tumblr.com/xap6oy3lp #
  • 21:24 @yoshiori からへんじがない、ただのしかばねのようだ。 #
  • 21:57 極道☆キラリを読む。 #
  • 23:04 @t_wada 「反証」テストは「間違っていると証明する」ことを試みるテストという意味で使っています。 #
  • 23:05 @t_wada 実証(正常に動く)を幾ら積み重ねても信頼度は上がらないことは同意して頂けると思いますが、「反証」は1つあればその動作は間違っていると証明できます。ゆえに、反証テストを多様に積み上げることで信頼性が上がっていくということが導かれます。 #
  • 23:12 @t_wada そして、TDDは反証テストも含むので信頼度が上がるのは間違いありません。ゆえに、テスト手法も含んでいると見るのが妥当でしょう。従って @yoshiori の「テスト手法ではない」という断言は間違いです。 #
  • 23:13 @t_wada ただ、TDDで信頼度が上がるのは一定レベルまで、充分ではないと思います。システムを破壊してバグを見つけるテストなどは外部化せざるを得ません。 #
  • 23:15 @t_wada 例えば「このパラメーターを与えたらエラーになるだろう」というようなテストです。エラーが起こったら、テスト対象にフィードバックされ、信頼度が上がるというわけです。 #
  • 23:16 @t_wada 「TDDはテスト手法でもあり、開発手法でもあるが、テスト手法としては不十分だ」が正しい言だと思います。 #
  • 23:19 @t_wada はい、第三者の視点が欠けています。TDDがテスト手法としては不十分というのは認めます。 #
  • 23:21 @t_wada あまり語義論にはつっこみたくないんですが、「テスト手法」は「テストをするやり方」ぐらいの捉え方でいいと思います。この捉え方でしたら、TDDは「テスト手法」を含みます。 #
  • 23:23 @t_wada @yoshiori さんのように、TDDは「テスト手法ではない」と言いたいなら、BDDという言葉を使うべきだと私は思います。 #
  • 23:24 @t_wada 論理の問題です。「不十分だ」からといって「ではない」とは言えません。 #
  • 23:34 @t_wada これらのことは、私が独自に考えぬいたわけではなくて、私が最近ハマっている、カール・ポパーという現代思想家の科学哲学から引いてきたものです。「反証主義」でググってみると、そのエッセンスは読み取れると思います. #
  • 23:37 @t_wada 私は先に述べた論理から、カニンガムの言が間違っていると判断します。 #
  • 23:45 @t_wada 私は『テスト駆動開発入門』 p. iv の「コードの欠陥密度を劇的に低下させ」という文から、反証主義的には、信頼度を上げる「テスト手法」とみても間違いないと思います。 #
  • 23:45 @t_wada はい、そうです。 #
  • 23:49 @t_wada 反証主義の「厳しい反証テストを耐え抜いた仮説ほど信頼性(強度)が高い」というのは、プログラムのテストに通づるものがあるとは思いませんか? テストは完璧がなくキリがないのも含めて。放射線でビット反転するとか普通考慮しませんもの。 #
  • 23:57 @t_wada ただ、私はカール・ポパーについて調べ始めたばかりで、彼の理論への反証を追ってないので、この考え方に確証はないです。他に彼の理論を包含するよりよい理論があるかもしれません。なので、その場合はTDDについても考え方を改める必要があるかもしれません。現状解です。 #
  • 00:06 @t_wada 私は、テストを実証テストと反証テストの2分類にして、(実証テストが通るのはもちろんですが)反証テストの多様性が信頼度を高める、と提案したいです。 #
  • 00:13 @t_wada 横軸にテストケース数を使った場合が近いですが、これは単純に「数」であって「多様性」を担保するものではないので、ちょっと違いますね。 #
  • 00:16 @t_wada その通りだと思います。 #
  • 00:18 @t_wada そのとおりだと思います。ただ、一定レベルまでは効用がありますので、明確に違うと言い切るのには異を唱えたいと思います。 #
  • 00:21 @t_wada 多様性の定量化は、テスターの発想しだいで上限が無限に広がるので、難しいと思います。ただ、コンピューターという制約がいくらか狭めてくれるかもしれません。 #
  • 00:25 @t_wada なるほど、「やればわかる」というのは、ほとんどの場合そうだと思います。となれば、@yoshiori のスライドも特に害はないかもしれません。論理でなく効果という観点で考えるのならば。 #
  • 00:26 @niku_name はい、そうです。 #
  • 00:31 @t_wada そうですね。命令網羅、分岐網羅、境界網羅とか道標はあるわけで、徐々に領域を拡張していくしかないんじゃないでしょうか。 #
  • 00:34 @niku_name ごめん、反証テストを誤解してると思う。「このパラメーター渡したらエラーになるかな〜どうかな〜」ってのが反証テストで、グリーンだったらそのままですし、レッドだったらリファクタリングで対象コードがブラッシュアップされます。 #
  • 00:34 @niku_name ごめん、s/リファクタリング/書き直し/ #
  • 00:43 @niku_name そうですね。そんな感じです。 #
  • 00:54 @t_wada の議論も終わったので、ぺろぺろモードに戻ります。ぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろぺろ #
  • 00:58 今月のコミックメガストアは、最終ページでまさかのスケールアウトする、牧野坂シンイチ「いたずら催眠術」と、ピザデブ狂喜の、ヒタギリ「ピザと小獣」が特に良かったですね。 #
  • 01:02 プロジェクトマネジメント手法として、CCPMはかなりイケてると思う。ただ、社会性が絡むと「ブラックスワン」は発生するものなので、完璧な手法はありえない。 #
  • 01:02 人類が1人になれば、マネジメントの問題は解決します! #
  • 01:08 @niku_name def test_sum; assert_equal 4, sum(2, 2); end ってテスト書いた後に、def sum(a, b); 4; end ではじめるよね?その後、assert_equal 5, sum(2,3) って反証テスト付け足すよね? #
  • 01:11 @niku_name さっきの例は単純化して言えばだけど。テストによって、対象コードが育っていく場合は、ほとんど反証テストだと思う。 #
  • 01:20 @niku_name 対象コードがブラッシュアップされたら、もはや反証テストは実証テストに成り果てるわけだけれども。 #
  • 01:29 @kdmsnr 宇野さん来てたんだー。「オタクのゼロ年代をまとめるのに、仮面ライダーを分析対象に選ぶのって、視聴者数的に間違ってないですか?」って聞きたかった。 #
  • 01:34 @martiankawasaki ホントそう思う。A4縦が全部おさまる縮尺にすると字が小さくて読めないんだよね。 #
  • 01:37 極道☆キラリ3巻がクライマックスなので読みながら寝ます。おやすみ〜 #
  • 01:51 @kdmsnr ふむん。そういうことか。 #
  • 02:59 極道☆キラリ3巻おもしろかった! 1巻2巻は女装とヤクザっ娘の横暴さで笑わせてくれたが、3巻ではヒーロー(?)がまさかの劇的な境遇に陥って……!オススメTRPGリプレイ bit.ly/cRmMa3 #
  • 03:00 @kdmsnr ありがとうございます。乙。 #
  • 04:24 @yoshiori @kakutani @t_wada との議論を「TDDはテスト手法か否か」というタイトルで @kdmsnr がまとめてくれました。ご参照ください>follower。 togetter.com/li/6759 #
Automatically shipped by LoudTwitter