현실세계 반영 단순화 표현 데이터를 설계 업무분석 및 형상화
- 현실세계를 일정한 형식에 맞추어 표현하는 추상화의 의미를 가진다.
- 시스템 구현을 표함한 업무분석 및 업무형상화를 하기위한 목적을 지닌다.
- 복잡한 현실을 제한된 언어나 표기법을 통해 이해하기 쉽게 단순화하는 의미를 가진다.
- 애매모호함을 배제하고 누구나 이해 가능하도록 정확하게 현상을 기술하는 적확하의 의미를 가진다.
- 데이터 모델링 자체로써 업무를 설명하고 분석한다.
모델링 특징
1) 추상화 (Abstraction)
- 아이디어 or 개념을 간략하게 표한하는 과정
- 현실 세계를 일정한 형식으로 표현하는 것
2) 단순화 (Simplification)
3) 명확화 (Clarity)
✅ 데이터 모델링이란?
현실세계 -> [일정한 형식으로 단순하게, 명확하게] -> 모델로 표현
위 내용 처럼 데이터 모델링은 추상적으로 단순하고 명확하게 표현하는 것이 목적이다. 이에 따라 3가지 지양 포인트가 있다.
데이터 모델링을 할 때 지양해야할 점 (유의점)
- 중복 (Duplication)
- 비유연성 (Inflecibility)
- 어플리케이션의 사소한 변경에도 데이터 모델이 수시로 변경되는 현상
- ▶️ 데이터의 정의를 사용 프로세스와 분리해야한다.
- 비일관성 (Inconsistency)
- 데이터 중복이 없어도 발생한다.
- 데이터 간의 연관 관계가 명확하지 않아 개발자가 다른 데이터와의 연관성을 고려하지 않고 일부 데이터만 변경하는 현상
3가지 관점
1) 데이터 관점 (What, Data)
- 데이터 위주의 모델링
- 어떤 데이터가 업무에 얽혀있는지, 이 데이터간의 관계는 어떻게 되는지에 대해서 모델링하는 방법
2) 프로세스 관점 (How, Process)
- 프로세스 위주의 모델링
- 업무가 실제로 처리하는 일이 무엇인지에 대해서 모델링하는 방법
3) 데이터와 프로세스의 상관 관점 (Data vs. Process, Interaction)
- 데이터와 프로세스의 관계 위주의 모델링
프로세스 흐름에 따라 데이터에 어떤 영향을 받는지 모델링하는 방법
3가지 단계
1) 개념적 데이터 모델링 (Conceptual Data Modeling)
- 가장 추상적, 포괄적, 업무 중심적
- 전사적 데이터 모델링이나 EA수립시 많이 사용
2) 논리적 데이터 모델링 (Logical Data Modeling)
- 재사용성이 가장 높음, 논리표현 (key, 속성, 관계)
3) 물리적 데이터 모델링 (Physical Data Modeling)
- 실제 DB 구현을 위한 모델링
- 성능, 가용성 등의 물리적인 성격을 고려
✅ 데이터 모델링하는 단계
개념적 > 논리적 > 물리적
Reference