데이터베이스 설계와 구축 - 성능까지 고려한 데이터 모델링 Part 1 논리설계
Chapter 2. 데이터 분석 및 모델링
1. 엔티티타입 정의
* 엔티티타입 정의 -> 관계 정의 -> 식별자 정의 -> 세부 사항 정의 -> 통합화 -> 데이터 모델 검증
* 엔티티타입 도출
(1) 업무 기술서, 장표, 인터뷰 정리 문서 등에서 명사를 구분
(2) 개념이 불분명, 광범위 한 것 제거
(3) 엔티티타입의 특성이거나 속성값 제거
(4) 포괄업무 프로세스에 해당되는 명사 제거
(5) 중복 명사 제거
(6) 누락 엔티티타입이 존재하는지 유추
2. 관계 정의
* 관계 도출
(1) 업무 기술서, 장표, 인터뷰 정리문서 등에서 동사를 구분
(2) 도출된 엔티티타입과 관계를 이용해 관계정의서 작성
(3) 고객에게 질문하여 관계를 세분화 하고 정확하게 도출
(4) 데이터 모델링 툴 , 칠판, 포스트잇을 통해 모델을 직접 그려보기
(5) 고객과 질문하고 협의하여 모델을 검토한다
3. 식별자 정의
* 식별자
(1) 해당 업무에서 자주 이용되는 속성을 주식별자로 정한다
(2) 속성값의 길이가 가변적인 속성은 주식별자로 적당하지 않다
(3) 주식별자를 서정하기 위한 속성의 수를 적게 한다
(4) 속성값이 자주변하는 속성은 주식별자로서 적당하지 않다.
(5) 주식별자 속성은 반드시 값이 들어와야 한다.
* 보조 식별자 정의
- 주식별자 외에 유일성을 가진 속성을 보조 식별자로 정의 => 유니크 인덱스로 활용됨
* 외부 식별자 정의
- 다른 엔티티타입과의 관계를 통해 자식 쪽 엔티티타입에 생성되는 속성을 외부 식별자라 하며 생성시 FK 역할을 함
4. 속성 정의
* 각 속성은 반드시 하나의 엔티티타입에 속해 있어야 하며, 전체 데이터 모델에서 하나의 의미만을 가져야 한다.
* 속성의 111 원칙 : 하나의 속성은 한 시점에 한 개의 값만을 가질 수 있다)
* 속성 규칙 정의
(1) 속성의 3분류를 정의한다.
-> 1분류 : Basic : 업무상 수집된 기본 속성
-> 2분류 : Designed : 업무에 필요한 정보를 주기 위해 시스템에서 고안한 속성(코드, 일련번호 등)
-> 3분류 : Derived : 다른 속성에 의해 계산되거나 영향을 받아 생성된 속성(금액 총합, 이자 등)
(2) 속성값의 필요 여부를 정한다.
-> 선택/필수 속성 구분
(3) 속성의 기본값을 정의힌다.
(4) 반드시 정해진 값(Check Value)만을 가져야 하는지를 정의한다.
5. 도메인 정의
* 속성으로부터 도메인 정의 방법
(1) 데이터 모델의 모든 속성을 나열한다.
(2) 모든 속성 중 뒤부터 2~4자를 분리해본다.
(3) 공통으로 발생하는 접미어를 분리하여 하나로 만든다.
(4) 분리된 접미어를 비슷한 것끼리 묶어 그룹을 만들어 이름을 부여한다.
(5) 도메인별로 데이터타입과 길이를 지정한다.
(6) 각 엔티티타입의 속성에 도메인을 할당한다.
6. 용어사전 정의
* 용어사전 : 해당 업무에 적합하고 일관성 있는 데이터 이름과 인터페이스를 제공하기 위해 논리명/물리명/용어정의 기술해 놓은 것
* 목적 : 논리 모델에 기술된 속성명과 테이블명에 업무적인 용어를 적용하거나 프로젝트에서 사용하기 위한 이름을 부여해 모델과 어플리케이션 인터페이스에서 효율적인 정보화 시스템을 구축하기 위함
* 순서
(1) 엔티티타입의 속섬영을 모두 한곳에 모아 기술한다
(2) 속성명을 업무에서 사용하는 단어의 단위로 분류한다
(3) 각 단위 속성에 의미를 기술하고 물리 속성명을 업무 특성에 적합하게 정의
(4) 물리 속성명 명명규칙을 정한다
(5) 단위 속성명에 따라 엔티티타입의 모든 속성명에 대해 논리 속성명을 일치시키고 물리 속성명을 생성해준다
7. 4-STEP 모델링
1) 1-STEP
업무 구조 모델링 : 정적인 사항에 대해 엔티티타입이나 속성을 도출하는 것
2) 2-STEP
업무 흐름 모델링 : 업무가 진행됨에 따라 발생하는 엔티티타입, 속성, 관계를 정의하는 것
3) 3-STEP
모델의 기술적 접근에 의한 모델링 : 업무와 직접적인 상관은 없지만, 정보시스템 구축을 위한 데이터 모델을 적용함으로써 도출할 수 있는 엔티티타입, 속성, 관계를 정의하는 것
4) 4-STEP
모델 검토 및 정제를 통한 모델링 : 업무 구성과 흐름에 따라 적절하게 구성되었는지 검증하여 엔티티, 속성, 관계에 추가 및 삭제
'[STUDY] DB모델링 설계 및 구축 실무과정' 카테고리의 다른 글
데이터베이스 설계와 구축 1부 논리 설계 -6. 모델 검토 (0) | 2020.04.02 |
---|---|
데이터베이스 설계와 구축 1부 논리 설계 - 5. 상관 모델링 (0) | 2020.04.02 |
데이터베이스 설계와 구축 1부 논리 설계 - 4. 프로세스 모델링 (0) | 2020.04.02 |
데이터베이스 설계와 구축 1부 논리 설계 - 3. 실전 데이터 모델링 이슈 (0) | 2020.04.02 |
데이터베이스 설계와 구축 1부 논리 설계 - 1. 데이터 모델링 주요 개념 (0) | 2020.04.02 |