ER 모델의 IE 표기법

새발(crow-foot) 표기법?

앞에서는 Chen 표기법과 그와 매우 유사한 (min, max)표기법을 알아봤습니다. 그런데 이 표기법은 애트리뷰트가 많아질수록 표기하기 어렵고 공간을 많이 차지하며, 개체 타입과 관계 타입의 수가 많으면 많아질수록 더욱 어지러운 그림이 됩니다.
새발 표기법은 이러한 단점을 보완한 표기법입니다. Chen표기법과의 비교와 함께, 새발 표기법에 대해 알아보도록 하겠습니다.

Chen 표기법과의 비교

개체 타입과 애트리뷰트
IE표기법에서는 개체 타입만을 나타냅니다. 직사각형을 두개로 나누고, 그 안에 애트리뷰트를 포함시키는 방식입니다. 그런데 이 방식으로는 다치 애트리뷰트와 유도된 애트리뷰트, 그리고 복합 애트리뷰트를 표기할 수 없겠죠.

관계 타입
IE 표기법에서는 관계 타입을 나타내는 마름모를 사용하지 않습니다. 대신 실선 혹은 점선만으로 관계를 표기합니다. (관계 이름을 표시할 수도 있습니다.)

이러한 선은 개체 타입이 맺는 관계가 식별 관계인지 비식별 관계인지에 따라 달라집니다.
식별 관계는 다음과 같이 표현합니다. (실선)

비식별 관계는 다음과 같이 표현합니다. (점선)

강한 개체 타입과 약한 개체 타입
Chen 표기법에서는 강한 개체 타입을 직사각형으로, 약한 개체 타입을 이중선의 직사각형으로 나타냈습니다. 그러나 IE에서는 강한 개체 타입을 직사각형으로, 약한 개체 타입을 둥근 직사각형으로 나타냅니다.

카디날리티
카디날리티는 두 개체를 연결하는 선(실선 혹은 점선)의 끝에 세 가지 종류의 기호를 사용해 표시합니다.

이 세가지 기호의 조합으로 (min, max)에서 표기했던 것처럼 최소 카디날리티와 최대 카디날리티 모두 표기할 수 있습니다.

이렇게 표기하면 우리가 자연어로 번역할 때 읽는 방법이 또 바뀝니다. 다음의 예제를 통해 알아보도록 합시다.

우리가 (min, max)정보를 이용해 자연어로 생각할 때와는 또 반대입니다. 따라서 헷갈리지 않도록 유의해야 합니다.