| スクリプト | Web API | 複雑アプリ | ライブラリ | プロトタイプ | |
|---|---|---|---|---|---|
| TDD | 推奨 | 必須 | 必須 | 必須 | — |
| BDD | — | — | 推奨 | — | — |
| DDD | — | — | 必須 | — | — |
| 仕様駆動 | — | 必須 | 推奨 | — | — |
| クリーンArchi. | — | 推奨 | 必須 | 推奨 | — |
| 設計原則 | 必須 | 必須 | 必須 | 必須 | 参考 |
| CI/CD | 推奨 | 推奨 | 必須 | 必須 | — |
必須 = 全プロジェクトで必ず適用 / 推奨 = あると良い / — = 不要
対象: スクレイピング、CLIツール、データ変換バッチ
| 手法 | 適用 | 役割 |
|---|---|---|
| 設計原則 | 必須 | DRY・KISS・YAGNIで無駄を省く |
| TDD | 推奨 | 主要関数のテスト(完全網羅は不要) |
| CI/CD | 推奨 | push時の自動テストのみ |
対象: REST API、Webアプリバックエンド、既存仕様あり
| 手法 | 適用 | 役割 |
|---|---|---|
| 仕様駆動開発 | 必須 | OpenAPI等の仕様を先に書く |
| TDD | 必須 | 仕様に基づくテストを先に書く |
| 設計原則 | 必須 | SOLIDで保守性を確保 |
| CI/CD | 推奨 | テスト + Lintパイプライン |
対象: 予約システム、在庫管理、ワークフロー等
| 手法 | 適用 | 役割 |
|---|---|---|
| DDD | 必須 | ドメインモデルを先に設計 |
| クリーンアーキテクチャ | 必須 | レイヤー分離でドメインを保護 |
| TDD | 必須 | ドメインロジックのテストを徹底 |
| BDD | 推奨 | ユースケースをGiven-When-Thenで記述 |
| 設計原則 | 必須 | SOLID特にSRPとDIP |
| CI/CD | 必須 | 全テスト自動実行 |