ベース モデルでは、エンティティ、属性、関係を区別します。基本的に、タイプ レベルとオカレンス レベルが区別されます。
[エンティティ] とは、検証中の業務管理タスクに関連する実際のオブジェクト、または抽象オブジェクトです。
たとえば、検討するオブジェクトには、業務プロセスなどがあります。ARIS の分割モデルに従うと、対象であるデータ オブジェクトは、環境のオブジェクトとイベントを規定するオブジェクトです。「顧客注文の処理」プロセスには、たとえば次のようなエンティティがあります。
顧客 1235
品目 471
受注 11
エンティティは、特定の属性によってさらに正確に定義できます (プロパティ)。たとえば、姓、名、住所によって、顧客をより正確に定義できます。
類似のエンティティをグループ化したものを、エンティティ タイプと呼びます。エンティティ タイプの個々のオカレンスがエンティティです。
類似した種類のエンティティは、同じ属性で定義できます。たとえば、顧客「田中」と顧客「鈴木」は、共にエンティティ タイプ「顧客」に含まれます。品目「4710」と品目「4712」は、エンティティ タイプ「品目」に含まれます。ERM では、エンティティ タイプは長方形で表されます (次の図を参照)。次のグラフィックに例を示します。
属性とは、エンティティ タイプを定義する性質です。
属性オカレンスとは、個々のエンティティが持つ属性の具体的な値のことです。たとえば、顧客「1235」は、「鈴木」、「健一」、「東京都」などの属性オカレンスによって説明できます。これに関連する属性は「顧客の姓」、「顧客の名」、「市町村」です。
属性は、通常楕円または円で表します。以降、属性は楕円形で表します。次の図は、エンティティ タイプ「顧客」に対する属性の例を表しています。
エンティティ タイプと属性は区別しにくいことがよくあり、モデリング手順のコンテキストからしか判断できない場合あります。たとえば、顧客の住所を「顧客」の属性ではなく、エンティティとして捉えることもできます。その場合は、「顧客」との関係を所有する、別のエンティティ タイプ「住所」が作成されます。エンティティには属性が含まれますが、属性には独自の属性が含まれないことを、エンティティ タイプと属性のどちらであるかを見極める有効な判断基準として利用できます。ERM で作成され、あとからその他の属性で説明される属性は、エンティティ タイプになります。オブジェクトがほかのエンティティ タイプと関係を持つかどうかも有効な判断基準です。オブジェクトがほかのエンティティ タイプと関係を持つ場合もまた、そのオブジェクトはエンティティ タイプです。
関係とは、エンティティ間の論理的な関係です。
したがって、関係が存在するかどうかは、まさに、エンティティが存在するかどうかによります。
類似する関係の集合を、関係タイプと呼びます。
たとえば、「納入業者」と「部品」の間の関係タイプは [提供する] です。以後、本文中では、関係タイプも太字で表記します。ERM では、関係タイプは菱形で表され、接続線によってエンティティ タイプに連結されます (次の図を参照)。
多くの場合、関係タイプ名は一方向のみ読み取りが可能な接続線になります。上の例では、「納入業者」は「部品」を「提供する」という関係を表しています。反対方向に読むと、これは「部品」が「納入業者」を「提供する」ことになり、適切ではありません。正しい方向を一意に決定できない場合は、用語を慎重に選択する必要があります。
関係タイプはいくつかの種類に分類できます。分類基準は、関係タイプが連結しているエンティティ タイプの数と、関係の複雑度です。
エンティティ タイプの間には、単項、二項、または n 項の関係が存在できます。
複雑度または多重度とは、あるエンティティ タイプのエンティティが、ほかのエンティティ タイプのエンティティに、いくつ関連付けられているかを表します。
次の図に、関係の分類を示します (Scheer 著『Business Process Engineering』(1994 年)、34 ページを参照)。
関係は、関係 (多重度) の異なる次の 4 つの種類に分類できます。
1:1 関係
1:n 関係
n:1 関係
n:m 関係
1:1 関係では、第 1 集合の各エンティティが、第 2 集合の 1 つのエンティティに割り当てられます。
1:n 関係では、第 1 集合の各エンティティが第 2 集合の 1 つのエンティティに関連付けられますが、第 2 集合の各エンティティは第 1 集合の複数のエンティティに関連付けられることができます。
n:1 関係は、ちょうどその逆の状況を表します。
n:m 関係では、第 2 集合の複数のエンティティが、第 1 集合のすべてのエンティティに関連付けられます。または、その逆です。
関係タイプの多重度 ([多重度] 属性タイプ) は、実体関連モデルの接続線に表します。
エンティティ タイプの多重度が指定するのは、エンティティが持つことができる特定の関係タイプの関係の最大数です。上の図に示されている n:1 関係は、企業が複数の工場で構成されているため、「企業」エンティティ タイプの企業は複数の [割り当てられる] 関係を持つことが可能であるということを意味します。一方、各工場は最大 1 つの [割り当てられる] 関係を持つことが可能であり、一意に企業に割り当てられます。
Chen のオリジナル モデルは、多重度を別の方法で説明します。ただし、このマニュアルで使用されている表記を使うと、特に複数のエンティティ タイプ間の関係を表す場合に、より明確な記述ができます。混乱を避けるために、Chen のオリジナル モデルについては、ここでは詳しく取り扱いません。
1 つのエンティティ タイプのエンティティ間で関係を持つことが許可されているので、1 つのエンティティ タイプと関係タイプの間には 2 本の接続線が並列して存在することがあります。これらの接続線はロール名を割り当てることにより区別することができます。次の図に再帰的な関係を示します。上位の部品は、さまざまな下位の部品から構成されます。下位の部品は、さまざまな上位の部品の構成要素として使われます。
エンティティ タイプと関係タイプの両方を、属性によって説明できます (次の図を参照)。
属性の値の範囲をドメインと呼びます。
エンティティ タイプまたは関係タイプの要素に対するドメイン要素の割り当ても関係であり、適切に付けられた名前の接続線により識別することができます。
エンティティ タイプと、少なくとも 1 つのドメインとの間に 1:1 関係が存在する必要があります。このドメインの値によって、個々のエンティティを一意に識別できます。この関係を満たすドメイン名をそのエンティティ タイプのキー属性と呼びます。
次の図の例では (Scheer 著『Business Process Engineering』(1994 年)、33 ページを参照)、「顧客」のエンティティは、[顧客番号] キー属性によって一意に識別できます。
関係は、連結されているエンティティのキー属性をマージして識別します。したがって、[居住する] 関係タイプのキー属性は、「顧客番号」と「住所番号」です。
関連のあるデータ オブジェクトの記述属性は、エンティティ タイプまたは関係タイプと 1:n 関係を持つドメインから導き出された値によって定義されます。