<aside> 📖

학습 목표

1. 엔티티 도출

개념적 모델링의 핵심은 현실 세계의 객체를 데이터베이스에 맞게 구조화하는 작업입니다. 이 중 첫 번째 단계가 바로 엔티티(Entity) 도출이며, 전체 모델링의 뼈대를 형성합니다. 단순히 명사를 추출하는 것 이상의 사고가 필요하며, 이후 관계(Relationship), 속성(Attribute) 도출로 이어지는 기초가 됩니다.


1-1. 엔티티란 무엇인가?

*엔티티(Entity)*는 데이터베이스에서 저장하고 관리해야 할 정보 단위, 즉 현실 세계의 객체(Object)를 의미합니다.

"정보를 저장해야 할 필요가 있는 실세계의 객체 또는 개념"

1-1-1. ✅ 예시: 커머스 시스템의 엔티티

실세계 개념 데이터 모델 엔티티 설명
고객 Customer 회원가입한 사용자
상품 Product 판매 중인 아이템
주문 Order 고객이 생성한 구매 요청
결제 Payment 주문에 대한 지불 처리 정보
장바구니 이벤트 CartEvent 장바구니 담기/제거 기록 추적 등

1-2. 엔티티의 주요 특성

올바른 엔티티는 다음 특성을 충족해야 합니다:

특성 설명
식별 가능성 고유하게 구별할 수 있어야 함 (PK 가능 여부)
지속성 일시적인 정보가 아닌 관리/보존 가치가 있어야 함
속성 보유 의미 있는 속성을 갖고 있어야 함 (컬럼화 가능)
관계 가능성 다른 엔티티와 의미 있는 관계를 가질 수 있어야 함

1-2-1. ❌ 엔티티로 부적절한 예시

항목 이유
임시 통계 물리적 저장보다 조회용 산출물에 가깝다
시스템 메시지 엔티티로 모델링하기보단 상수 테이블이나 설정으로 처리함

1-3. 엔티티 도출 방법론