TDD(Test-Driven Development)とは、実装コードを書く前にテストを書き、テスト失敗(RED)→実装(GREEN)→リファクタリング(Refactor)の短いサイクルを繰り返す開発手法である。
## RED → GREEN → Refactor TDD の手順は極めてシンプルだ。まず、これから実装する機能の期待動作をテストとして書く。当然テストは失敗する(RED)。
次に、テストを通すための最小限のコードを書く(GREEN)。最後に、動作を変えずにコードを整理する(Refactor)。この3ステップを数分〜十数分の短いサイクルで回し続ける。
## 設計ツールとしてのテスト TDD を「テスト手法」と捉えると本質を見誤る。テストを先に書くことで、関数のインターフェース(引数と戻り値)が実装前に決まる。呼び出し側の視点でAPIを設計するため、使いにくいインターフェースが生まれにくい。
Kent Beck が TDD を提唱した動機も、テスト網羅率の向上ではなく設計品質の改善にあった。## 単体テストとの使い分け TDD で書くテストの大半は単体テストになる。ただし TDD は「いつテストを書くか」の方法論であり、単体テストは「何をテストするか」のスコープの話だ。
TDD のサイクル内で機能テスト相当のテストを書くこともあるし、TDD を使わずに単体テストを書くこともある。## ATDD との補完関係 ATDD がビジネス要件の正しさを外側から保証するのに対し、TDD は内部実装の正しさを内側から積み上げる。プロジェクト全体では、ATDD で受け入れ基準を定義し、その基準を満たすための個々の関数を TDD で実装していくという二層構造が理想的だ。


コンテキスト・エンジニアリング(Context Engineering)とは、AI モデルに与えるコンテキスト——コードベースの構造、コミット履歴、設計意図、ドメイン知識——を体系的に設計・最適化する技術領域である。

DevSecOpsとは、DevOpsのパイプラインにセキュリティ対策を最初から組み込み、開発・セキュリティ・運用の3領域を統合するアプローチである。

Claude Code とは、Anthropic が開発したターミナル常駐型の AI コーディングエージェントであり、コードベースの理解・編集・テスト実行・Git 操作を自然言語の指示で一貫して行える CLI ツールである。


ヒューマン・イン・ザ・ループ(HITL)とは?AIで業務自動化を定着させる「人間参加型」設計の基礎
RAG(Retrieval-Augmented Generation)とは、外部の知識ソースから関連情報を検索し、その結果を LLM の入力に付加することで、回答の正確性と最新性を向上させる手法である。