TDD Boot Camp 長岡 1.0に参加してきました! #tddbc

TDD Boot Camp 長岡 1.0に参加してきました!
ずっと参加してみたかったTDDBCが長岡で!、ということで飛びつきました。
長岡での開催にアクションして頂いた @masaru_b_cl さん、講師の @t_wada、TAのみなさま、協賛のNDSのみなさま、本当にありがとうございました。

時系列で心に留まったところをメモをみながらピックアップします。

自己紹介

  • みなさんの自己紹介。県外から参加されている方もいました。
  • 学生さんから普段はPMをされている方まで、幅広い人が集まっている印象でした。

Keynote

  • @t_wada さんのキーノートからスタート。
  • 「現代ソフトウェア開発の三本柱」として、VCS、テスティング、自動化のお話。関連して頭に浮かんだのが、VCS、ITS、CIという三種の神器でした。ITSの位置づけも重要だけど、3脚椅子のメタファーを4脚椅子にすると足を一つ削っても結構安定するから駄目だな、って思いましたw
  • 「テスト」という言葉の捉え方について。Developer Testing, Customer Testing, QA Testingという分類で説明され、TDDの文脈ではDeveloper Testingが該当。テストに関する用語の標準化という意味ではISTQBの用語集もあります、ってツイートしました。
  • TDDのこころもち、というお話。なるほどなあ、という感じ。サイクルが1分 -> 1分 -> 2分というのは衝撃的でした。
  • TDDの真の目的は健康。健康なコードと健康なチーム。健康第一ですよね!

    ペアプログラミングによるTDDデモ&写経タイム

    • 写経タイムだ!と思ったのに、CppUTestでやろうと思ったらEclipseではまってついていけずorz
    • ペアとは終始話をしながらやっているなという印象。沈黙がない感じでした。
    • アサートファースト。テストケースの後ろから書いていくことで、テストも見やすくなるとのこと。
    • 仮実装、三角測量といった方法。なるほどなあ、という感じ。


    ペアプログラミングによるTDDハンズオン

    • @bei_kan さんとC言語+CppUTestでハンズオンしました。ありがとうございました!>べいかんさん
    • ペアプロではキー配列とかショートカットとかが普段と違うと大変だと痛感。私のPC(MBA)でやらせてもらったので、私はよかったですが、ペアのべいかんさんには不自由をおかけしちゃいました。
    • そして、久々すぎるC言語ですっかり忘れている・・・・からのでしたorz
    • 初のペアプロでしたが、いわゆるペアプロの効用といわれていることを実感できた感じがしました。そして、とても楽しいけど疲れる(^^;
    • リファクタリングするとコードが本当にきれいになっていくし、振る舞いがかわればきっちりRedになるし、もうなんていうか、楽しい! 大々的にリファクタリングする場面があったのですが、あのときテストが通ったのはキターーーー!でしたw
    • TODOリスト大切ですね。道しるべになって達成感が生まれました。

    レビュータイム

    • 各言語のペアからLT形式で感想とコードの発表。
    • テストケースの粒度がやはり言語、ペアによって差があるなと思いました。クロージングでもでたテスト技法のあたりだったり、テスト設計だったりをこころにとめておくと、変更に強いテストコードになるんじゃないかな、と思いました。

    クロージングセッション

    • 最後に @t_wada さんのクロージング
    • TDDの効果に関する数字的なところの紹介。
    • TDDによる欠陥密度の低下と実装時間の増加、開発時間が短くなっているというアンケート結果、デバッグの仮説検証プロセスを短くすることで工数が見込みにくい部分を少なくできる、などなど、なるほどなるほどでした。
    • 「こんなとき」の足がかりになる本の紹介。技法ドリルの本が出てきたときには、よし!と思いましたw
    • グリーンバンドの話。そう、プロフェッショナルですもん!


    その他

    • 懇親会には残念ながら参加できず。。。
    • グリーンバンドゲット!
    • やっぱり、コード書くって楽しい!

    という感じで、時間をみてお題をもう一度TDDで書いてみたいなあ・・・と思ってます。

    コメント

    このブログの人気の投稿

    [Spring] Autowiredアノテーションを使っているクラスのユニットテスト

    Spring + Thymeleafでデザインの分離を進める(のとっかかり) [Spring Framework Advent Calendar 2012 5日目 #jsug ]

    半固定抵抗を使ってみる(回路図も書いてみた)