SlideShare a Scribd company logo
SQLP 스터디

제1절 데이터 모델의 이해
    제2절 엔터티
모델링의 정의
• 복잡한 현실세계를 일정한 표기법에 의해
  표현하는 일

• 복잡한 현실세계 - 사람,사물,현상,개념
• 표기법 - 엔터티,속성,관계,식별자
      (I/E 표기법, Barker 표기법)
• 표현 – ERD 등
모델링의 특징
• 추상화
  현실세계를 일정한 형식에 맞추어 표현

• 단순화
  복잡한 현실세계를 약속된 규약이나 제한된 표기법이나 언어로
표현

• 명확화
  누구나 이해하기 쉽게 애매모호함을 제거하고 정확하게 현상을
기술

개발시점 – 분석/설계에 이용
운영시점 – 관리/변경에 이용
모델링의 세가지 관점
•   모델링 = 데이터관점(What) + 프로세스관점(How)
              (상관관점)

1) 데이터관점
정보시스템에서 특정업무를 처리하기 위해서
어떤 데이터와 관련이 있고, 어떤 데이터가 필요한지?
다른 어떤 데이터와 관계가 있는지?

2) 프로세스관점
데이터를 활용하여 업무가 실제하고 있는 일은 무엇인지 또는 무엇을 해야하는
지를 모델링

3) 상관관점
업무처리 프로세스에 따라 데이터가 어떤 영향을 받는지를 모델링
(특정버튼을 클릭했을때 어떤테이블들에 데이터가 떨어지는지)
데이터모델의 기본개념
• 데이터베이스의 논리적인 구조를 표현한 데이터모델을
  이해하는 것은? 
• 그 다음 SQL문장을 어떻게 구성할지에 대한 지식과 효
  율적인 쿼리작성을 위한 핵심

• 데이터모델링의 목적
업무정보를 구성하는 기초가 되는 정보들을 일정한 표기
법에 의해 표현함으로써

1) 업무내용을 정확히 분석
2) 분석된 모델을 활용하여 물리적 데이터베이스를 생성
   하고, 개발 및 데이터관리에 사용하기 위함
데이터모델링의 중요성 및 유의점
•     파급효과
    통합테스트시 불가피한 데이터모델의 변경
    - 개발자들 날새기
    - 구조적문제를 태생적으로 가지고 오픈

•    복잡한 정보요구사항의 간결한 표현

• 데이터품질
1) 중복  데이터를 신뢰할 수 없음  정규화
2) 비유연성
   비즈니스의 변화  유연하게 설계하지 못하면 안됨
3) 비일관성
   신용상태에 대한 갱신없이 고객납부이력 정보 갱신
   연체  정상

의사결정시스템, DW(OLAP)  중요하지않고, 정확하지않은 데이터는 활용의 가치가 없음
데이터 모델링의 3단계 – 1/2
• 추상화 수준에 따라 개념,논리,물리 3단계로 정의
  구분     모델링
 개념세계   개념모델링 업무중심적/포괄적 수준         추상적
              전사적 데이터모델링, EA수립시 사용
              엔터티중심
        논리모델링 업무에 대해
              키, 속성, 관계등을 정확히 표현
              재사용성이 높음
              구체업무중심
 현실세계   물리모델링 실제 물리적인 데이터베이스에
              OBJECT를 생성가능하도록
              성능고려, 저장공간고려등 물리적인
              고려하여 설계              구체적
              특정DBMS특화
데이터 모델링의 3단계 – 2/2
•   개념적 모델링
 - 고객과의 요구사항개발 및 업무분석부터 시작
 - 핵심엔터티와 그들간의 관계를 발견하고, 그것을 표현하기 위해 엔터티-관계 다이어그램
(ERD, Entity Relationship Diagram) 을 생성
 - 고객과 개발자가 ERD를 통해서 요구사항의 명세를 숙지

