TDDBC Tokyo for C++ レポート
はじまりのとき
それは、あの一言から始まった。
「TDDBC Tokyo 1.6 が面白かったんだけど、どうやったら自分でもできるの?」
TDD Boot Camp (TDDBC) は 2007年からはじまったテスト駆動開発(TDD)のブートキャンプだ。TDDの道に入門すべく集ったプログラマ達が、みんなでペアプロをし、TDDの扉を開く、そんなイベントだ。今回、主催の声を上げた英雄は今給黎さん。2011年7月に開催されたTDDBCに参加されていた今給黎さんが、これは自分でもやりたいと声を挙げてくださったのだ。それからは早かった。開催日程、場所がトントン拍子に決まり、すごいパワーで開催まで引っ張ってくれた。
ようこそ
「TDDBCへようこそ」と、中村かおるんさんの講演が始まる。かおるんさんは『KINECTセンサープログラミング』の著者であり、認定スクラムマスターとしてアジャイル界隈でスクラム界隈で活動されている方でもある。そして何より、TDDBC Nagoyaで東のイケメンと噂されたTDDの実践者でもある。TDDの基本となるテストの考え方、TDDのワークフローなどをテンポよく説明してくれる。かおるんさんの話のまとめは「躾」。「躾」とは美しい身と書く。美しい習慣が良いソフトウェアを作っていく。TDDとは、まさにそのような美しい習慣なのだ。
実践へ
講演が終わり、いよいよ実習の開始だ。今回のお題は乗り換えシステム。お題がカードになっていて徐々に配られていく。主催の今給黎さんお手製のお題で、これがまた、絶妙にタスク分けされていて素晴らしい。はじめは数駅の情報からはじめて、徐々に仕様が複雑になっていく。追加された仕様をペアで検討して、ユニットテストに落としていく。こうして、コードが少しずつ成長していくのだ。
ネクストステップ
昼休みをはさんで、午後は井芹さんの講演から再開だ。井芹さんはTDD研究会をはじめ様々な場所で、開発者にとってのテストとはということについて、問題を提起し、提案をしてきた人だ。「TDDへのネクストステップ」と題して、TDDの学習のネクストステップという2つのネクストステップについて語られた。TDDを実践するときの頭の動きを、既存のテストの言葉を使って解き明かしていく。それが井芹流。今回は、同値分割法の話から、データが多くなった時にTDDでどのようなテストを書くべきかが解き明かされていった。これは、丁度、お題である乗り換えシステムで駅のデータが増えた時にどのようにテストに落とし込んでいくかというヒントになっていて、理論と実践を兼ね合わせた、その場にふさわしい講演となった。
実践で前進
この頃には、はじめは初めてのペアプロに戸惑っていたペアも、うまくコラボレーションして、TDDをペアプロを楽しんでいるようだった。まあ、教官の井芹さんは、徹夜で資料を仕上げたらしく、ソファーでぐったりの模様だったけれど。
Keyword(s):
References:[xUTP Magazine 0001号] [ぺけま]