Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【超図解】5分でわかるTDD概論

 【超図解】5分でわかるTDD概論

2025年のGWにt_wada本(敬称略)を読んでいい刺激を受けたので、自分なりにTDDの概論についてまとめてみました。

Avatar for なゆた

なゆた

May 09, 2025
Tweet

Other Decks in Programming

Transcript

  1. まずエントロピーとは? • 情報エントロピー(IT用語、FEの内容なので説明は割愛)※1 • コードが長くなればなるほど(if文が増えるほど)状態遷移のパターンは 無限に増大する。→エントロピーの増大 • エントロピーが増えるとプログラミングが大変、システム開発を円滑に進 めるためにはテストやリファクタリング等により、エントロピーを現実的 な範囲に収束させる必要がある。

    ※1 ここでいうエントロピーは全て情報エントロ ピーの事を指します。IPAがFE等で示すエント ロピーの定義とシャノンのエントロピーが指す 内容には若干のズレがあるのですが、細かい話 をするとそれだけで1時間コースなので、気に なる人は後で各自調べてください。 エントロピーが 大きい(多い) エントロピーが 小さい(少ない) 簡単なスクリプト 大企業の基幹システム 会計処理 CRUD 画面遷移の無い フリーソフト 会員登録機能 WEB開発 よく分からんソフトウェア モバイル開発 神エクセル 管理画面 開発が 大変 Hard 開発が 簡単 Easy
  2. とはいえ面倒臭くないか? • テスト→実装という流れで内容が重複するので実際二度手間 • これ以上仕事を増やすなという現場の声 • 管理職クラスの無理解 従来工法(理想) 従来工法(現実) TDD?

    要件定義・設計 実装作業 テスト 要件定義・設計 実装作業 テスト 納期遅延 潜在バグ のリスク 要件定義・設計 テスト 実装作業 納期 キックオフ