•   논리적 모델링
 - 논리적인 구조와 규칙을 정확하게 표현, 가장 핵심이 되는 모델링 단계
 - 물리 스키마 설계를 하기위한 데이터모델의 완료된 상태
 - 분석한 요구사항을 ERD로 그려내는것이 전부가 아닌 ‘과정의도구’
 - 시스템 구축 초기단계에서부터 프로젝트참여자가 결정해야할 대부분의 결정사항을 정의하는
시스템의 전과정을 지원
 - 기타 : 정규화, M:M관계해소, 참조무결성규칙, 이력관리 등..

•      물리적 모델링
    - Oracle, SQLServer, DB2 등 물리적인 DBMS 에 OBJECT를 만들기위한 모델링
    - 물리적저장공간, 인덱스, 제약조건, 테이블명, 컬럼명, 컬럼길이, 기본값 등등..

실무에서는 개념+논리를 묶어서 논리모델링를 한꺼번에 수행하는 경우가 대부분이다.
프로젝트 생명주기에서의
       데이터모델링
• Waterfall 기반에서는 데이터모델링의 위치가 분석
  과 설계단계로 구분되어 명확하게 정의할 수 있다.
* Waterfall(폭포수 개발방법론)
  분석 -> 설계 -> 구현 -> 테스트

교재 21쪽 그림참고

분석단계 – 업무중심 논리 데이터모델링 수행
설계단계 – 하드웨어와 성능을 고려한 물리 데이터모
델링 수행
데이터 독립성 1/2
• ≠ 데이터종속성
• 종속의 주체는 어플리케이션의 화면
• 과거 파일방식 데이터구성시
 - 데이터파일과 데이터에 접근하기 위한 인덱스를 별도로 구현하여 접
근
  - 사용자의 접근방법(트랜잭션유형)에 따라 매번 별도구성

• 데이터 독립성의 필요성
1) 유지보수 비용증가
2) 데이터 복잡도 증가
3) 데이터 중복성 증가
4) 요구사항 대응 저하

3단계로 표현된 ANSI표준모델의 구조, 독립성, 사상 을 이해하면 된다
데이터 독립성 2/2
• 데이터베이스 3단계 구조
 데이터독립성 모델은 외부단계, 개념적단계, 내부적
단계로 구성되고, 서로 간섭되지 않는 모델을 제시하
고 있다.

1) 외부단계 – 사용자 개개인의 관점
  사용자가 처리하고자 하는 데이터유형, 관점, 방법
에 따른 스키마 구조를 가짐
2) 개념적단계 – 공통사항처리
  일반적인 데이터모델이 이 단계에 해당
3) 내부적단계 – 물리적 저장방법 스키마
데이터모델링의 세가지요소
1) 전산시스템을 통해서 관리하고자 하는 것
   주문내역, 회원..  엔터티

2) 관리하고자 하는것들이 가지는 성격
   주문내역 – 주문번호,결제번호,결제금액..
   회원 – 아이디,이름,전화번호..  속성

3) 관리하고자 하는것들간의 관계  관계
이해관계자의 데이터모델링
        중요성 인식
• DBA보다 개발자가 모델링을 하고있는 이유
 1) 업무이해하고 분석해서 직접 표현해야하므로
 2) 표현된 내용을 바탕으로 프로젝트 관련자와 의사소통하고, 비
교/검증해야하므로

• 응용시스템을 개발하는 모든 엔지니어가 모델링을 할 기회가
  있음에도, 개발언어나 어플리케이션 개발에 관심을 두고 있음

• 그러나, 설계를 잘못했을때 미치는 영향력은
 - 모든 프로그램
 - 모든 데이터
 - 모든 트랜잭션 에 영향을 미칠 수 밖에 없게 된다.
데이터모델링의 이해관계자
• 누가 데이터모델링의 대해 연구하고 학습
  해야하는가?

• 정보시스템 구축하는 모든사람
  - 개발자 : 구현을 위해
  - 현업 : 요구사항이 맞는지 확인하기 위해
  - 기타 이해관계인 : 의사소통을 위해
ERD – 표기법, 모델링
• I/E표기법(Information Engineering)
• 바커(Barker)표기법

