👉 모델링의 특징
추상화 : 현실세계를 일정한 형식에 맞추어 표현
단순화 : 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현하여 쉽게 이해할 수 있도록 하는 것
명확화 : 정확하게 현상을 기술하는 것
👉 데이터 모델링 단계
1. 개념적 데이터 모델링
추상화 수준이 높고 업무 중심적이고 포괄적인 수준의 모델링
고객의 비즈니스 프로세스를 분석하고 업무 전체에 대해서 데이터 모델링 수행
복잡하게 표현하지 않고 중요한 부분을 위주로 모델링
업무적 관점에서 모델링 / 기술적인 용어 사용x
엔터티(Entity)와 속성(Attribute)을 도출하고 개념적 ERD(Entity Relationship Diagram) 작성
2. 논리적 데이터 모델링
식별자를 도출하고 필요한 모든 릴레이션을 정의
정규화를 수행해서 데이터 모델의 독립성 확보
3. 물리적 데이터 모델링
데이터베이스를 실제 구축함.
테이블, 인덱스, 함수 등 생성함.
👉 데이터 모델링 관점
👉 3중 스키마 구조
👉 좋은 데이터 모델의 요소
완전성(Completeness)
중복배제(Non-Redundancy)
업무규칙(Business Rules)
데이터 재사용(Data Retusability)
의사소통(Communication)
통합성(Integration)
👉 엔터티(Entity)
업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것(Thing)
엔터티와 인스턴스에 대한 표기법
👉 엔터티의 속성
식별자 : 엔터티는 유일한 식별자가 있고, 식별 가능해야 함.
인스턴스 집합
두 개 이상의 인스턴스가 있어야 한다.
고객정보는 2명 이상 있어야 한다.
속성
엔터티는 반드시 속성을 가지고 있어야 한다.
Ex. 고객 엔터티에 회원ID, 패스워드, 이름, 주소, 전화번호
관계
엔터티는 다른 엔터티와 최소한 한 개 이상의 관계가 있어야 한다.
Ex. 고객은 계좌 개설
업무
엔터티는 업무에서 필요하고 관리되어야 하는 집합이다.
Ex. 고객, 계좌
👉 엔터티의 종류
유무형에 따른 분류
유형 엔터티
업무에서 도출되며 지속적으로 사용되는 엔터티
물리적 형태 있고, 안정적
Ex. 고객, 강사, 사원
개념 엔터티
물리적 형태 없음.
개념적으로 사용되는 엔터티
Ex. 거래소 종목, 코스닥 종목, 생명보험 상품
사건 엔터티
비즈니스 프로새스를 실행하면서 생성되는 엔터티
Ex. 주문, 체결, 취소주문, 수수료 청구
발생시점에 따른 엔터티 종류
기본 엔터티
키 엔터티라고도 함.
다른 엔터티로부터 영향 받지 않고(관계에 의해 생성x) 독립적으로 생성되는 엔터티
타 엔터티 부모 역할
자신의 고유한 주식별자를 가짐.
Ex. 사원,부서,고객,상품,자재 등
중심 엔터티
기본 엔터티와 행위 엔터티 간의 중간에 있는 것
기본 엔터티로부터 발생되고 행위 엔터티를 생성하는 것
업무에 있어 중심역할
Ex. 계좌, 주문, 취소, 체결
행위 엔터티
2개 이상의 엔터티로부터 발생됨.
내용 자주 바뀜.
Ex. 주문 이력, 체결 이력
👉 엔터티의 명명
가능한 현업 업무에서 사용하는 용어 사용
가능하면 약어 사용 X
단수명사 사용
모든 엔티티에서 유일한 이름 부여
생성 의미대로 이름 부여