속성(Attribute)·도메인(Domain) 완벽 정리

속성 정의·특징·분류·도메인 개념·명명규칙까지 한눈에 정리

1. 속성의 정의

속성이란?

업무에서 필요로 하는 인스턴스로 관리하고자 하는 더 이상 분리되지 않는 최소의 데이터 단위이다. 엔터티를 설명하는 특성이며, 데이터베이스에서는 컬럼(Column)으로 구현된다.

엔터티·인스턴스·속성·속성값 관계

  • 엔터티에는 두 개 이상의 인스턴스가 존재
  • 인스턴스에는 두 개 이상의 속성이 존재
  • 속성은 하나의 속성값을 가짐
  • 속성은 엔터티를 설명하고, 인스턴스의 구성요소

2. 속성의 특징

속성의 4가지 특징

  • 해당 업무에서 필요하고 관리하고자 하는 정보여야 한다
  • 정규화 이론에 의해 주식별자에 함수적 종속해야 한다
  • 하나의 속성은 한 개의 값만 가진다 (다중값 속성 불가)
  • 하나의 인스턴스에 대해 하나의 값만 가져야 한다

주식별자에 함수적 종속

속성은 반드시 주식별자(PK)에 의해 결정되어야 한다. 예: "사원번호"가 결정되면 "사원명"이 결정된다. 사원번호 → 사원명 (함수적 종속).

3. 특성에 따른 속성 분류

기본·설계·파생 속성

분류정의예시
기본 속성업무에서 직접 추출한 속성이름, 나이, 전화번호, 제품명
설계 속성설계 과정에서 인위적으로 만든 속성사원번호, 주문번호, 코드
파생 속성다른 속성으로부터 계산·변환된 속성합계, 평균, 나이(생년월일에서 파생)

파생 속성 주의사항

파생 속성은 가능하면 적게 정의하는 것이 바람직하다. 데이터 정합성 유지가 어렵고, 원본 데이터가 변경될 때 파생 속성도 함께 갱신해야 하는 부담이 있다.

속성 수 비교

일반적으로 기본 속성 > 설계 속성 > 파생 속성 순으로 수가 많다. 기본 속성이 가장 많고, 파생 속성은 최소화해야 한다.

4. 구성 방식(엔터티 내 구성)에 따른 분류

PK·FK·일반 속성

분류설명예시
PK 속성엔터티의 인스턴스를 고유하게 식별사원번호
FK 속성다른 엔터티와의 관계로 포함된 속성부서코드(FK)
일반 속성PK·FK가 아닌 나머지 속성이름, 입사일

5. 도메인(Domain) 개념

도메인이란?

각 속성이 가질 수 있는 값의 범위(허용 가능한 값의 집합)를 의미한다. 데이터 타입, 크기, 제약 조건 등을 포함하는 개념이다.

도메인 예시

속성도메인설명
학점0.0 ~ 4.5실수, 소수점 1자리
성별{'M', 'F'}CHAR(1), 2개 값만 허용
나이1 ~ 150정수, 양수만 허용
사원명VARCHAR(50)가변 문자열, 최대 50자

도메인의 역할

  • 데이터 무결성 보장 — 허용 범위 밖의 값 입력 방지
  • 표준화 — 동일한 성격의 속성에 동일한 도메인 적용
  • 변경 용이성 — 도메인 변경 시 해당 속성 일괄 적용 가능

6. 속성 명명 규칙

명명 규칙 원칙

  • 해당 업무에서 사용하는 이름을 부여한다
  • 서술식 속성명은 사용하지 않는다 (예: "사원의 이름" X → "사원명" O)
  • 약어 사용을 가급적 지양한다
  • 전체 데이터 모델에서 유일한 이름을 부여한다 (동일 속성명이 여러 엔터티에서 사용 가능하나 의미 일관성 유지)

속성 명명 예시

나쁜 이름좋은 이름이유
사원의 이름사원명서술식 지양
empnm사원명약어·영문 지양
데이터1주문금액의미 있는 이름 부여

7. 속성의 수와 설계 품질

적정 속성 수

하나의 엔터티에 속성이 너무 많으면(50개+) 분리를 고려해야 한다. 반대로 속성이 2개 미만이면 엔터티 자격이 없다.

다중값 속성 처리

하나의 속성에 여러 값이 들어가면 안 된다. 다중값 속성은 별도 엔터티로 분리해야 한다.

잘못된 예:

전화번호: "010-1234, 02-5678" (하나의 컬럼에 다중값)

올바른 예:

전화번호 엔터티를 별도로 분리하여 1:N 관계

8. 속성과 엔터티의 관계

속성 vs 엔터티 판단 기준

상황판단이유
값이 하나만 존재속성단일값은 속성으로 처리
값이 여러 개(다중값)엔터티로 분리1NF 위반 방지
독립적으로 관리 필요엔터티로 분리별도 식별·관리 필요

9. 시험 빈출 포인트

자주 출제되는 유형

  • 기본·설계·파생 속성 구분 — "사원번호는 어떤 속성인가?" → 설계 속성
  • 파생 속성 특징 — 다른 속성으로부터 계산, 가급적 최소화
  • 도메인 정의 — 속성이 가질 수 있는 값의 범위
  • 속성 명명 규칙 — 서술식 금지, 약어 지양, 업무 용어 사용
  • 속성은 주식별자에 함수적 종속 — PK가 결정되면 속성값이 결정됨
  • 하나의 속성은 하나의 값 — 다중값은 엔터티로 분리해야 함

혼동 주의 포인트

  • "나이"의 분류 — 생년월일에서 계산 가능하므로 파생 속성
  • "주문번호"의 분류 — 업무에서 직접 추출이 아니라 설계 시 부여하므로 설계 속성
  • 도메인 vs 데이터 타입 — 도메인은 데이터 타입을 포함하는 상위 개념 (범위 + 제약조건 포함)

개념을 확인했다면 문제로 실력을 검증해보세요