데이터모델링 개념
태그 :
- 개념
- - 현실세계의 업무 프로세스를 추상화하여 데이터베이스의 데이터로 표현하기 위한 설계과정 - “정보화 시스템을 구축하기 위해, 어떤 데이터가 존재하는지 또는 업무가 필요로 하는 정보는 무엇 인지를 분석하는 방법“ - 복잡한 현실세계를 이해하기 쉬운 형태로 추상화하고 나아가 컴퓨터 시스템으로 표현, 저장하기 위한 데이터 모델을 도출해 내는 과정
1. 데이터모델링 개요
가. 데이터모델링 단계
나. 모델링에서 데이터모델링
- 시스템의 대상이 되는 업무를 분석하여 정보화 시스템을 구성하는 것을 모델링이라고 하면 모델링에는 다음과 같은 세 가지 중요한 요소가 있음
관점 |
내용 |
핵심 |
모델링의 데이터관점 |
업무가 어떤 데이터와 관련이 있는지 또는 데이터간의 관계는 무엇인지에 대해서 모델링 하는 방법 |
정보분석 |
모델링의 프로세스관점 |
업무가 실제하고 있는 일은 무엇인지 또는 무엇을 해야 하는지를 모델링 하는 방법 |
프로세스 분석 |
데이터와 프로세스의 상관모델링에 대한 관점 |
업무가 처리하는 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지를 모델링 하는 방법 |
데이터 프로세스 연관성분석 |
라. 데이터모델링의 3요소
3요소 |
내용` |
데이터모델 예 |
Things |
업무가 관여하는 어떤 것(THINGS) |
|
Relationship |
업무가 관여하는 어떤 것 간(THINGS) 의 관계 |
|
Attributes |
어떤 것(THINGS)이 가지는 성격 |
2.데이터모델링 단계
단계 |
설명 |
목적 |
요구분석 |
기본 프로세스별 정보항목 표준화 요구사항 기술적 사항 확정 정형화된 모델링 적용검토 및 정규화 적용 요구사항 검증 DRB(Datamodel Review Board)수행 |
부정확한 요구사항에 대한 애매모호성 제거 |
개념 데이터 모델링 (Conceptual Data Modeling) |
-주제영역과 핵심데이터간 관계정의 -업무중심적, 포괄적 수준의 모델링으로 추상화 -전사적데이터 모델링, EA수립시 사용 [개념적 모델링 절차] |
-핵심 엔티티 추출 -속성& 관계정의 -ERD작성 |
논리적 데이터 모델링 (Logical Data Modeling) |
-목적 시스템의 업무에 대한 Key, 속성, 관계표현 [논리적 모델링 절차] |
-식별자확정 -정규화수행 -재사용성 |
물리적 데이터 모델링 (Physical Data Modeling) |
-실제 DBMS에의 특성에 맞게 이식하는 물리적 스키마를 만드는 일련의 과정 |
-컬럼의 데이터 형식정의 -제약조건 정의 -인덱스 정의
|
구축 |
실제 데이터 모데링을 통한 물리적인 데이터베이스 시스템 구축 |
|
운영/튜닝 |
성능개선 안정성확보 가용성 |
3. 데이터 모델링 성공적 적용을 위한 고려사항
가. 설계
- 정규화 : 이상현상 제거 위한 정규화 적용
- 반정규화 : 데이터베이스 성능 향상 고려
나. 표준
- 데이터사전정의서 : 공통의 언어 정의
- 용어사전 : 프로젝트 공통 요건의 용어 정의
다. 절차
- 현업용어 : 인터뷰 등 다양한 방식의 요구 수렴
- 레파지토리: 공유 데이터의 레파지토리화 공동 사용