業務システムのデータ設計
業務システムのデータ設計とは、業務で扱う対象や情報を、システムで識別・格納・参照できる形に定義する作業である。データの定義が曖昧だと、同じ顧客や商品が重複して登録されたり、必要な情報を取り出せなかったりするため、設計段階で明確にしておく必要がある。以下では、識別のためのコード、機能とデータの対応、導出データと状態、主キーとマスタ参照、試験で問われやすい区別の順に整理する。
対象を識別するコード体系
データを識別するためにコードを用いる。代表的な方式には、対象に連番を順に割り当てるシーケンスコード、分類ごとに値の範囲を割り当てるブロックコード、十進数の桁で分類を表現するデシマルコード、対象の名称を略した文字で表すニモニックコードがある。 値を見ただけで対象物を連想させたい場合には、番号の割り当てではなく、名称や特徴を反映した文字を用いる方式が適している。
コードの桁数は、対象の総数と使える文字の種類数から決まる。英大文字26種類を用いる場合、n桁のコードは26のn乗通りとなる。 将来の増加分を見込んだ件数を満たす最小の桁数を選ぶのが基本であり、桁を増やしすぎるとコードが長くなって入力誤りや保守の負担が増える。
機能とデータの対応関係を整理する
業務機能がどのデータに対して、どのような操作を行うかを一覧化する表がCRUDマトリックスである。 操作の種類は、次の四つに分けられる。
| 操作 | 意味 |
|---|---|
| 生成(Create) | 新しいデータを作る |
| 参照(Read) | 既存のデータを読み出す |
| 更新(Update) | 既存のデータを書き換える |
| 削除(Delete) | データを取り除く |
表の行に機能、列にエンティティ(データのまとまり)を取り、各交点に操作を記入する。この表を作ると、どの機能もデータを生成していない、あるいは参照されないデータが残っているといった抜けを発見しやすくなる。
導出データと状態の管理
業務では、ほかの情報から計算して求めるデータがある。口座振替に伴う次回の借入残高の更新日のように、既存の情報から求める値は、その導出方法を設計書で明確に定義しなければならない。 導出値を画面や帳票に出す場合、どの時点の情報を基準にするかを揃えておかないと、利用者ごとに異なる値が表示される。
この節の続き
- 主キーとマスタ参照の設計
- 試験で問われやすい区別
ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。
アプリでこの節を読む