• ERD – 각 업무분석에서 도출된 엔터티와 엔터티간의
  관계를 이해하기 쉽게 도식화된 다이어그램으로 표시

• 이론 – 엔터티,속성,관계 등이 데이터사전이나 각종산
  출물에 의해 분석된 상태에서 ERD

• 실제 – 분석된 엔터티와 관계,속성 정보가 바로 ERD에
  표현됨
ERD 작업순서
1) ERD 작업순서
 엔터티 작성  배치  관계설정  관계명기술  참여
도(차수) 기술  필수여부 기술

2) 엔터티 배치
 좌우, 위아래
 키엔터티 : 가장 중요한 엔터티, 왼쪽 상단에 배치


3) ERD 관계연결
4) ERD 관계명의 표시
5) ERD 관계차수와 선택성 표시

More Related Content

Viewers also liked

Redox Enterprise
Redox EnterpriseRedox Enterprise
Redox Enterprise
Redox Engine
 
00허우(00后) 보고서
00허우(00后) 보고서00허우(00后) 보고서
00허우(00后) 보고서
Brandon Lee
 
빛톡콘서트 황병선(China joy로보는중국시장)
빛톡콘서트 황병선(China joy로보는중국시장)빛톡콘서트 황병선(China joy로보는중국시장)
빛톡콘서트 황병선(China joy로보는중국시장)
Academy-X
 
Baidu push 연동하기
Baidu push 연동하기Baidu push 연동하기
Baidu push 연동하기
Choulhyouc Lee
 
中国101_한국어 0810 final
中国101_한국어 0810 final中国101_한국어 0810 final
中国101_한국어 0810 final
ChungBo Shim
 
2016년 광군제 보고서
2016년 광군제 보고서2016년 광군제 보고서
2016년 광군제 보고서
Brandon Lee
 
중국 크라우드펀딩_중국 크라우드펀딩 발전 배경
중국 크라우드펀딩_중국 크라우드펀딩 발전 배경중국 크라우드펀딩_중국 크라우드펀딩 발전 배경
중국 크라우드펀딩_중국 크라우드펀딩 발전 배경
Brandon Lee
 
Alibaba YunOS platum china report
Alibaba YunOS platum china reportAlibaba YunOS platum china report
Alibaba YunOS platum china report
Platum
 
Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기
JangHyuk You
 
[데이터 시각화 3rd 세미나] 공공 데이터 시각화_조용현 통계데이터담당관
[데이터 시각화 3rd 세미나] 공공 데이터 시각화_조용현 통계데이터담당관[데이터 시각화 3rd 세미나] 공공 데이터 시각화_조용현 통계데이터담당관
[데이터 시각화 3rd 세미나] 공공 데이터 시각화_조용현 통계데이터담당관
Newsjelly
 
뉴스젤리 인포그래픽 총정리
뉴스젤리 인포그래픽 총정리뉴스젤리 인포그래픽 총정리
뉴스젤리 인포그래픽 총정리
Newsjelly
 
스타트업을 위한 프리젠테이션 클리닉
스타트업을 위한 프리젠테이션 클리닉스타트업을 위한 프리젠테이션 클리닉
스타트업을 위한 프리젠테이션 클리닉JiYoung Moon
 
인포그래픽 가이드 2 1
인포그래픽 가이드 2 1인포그래픽 가이드 2 1
인포그래픽 가이드 2 1
Newsjelly
 
윈속 네트워크 프로그래밍2
윈속 네트워크 프로그래밍2윈속 네트워크 프로그래밍2
윈속 네트워크 프로그래밍2
진화 손
 
IPv6 이론과 소켓 프로그래밍
IPv6 이론과 소켓 프로그래밍IPv6 이론과 소켓 프로그래밍
IPv6 이론과 소켓 프로그래밍OnGameServer
 
[정보 디자인 교과서] 2-1 정보의 조직화
[정보 디자인 교과서] 2-1 정보의 조직화[정보 디자인 교과서] 2-1 정보의 조직화
[정보 디자인 교과서] 2-1 정보의 조직화
sunhee kim
 
