詳細設計(内部設計)は、基本設計で定義した仕様をもとに、プログラム単位での「実装レベルの設計」を行う工程です。開発者がそのままコーディング可能な粒度まで設計を掘り下げていきます。
✅ 詳細設計で実施する主な内容
| 区分 | 内容 |
|---|
| 1. クラス設計 | クラス構造、プロパティ、メソッド定義、継承・依存関係など(オブジェクト指向設計) |
| 2. テーブル設計(物理設計) | カラム詳細(型・桁数・初期値・制約)、インデックス設計、外部キー定義など |
| 3. メソッド仕様設計 | 各処理(登録・更新・削除・検索など)の入力・出力・処理手順の定義 |
| 4. バリデーション定義 | 入力値チェック、業務ルールチェック、エラーメッセージ一覧など |
| 5. 処理フロー図作成 | 各処理単位のフロー図(分岐・繰返し・例外処理を含む) |
| 6. アルゴリズム設計 | 計算処理、集計処理、検索・フィルタ処理などのロジック定義 |
| 7. UI部品設計 | 各画面で使用されるコントロールの詳細(コンボ、ボタン、ラベル等) |
| 8. 画面項目設計(動的挙動) | 項目の活性/非活性、表示/非表示、連動条件など |
| 9. モジュール間連携設計 | 処理間の呼び出し関係、引数/戻り値の型定義 |
| 10. エラー処理設計 | 例外ハンドリング、ログ出力、ユーザー向けエラー表示内容など |
| 11. 非機能設計の詳細化 | パフォーマンスチューニング、キャッシュ設計、セキュリティ対策(SQLインジェクション防止等) |
📄 詳細設計で作成される代表的な成果物
| 成果物名 | 概要 |
|---|
| 詳細設計書 | 各モジュール・クラス・処理単位の設計ドキュメント |
| クラス図(UML) | モジュール間の構造と関係を図示したもの |
| シーケンス図(UML) | 各ユースケースの時系列処理の流れ |
| 処理フロー図 | 条件分岐や繰り返しを含む処理ロジックの可視化 |
| CRUD定義表 | テーブルと機能の関係(Create/Read/Update/Delete) |
| 項目定義書(項目単位の設計) | 画面・DB共通で使用される項目の詳細(コード体系など) |
| ER図(物理) | 正規化後のテーブル物理設計 |
| バリデーション仕様書 | 入力制約、エラーコード、エラー文言一覧など |
💡 詳細設計の特徴・ポイント
- コーディング直前の最終設計工程
- 実装者が理解しやすく、手戻りが少ないことが重要
- モジュール単位・関数単位に分割して記述
- 可読性と保守性を意識した構成が求められる
コメントを残す