속성의 정의
  • 엔터티의 성격을 상세하게 기술하는요소(속성을 모두 정의해야 엔터티가 완전해짐)
  • 데이터의 값을 저장하는 저장소
  • 데이터를 관리하는 독립된 가장 작은 단위


속성과 정규화의 관계
  • 정규화는 연관된 속성을 묶는 과정을 말함
  • 속성은 결정자 역할을 하는 속성(식별자)와 종속자 역할을 하는 속성으로 구분

-> 결정자 속성과 종속자 속성이 정해지면 엔터티 정의가 끝났다고 함(엔터티 : 결정자 속성 + 종속자 속성)

개념 모델링 및 논리모델링 단계에서의 속성 도출
  • 개념 모델링 단계에서는 결정자 속성(식별자)를 파악하는 것이 중요
  • 논리모델링 단계에서는 결정사 속성에 종속된 종속자 속성을 파악해 채우는 일이 중요


속성을 도출할 때의 원칙
  • 속성 값은 원자값(더 이상 분해되지 않는 최소한의 단위로 이뤄진 값을 의미)
    예) 전화번호 : 010-1234-5678 (O), 전화번호 : 010-1234-0678|02-123-4567 (X)
  • 한 속성은 하나의 의미를 뜻하는 하나의 값만을 저장
    예) 개인연락처 : 010-1234-5678 (O) 02-456-8901 (O)
    전화번호 : 010-1234-5678 -- 개인전화번호 02-123-4567 -- 사무실전화번호 (X)
  • 속성은 제 엔터티에 위치해야 함(속성간 종속성이 발생한다면 정규화과정을 거쳐서 엔터티 분리 필요)
  • 식별자를 제외한 모든 일반 속성은 서로 종속적이지 않아야 하며 식별자에만 종속되어야 함
  • 추출 속성은 성능상의 이슈가 발생할 경우 등의 제한된 경우에만 사용하도록 함
  • 속성여부에 널(NULL) 허용 여부를 파악해야함
  • 입력된 값이 추후에 변경될 수 있는지 정의
  • 가독성 및 성능상 효율을 위해 릴레이션 내 속성의 순서를 조정할 필요가 있음
    -> 기초속성 및 필수 속성을 위로, 업무적 연관속성을 모으고, 여부 속성 또는 구분 속성 등은 관련된 속성과 이어서 표기, 널 허용 속성 및 사이즈가 큰 속성은 아래로 위치
  • 속성명은 의미가 명확하면서 함축적으로 지정
  • 속성명 고려 시 도메인도 함께 정의(데이터 타입 및 길이, 허용 값, 값의 포멧 등을 정의한 것)