CRUD分析(クラッド分析)
機能漏れがないか確認するよ
それぞれのデータに対する「登録」「参照」「更新」「削除」の4機能について確認するよ
簡単に書くよ
CRUD分析(クラッド分析)(読:クラッドブンセキ 英:CRUD analysis?)とは
システムにおいて、各データに対する登録、参照、更新、削除の機能が ちゃんとあるか確認すること
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として「CRUD(クラッド)」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
CRUDは「Create(生成)、Read(読み取り)、Update(更新)、Delete(削除)の頭文字を並べた用語」です。
システムに必要な4つの基本機能である「登録機能」「参照機能」「変更機能」「削除機能」を一緒くたに表現したものです。
以上を踏まえて
登録・参照・変更・削除の4つの基本機能が、それぞれのデータに対して ちゃんとあるか確認する
のが「CRUD分析」です。
例えば、そうですね。
ピヨ太君がピヨピヨ商品管理システムを作ることにしました。
複雑なシステムにすると説明するのが大変なので、作るのは売上データと在庫データだけを管理するシンプルなものです。
ピヨ太君は、まずレジに導入するシステムを作りました。
処理としては、レジでピッとやると売上データが作られます。
それと同時に、在庫データから売れた商品の在庫を減らす処理が動きます。
そういえば、商品の入荷があれば在庫が増えますね。
また、このお店では月に1回、棚卸をやっています。
これに対応するために、在庫調整機能も作ってあげることにしました。
これでピヨピヨ商品管理システムは完成です。
ピヨ太君は自分の作ったシステムに自画自賛していました。
そんな ある日のことです。
お客さまからピヨ太君に連絡が入りました。
すみません。
売上データの訂正をしたいのですが、どうすれば良いのでしょう?
……あれ?
ピヨ太君は慌てました。
なんと、売上データを修正する機能がなかったのです。
おーまいがっ。
こんな困った状態になるのを回避するためにやるのがCRUD分析です。
CRUD分析のやり方は いろいろありますが、それぞれのデータに対する登録・変更・削除・参照機能の有無を確認するのが目的です。
例えば、そうですね。
まずは横にデータ、縦に機能を並べた表を作ってみましょう。
| 売上データ | 在庫データ | |
| レジ | ||
| 在庫調整 |
次に、それぞれの機能ごとに、データに対する操作を書いていきます。
レジでピッ!は売上データの「登録(Create)」と在庫データの「変更(Update)」をやります。
表の「レジ」と「売上データ」の交わるところに「C(Create)」と書いておきましょう。
| 売上データ | 在庫データ | |
| レジ | C | |
| 在庫調整 |
同じように、表の「レジ」と「在庫データ」の交わるところに「U(Update)」と書きます。
| 売上データ | 在庫データ | |
| レジ | C | U |
| 在庫調整 |
次に在庫調整機能の方も埋めてみましょう。
在庫調整機能では、在庫を登録できます。
変更も できます。
削除も できます。
現在の在庫数を見ることも できます。
在庫データの登録・変更・削除・参照機能があるわけです。
表の「在庫調整」と「在庫データ」の交わるところに「C(Create)」「R(Read)」「U(Update)」「D(Delete)」と書いてあげます。
| 売上データ | 在庫データ | |
| レジ | C | U |
| 在庫調整 | CRUD |
ここで、できあがった表を じーっと見てください。
売上データは「C(Create)」しか ありませんね。
在庫データは「C(Create)」「R(Read)」「U(Update)」「D(Delete)」が揃っています。
この表から、売上データの登録機能はあるけど更新機能、削除機能、参照機能はないことが分かります。
さてさて、これは これで良いのでしょうか?
もちろん、これでも問題ない場合はあるでしょう。
現実的では ありませんが「売上データの登録は一発勝負。変更は しちゃダメ!」ということも あり得ます。
その場合は現状のままでも問題ありません。
ですが、一般的には、売上データの更新機能、削除機能、参照機能は必要です。
ピヨ太君の作ったピヨピヨ商品管理システムは必要な機能が足りていませんね。
このように
それぞれのデータに対する登録・変更・削除・参照機能の有無を確認する
のがCRUD分析です。
小規模なシステムであれば、データの種類も少ないので構造は単純です。
CRUD分析の必要性は実感しにくいでしょう。
大規模なシステムになればなるほど、ミスや漏れが出てくる可能性は高くなります。
規模が大きくなるほど、CRUD分析が必要になってくるのです。
なお、今回の話で登場した「データと機能に対するCRUDの有無を書いた表」は「CRUD図」や「CRUD表」と呼ばれます。
気が向いたら、併せて覚えてあげてください。
一言でまとめるよ
まぁ「CRUD分析」って単語が出てきたら「登録機能、参照機能、更新機能、削除機能が ちゃんとあるか確認するんだな~」と お考えください。
おまけ
■訳してみるよ
「CRUD(クラッド)」は「Create、Read、Update、Delete(クリエイト、リード、アップデート、デリート)」の略です。
「create(クリエイト)」の意味は「作りだす」とか「創造する」です。
「read(リード)」の意味は「読む」とか「読み出す」とか「読み取る」とかです。
「update(アップデート)」の意味は「更新する」とかです。
「delete(デリート)」の意味は「消す」とか「削除」とかです。
「分析」は日本語ですね。
何となく くっつけると
「作り出す・読み取る・更新する・消す」分析
となります。
■検索してみる?