성능 좋은 SQL 작성법
성능 좋은 SQL 작성법성능 좋은 SQL 작성법
성능 좋은 SQL 작성법
Devgear
 
중국 Vr 파헤치기1- 중국vr산업현황-platum
중국 Vr 파헤치기1- 중국vr산업현황-platum중국 Vr 파헤치기1- 중국vr산업현황-platum
중국 Vr 파헤치기1- 중국vr산업현황-platum
Platum
 
[123] electron 김성훈
[123] electron 김성훈[123] electron 김성훈
[123] electron 김성훈
NAVER D2
 

Viewers also liked (19)

Redox Enterprise
Redox EnterpriseRedox Enterprise
Redox Enterprise
 
00허우(00后) 보고서
00허우(00后) 보고서00허우(00后) 보고서
00허우(00后) 보고서
 
빛톡콘서트 황병선(China joy로보는중국시장)
빛톡콘서트 황병선(China joy로보는중국시장)빛톡콘서트 황병선(China joy로보는중국시장)
빛톡콘서트 황병선(China joy로보는중국시장)
 
Baidu push 연동하기
Baidu push 연동하기Baidu push 연동하기
Baidu push 연동하기
 
中国101_한국어 0810 final
中国101_한국어 0810 final中国101_한국어 0810 final
中国101_한국어 0810 final
 
2016년 광군제 보고서
2016년 광군제 보고서2016년 광군제 보고서
2016년 광군제 보고서
 
중국 크라우드펀딩_중국 크라우드펀딩 발전 배경
중국 크라우드펀딩_중국 크라우드펀딩 발전 배경중국 크라우드펀딩_중국 크라우드펀딩 발전 배경
중국 크라우드펀딩_중국 크라우드펀딩 발전 배경
 
Alibaba YunOS platum china report
Alibaba YunOS platum china reportAlibaba YunOS platum china report
Alibaba YunOS platum china report
 
Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기
 
[데이터 시각화 3rd 세미나] 공공 데이터 시각화_조용현 통계데이터담당관
[데이터 시각화 3rd 세미나] 공공 데이터 시각화_조용현 통계데이터담당관[데이터 시각화 3rd 세미나] 공공 데이터 시각화_조용현 통계데이터담당관
[데이터 시각화 3rd 세미나] 공공 데이터 시각화_조용현 통계데이터담당관
 
뉴스젤리 인포그래픽 총정리
뉴스젤리 인포그래픽 총정리뉴스젤리 인포그래픽 총정리
뉴스젤리 인포그래픽 총정리
 
스타트업을 위한 프리젠테이션 클리닉
스타트업을 위한 프리젠테이션 클리닉스타트업을 위한 프리젠테이션 클리닉
스타트업을 위한 프리젠테이션 클리닉
 
인포그래픽 가이드 2 1
인포그래픽 가이드 2 1인포그래픽 가이드 2 1
인포그래픽 가이드 2 1
 
윈속 네트워크 프로그래밍2
윈속 네트워크 프로그래밍2윈속 네트워크 프로그래밍2
윈속 네트워크 프로그래밍2
 
IPv6 이론과 소켓 프로그래밍
IPv6 이론과 소켓 프로그래밍IPv6 이론과 소켓 프로그래밍
IPv6 이론과 소켓 프로그래밍
 
[정보 디자인 교과서] 2-1 정보의 조직화
[정보 디자인 교과서] 2-1 정보의 조직화[정보 디자인 교과서] 2-1 정보의 조직화
[정보 디자인 교과서] 2-1 정보의 조직화
 
성능 좋은 SQL 작성법
성능 좋은 SQL 작성법성능 좋은 SQL 작성법
성능 좋은 SQL 작성법
 
중국 Vr 파헤치기1- 중국vr산업현황-platum
중국 Vr 파헤치기1- 중국vr산업현황-platum중국 Vr 파헤치기1- 중국vr산업현황-platum
중국 Vr 파헤치기1- 중국vr산업현황-platum
 
