[정의] 프로세스와 엔티티 타입에 대한 상관관계를 분석하여 데이터 모델의 정확성을 검증하기 위한 모델링 기법

 

[특징] 모델링 작업 검증, 중요 산출물, 테스트에서 사용, 인터페이스 현황 파악


[입력] 업무분해(기능분해도) → 프로세스, 데이터모델링(ERD) → 엔티티 타입


[관계] 데이터와 프로세스는 다:다


[특징] 모델링 검증, 테스트 설계, I/F 파악

 

 

 

 

 

 

 

 

 

[작성규칙] 상관분석표에서 행은 업무프로세스, 열은 엔티티타입


[점검]
① 모든 엔티티 타입은 CRUD가 한 번 이상 표기
② 모든 엔티티 타입에 'C'가 한 번 이상 표기
③ 모든 엔티티 타입에 'R'이 한 번 이상 표기
④ 모든 단위 프로세스는 하나 이상의 엔티티 타입에 표기
⑤ 두 개 이상의 단위 프로세스가 하나의 엔티티 타입을 생성 불가(잘못된 경우는 아니나 업무 규칙에 비추어 다시 한번 판단해 볼 필요 있음)

 

 

 

 

 

 

 

 

'ITPE > DB' 카테고리의 다른 글

Sharding  (0) 2021.03.06
데이터 리팩토링  (0) 2021.03.06
함수적 종속성  (0) 2021.03.06
데이터 모델링  (0) 2021.03.06
ARIES (Algorithms for Recovery and Isolation Exploiting Semantics)  (0) 2021.03.06

 

 

 

 

 

 

 

[정의] 릴레이션 R에서 특정 속성 X가 특정고유속성 Y를 결정짓는 관계

 

[표현] 함수 종속도(FDD: Functional Dependency Diagram) - 애트리뷰트들간의 함수 종속관계를 도식으로 표현


[함수종속성에 대한 정규화 규칙] - 두부이결다조
- 완전함수종속성(FD) : XY -> Z 일 때, X -> Z 가 성립하지 않고 Y -> Z 가 성립하지 않는 경우 Z는 XY에 완전함수종속
- 부분함수종속성(2NF) : XY -> Z 일 때, X -> Z 와 Y -> Z 중 하나만 성립하는 경우 부분함수종속. 제 2정규화 필요
- 이행함수종속성(3NF) : 릴레이션 R에서 속성 X -> Y이고, Y -> Z이면 X -> Z임.  제 3정규화 필요
- 결정자함수종속성(BCNF) : 함수적 종속이 되는 결정자가 후보키가 아닌 경우. 즉, X->Y 일때 X 가 후보키가 아님. BCNF 필요
- 다중값 종속성(4NF)
- 조인종속성(5NF)

 

 

 

 

 

 

 

 

 


[암스트롱 공리 규칙] - 재부이분합의

 

 

 

 

 

 

 

 

'ITPE > DB' 카테고리의 다른 글

데이터 리팩토링  (0) 2021.03.06
CRUD Matrix  (0) 2021.03.06
데이터 모델링  (0) 2021.03.06
ARIES (Algorithms for Recovery and Isolation Exploiting Semantics)  (0) 2021.03.06
MVCC (MultiVersion concurrency control)  (0) 2021.03.06

 

 

 

[정의] 현실 세계의 업무 프로세스를 추상화하여 데이터베이스의 데이터로 표현하기 위한 설계 과정

 

[단계] 요구사항분석 -> 개념적 모델링 -> 논리적 모델링 -> 물리적 모델링
 - 개념적일수록 추상적 --> 물리적일수록 구체적


[개념적 모델링 ERD 작성절차]
1) 주제영역 선정 : 하위주제 영역 또는 데이터 집합들로 구성업무 기능과 대응(상향식, 하향식, Inside-out, 혼합식)
2) 핵심데이터 집합 선정(Entity) : 데이터의 보관 단위로서 주제영역에서 중심이 되는 데이터 집합을 정의(독립중심, 의존중심, 의존특성, 의존연관데이터)
3) 관계설정(Cardinality) : 업무적 연관성에 따라 개체간 갖는 relationship 설정(1:1, 1:N, M:N, 순환관계)
4) 핵심속성 정의(Attribute) : 데이터 집합의 특성을 나타내는 항목 ==> (핵심속성 : 원자단위검증, 유일값 유무판단, 관리수준 상세화 결정)
5) 식별자 정의 (Identifier) : 데이터 집합을 유일하게 식별해주는 속성(PK 로 구현), PK, CK, AK, FK 로 구분.

 

 

 


[논리적 모델링 주요 Task]
1) 엔티티타입 도출 - 기본, 중심, 행위 엔티티타입 도출
2) 관계 도출 - 엔티티 타입간의 관계 도출
3) 식별자 도출 - PK, FK, UK, AK 등에 대한 정의
4) 속성 도출 - 기본, 설계, 파생속성을 정의함
5) 세부사항 도출 - 용어사전, 도메인정의, 속성의 규칙(기본값, 체크값)등 정의
6) 정규화 - 1 차,2 차, 3 차, BCNF, 4 차, 5 차 정규화 적용
7) 통합/분할 - 엔티티타입의 성격에 따라 통합,분할 수행- 수퍼/서브 타입 모델링 수행
8) 완료기준 task: 데이터 모델 검증 - 엔티티타입, 속성, 관계 등에 대한 적합성 검증


[물리적 모델링 주요 변환단계]
(1)일괄전환 : 1) Entity 를 Table 로 전환 : Sub Type 설계 방안 -> 2) 식별자의 PK 정의 : Artificial Key 검토, PK 컬럼 순서 검토 -> 3) 속성을 컬럼으로 전환 : 영문 컬럼명 매핑, 데이터 타입/길이 결정, Domain 정의, 컬럼 순서 결정
4) 관계를 컬럼으로 전환 : 참조무결성 규칙 및 구현방향 결정
(2)구조조정 : 슈퍼타입/서브타입 모델 전환 : 트랜잭션의 성격에 따라 전체 통합, 부분 통합, 개별 유저에 대한 의사 결정을 통해 데이터 모델 조정
(3)성능향상 : 성능을 고려한 반정규화 : SQL 활용 능력의 미흡으로 인한 빈번한 비정규화는 배제하도록 신중하게 검토

 

 

 

'ITPE > DB' 카테고리의 다른 글

CRUD Matrix  (0) 2021.03.06
함수적 종속성  (0) 2021.03.06
ARIES (Algorithms for Recovery and Isolation Exploiting Semantics)  (0) 2021.03.06
MVCC (MultiVersion concurrency control)  (0) 2021.03.06
Timestamp Ordering  (0) 2021.03.06

+ Recent posts