01. 엔터티란 |
업무 활동상 지속적인 관심을 가지고 있어야 하는 대상으로써,
그 대상 간의 동질성을 지닌 개체 또는 행위의 집합.
특정 개체가 엔터티인지 아닌지 명확하게 구분할 수 있는
매우매우 엄격한 기준을 정의해야 함.
엔터티 정의의 요건
- 관리하고자 하는 영역인지 확인
- 면적을 갖는(테이블로 저장할 수 있는)지 확인
- 대상 개체 간의 동질성이 있는지 확인
- 다른 개체와 확연히 구분되는 독립성을 가지는지 확인
- 순수한 개체인지, 행위 집합인지 확인
엔터티 식별자
- 인조 식별자 : 인위적으로 만든 식별자, 가주어 성격, ex) 분류코드, 주민번호
- 본질 식별자 : 본질적으로 있는 식별자, 진주어 성격, ex) 지문, DNA
엔터티의 특성
- 집합 순수성
개체 또는 행위, 둘 중 하나여야 함.
- ex) 피보험자 = 피보험(행위) + 자(개체) → 집합 순수성 위반, 이것은 관계.
- ex) 수납기관 = 수납(행위) + 기관(개체) → 집합 순수성 위반, 이것은 관계.
M;M 관계이거나 일부정의 집합인 경우 예외.
- ex) M:M 관계를 해소하기 위한 관계 엔터티
- 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 |