본문 바로가기

실체 엔터티란? 실체의 정의를 사전에서 찾아보면 ‘실제의 물체(物體) 또는 외형에 대한 실상(實相)’이라고 나옵니다. 간단히 만질 수 있는 것(Tangible)을 관리하는 엔터티입니다. 주의할 점은 만질 수 있는 것에 대한 모든 데이터를 관리하는 것이 아니라 본질적인 데이터를 관리한다는 것입니다. 실체의 존재(Existence)와 연관된 데이터를 관리합니다. 이름이나 주민등록번호, 나이 등을 관리하는 엔터티이지 그 실체가 발생시킨 데이터를 관리하는 엔터티는 아닙니다. 예를 들면 그 실체가 어떤 계약을 했는지, 어떤 불만을 얘기했는지, 얼마나 출금했는지 등을 관리하면 실체 엔터티가 아닙니다. 실체 엔터티는 도출이 용이하지만 잘못 도출하면 업무 전체적으로 심각한 영향을 끼칩니다. 행위 엔터티는 실체가 발생시킨 엔터티이고 가.. 더보기
엔터티 분류(실체/행위/가공/기준) 엔터티를 분류하는 목적은 크게 두 가지가 있습니다. 엔터티의 성격을 파악하는 데 도움이 되기 때문이고요. 모델링 작업 순서를 정하는 데 도움이 되기 때문입니다. 상향식 방법으로 모델링을 수행할 때는 단계적으로 접근하기 위해 엔터티를 분류하는 게 의미가 있습니다. 저는 모델링을 수행하면서 전체 엔터티를 체계적으로 분류했던 적은 없었던 거 같습니다. 업무에서 핵심적으로 사용하는 소수의 엔터티만 선정합니다. 워낙 기간에 쫒겨 일을 해서 그런 것도 같지만 사실 분류 자체를 중요하게 생각하지 않습니다. 엔터티를 분류하는 것 자체가 중요한 것은 아닙니다. 그건 부가적인 것일 뿐 본질적인 것이 아니기 때문입니다. 진짜 본질인 엔터티 정의가 정확하면 잘못 분류하는 것은 문제되지 않습니다. 저는 엔터티를 분류할 때의 기.. 더보기
종속 엔터티의 식별(Identifying) 관계 식별(Identifying) 관계와 비식별(Non-Identifying) 관계는 단순한 개념입니다. 언제 적용해야 하는지를 결정하기가 어렵죠. 상위 엔터티의 주 식별자가 하위 엔터티에 주 식별자로 상속되면 식별(Identifying) 관계입니다. 엄밀히 말해 종속 엔터티와 무관합니다. 하지만 부모 엔터티에 존재 종속(Existence Dependency)된 종속 엔터티는 대부분 식별 관계로 상속받습니다. 이 원칙은 지켜주는 게 좋습니다. 두 엔터티가 관계가 있고 하위 엔터티가 종속 엔터티라는 것이 분명하다면, 식별 관계로 상속 받는 것이 좋습니다. 문제는 예외인데요. 나중에 설명하겠지만 업무 식별자를 주 식별자로 채택하는 것을 원칙으로 불가피할 경우 인조 식별자를 채택해야 하는데요. 인조 식별자를 사용해.. 더보기