본문 바로가기

데이터 Story/모델링 이론

속성 분류법 –기초 속성(Basic Attributes)

저는 속성을 아래와 같이 분류합니다.

 

- 기초(Basic) 속성

- 관계(Relationship) 속성

- 추출(Derived) 속성

- 시스템(System) 속성

 

이는 실제 엔터티에 존재하는 속성을 분류한 것입니다. 즉 순수하게 업무에서 필요한 논리적인 구분이 아니라 물리적인 구분입니다.

 

기초 속성(Basic Attribute)부터 차례로 설명하겠습니다.

 

엔터티의 본질을 설명하는 속성이 기초 속성입니다. 이 기초 속성을 보면 엔터티의 정의를 알 수 있습니다. 엔터티에 반드시 존재해야 하는 업무 식별자와 후보 식별자, 엔터티의 특성을 설명하는 속성 등이 이에 해당합니다.

 

[그림1] 주문 엔터티의 주문번호·고객번호·주문일자·배송요청일자·배송지주소 속성이 기초 속성입니다.

 

 

[그림1]

 

기초 속성은 오너십(Ownership)과 연관있습니다. 오너십 중에 엔터티가 어느 주제 영역(ERD)에 속해야 하는지에 대한 오너십이 모델 오너십(Model Ownership)인데요. 모델 오너십을 정하는 기준이 기초 속성입니다.

 

관계·추출·시스템 속성으로는 해당 엔터티의 성격을 알 수 없기 때문에 당연히 기초 속성이 기준이 돼야 합니다. 기초 속성의 값은 주로 데이터베이스를 사용하는 사용자(User)의 입력이라는 행위에 의해서 생성됩니다. 기초 속성의 값을 생성하는 영역에서 모델 오너십을 가져야 합니다.

 

바람직하지 않지만 만약 데이터 오너십(Data Ownership)을 관리한다면 마찬가지로 기초 속성의 값을 생성하는 조직(파트)에서 가져야 할 것입니다.

 

기초 속성은 주로 논리 모델링 초반에 도출됩니다. 일부 핵심적인 기초 속성은 개념 모델링 단계에서 도출되고요. 가장 먼저 도출해야 하는 속성이 기초 속성입니다.

 

속성이 도출되는 순서는 아래와 같습니다. 모델링할 때 이 순서로 속성을 추가하면 됩니다.

 

기초 속성 => 관계 속성 => 추출 속성 => 시스템 속성

 

엔터티에서 중복·추출 속성을 제외하면 가장 많은 속성이 기초 속성입니다. 또한 기초 속성을 전부 삭제하면 나머지 속성만으로는 그 엔터티가 무슨 데이터를 관리하는지 알 수 없게 됩니다. 그만큼 엔터티 본질과 연관되는 중요한 속성이 기초 속성입니다.