Conceptual data modeling
- 사용자 요구에 기반하여 데이터베이스 컨텐츠를 디자인 하는 것.
- conceptual data modeling을 하는데 ER 모델링이 지배적이다.
- ER 모델을 사용하기에 쉽고, 이해하기에도 쉽다.
- 학자, 산업계 전문가들이 데이터 애플리케이션을 모델링하는데 효과적인 도구라고 주장
ER 모델링을 구성하는 3가지
1. Entity Type: 공통적인 어떤 성질이나 특성을 공유하는 엔터티들의 집합체를 엔터티 타입이라고 한다.
- 직사각형으로 표기한다.
- Entity: 어떤 조직이 데이터를 보유하고 저장하고자 하는 실체. 사람이 아니라 실제 존재하는 홍길동이라는 사람이 Entity
- Naming convention of enity type
- 단수 명사
- 되도록 구체적
- 명료하고 단순
- 하나의 ER 모델에서는 같은 이름을 가질 수 없음
2. Relationship Type: 공통적인 특징과 성질을 공유하는 relationship들의 집합
- ex) 학생이 과목을 수강
- Relationship: entity 사이의 관계
- ex) 이준규라는 학생이 DB2를 수강
- 다이아몬드로 표현
- Entity Type 사이의 Relationship Type
- Naming convention of entity type
3. Attribute: 사용자들에게 관심있는 Entity Type 혹은 Relationship Type의 속성
-
student를 모델링했을 때, 사용자들의 요구사항을 철저하게 물어보고 꼭 들어가야하는 것만 Attribute로 추가
-
Filed, Column이라고도 부름
-
Naming convention of Relationship Type
- 단수 명사
- 하나의 entity type에 같은 이름을 가질 수 없음
- 타원형으로 표현
-
Attribute 구분
즉, user requirement 순서
1. entity type 파악
2. entity type의 relationship type 파악
3. entity type의 relationship type의 attribute 파악
4. identifier attribute 파악
Degree of relationship type
relationship type에 참여하는 entity type의 수
- Degree one: unary(recursive) relationship type
- Degree two: binary relationship type
- Degree three: ternary relationship type
- n - ary: 3개 이상