엔티티(Entity)

Mixer·2022년 6월 9일
0
post-custom-banner

엔티티(Entity)란?

엔티티는 쉽게 말해 실체, 객체라고 생각할 수 있다.
일반적으로 엔티티를 정의하는 개념들을 정리해보면

  • 엔티티는 사람, 장소, 물건, 사건, 개념 등과 같은 명사로 해당된다.
  • 엔티티는 업무상 관리가 필요한 것에 해당된다.
  • 엔티티는 저장 되기 위한 어떤 것에 해당된다.

예시로 학교라는 곳에선 과목이라는 엔티티가 존재할 수 있다.
그리고 엔티티는 인스턴스의 집합으로 나타나게 된다. 즉, 과목이라는 엔티티가 있다면, 수학, 영어, 과학 등과 같은 인스턴스가 과목이라는 엔티티에 포함되는 것이다.

이때 엔티티는 자신이 가지고 있는 인스턴스를 설명할 수 잇는, 속성을 가지게 된다.
앞에서 수학, 영어, 과학와 같은 인스턴스가 존재한다면 이것들은 과목이라는 엔티티에서 과목 이라는 속성을 가지고 있는 것이다.

엔티티의 특징

  • 반드시 엔티티가 사용되는 곳의 업무에서 필요하며 관리하고자 하는 정보
  • 엔티티가 포함하는 인스턴스에 대해 유일한 식별자로 식별이 가능해야 한다
  • 엔티티는 지속적으로 존재하는 두 개 이상의 인스턴스들의 조합이어야 한다
  • 엔티티는 반드식 속성을 지녀야 한다.
  • 엔티티는 업무 프로세스에 의해서 이용되어야 한다
  • 엔티티는 다른 엔티티와 최소 한 개 이상의 관계가 있어야 한다.

위 특징이 없으면 적절하지 않은 엔티티일 확률이 높다 (물론 예외는 있다)

엔티티의 분류

엔티티는 각각의 성격에 의해 실체유형 (유•무형)에 따라 구분하거나, 엔티티의 발생시점에 의해 분류 될 수 있다.

실체 유형에 따른 분류

  • 유형 엔티티(Tangible Entity)
    물리적인 형태가 존재하는 엔티티이며, 안정적이고 지속적으로 활용되는 엔티티
  • 개념 엔티티(Conceptual Entity)
    물리적인 형태는 존재하지 않고 관리해야 할 개념적인 정보로 구분이 되는 엔티티
  • 사건 엔티티(Event Entity)
    업무를 수행함에 따라 발생되는 엔티티

발생시점에 따른 분류

  • 기본/키 엔티티(Fundamental/Key Entity)
    해당 업무에 원래 존재하는 정보로 다른 엔티티와의 관계에 의해 발생 또는 생성되지 않고 독립적으로 존재하는 엔티티이다, 이는 독립적으로 생성이 가능하며 다른 엔티티의 부모역할을 한다

  • 중심 엔티티(Main Entity)
    기본 엔티티로부터 발생되며 업무에 있어서 중심적인 역할을 한다,
    일반적으로 데이터량이 많으며 다른 엔티티와의 관계를 통해 행위 엔티티를 생성

  • 행위 엔티티(Active Entity)
    두 개 이상의 부모 엔티티로 부터 주로 발생되고, 자주 엔티티의 내용이 바뀌거나 데이터양이 증감한다.
    분석 초기 단계보단 상세 설계 단계나 프로세스와 상관 모델링을 진행하면서 도출 될 수 있다.

엔티티의 명명(Naming)

  • 가능하면 현업업무에서 사용하는 용어를 사용한다.
  • 가능하면 약어를 사용하지 않는다.
  • 단수 명사를 사용한다.
  • 모든 엔터티를 통틀어서 유일한 이름을 가져야 한다.
  • 엔터티의 생성 의미대로 이름을 부여한다.

레퍼런스
https://doorbw.tistory.com/227

profile
Minthug'life
post-custom-banner

0개의 댓글