組込の視点からTDDとその教え方を学んできた【速報版】
私自身、エンタープライズ系・Web系システムの開発がメインで、組込システムの開発経験は皆無です。ですが今回、次の3点を特に学びたいと思い、「組込」と銘打たれていましたが参加しました。
(1) TDD自体
自社のシステムに「レガシーコード」(テストの無いコード)が多く、手動テストが多くてエンジニアに大きな負荷がかかっていると認識しています。自分自身、過去に担当したプロダクト・システムでレガシーコードにテストを入れて現場を改善したことがありますが、その知識が妥当なのかどうか、ムダなところがないかどうか、世界的に有名なTDDのコーチから直接伺いたいなと思いました。
(2) TDDの教え方
自社のレガシーコードを撲滅すべく、TDDを実践し広めようと考えているのですが、教える側の立場として、どういった視点を持つべきか、どこに注意すべきかについても体得したいと考えました。
(3) TDDの効果の説明方法
一方でTDDをやろうとすると、マネージャなどにそれを実施するメリットなどを説明できる必要があります。TDDのROIやKPIについて私案を持っているのですが、それがどの程度妥当なのかについても、あわせて確認したいと思いました。
学んだこと
研修を受けた当日の夜にこれを書いているので、ポイントだけ整理します。細かい点は後日アップします。
(1) TDD自体
(2) TDDの教え方
(3) TDDの効果の説明方法
TDDの根本的な効果は、仕事を効率化すること。
- 手作業のテストなど、非効率な作業とその時間を減らすことに意味がある。
- マネージャに対してこの点を示すことは価値がある。
- ROIは「減らすことのできたムダな作業時間 / テストを作るのに費やした時間」で出せる。
- 「エンジニアが楽しい」は確かに実践する立場からは言いたいだが、マネージャが欲しい情報ではない。
参考書籍
Test Driven Development: By Example (Addison-Wesley Signature Series (Beck))
- 作者: Kent Beck
- 出版社/メーカー: Addison-Wesley Professional
- 発売日: 2002/11/08
- メディア: ペーパーバック
- 購入: 1人 クリック: 8回
- この商品を含むブログ (12件) を見る
リファクタリング―プログラムの体質改善テクニック (Object Technology Series)
- 作者: マーチンファウラー,Martin Fowler,児玉公信,平澤章,友野晶夫,梅沢真史
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2000/05
- メディア: 単行本
- 購入: 94人 クリック: 3,091回
- この商品を含むブログ (312件) を見る
レガシーコード改善ガイド (Object Oriented SELECTION)
- 作者: マイケル・C・フェザーズ,ウルシステムズ株式会社,平澤章,越智典子,稲葉信之,田村友彦,小堀真義
- 出版社/メーカー: 翔泳社
- 発売日: 2009/07/14
- メディア: 大型本
- 購入: 45人 クリック: 673回
- この商品を含むブログ (157件) を見る