[123] electron 김성훈
[123] electron 김성훈[123] electron 김성훈
[123] electron 김성훈
 

Similar to Sqlp 스터디

마스터 데이터 도메인을 위한 데이터 모델링 마스터
마스터 데이터 도메인을 위한 데이터 모델링 마스터마스터 데이터 도메인을 위한 데이터 모델링 마스터
마스터 데이터 도메인을 위한 데이터 모델링 마스터
Devgear
 
How to Create Value from Data, and Its Difficulty
How to Create Value from Data, and Its DifficultyHow to Create Value from Data, and Its Difficulty
How to Create Value from Data, and Its Difficulty
Dataya Nolja
 
전사 데이터 관리 반드시 피해야 할 7가지 실수
전사 데이터 관리 반드시 피해야 할 7가지 실수전사 데이터 관리 반드시 피해야 할 7가지 실수
전사 데이터 관리 반드시 피해야 할 7가지 실수
Devgear
 
Understanding MLOps
Understanding MLOpsUnderstanding MLOps
Understanding MLOps
Chun Myung Kyu
 
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
JeongHeon Lee
 
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
JeongHeon Lee
 
소프트웨어설계론
소프트웨어설계론소프트웨어설계론
소프트웨어설계론
JeongDong Kim
 
Lost practice : Requirement Analysis
Lost practice : Requirement AnalysisLost practice : Requirement Analysis
Lost practice : Requirement Analysis
c K
 
20150305 스마트한 데이터모델링 with ER/Studio
20150305 스마트한 데이터모델링 with ER/Studio20150305 스마트한 데이터모델링 with ER/Studio
20150305 스마트한 데이터모델링 with ER/Studio
Devgear
 
전달교육(분석설계모델링)
전달교육(분석설계모델링)전달교육(분석설계모델링)
전달교육(분석설계모델링)gimslide
 
ER/Studio 데이터 모델링 솔루션으로 마이그레이션(from ERwin)
ER/Studio 데이터 모델링 솔루션으로 마이그레이션(from ERwin)ER/Studio 데이터 모델링 솔루션으로 마이그레이션(from ERwin)
ER/Studio 데이터 모델링 솔루션으로 마이그레이션(from ERwin)
Devgear
 
[아꿈사/110903] 도메인주도설계 4장
[아꿈사/110903] 도메인주도설계 4장[아꿈사/110903] 도메인주도설계 4장
[아꿈사/110903] 도메인주도설계 4장sung ki choi
 
분석과 설계
분석과 설계분석과 설계
분석과 설계
Haeil Yi
 
BS501 발표자료
BS501 발표자료BS501 발표자료
BS501 발표자료
Park Sungpil
 
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
Devgear
 
2016년 인문정보학 Sql세미나 1/3
2016년 인문정보학 Sql세미나 1/32016년 인문정보학 Sql세미나 1/3
2016년 인문정보학 Sql세미나 1/3
in2acous
 
이중 데이터 전략 (Two-track data strategy)
이중 데이터 전략 (Two-track data strategy)이중 데이터 전략 (Two-track data strategy)
이중 데이터 전략 (Two-track data strategy)
Hosung Lee
 
정보공학(IE) 방법론.pptx
정보공학(IE) 방법론.pptx정보공학(IE) 방법론.pptx
정보공학(IE) 방법론.pptx
Seong-Bok Lee
 
Deep learning framework 제작
Deep learning framework 제작Deep learning framework 제작
Deep learning framework 제작
Tae Young Lee
 
JDC-EA수립_v1.0.pptx
JDC-EA수립_v1.0.pptxJDC-EA수립_v1.0.pptx
JDC-EA수립_v1.0.pptx
Ho Kyu Park
 

Similar to Sqlp 스터디 (20)

마스터 데이터 도메인을 위한 데이터 모델링 마스터
마스터 데이터 도메인을 위한 데이터 모델링 마스터마스터 데이터 도메인을 위한 데이터 모델링 마스터
마스터 데이터 도메인을 위한 데이터 모델링 마스터
 
