데이터입출력구현
시스템 개발 절차
- 데이터관점, 프로세스 관점 두 가지로 진행
- 개념 모델링을 통해 개발 범위 파악
- 업무 중심의 분석 단계
- 개발하고자 하는 환경을 고려한 설계 단계로 구체화
- 개발 단계로 진행
데이터 모델링 정의
- 데이터베이스 설계 방법론
- 기업의 정보 구조를 실체와 관계를 중심으로 명확하고 체계적으로 표현하여 문서화하는 기법
- 기업의 정보 구조를 실체와 관계를 중심으로 명확하고 체계적으로 표현하여 문서화하는 기법
데이터 모델링 목적
- 연관 조직의 정보요구에 대한 정확한 이해
- 사용자, 설계자, 개발자 간에 효율적인 의사소통 수단 제공
- 데이터 체계 구축을 통한 고품질 S/W와 유지보수 비용의 감소 효과 기대
- 신규 또는 개선 시스템의 개발 기초를 제공
데이터 모델링 특성
- 데이터 중심 분석을 통한 업무 흐름 파악이 용이
- 데이터 무결성 보장
- 데이터의 공유를 통한 중복을 제거하고 일관성 있는 정보 제공
데이터 모델링 절차
논리 데이터 모델링 정의
- 데이터베이스 개발 과정의 전략수립 및 분석 단계에서 실시하며, 데이터 구조에 대한 논리적 정의 단계
- 정확한 업무 분석을 통한 자료의 흐름을 분석하여 현재 사용 중인 양식, 문서, 징표를 중심으로 자료항목을 추출하여 추출된 엔티티와 속성들의 관계를 구조적으로 정의하는 단계
논리 데이터 모델의 특성
- 요구사항을 충분히 수집하지 않으면 다음 단계의 요구사항 변경에 따른 많은 비용이 발생
- 모든 이해당사자들과 의사소통의 보조자료로서 E-R모델을 활용
- 논리적모델은 독립적
이상 Anomaly 현상
- 불필요한 데이터 중복으로 인해 릴레이션에 대한 데이터 삽입/수정/삭제 연산을 수행할 때 발생할 수 있는 부작용
- 정규화를 통해 이상현상을 제거
- 종류
- 삽입 이상
- 새 데이터를 삽입시 불필요한 데이터도 함께 삽입되는 문제
- 갱신 이상
- 중복 데이터 중 일부만 변경하여 데이터가 불일치하게 되는 모순의 문제
- 삭제 이상
- 데이터를 삭제시 꼭 필요한 데이터까지 함께 삭제되는 데이터 손실의 문제
- 삽입 이상
정규화 Normalization 개념
- 중복성을 최소화하고 정보의 일관성을 보장하기 위한 개념
- 릴레이션을 관련 있는 속성들로만 구성되도록 릴레이션을 분해하는 과정
정규화 목적
- 데이터 중복 배제로 데이터 관리 편의성 제고 및 자료 저장 공간의 최소화
- 데이터 모형 단순화
- 데이터 구조의 안정성 및 무결성 유지
- 속성의 배열상태 검증
- 엔터티와 속성의 누락 여부 검증 수단
- 자료검색과 추출의 효율성을 추구
정규화 특징
- 어떤 관계구조가 바람직한 것인지, 바람직하지 못한 관계를 어떻게 분해하여야 하는지에 관한 구체적인 판단기준을 제공
- 정규화된 데이터 모델은 정확성, 일치성, 단순성, 비중복성, 안정성 보장