- 데이터 모델링의 이해
- 데이터 모델의 이해
모델링의 정의
복잡한 "현실세계"를 단순화시켜 표현하는 것
사물 또는 사건에 관한 양상이나 관점을 연관된 사람이나 그룹을 위하여 명확하게 하는것
현실 세계의 추상화된 반영
모델링의 특징
추상화는 현실세계를 일정한 형식에 맞추어 표현을 한다는 의미
단순화는 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현
명확화는 누구나 이해하기 쉽게 하기 위해 대상에 대한 애매모호함으 제거하고 정확하게 현상을 기술
모델링의 세 가지 관점
데이터 모델링의 정의
정보 시스템을 구축하기 위한 데이터 관점의 업무 분석 기법
현실 세계의 데이터에 대해 약속된 표기법에 의해 표현되는 과정
데이터베이스를 구축하기 위한 분석/설계의 과정
데이터 모델이 제공하는 기능
가시화
명세화
구조화된 틀
문서화
다양한 영역에 집중하기 위해 다른 영역의 세부 사항은 숨기는 다양한 관점 제공
구체화
데이터 모델링의 중요성 및 유의점
파급효과: 시스템 구축 작업 중에서 다른 어떤 설계 과정보다 데이터 설계가 중요
복잡한 정보 요구사항의 간결한 표현: 데이터 모델은 구축할 시스템의 정보 요구사항과 한계를 가장 명확하고 간결하게 표현할 수 있는 도구
데이터 품질: 데이터의 중복, 비유연성, 비일관성이 발생할 수 있음
데이터 모델링의 3단계 진행
현실세계 - 개념적 구조 - 논리적 구조 - 물리구조
논리적 데이터 모델링: 시스템으로 구축하고자 하는 업무에 대해 Key,속성,관계 등을 정확하게 표현,재사용성이 높음
물리적 데이터 모델링: 실제로 데이터베이스에 이식할 수 있도록 성능,저장 등 물리적인 성격을 고려하여 설계
프로젝트 생명주기에서 데이터 모델링
정보전략계획(ISP) > 분석 > 설계 > 계발 > 테스트 > 전환/이행단계
데이터 독립성의 필요성
유지보수 비용증가
데이터 중복성 증가
데이터 복잡도 증가
요구사항 대응 저하
데이터 베이스 3단계 구조
데이터 모델링의 세가지요소
업무가 관여하는 어떤것
어떤 것이 가지는 성격
업무가 관여하는 어떤 것 간의 관계
데이터 모델링 작업순서
엔터티를 그린다.
엔터티를 적절하게 배치한다.
엔터티간 관계를 설정한다.
관계명을 기술한다.
관계의 참여도를 기술한다.
관계의 필수여부를 기술한다.
좋은 데이터 모델의 요소
완전성: 업무에 필요한 데이터가 모두 정의되어야함
중복 배제: 동일한 사실은 한번만 저장해야함
업무 규칙: 데이터 모델 분석만으로도 비즈니스 로직이 이해되어야함
데이터 재사용: 데이터 통합성과 독립성 고려해야함
통합성: 동일한 데이터는 유일하게 정의해서 다른 영역에서 참조해야함