エンジニア組織論の会で発表したLTです。
TDDと 認知Gunma.web#41@kanayannet
View Slide
今⽇のアジェンダTDDなぜこれを話す?やりたくない?どうすれば?まとめ
TDD
ご存知「テスト駆動開発」
お約束テストを先に書く
なぜ、これを話す?経験上、「認知の歪み」を感じる事が多い
どんな歪み?Why TDD?動作保証をするためテストコードが仕様書になる関数の振る舞いを確認するためetc...
否定はしないけども?
本当は?コードのデザインについて考える時間が必要。スコープを制御するためのメソッドが必要。ここでいうスコープは...テストを順次グリーンにして、今実装すべき機能を整理するということ。by Kent Beck
なぜ「Red」からなのか?理由があるはず =気づかせやすい気づかせやすい =認知しやすい
「認知の歪み」による反論動作保証をするため後で⼈がテストすればいいじゃんテストコードが仕様書になる仕様書別途⽤意すればいいじゃん関数の振る舞いを確認するためテストコードじゃなくてもいいじゃん
「テスト」という⾔葉の印象保証する動作確認するetc...
「コード」という⾔葉の印象別途、書かなくてはいけない⼯数がかかりそう
やりたくない..というよりデメリットを意識してしまう
やりたい<->やりたくない負けのパターン対⽴しちゃうだけ
やりたくない=デメリットデメリットを取り除くそもそも誤解がある
どうすれば?
初⼼にかえるコードのデザインについて考える時間が必要。スコープを制御するためのメソッドが必要。ここでいうスコープは...テストを順次グリーンにして、今実装すべき機能を整理するということ。by Kent Beck
初⼼を伝えてみる
ポイント相⼿のせいにすると...⾝構える「初⼼を忘れちゃダメ」と⾔うだけで...「初⼼に戻ってみてはどうでしょう?」と提案する形「もともと何でしたっけ?」と直接的な⾔い回しを避けた⽅が良い場合も...
対⽴感を出さない対⽴してる感を出したら負けのパターン意地になりやすい
まとめTDDやりたくない理由あるあるそもそも⾏き違いが起きている感⾏き違い(誤解)を紐解く対⽴しない
伝えやすい⼈々新⼈さん無垢学⽣さん無垢PG書いている⼈感覚が伝わりやすい
啓蒙活動しどころ(価値が⾼そう)マネジメントやってる⼈
というかですねなぜこのLTやったかというと...
⽂章にすることで頭が整理される
Like TDD似てるね
Welcome Your LT⾶び込みも歓迎です。
ご清聴ありがとうございました。