[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

CRUD分析

pointこの用語のポイント

point機能漏れが無いか確認することだよ

pointデータに対する「登録」「参照」「更新」「削除」の4機能について、漏れが無いか確認するよ

スポンサーリンク

簡単に書くよ

CRUD分析とは

システムにおいて、各データに対する登録機能、参照機能、更新機能、削除機能の4機能が過不足なく存在するか確認すること
です。

image piyo

詳しく書くよ

CRUDは「登録・変更・削除・参照機能」ね。
システムに必要な4つの主要機能を一緒くたに表現したものです。

CRUD分析

この4つの主要機能が、それぞれのデータに対して過不足なくあるか確認するのが「CRUD分析」です。

例えば、そうですね。

ピヨ太君は、ピヨピヨ商品管理システムを作ることにしました。

CRUD分析2

複雑なものを作るのは大変なので、売上データと在庫データだけを管理するシンプルなものです。

CRUD分析3

ピヨ太君は、まずレジに導入するシステムを作りました。
処理としては、レジでピッとやると売上データが作成されます。
それと同時に、在庫データから売れた商品の在庫を減らす処理が行われます。

CRUD分析4

そういえば、商品の入荷があれば在庫が増えますね。
また、このお店では月に一回、棚卸を行っています。
これに対応するために、在庫調整機能も作ってあげることにしました。

CRUD分析5

これでピヨピヨ商品管理システムは完成です。
ピヨ太君は、自分の作ったシステムに自画自賛していました。

そんなある日のことです。
お客さまからピヨ太君に連絡が入りました。

すみません。
売上データの訂正をしたいのですが、どうすれば良いのでしょう?


……あれ?
ピヨ太君は慌てました。

なんと、売上データを修正する機能がなかったのです。

おーまいがっ。

こんな困った状態になるのを回避するために行うのが、CRUD分析です。
やり方はいろいろありますが、それぞれのデータに対する登録・変更・削除・参照機能の有無を確認するのが目的です。

例えば、そうですね。

まずは横にデータ、縦に機能を並べた表を作ってみましょう。

売上データ在庫データ
レジ
在庫調整


次に、それぞれの機能毎に、データに対する操作を書いていきます。

例えば、レジでピッ!は、売上データの「登録(Create)」と在庫データの「変更(Update)」を行います。
表の「レジ」と「売上データ」の交わるところに「C(Create)」と書いておきましょう。

売上データ在庫データ
レジC
在庫調整


同じように、表の「レジ」と「在庫データ」の交わるところに「U(Update)」と書きます。

売上データ在庫データ
レジCU
在庫調整


次に在庫調整機能の方も埋めてみましょう。

在庫調整機能では、在庫を登録できますし、変更もできますし、削除もできますし、現在の在庫数を見ることもできます。
在庫データの登録・変更・削除・参照機能があるわけです。

表の「在庫調整」と「在庫データ」の交わるところに「C(Create)」「R(Read)」「U(Update)」「D(Delete)」と書いてあげます。

売上データ在庫データ
レジCU
在庫調整CRUD


ここで、できあがった表をじーっと見てください。
売上データは「C(Create)」しかありませんね。
在庫データは「C(Create)」「R(Read)」「U(Update)」「D(Delete)」が揃っています。

この表から、売上データの登録機能はあるけど、更新機能、削除機能、参照機能はないことが分かります。

さてさて、これはこれで良いのでしょうか?

もちろん、これでも問題ない場合はあるでしょう。
現実的ではありませんが「売上データの登録は一発勝負。変更はしちゃダメ!」ということもあり得ます。
その場合は、現状のままでも問題ありません。

ですが、一般的には、売上データの更新機能、削除機能、参照機能は必要です。
つまり、ピヨ太君の作ったピヨピヨ商品管理システムは機能が足りないと言えます。

このように、それぞれのデータに対する登録・変更・削除・参照機能の有無を確認するのがCRUD分析です。

小規模なシステムであれば、データの種類も少ないので構造は単純です。
CRUD分析の必要性は実感しにくいでしょう。
大規模なシステムになればなるほど、ミスや漏れが出てくる可能性は高くなります。
規模が大きくなればなるほど、CRUD分析が必要になってくるのです。

なお、今回の例で使用した、データと機能に対するCRUDの有無を書いた表は「CRUD図」や「CRUD表」と呼ばれます。
余裕があれば、併せて覚えてあげてください。

image piyo2

一言でまとめるよ

まぁ「CRUD分析」って単語が出てきたら「登録機能、参照機能、更新機能、削除機能が過不足なくあるか確認することなんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク