CRUD図とは、システムの各機能が、どのエンティティ(テーブル)に対して、どのような操作をするかを一覧化したものである。 CRUD表またはCRUDマトリックスとも呼ばれる。 操作の種類には生成(Create)、参照(Read)、更新(Update)および削除(Delete)がある。 要求の分析に当たって、データとプロセス(データの作成、読取り、更新、削除)の対応関係を検証する。
データモデル表現の標準的手法であるERモデルは静的モデルであるため、データが生成されたり、更新されたりするタイミングを表現できない。CRUD図はそれを補完する存在となる。
CRUD図は機能とデータの作成、参照、更新、削除を表形式で表す。
CRUD図の書き方の例を示す。
エンティティ(データ)と機能が交差するマトリックスにCRUDの記号を記述する。CRUD表のマトリックスで使われる記号の意味を次の表に示す。
記号 | 意味 |
---|---|
C | データが作成(Create)されることを表す。SQLの INSERT に相当する。 |
R | データが参照(Read)されることを表す。SQLの SELECT に相当する。 |
U | データが更新(Update)されることを表す。SQLの UPDATE に相当する。 |
D | データが削除(Delete)されることを表す。SQLの DELETE に相当する。 |
CRUD図には標準化された規格がなく、その書き方にはさまざまなバリエーションがある。CRUD図の書き方のバリエーションを示す。
レコードを削除するには、CRUDのDELETE操作を行う。
本当にレコードを削除する代わりに、削除フラグというカラム(列)を設けて TRUE または 1 を設定したものを削除済みレコードと見なす方法を「論理削除」という。英語ではSoft deleteまたはLogical deleteという。
論理削除はレコードを物理的に削除しないシステムである。意味的には削除となるが、実際には更新であるため、CRUD表では「D」ではなく「U」として扱う。
CRUD図 は JIS (Japanese Industrial Standards) で規格化されていない。
CRUD図 は ISO (International Organization for Standardization) で規格化されていない。
Microsoft Excelで使えるCRUD図の雛型をダウンロードできます。