How to Create Value from Data, and Its Difficulty
How to Create Value from Data, and Its DifficultyHow to Create Value from Data, and Its Difficulty
How to Create Value from Data, and Its Difficulty
 
전사 데이터 관리 반드시 피해야 할 7가지 실수
전사 데이터 관리 반드시 피해야 할 7가지 실수전사 데이터 관리 반드시 피해야 할 7가지 실수
전사 데이터 관리 반드시 피해야 할 7가지 실수
 
Understanding MLOps
Understanding MLOpsUnderstanding MLOps
Understanding MLOps
 
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
 
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
빅데이터 분야를 위한 이미지 마이닝 기술동향 및 산업 동향 고찰
 
소프트웨어설계론
소프트웨어설계론소프트웨어설계론
소프트웨어설계론
 
Lost practice : Requirement Analysis
Lost practice : Requirement AnalysisLost practice : Requirement Analysis
Lost practice : Requirement Analysis
 
20150305 스마트한 데이터모델링 with ER/Studio
20150305 스마트한 데이터모델링 with ER/Studio20150305 스마트한 데이터모델링 with ER/Studio
20150305 스마트한 데이터모델링 with ER/Studio
 
전달교육(분석설계모델링)
전달교육(분석설계모델링)전달교육(분석설계모델링)
전달교육(분석설계모델링)
 
ER/Studio 데이터 모델링 솔루션으로 마이그레이션(from ERwin)
ER/Studio 데이터 모델링 솔루션으로 마이그레이션(from ERwin)ER/Studio 데이터 모델링 솔루션으로 마이그레이션(from ERwin)
ER/Studio 데이터 모델링 솔루션으로 마이그레이션(from ERwin)
 
[아꿈사/110903] 도메인주도설계 4장
[아꿈사/110903] 도메인주도설계 4장[아꿈사/110903] 도메인주도설계 4장
[아꿈사/110903] 도메인주도설계 4장
 
분석과 설계
분석과 설계분석과 설계
분석과 설계
 
BS501 발표자료
BS501 발표자료BS501 발표자료
BS501 발표자료
 
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어  2015.12.03
엔터프라이즈 환경의 데이터모델 관리 방안 By 엠바카데로 데브기어 2015.12.03
 
2016년 인문정보학 Sql세미나 1/3
2016년 인문정보학 Sql세미나 1/32016년 인문정보학 Sql세미나 1/3
2016년 인문정보학 Sql세미나 1/3
 
이중 데이터 전략 (Two-track data strategy)
이중 데이터 전략 (Two-track data strategy)이중 데이터 전략 (Two-track data strategy)
이중 데이터 전략 (Two-track data strategy)
 
정보공학(IE) 방법론.pptx
정보공학(IE) 방법론.pptx정보공학(IE) 방법론.pptx
정보공학(IE) 방법론.pptx
 
Deep learning framework 제작
Deep learning framework 제작Deep learning framework 제작
Deep learning framework 제작
 
JDC-EA수립_v1.0.pptx
JDC-EA수립_v1.0.pptxJDC-EA수립_v1.0.pptx
JDC-EA수립_v1.0.pptx
 

