본문 바로가기

# 미사용

[4-2-4]: 핵심 엔터티 정의

01. 엔터티란

업무 활동상 지속적인 관심을 가지고 있어야 하는 대상으로써,

그 대상 간의 동질성을 지닌 개체 또는 행위의 집합.


특정 개체가 엔터티인지 아닌지 명확하게 구분할 수 있는 

매우매우 엄격한 기준을 정의해야 함.

엔터티 정의의 요건

  • 관리하고자 하는 영역인지 확인
  • 면적을 갖는(테이블로 저장할 수 있는)지 확인
  • 대상 개체 간의 동질성이 있는지 확인
  • 다른 개체와 확연히 구분되는 독립성을 가지는지 확인
  • 순수한 개체인지, 행위 집합인지 확인

엔터티 식별자

  • 인조 식별자 : 인위적으로 만든 식별자, 가주어 성격, ex) 분류코드, 주민번호
  • 본질 식별자 : 본질적으로 있는 식별자, 진주어 성격, ex) 지문, DNA

엔터티의 특성

  • 집합 순수성 

개체 또는 행위, 둘 중 하나여야 함.

  1.   ex) 피보험자 = 피보험(행위) + 자(개체) → 집합 순수성 위반, 이것은 관계.
  2.   ex) 수납기관 = 수납(행위) + 기관(개체) → 집합 순수성 위반, 이것은 관계.

 M;M 관계이거나 일부정의 집합인 경우 예외.

  1.   ex) M:M 관계를 해소하기 위한 관계 엔터티
  2.   ex) 금융기관 = 금융(수납+출납+... / 수식어) + 기관(개체)  → 엔터티.
  • 집합 동질성    : 엔터티가 가지고 있는 특수한 공통분모.
  • 엔터티 독립성 : 자신만이 유일해야 함 (비슷한 엔터티 중복X)

02. 코드성 엔터티

단순히 코드 작성의 효율성을 위해 설계된 엔터티.

어느 시점에서 설계하느냐에 따라 프로젝트 진행 효율이 달라진다.

설계 시점

  • 개념적 모델링 단계
  • 논리적 모델링 단계 (정규화 단계)

개념적 모델링 단계에서,

  • 너무 많이 설계한 경우 : 모델링이 복잡해져서 큰 혼란을 초래.
  • 너무 적게 설계한 경우 : 태여나야 할 중요 자식 엔터티가 나타나지 않음.

이 시점에서 설계해야 할 코드성 엔터티

  • 중요한 다른 엔터티의 본질 식별자인 경우.
  • 다른 엔터티와 조인을 위한 고유속성이 있는 경우.
  • 다른 엔터티와 많은 관계가 있는 경우.

03. 서브타입 엔터티

ERD 에서 상속을 나타내기 위한 도구.

특정 엔터티의 부분 집합을 정의하고자 할 때 쓰인다.

물리 모델링에서는 테이블 분할의 기준 역할을 수행함.

고려 사항

  • 교집합 허용 불가  : 사람 → 남자, 여자.  (남자&여자인 개체가 존재하는가?)
  • 서브의 합이 전체  :  안되면 여집합 서브타입이라도 만들어야 함.

서브타입 도출 기준

  • 개별 속성을 가지는 경우
  • 개별 관계를 가지는 경우
  • 가독성을 증진시키고자 하는 경우

서브타입 도출 절차

  • 도출 기준에 의하여 검증
  • 도출되는 서브타입을 파악
  • 서브타입의 필수적/선택적 분할을 정의
  • 서브타입에 속성을 할당
  • 슈퍼타입의 관계를 서브타입과 연결한다.

서브타입 목적

  • 엔터티의 정의를 구체화하여, 모델의 가독성 향상
  • 속성의 선택성 제거
  • 관계의 선택성 제거

서브타입 트레이드 오프

  • 업무 규칙의 명확성
  • 모델 표현의 복잡성

05. 엔터티 분할/통합

엔터티의 통합(추상화) 수준에 따라, 향후 모델링 과정에 큰 영향을 미침.

분할/통합의 정의

  • 분할 : 집합 동질성을 축소시켜 서로다른 엔터티로 나눔.
  • 통합 : 집합 동질성을 확장시켜 서로다른 엔터티를 합침.

엔터티 통합이

  • 너무 강하면 : 엔터티 본질 의미가 희석됨
  • 너무 약하면 : 수 많은 엔터티가 발생
  • 적당하면     : 유연성 증가, 복잡한 업무의 단순화.

두 엔터티 통합 방법 (상황에 맞게 사용)

  • 한 집합을 확장하여, 완전 통합
  • 교집합을 한쪽만 가지게 하여, 완전 분리
  • 교집합을 서로 가지고, 관계로 맺어줌.

06. 엔터티 정의

확정된 엔터티의 정의와 그 내용을 문서화. → 엔터티 정의서

모든 이해관계자가 명확히 이해 할 수 있도록 자세하게 작성되어야 함.

엔터티 정의서 내용

  • 데이터 집합의 개념 및 성격
  • 집합 구성상의 특징
  • 데이터 생성, 변경, 삭제 시의 특이사항
  • 데이터 오너쉽 등 기타 특이사항


'# 미사용' 카테고리의 다른 글

[4-2-6]: 개념 데이터 모델 작성  (0) 2018.03.23
[4-2-5]: 관계 정의  (0) 2018.03.23
[4-2-3]: 후보 엔터티 선정  (0) 2018.03.21
[4-2-2]: 주제영역 정의  (0) 2018.03.21
[4-2-1]: 개념 데이터 모델링 개요  (0) 2018.03.21