본문 바로가기

sqld

1-2) 엔티티(Entity)

엔티티(Entity)
  • 현실 세계에서 독립적으로 식별 가능한 객체나 사물
  • 업무상 분석해야 하는 대상(인스턴스)들로 이루어진 집합
  • 인스턴스 : 엔티티의 특정한 속성 값들로 구성, 엔티티의 개념을 현실에서 구체적으로 나타낸 것
  • 행 ≫ 인스턴스 (대상) / 열(컬럼) ≫ 속성 값 으로 구성

예)

학교 시스템

- 엔티티 : 학생

- 속성 : 학번, 이름, 학과 등

- 식별자 : 학번 (고유)

- 인스턴스 : 특정 학생의 데이터 (학번, 이름, 학과를 지님)

 

엔티티 특징
  1. 유일한 식별자에 의해 식별
    • 식별자 : 그 엔티티의 인스턴스만의 고유 이름
    • 예) 사번, 학번 등 (이름 x)
  2. 해당 업무에 필요하고 관리하고자 하는 정보
  3. 인스턴스들의 집합
    • 영속적으로 존재하는 2개 이상의 인스턴스의 집합
    • 인스턴스가 1개 밖에 없는 엔티티는 집합이 아니므로 성립이 x
  4. 엔티티는 반드시 속성을 가짐
    • 각 엔티티는 2개 이상의 속성을 가짐
    • 하나의 인스턴스는 각각의 속성에 대한 1개의 속성 값만을 가짐
  5. 엔티티는 업무 프로세스에 의해 이용
    • 실제 사용되지 않으면 잘못 설계된 것
    • 사용되지 않는 고립 엔티티는 제거 필요
  6. 다른 엔티티와 최소 1개 이상의 관계 성립
    • 업무적 연관성을 갖고 다른 엔티티와 연관의 의미를 가짐
    • 관계가 없는 엔티티는 부적절

 

엔티티의 분류

 

1) 유형과 무형에 따른 분류

  • 유형 엔티티
    • 물리적 형체가 있음 (실체가 있는 대상)
    • 안정적, 지속적으로 활용되는 엔티티
    • 예) 사원, 물품, 감사 등
  • 개념 엔티티
    • 물리적인 형태가 없음
    • 관리해야 할 개념적 정보로부터 구분되는 엔티티
    • 예) 조직, 보험상품 등
  • 사건 엔티티
    • 업무를 수행함에 따라 발생하는 엔티티
    • 발생량이 많고 각종 통계자료에 이용
    • 예) 주문, 청구, 미납 등

 

2) 발생 시점에 따른 분류

  • 기본 엔티티
    • 그 업무에 원래 존재하는 정보
    • 다른 엔티티와의 관계에 의해 생성되지 않고, 독립적으로 생성
    • 타 엔티티의 부모 역할을 함
    • 다른 엔티티로부터 주식별자를 상속받지 않고, 자신의 고유한 주식별자를 가짐
    • 예) 사원, 고객, 상품 등
  • 중심 엔티티
    • 기본 엔티티로부터 발생되고 그 업무에서 중심적인 역할
    • 많은 데이터가 발생되고 다른 엔티티와의 관계를 통해 많은 행위 엔티티 생성
  • 행위 엔티티
    • 2개 이상의 부모 엔티티로부터 발생
    • 자주 내용이 바뀌거나 데이터 양이 증가
    • 분석 초기 단계보다는 상세 설계 단계나 프로세스와 상관모델링을 진행하면서 도출
    • 예) 주문 (고객-상품 엔티티로부터 발생), 사원 변경 이력, 이력 등
    • 중심 엔티티이면서 행위 엔티티인 경우 존재

 

엔티티의 명명
  1. 현업에서 사용하는 용어 사용
  2. 가능하면 약자 사용은 자제
  3. 단수 명사 사용
  4. 모든 엔티티에서 유일하게 이름 부여
  5. 엔티티 생성 의미대로 이름 부여

 

엔티티와 인스턴스 표기법
  • 엔티티는 사각형으로 표현 / 속성은 조금씩 다름

 

엔티티와 인스턴스

 

엔티티 표기법

'sqld' 카테고리의 다른 글

1-6) 정규화  (0) 2024.08.18
1-5) 식별자  (0) 2024.08.08
1-4) 관계(Relationship)  (0) 2024.07.29
1-3) 속성(Attribute)  (0) 2024.07.28
1-1) 데이터 모델의 이해  (0) 2024.07.24