Sqlp 스터디

  • 1. SQLP 스터디 제1절 데이터 모델의 이해 제2절 엔터티
  • 2. 모델링의 정의 • 복잡한 현실세계를 일정한 표기법에 의해 표현하는 일 • 복잡한 현실세계 - 사람,사물,현상,개념 • 표기법 - 엔터티,속성,관계,식별자 (I/E 표기법, Barker 표기법) • 표현 – ERD 등
  • 3. 모델링의 특징 • 추상화 현실세계를 일정한 형식에 맞추어 표현 • 단순화 복잡한 현실세계를 약속된 규약이나 제한된 표기법이나 언어로 표현 • 명확화 누구나 이해하기 쉽게 애매모호함을 제거하고 정확하게 현상을 기술 개발시점 – 분석/설계에 이용 운영시점 – 관리/변경에 이용
  • 4. 모델링의 세가지 관점 • 모델링 = 데이터관점(What) + 프로세스관점(How) (상관관점) 1) 데이터관점 정보시스템에서 특정업무를 처리하기 위해서 어떤 데이터와 관련이 있고, 어떤 데이터가 필요한지? 다른 어떤 데이터와 관계가 있는지? 2) 프로세스관점 데이터를 활용하여 업무가 실제하고 있는 일은 무엇인지 또는 무엇을 해야하는 지를 모델링 3) 상관관점 업무처리 프로세스에 따라 데이터가 어떤 영향을 받는지를 모델링 (특정버튼을 클릭했을때 어떤테이블들에 데이터가 떨어지는지)
  • 5. 데이터모델의 기본개념 • 데이터베이스의 논리적인 구조를 표현한 데이터모델을 이해하는 것은?  • 그 다음 SQL문장을 어떻게 구성할지에 대한 지식과 효 율적인 쿼리작성을 위한 핵심 • 데이터모델링의 목적 업무정보를 구성하는 기초가 되는 정보들을 일정한 표기 법에 의해 표현함으로써 1) 업무내용을 정확히 분석 2) 분석된 모델을 활용하여 물리적 데이터베이스를 생성 하고, 개발 및 데이터관리에 사용하기 위함
  • 6. 데이터모델링의 중요성 및 유의점 • 파급효과 통합테스트시 불가피한 데이터모델의 변경 - 개발자들 날새기 - 구조적문제를 태생적으로 가지고 오픈 • 복잡한 정보요구사항의 간결한 표현 • 데이터품질 1) 중복  데이터를 신뢰할 수 없음  정규화 2) 비유연성 비즈니스의 변화  유연하게 설계하지 못하면 안됨 3) 비일관성 신용상태에 대한 갱신없이 고객납부이력 정보 갱신 연체  정상 의사결정시스템, DW(OLAP)  중요하지않고, 정확하지않은 데이터는 활용의 가치가 없음
  • 7. 데이터 모델링의 3단계 – 1/2 • 추상화 수준에 따라 개념,논리,물리 3단계로 정의 구분 모델링 개념세계 개념모델링 업무중심적/포괄적 수준 추상적 전사적 데이터모델링, EA수립시 사용 엔터티중심 논리모델링 업무에 대해 키, 속성, 관계등을 정확히 표현 재사용성이 높음 구체업무중심 현실세계 물리모델링 실제 물리적인 데이터베이스에 OBJECT를 생성가능하도록 성능고려, 저장공간고려등 물리적인 고려하여 설계 구체적 특정DBMS특화
  • 8. 데이터 모델링의 3단계 – 2/2 • 개념적 모델링 - 고객과의 요구사항개발 및 업무분석부터 시작 - 핵심엔터티와 그들간의 관계를 발견하고, 그것을 표현하기 위해 엔터티-관계 다이어그램 (ERD, Entity Relationship Diagram) 을 생성 - 고객과 개발자가 ERD를 통해서 요구사항의 명세를 숙지 • 논리적 모델링 - 논리적인 구조와 규칙을 정확하게 표현, 가장 핵심이 되는 모델링 단계 - 물리 스키마 설계를 하기위한 데이터모델의 완료된 상태 - 분석한 요구사항을 ERD로 그려내는것이 전부가 아닌 ‘과정의도구’ - 시스템 구축 초기단계에서부터 프로젝트참여자가 결정해야할 대부분의 결정사항을 정의하는 시스템의 전과정을 지원 - 기타 : 정규화, M:M관계해소, 참조무결성규칙, 이력관리 등.. • 물리적 모델링 - Oracle, SQLServer, DB2 등 물리적인 DBMS 에 OBJECT를 만들기위한 모델링 - 물리적저장공간, 인덱스, 제약조건, 테이블명, 컬럼명, 컬럼길이, 기본값 등등.. 실무에서는 개념+논리를 묶어서 논리모델링를 한꺼번에 수행하는 경우가 대부분이다.
  • 9. 프로젝트 생명주기에서의 데이터모델링 • Waterfall 기반에서는 데이터모델링의 위치가 분석 과 설계단계로 구분되어 명확하게 정의할 수 있다. * Waterfall(폭포수 개발방법론) 분석 -> 설계 -> 구현 -> 테스트 교재 21쪽 그림참고 분석단계 – 업무중심 논리 데이터모델링 수행 설계단계 – 하드웨어와 성능을 고려한 물리 데이터모 델링 수행
  • 10. 데이터 독립성 1/2 • ≠ 데이터종속성 • 종속의 주체는 어플리케이션의 화면 • 과거 파일방식 데이터구성시 - 데이터파일과 데이터에 접근하기 위한 인덱스를 별도로 구현하여 접 근 - 사용자의 접근방법(트랜잭션유형)에 따라 매번 별도구성 • 데이터 독립성의 필요성 1) 유지보수 비용증가 2) 데이터 복잡도 증가 3) 데이터 중복성 증가 4) 요구사항 대응 저하 3단계로 표현된 ANSI표준모델의 구조, 독립성, 사상 을 이해하면 된다
  • 11. 데이터 독립성 2/2 • 데이터베이스 3단계 구조 데이터독립성 모델은 외부단계, 개념적단계, 내부적 단계로 구성되고, 서로 간섭되지 않는 모델을 제시하 고 있다. 1) 외부단계 – 사용자 개개인의 관점 사용자가 처리하고자 하는 데이터유형, 관점, 방법 에 따른 스키마 구조를 가짐 2) 개념적단계 – 공통사항처리 일반적인 데이터모델이 이 단계에 해당 3) 내부적단계 – 물리적 저장방법 스키마
  • 12. 데이터모델링의 세가지요소 1) 전산시스템을 통해서 관리하고자 하는 것 주문내역, 회원..  엔터티 2) 관리하고자 하는것들이 가지는 성격 주문내역 – 주문번호,결제번호,결제금액.. 회원 – 아이디,이름,전화번호..  속성 3) 관리하고자 하는것들간의 관계  관계
  • 13. 이해관계자의 데이터모델링 중요성 인식 • DBA보다 개발자가 모델링을 하고있는 이유 1) 업무이해하고 분석해서 직접 표현해야하므로 2) 표현된 내용을 바탕으로 프로젝트 관련자와 의사소통하고, 비 교/검증해야하므로 • 응용시스템을 개발하는 모든 엔지니어가 모델링을 할 기회가 있음에도, 개발언어나 어플리케이션 개발에 관심을 두고 있음 • 그러나, 설계를 잘못했을때 미치는 영향력은 - 모든 프로그램 - 모든 데이터 - 모든 트랜잭션 에 영향을 미칠 수 밖에 없게 된다.
  • 14. 데이터모델링의 이해관계자 • 누가 데이터모델링의 대해 연구하고 학습 해야하는가? • 정보시스템 구축하는 모든사람 - 개발자 : 구현을 위해 - 현업 : 요구사항이 맞는지 확인하기 위해 - 기타 이해관계인 : 의사소통을 위해
  • 15. ERD – 표기법, 모델링 • I/E표기법(Information Engineering) • 바커(Barker)표기법 • ERD – 각 업무분석에서 도출된 엔터티와 엔터티간의 관계를 이해하기 쉽게 도식화된 다이어그램으로 표시 • 이론 – 엔터티,속성,관계 등이 데이터사전이나 각종산 출물에 의해 분석된 상태에서 ERD • 실제 – 분석된 엔터티와 관계,속성 정보가 바로 ERD에 표현됨
  • 16. ERD 작업순서 1) ERD 작업순서 엔터티 작성  배치  관계설정  관계명기술  참여 도(차수) 기술  필수여부 기술 2) 엔터티 배치 좌우, 위아래 키엔터티 : 가장 중요한 엔터티, 왼쪽 상단에 배치 3) ERD 관계연결 4) ERD 관계명의 표시 5) ERD 관계차수와 선택성 표시