본문 바로가기
정보처리기사/[이전] 필기&실기 개념

정보처리기사 정처기 | 데이터베이스 개념적 설계 - ER 다이어그램(Entity-Relation Diagram) | 필기&실기 개념

by YUNI Heo 2023. 7. 12.
반응형

 

✅ 개념적 설계(Conceptual design)

https://velog.io/@h220101/

개념적 설계는 데이터베이스 시스템을 구축하기 위한 핵심적인 단계입니다. 이 단계에서는 요구사항 분석의 결과를 기반으로 중요한 개체(Entity)를 식별하고, 이러한 개체들 간의 관계를 결정하여 E-R 다이어그램(Entity-Relation Diagram)으로 표현합니다. 개념적 설계는 사용자의 요구사항을 데이터베이스에 대한 추상적인 형태로 변환하는 단계로 볼 수 있습니다.


요구사항 분석을 통해 얻은 정보를 데이터베이스에 효과적으로 구현하기 위해 개념적 설계가 수행됩니다. 개념적 설계는 요구사항 기술서나 명세서를 참고하여 현실 세계의 정보를 추상적인 개념으로 표현하고, 데이터의 구조와 관계를 파악하는 과정입니다. 이 단계에서는 개념적(추상적) 스키마 모델링과 트랜잭션 모델링을 병행하여 수행합니다.

 

 

💡 개념적(추상적) 스키마(Conceptual Schema) 모델링

http://contents.kocw.or.kr/document/lec/2011/AnDong/SongHeeHeon/04.pdf

 

개념적 스키마 모델링은 데이터베이스에 대한 추상적인 설계도를 작성하는 과정입니다. 개념 스키마는 데이터베이스의 전반적인 설계를 나타내며, 데이터의 구조와 관계를 표현합니다. 개념 스키마는 데이터베이스에 포함되는 개체(Entity)들 간의 관계와 무결성 제약 조건을 정의합니다.


개념적 스키마 모델링은 데이터 중심 설계를 수행합니다. 이는 특정 DBMS에 독립적이고 고차원적인 표현 기법으로 데이터의 조직과 표현에 초점을 맞춥니다. 개념적 스키마 설계는 추상화(abstraction) 원리를 기반으로 진행됩니다. 집단화(aggregation)와 일반화(generalization)를 통해 개체들을 그룹핑하고 공통적인 특성을 기반으로 확장합니다.


개념적 스키마 설계에는 뷰 통합 방법(view integration approach) 애트리뷰트 합성 방법(attribute synthesis approach)이 있습니다. 뷰 통합 방법은 하향식(top-down) 방법으로 요구조건 명세서를 기반으로 여러 개의 부문별 뷰를 식별하고 통합하여 전체적인 개념 스키마를 작성합니다. 애트리뷰트 합성 방법은 상향식(bottom-up) 방법으로 애트리뷰트 리스트에서 출발하여 작업-데이터(task-data) 관계에 기초하여 애트리뷰트들을 식별하고 분류합니다.

 

💡 트랜잭션(Transaction) 모델링

트랜잭션(Transaction) 모델링은 처리 중심 설계를 수행합니다. 이는 응용을 위한 트랜잭션의 입출력과 기능적 형태를 주로 정의하는 과정입니다. 트랜잭션은 응용을 위한 데이터 처리에 초점을 맞추며, 주요 트랜잭션을 식별하고 기능적 특성을 DB 설계 초기에 명세화합니다. 이를 통해 스키마에 필요한 정보가 모두 포함되도록 확인하고, 트랜잭션의 상대적 중요성과 예상 실행 빈도수를 파악합니다.

 

✅ ER 다이어그램(Entity-Relation Diagram)

ER 다이어그램(Entity-Relation Diagram)은 개념적 데이터 모델링에서 주로 사용되는 방법입니다. ER 다이어그램은 데이터 요소들의 관계를 그래픽으로 표현하여 데이터베이스의 구조와 관계를 시각적으로 이해할 수 있게 도와줍니다. 개체(Entity), 속성(Attribute), 관계(Relationship) 등을 명확하게 표현하여 데이터베이스의 구조를 정확히 이해하는 데 도움을 줍니다.

 

💡  개체(Entity)

 

https://velog.io/@mong9_s/DBRDBMS-5.-ER%EB%8B%A4%EC%9D%B4%EC%96%B4%EA%B7%B8%EB%9E%A8ERD

개체(Entity)는 ER 다이어그램에서 단독으로 존재하는 객체를 의미합니다. 개체는 사각형으로 표기되며, 동일한 객체는 존재하지 않습니다. 데이터베이스를 설계할 때, 개체는 일반적으로 '테이블'로 정의됩니다.

 

💡  속성(Attribute)

https://velog.io/@mong9_s/DBRDBMS-5.-ER%EB%8B%A4%EC%9D%B4%EC%96%B4%EA%B7%B8%EB%9E%A8ERD

속성(Attribute)은 개체가 가지고 있는 특성이나 속성을 나타냅니다. 속성은으로 표기되며, 개체의 특징을 기술합니다.


중요한 속성 중에서는 기본키라는 속성을 강조하기 위해 밑줄로 표기합니다. 기본키는 개체를 고유하게 식별하기 위해 사용되는 속성입니다.

 

💡  관계(Relationship)

https://velog.io/@mong9_s/DBRDBMS-5.-ER%EB%8B%A4%EC%9D%B4%EC%96%B4%EA%B7%B8%EB%9E%A8ERD

관계(Relationship)는 개체 간의 관계를 나타냅니다. ER 다이어그램에서는 개체를 서로 연결하며 어떤 관계를 가지는지 마름모로 표기합니다. 관계는 개체 간의 연관성과 의존성을 나타내며, 데이터베이스의 구조를 정확히 이해하는 데 도움을 줍니다.

 

💡  관계성 - 까치발표기법

https://velog.io/@mong9_s/DBRDBMS-5.-ER%EB%8B%A4%EC%9D%B4%EC%96%B4%EA%B7%B8%EB%9E%A8ERD

까치발 표기법은 추출된 관계를 ER 다이어그램으로 표기하기 위해 사용되는 방법 중 하나입니다. 까치발 표기법을 이용하면 개체 간의 관계성을 명확하게 표시할 수 있습니다.

반응형