📚데이터베이스 모델링의 이해

사용자의 요구에 맞게 체계적이고 단계적인 절차에 따라 데이터베이스를 구현하는 과정이 데이터베이스 모델링 과정입니다.

📄사용자 요구사항 분석 단계


사용자의 요구사항 분석하고 데이터를 활용하기 위해 명세서라고 하는 문서화 작업이 필요합니다.

  • 요구사항 도출 단계: 조사범위를 결정하고 요구사항 명세서 도출합니다.
  • 요구사항 분석 단계: 요구사항들을 세분화한 요구사항 정의서를 작성합니다.
  • 요구사항 기록 단계: 요구사항 목록을 정리하고 지속적으로 확인 및 관리합니다.

📄데이터 모델링 단계


데이터 모델링은 데이터에 대한 요구사항을 정의하고 분석하여 추상화하는 과정을 말합니다.


  1. 개념적 데이터 모델링
    공통된 표기법을 사용한 추상화 기법이 사용됩니다. 현실세계의 데이터들을 개념적으로 일반화시키는 과정을 추상화라고 합니다.

  2. 논리적 데이터 모델링
    특정 DBMS의 데이터베이스로 작성하기 위해 스키마로 변환하는 작업입니다.

  3. 물리적 데이터 모델링
    데이터베이스 파일의 물리적 저장 방식을 결정합니다. 파일의 내부 저장구조, 파일 구성, 인덱스, 접근 경로 등을 결정하여 DBMS의 성능에 영향을 미칩니다.



📚사용자 요구사항 분석 과정

  1. 데이터베이스 시스템의 도입 과정은 사용자의 다양한 요구사항들을 기술한 제안 요청서로 시작합니다.

  2. 제안 요청서를 통해 요구사항들을 도출하여 요구사항 명세서를 작성합니다.

  3. 요구사항 명세서를 통해 요구사항 분석하여 요구사항들을 기능별로 세분화하여 요구사항 정의서를 작성합니다. 요구사항 분석이 미비하다면 요구사항 도출 과정으로 다시 돌아갑니다.

  4. 요구사항 정의서를 통해 요구사항 목록을 정리하고 프로젝트가 종료될 때까지 지속적으로 확인 및 관리합니다. 이 과정에서 미비한 점이 있다면 요구사항 분석 과정으로 다시 돌아갑니다.




📚ER 모델

ER 모델 또는 개체-관계 모델은 전체적인 데이터베이스의 논리적인 구조를 표현하는 데이터 모델링 도구입니다.


📄개체 집합


개체(Entity)는 ER 모델의 기본적인 요소입니다. 현실세계에 존재하는 유무형의 대상을 표현합니다. 이런 개체들의 집합을 개체 집합이라고 합니다.
각 개체는 속성이라는 것을 가집니다. 속성은 개체 집합이 가지는 공통적인 특성을 말합니다.
또한, 각 개체는 각 속성에 대한 값을 가집니다.



📄관계 집합


개체들은 서로 연관성을 가지는데 ER 모델에서는 이를 관계라고합니다. 예를 들어, 두 개체를 하나의 관계로 연결시키는데 이 특정 관계를 관계 인스턴스라고 합니다.
같은 유형의 관계 인스턴스들의 집합을 관계집합이라고 합니다. 하나의 개체 집합이 다른 개체 집합과 연광성을 가지는 것을 관계 집합에 참가한다고 표현합니다.
관계 집합에 참여하는 개체 집합의 수를 관계 집합의 차수라고 합니다. 관계에 참가하는 개체의 기능을 개체의 역할이라고 합니다.



📄속성


  1. 단순 속성과 복합 속성
    단순 속성은 더 이상 작은 구성요소로 나눌 수 없는 속성을 말합니다.
    복합 속성은 작은 의미단위로 나누어질 수 있는 속성을 말합니다.

  2. 단일값 속성과 다중값 속성
    단일 값 속성은 한 개체가 특정 속성에 단 하나의 값을 가지는 경우입니다.
    다중 값 속성은 속성값으로 여러 개의 값을 가지는 경우입니다. { }를 사용하여 표현합니다.

  3. 유도 속성과 저장 속성
    유도 속성은 다른 속성값으로부터 유도되어 결정되는 속성입니다. ( )를 사용하여 표현합니다.
    저장 속성은 실제 값을 저장해야만 의미가 유지되는 속성입니다.



📄제약조건


  1. 사상수
    관계 집합에 참가한 개체 집합들에 대해 각각의 개체가 얼마나 관계를 맺을 수 있는지를 명시합니다. 쉽게 말해, 각 개체들을 얼마나 서로 연결시킬 수 있는지를 말합니다.
    • 일대일 관계: 두 개체의 집합을 각각 화살표가 있는 실선으로 연결하여 표현
    • 일대다 관계: 일 쪽은 화살표가 있는 실선, 다쪽은 화살표가 없는 실선으로 연결하여 표현
    • 다대일 관계: 일대다 관계와 동일
    • 다대다 관계: 두 개체 집합을 모두 화살표가 없는 실선으로 연결하여 표션

  2. 참가 제약조건
    관계에 참여하는 개체 집합의 범위를 말합니다.
    • 전체적 참가: 개체 집합의 모든 개체가 관계에 참가. ER 모델에서 하나의 실선으로 표현
    • 부분적 참가: 개체 집합의 일부 개체만 관계에 참가. ER 모델에서 이중 실선으로 표현

  3. 키 속성
    개체 집합의 각 개체마다 서로 다른 값을 가지는 속성의 집합을 말합니다. 쉽게 말해, 각각의 개체들을 서로 구별하는데 사용되는 유일한 값을 키라고 합니다. ER 모델에서 속성의 이름에 밑줄로 표현합니다.




📚ER 모델의 기호

데이터베이스의 논리적인 구조는 ER 다이어그램이라는 도식으로 표현할 수 있습니다.

  • 이분 직사각형: 개체 집합
  • 이중 이분 직사각형: 약한 개체 집합
  • 다이아몬드: 관계 집합
  • 단일 직사각형: 관계 집합의 속성
  • 실선: 개체 집합과 관계 집합 연결 또는 부분 참여
  • 점선: 관계 집합의 속성들을 관계 집합에 연결
  • 이중선: 관계 집합 내에 개체의 전체 참여
  • 이중 다이아몬드: 약한 관계 집합

강한 개체가 삭제되면 그 개체와 연관된 약한 개체 집합 쪽의 개체는 유지될 이유가 없기 때문에 같이 삭제됩니다.

Leave a comment