7/7 のオブジェクト倶楽部 2009 夏イベントに登壇させていただきます

7/7 七夕の日に、オブジェクト倶楽部 2009 夏イベントに登壇させていただきます。


タイトルは、「テスト駆動開発者は三周目で死ぬのか」。講演の概要として、次のようなことを考えています。

テスト駆動開発 (TDD) に入門し、開発をテスト駆動で行うようになり、日々快適でめでたしめでたし、というわけにはいかないのが現実世界の難しいところです。TDDが机上の空論や、恵まれた環境のみで成り立つものといった意見は最近では減ってきましたが、開発の前線で行う TDDには、現実を直視する世界ゆえの難しさがあることも事実です。

過去の自分が書いたテストの無いコード、テスト内容や組み合わせの複雑化に伴いメンテナンスが難しくなっていくテストコード、実装が変わる度にテストを失敗させるモック、もはや仕様を写し取ってはいないテストコード、次第に下がってゆく自分自身の記憶力やテンション、そして現実と直面する故に訪れる、大きなアーキテクチャ変更。

本セッションでは、テスト駆動開発を「続ける」うえで立ち向かわなければならない所々の問題に対して、どのような戦略で立ち向かうべきか、参加される皆様に伝えたいと考えています。


私はテスト駆動開発 (TDD) について数年間いろいろなところで話してきました。これまではテスト駆動開発の入門を話すことが多かったのですが、昨今状況が変わってきました。講演をお聞きくださるかたに自動テストの経験者が増え、テスト駆動開発はそれなりに広まってきているという印象を感じています。


一方で、 TDD をやってみた結果こういうところで失敗した、こういう難しさがあった、こういうデメリットがあるね、こういう落とし穴があるね、など、失敗や困難にぶつかったなどの話も耳にします。たとえば、 id:kompiro が書いていることなどです。


いまテスト駆動開発について、実践者が増えた故の次の段階の話をしたい、という思いが私の中で生まれています。


テストはただ書けばいいというものではありません。テストの書き方もまたスキルであり、現在も未来でも役に立つよいテストもあれば、後からは役に立たないテストもあります。テストには資産価値があります。テスト駆動開発を行うかぎりは、変化を後押しするテストでなければ、資産価値は低いといえます。


テストもコードもリファクタリングしつつコードベース全体の資産価値を維持し、変化に適応する設計への階段を登るための話をしたいと考えています。


もちろん初心者おきざりの話はしません。TDD について、最初から話したいと思います。テスト駆動開発の考え方(こころ)、入門から実践、そして実践するうえでぶつかる問題に対する取り組み方、考え方など、様々なことを話たいと考えています。


「テスト駆動開発者は三周目で死ぬのか」、変なタイトルですね。このタイトルにはわけがあるのですが、それは当日のお楽しみということで。


イベントの参加申し込みの締切りは 6/29, 来週月曜日まで迫ってきました。応募フォームはこちらです。みなさまぜひ奮ってご参加ください。