開発手法セレクタ

判定フロー — プロジェクトの種類は?

├─ スクリプト・CLI・データ処理
├─ Webアプリ・API(要件が明確)
├─ Webアプリ(ビジネスロジックが複雑)
├─ ライブラリ・パッケージ
└─ プロトタイプ・検証用

早見表 — 手法 × プロジェクト

スクリプトWeb API複雑アプリライブラリプロトタイプ
TDD推奨必須必須必須
BDD推奨
DDD必須
仕様駆動必須推奨
クリーンArchi.推奨必須推奨
設計原則必須必須必須必須参考
CI/CD推奨推奨必須必須

必須 = 全プロジェクトで必ず適用 / 推奨 = あると良い / — = 不要

レシピA: 軽量開発 — スクリプト・CLI

対象: スクレイピング、CLIツール、データ変換バッチ

手法適用役割
設計原則必須DRY・KISS・YAGNIで無駄を省く
TDD推奨主要関数のテスト(完全網羅は不要)
CI/CD推奨push時の自動テストのみ

レシピB: 規格駆動開発 — Web API

対象: REST API、Webアプリバックエンド、既存仕様あり

手法適用役割
仕様駆動開発必須OpenAPI等の仕様を先に書く
TDD必須仕様に基づくテストを先に書く
設計原則必須SOLIDで保守性を確保
CI/CD推奨テスト + Lintパイプライン

レシピC: ドメイン中心開発 — 複雑アプリ

対象: 予約システム、在庫管理、ワークフロー等

手法適用役割
DDD必須ドメインモデルを先に設計
クリーンアーキテクチャ必須レイヤー分離でドメインを保護
TDD必須ドメインロジックのテストを徹底
BDD推奨ユースケースをGiven-When-Thenで記述
設計原則必須SOLID特にSRPとDIP
CI/CD必須全テスト自動実行

レシピD: 品質重視開発 — ライブラリ

対象: 公開ライブラリ、npmパッケージ、Pythonパッケージ

手法適用役割
TDD必須公開APIの全テストを書く
設計原則必須ISPでインターフェース設計を重視
CI/CD必須テスト + 複数バージョン + 自動公開

レシピE: 高速開発 — プロトタイプ

対象: アイデア検証、ハッカソン、使い捨てスクリプト

手法適用役割
設計原則参考KISSだけ意識。SOLIDは後回し
テスト・CI不要。動くものを最速で。
← ガイド一覧に戻る