추상화 (Abstraction) : 현실 세계를 간략하게 표현한다.
단순화 (Simplification) : 누구나 쉽게 이해할 수 있도록 표현한다.
명확성 (Clarity) : 명확하게 의미가 해석되어야 하고 한 가지 의미를 가져야 한다.
전사적 관점에서 기업의 데이터를 모델링한다.
추상화 수준이 가장 높은 수준의 모델링이다.
계층형 데이터 모델, 네트워크 모델, 관계형 모델에 관계없이 업무 측면에서 모델링한다.
참고
ERD : Entity Relationship Diagram
식별자
를 도출하고 필요한 모든 릴레이션
을 정의한다.독립성
을 확보한다.특정 데이터베이스 모델에 종속한다.
식별자를 정의하고 관계, 속성 등을 모두 표현한다.
정규화를 통해서 재사용을 높인다.
테이블
, 인덱스
, 함수
등을 생성한다.성능
, 보안
, 가용성
을 고려해서 구축한다.데이터 :
비즈니스 프로세스에서 사용되는 데이터
를 의미한다.
구조 분석, 정적 분석
프로세스 :
비즈니스 프로세스에서 수행하는 작업
을 의미한다.
시나리오 분석, 도메인 분석, 동적 분석
데이터와 프로세스 :
프로세스와 데이터 간의 관계를 의미한다.
CRUD (Create, Read, Update, Delete) 분석
1976년 피터첸이 Entity Relationshop Model 표기법을 만들었으며, 사실상 데이터 모델링의 표준으로 사용되고 있다.
엔티티와 엔티티 간의 관계를 정의하는 모델링 방법이다.
엔티티 도출
Entity를 배치한다.
엔티티를 도출한 후 엔티티를 배치한다.
중요한 엔티티를 왼쪽 상단에 배치한다.
Entity간 관계를 설정한다.
엔티티 간의 관계 설정
관계명 기술
관계 참여도를 표현한다.
관계 참여도는 한 개의 엔티티와 다른 엔티티 간의 참여하는 관계 수를 의미한다.
즉, "고객이 여러 개의 계좌를 개설할 수 있다."와 같은 의미를 표현하는것이다.
관계의 필수 여부를 표현한다.
필수는 반드시 존재해야 하는 것이다.
예를 들어 "모든 고객은 반드시 하나의 계좌를 개설해야 한다."와 같은 의미를 표현한다.
관계의 필수 여부를 표현, 참여도 표현
ERD 작성 시 고려사항
중요한 엔티티를 가급적 왼쪽 상단에 배치한다.
ERD는 이해가 쉬워야 하고 너무 복잡하지 않아야 한다.