[DATABASE] 데이터 베이스의 분석 설계 과정
모델링 : 추상적인 요구사항을 찾아내서 분석 및 검증 후 적절한 기호를 사용해서 객관적으로 표현하고, 물리적으로 구현하는 전체 과정
- 현업을 얼마나 잘 이해하는지가 중요
특징
1. 추상화 : 현실 세계를 일정한 형식에 맞추어 표현
- 다양한 현상을 일정한 양식인 표기법에 의해 표현
2. 단순화 : 복잡한 현실 세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현하여 쉽게 이해할 수 있도록 함
3. 명확화 : 누구나 쉽게 이해하기 위해 대상에 대한 애매모호함을 제거하고 정확하게 현상을 기술
종류
1. 프로세스 모델링
- 모델링을 진행할 때 어떤 업무가 있는지 파악해서 업무 흐름의 중심으로 설계
- 장점 : 업무만 잘 분석되면 비교적 쉽고 편하게 모델링 가능
- 단점 : 해당 업무가 변경되거나 없어지면 모델링의 결과도 문제가 됨
2. 데이터 모델링
- 업무보다는 데이터 중심으로 모델링
- 장점 : 업무가 변경되어도 모델링의 결과에는 큰 영향을 주지 않음 -> 대부분 데이터 모델링을 중점적으로 사용
- 단점 : 프로세스 모델링에 비해 더 어렵다
3. 상관관계 모델링
- 모델링을 진행할 때 두가지를 한꺼번에 진행
데이터 모델링
1. 개념 데이터 모델링 과정
- 고객의 추상적인 요구사항을 분석하고 정리
2. 논리 데이터 모델링 과정
- 분석된 데이터를 객관적인 검증 단계를 거쳐 준비를 완료시킴
3. 물리 데이터 모델링 과정
- 실제 데이터 베이스 제품에 맞도록 구성
ERD(Enitiy Relationship Diagram) : 개체 관계 데이터 모델
- 데이터 베이스의 전체 구조를 쉽게 나타내기 위한 구조도
- 사용자와 함께 업무를 분석하고 검토할 때도 이용
- 개체간의 관계를 이해하기 쉽게 정해진 표기법
개념 데이터 모델링
1. 개체 (Entity) : 실세계의 기본적인 표현을 할 수 있는 항목
- 명사형
- ERD에서 사각형으로 표시
2. 관계 (Relationship) : 개체 간의 연관성을 나타냄
- 동사형
- ERD에서 관계가 있는 개체를 실선으로 연결하고, 마름모안에 관계를 표시
3. 속성 (Attribute) : 성질이나 상태
- 개체가 가질 수 있는 세부적인 특성
- 가장 작은 논리적인 단위
- ERD에서 타원으로 표시하고, 개체에 실선으로 연결
관계 데이터 베이스 설계 : 관리하고자 하는 정보를 테이블 구조로 변환
- E-R 모델링 방법을 가장 많이 사용
1. 현실세계
– 존재 : 서로 구분되는 존재, 정적임 (예: 학생, 교수, 도서)
– 사실 : 행위에 의해 발생하는 사건, 동적임 (예: 지도, 대출, 수강신청
2. 개념세계
– 개체 타입 : 현실세계의 존재를 개념적으로 표현(추상화)한 것
– 관계 타입 : 현실세계의 사실을 개념적으로 표현(추상화)한 것
3. 컴퓨터세계
– 개체 테이블 : 개념세계의 개체 타입을 그대로 테이블로 변환한 것
– 관계 테이블 : 개념세계의 관계타입 중 일부를 테이블로 변환한 것
설계 단계
1. 개념 설계
① E-R Diagram 작성
② 현실 세계로부터 개체와 관계를 구분하여 파악
③ 개체와 관계의 속성 파악
ⓐ 개체 타입 파악
- 서로 구분되는 유 / 무형의 독립된 존재들의 집합
- 사각형으로 표현
- 개체를 설명하는 속성(원) 파악
- 속성들 중 기본키 속성 파악
④ 개체의 기본키 파악
ⓐ 관계 타입 파악
- 개체 타입들 간의 연관성 표현
- 마름모로 표현
- 관계를 설명하는 속성(원)도 파악
⑤ 관계 유형 파악
ⓐ 1:1 관계
ⓑ 1:N 관계
ⓒ N:N 관계
2. 테이블 설계
① E-R Diagram으로부터 개체 테이블과 관계 테이블 변환
②정해진 변환 규칙이 존재