7.1 論理設計で行うこと
論理設計では、アプリケーションを考慮した設計を行い、最適化の処理を加え、データベースに実装する最終的なフォーマットを決めます。
アプリケーション開発チームは、概要設計フェーズでシステムの要求仕様に基づき、新業務フローを作成します。
新業務フローを使って、客先のレビューを受け、以下のことを確認します。
- システム化によって変更される業務の流れ
- 業務分割と方式設計との照合
確認がとれた後、新業務フローに基づいて、画面、帳票などのマンマシンインタフェースが設計されます。
論理設計で行うべきことを以下に示します。
【STEP1】業務要件から必要な属性を見直す
- アプリケーションから見たときに必要なフラグ類の追加
- アプリケーションから見たときに必要なステータス管理のための属性の追加
- 更新履歴の取得:最後に更新した日付と更新者の情報をエンティティの属性として追加
- 赤黒処理:会計データの場合、訂正する元データはそのまま上書きをするのではなく、赤黒処理を行うことによって訂正の記録を残し、検証性を高くする
- 削除時の処理:会計データ以外のデータも、訂正の履歴を残したい場合、完全にデータを消去するのではなく、削除フラグを設けることを検討 通常のデータはNULL値、削除の場合は1を設定する
- マスタで管理できない項目(一時的な取り扱い商品など)の取り扱いを決める
【STEP2】索引の作成とビューの定義
【STEP3】非正規化
- 方式設計によってテーブル分割などが行われることを認識し、設計の見直しを行う
- 導出項目、繰り返し項目、重複項目を表に含めるかどうかを、実際のデータ量に近いボリューム、ピーク時のトランザクション量で検証テストを行った結果決める
【STEP4】表に変換する際に必要なことを決める
- 表、列の名前の決定
- 一意識別子として、必要に応じて人工的な属性を設定する<br 必要に応じて、一意識別子のコード設計を行う
上記のような手順を踏まえ、論理設計を行いますが、重要なのは他の2つの開発工程と同期をとることです。
その内容を確認した上で、アプリケーション開発チーム、方式設計チームと意識あわせを行った上で、論理設計の工程に入ります。
アプリケーション開発工程と方式設計工程で決まったことを次に確認します。
解説トレーナー