본문 바로가기
Computer Science/데이터베이스

04. 정규화와 데이터모델 검증

by _S0_H2_ 2023. 10. 17.
728x90
반응형

1. 정규화(Normalization) 목적

- 데이터 중복을 최소화

- 데이터 모델의 단순화

- 데이터 공유도 증대

- 데이터 일관성 확보

 

2. 정규화

- 1차 정규화 : 반복되는 속성 유형의 분할 제거

- 2차 정규화 : 주 식별자 전체에 종속되지 않는 속성 유형의 분할 제거

- 3차 정규화 : 비식별자 속성 유형에 종속하는 속성 유형의 분할 제거

- 보이스-코드 정규화 : 비 식별자 속성 유형으로 특정한 엔티티 그룹의 성격을 나타내는 속성 유형이 존재할 때, 하부 유형 정의

1 ) 상부 유형 : 하부 유형을 포함하는 총체적 엔티티 유형

2 ) 하부 유형 : 하나의 엔티티 유형으로부터 특정 비즈니스 논리 성격으로 세분화되어 관리되는 엔티티 유형

    * 하부 유형 정의 절차

        - 속성 유형, 관계 요소의 선택성 검증

         -  선택성을 상세화하여 규명하는 비즈니스 규칙 정의

         -  구분 속성 유형 설정

         -  속성 유형 재배열

         -  관계 유형 상세화

3 ) 구분 속성 유형 : 하부 유형의 구분을 결정하는 속성 유형

 

3. 사용자 관점과 관계비 조정

: 사용자가 대상 엔티티를 어떤 시간 개념으로 보고자 하는가에 따라 관계비가 각각 달라진다

 

4. 엔티티 생명주기 분석

: 한 엔티티가 생성되어 소멸될 때까지 변화하는 상태를 분석

- 엔티티 상태 : 생명주기 중 명확하게 구분되어 정의될 수 있는 일정 기간동안의 상태

- 상태 종류

    1 ) 공백 : 업무에 대상 엔티티가 인지되기 이전의 상태

    2 ) 생성 : 대상 엔티티가 최초로 인지된 상태

    3 ) 과정 : 생성부터 소멸까지의 중간 변화 상태

    4 ) 소멸 : 대상 엔티티가 관심 밖으로 나간 상태

- 누락된 단위 프로세스 정의 및 추가

- 추가적 속성 유형의 도출 및 정의

 

5. 엔티티 생명주기 분석 규칙

1 ) 각 실체는 반드시 엔티티 상태를 갖는다

2 ) 모든 엔티티 유형은 항상 공백,생성,종료의 엔티티 상태를 거친다

3 ) 각 실체는 특정 시점에 하나의 엔티티 상태에 속한다

4 ) 복수의 상태로부터 한 상태로 변경될 수 있다

5 ) 한 상태로부터 복수의 상태로 변경될 수 있다

 

6. 엔티티 생명주기 분석 task 순서

1 ) 엔티티 관계도에서 분석 대상 엔티티 유형을 선정

2 ) 대상 엔티티 유형의 엔티티 상태를 정의

3 ) 엔티티 상태의 변화 경로 정의

4 ) 변화 경로별 관련 단위업무처리를 이벤트의존도에서 설정

5 ) 단위업무처리가 없는 상태변화경로를 찾아 단위업무처리 보완

6 ) 엔티티 상태를 표현하는 속성 유형 정의

728x90
반응형