1. 데이터 모델링 개념 10-1) 모델링의 3가지 관점 1. 데이터 관점 – 업무가 어떤 데이터와 관련이 있는지 또는

Slides:



Advertisements
Similar presentations
3. 메소드와 변수 SCJP 자격증 프로젝트 발표자 : 최선웅. 1. 메 소 드 개 념 2. 메 소 드 양 식 3. 메 소 드 변 수 4. 메 소 드 예 제 5. 참 고 문 헌 / 자 료 목 차.
Advertisements

일정 관리 다이어리 제작 JSP Programming with a Workbook. 학습 목표  사용자의 일정을 관리할 수 있는 다이어리에 대하여 알아보자. JSP Programming with a Workbook2.
을지대학교 무선 네트워크 사용 방법 2010 년 06 월 01 일. 을지대학교 무선 네트워크 사용 방법 1. PC 무선랜 카드 활성화 및 체크 1 단계 : 시작 -> 설정 -> 네트워크 설정 2 단계 : 무선 네트워크 설정 선택 -> 마우스 버튼 오른쪽 클릭 -> 사용.
1 넷스팟 MAC ID 설정 방법 ( 서울캠퍼스 기준 ) 각종 스마트폰의 WiFi 를 이용시 각종 스마트폰의 WiFi 를 이용시 MAC ID 설정을 하는 방법 입니다. 아이폰의 경우는 별도의 설정없이 바로 사용이 가능하오니, 사용이 어려울 경우, 고객센터로 문의하시면 됩니다.
실전 데이터모델링 & 데이터베이스 설계와 구축 (4~5. 프로세스 / 상관 모델링 ) 李春植.
2장. 데이터 모델.
5장. 논리적 데이터베이스 모델링 1. 관계형 모델의 개념 2. Mapping Rule 3. 정규화
APP 개발 단계에서의 데이터 모델링 관계 다이어그램을 ERD로 구성. 개체,관계,속성 식별.
Index SendMemo 기능 Q & A 팀 소개 배경 및 목적 구현
실전 데이터모델링 & 데이터베이스 설계와 구축
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
최윤정 Java 프로그래밍 클래스 상속 최윤정
Entity Relationship Diagram
제 09 장 데이터베이스와 MySQL 학기 인터넷비즈니스과 강 환수 교수.
- Pipeline Submission : submit - Pipeline 등록 : register
데이터베이스 및 설계 금오공과대학교 컴퓨터공학부 이 이섭.
6 장. ER-관계 사상에 의한 관계 데이터베이스 설계
오브젝트 조합 회로 IT CookBook, VHDL을 이용한 디지털 회로 입문.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
08. 데이터 모델링.
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
자료구조: CHAP 4 리스트 (3) 순천향대학교 컴퓨터공학과 하 상 호.
자바 5.0 프로그래밍.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
공인인증서 신청 및 발급 제일 먼저 은행에 직접 방문하여 인터넷뱅킹 신청.
13. 포인터와 배열! 함께 이해하기 IT응용시스템공학과 김 형 진 교수.
27장. 모듈화 프로그래밍.
29강 JAVA 스레드 - 스레드란? - 멀티스레드 문법 - synchronized Lecturer Kim Myoung-Ho
1. 일반판매 등록 승인 출고 2. 직원가 판매 3. 샘플출고 4. 기타판매 지티엘 샘플출고, 직원가구매 프로세스 정의
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
19. 함수 포인터와 void 포인터.
Lesson 2. 기본 데이터형.
데이터베이스 설계도구 ERwin 사용법(Erwin 4.1.4)
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
27강 JAVA Collections - II - Map계열 컬렉션 클래스 살펴보기 - Set계열 컬렉션 클래스 살펴보기
윈도우 컨트롤.
1. 데이터 모델 개념 (1) 정보 모델링과 데이터 모델링 1) 정보 모델링 (information modeling) ① 현실 세계에 존재하는 개체를 인간이 이해할 수 있는 정보 구조 (현실 세계에 대한 인식을 추상적 개념으로 표현)로 표현하는 과정 ② 정보 모델링을.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2장. 변수와 타입.
BIC 사례 1 연관규칙과 분류모형을 결합한 상품 추천 시스템: G 인터넷 쇼핑몰 사례
워드프로세서 실기 강 사 : 박영민.
평생교육실습 신청서 작성하기.
1. 신규업체 등록신청 Menu Path HOME >> 신규업체등록신청 화면 개요
실전 데이터모델링 & 데이터베이스 설계와 구축
Database Management System
아이패드2 64GB 50G 요금 신청 작성 예시 ① 홍길동 ② ⑤ ④ ③ 062) V ⑥ 삼성카드 (02/15) KT합산 또는
9강. 클래스 실전 학사 관리 프로그램 만들기 프로그래밍이란 결국 데이터를 효율적으로 관리하기 위한 공구
CHAP 21. 전화, SMS, 주소록.
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
충남대학교 Software Engineering Lab 김 대 엽
중복 멤버의 처리 조 병 규 한 국 교 통 대 학 교 SQ Lab..
Part 2 개념적 데이터 모델 Copyright © 2006 by Ehan Publishing Co. All rights reserved.
3. 모듈 (5장. 모듈).
공인인증로그인 매뉴얼.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
학습내용 프로토콜 계층화 OSI 모델의 용어 및 기능 개체 서비스 접근점 (N) 프로토콜과 (N) 서비스 서비스 프리미티브
4장. 데이터 모델링 데이터 모델링과 데이터 모델의 개념 개체-관계 모델 논리적 데이터 모델.
9 브라우저 객체 모델.
ER-관계 사상에 의한 관계데이터베이스 설계 충북대학교 구조시스템공학과 시스템공학연구실
.Net FrameWork for Web2.0 한석수
TrustNet 전자 협조전 사용설명서 목 차 작성,수정,삭제 결재함 처리현황 발송대장,접수대장
07. DB 설계 명지대학교 ICT 융합대학 김정호.
                              데이터베이스 설계 및 실습 #6 - SQL 실습 한국외국어대학교 DaPS 연구실                              
13. 포인터와 배열! 함께 이해하기.
7 생성자 함수.
6 객체.
8장. 데이터베이스 설계 데이터베이스 설계 단계 요구 사항 분석 개념적 설계 논리적 설계 물리적 설계와 구현.
Presentation transcript:

1. 데이터 모델링 개념 10-1) 모델링의 3가지 관점 1. 데이터 관점 – 업무가 어떤 데이터와 관련이 있는지 또는 10-1) 모델링의 3가지 관점 1. 데이터 관점 – 업무가 어떤 데이터와 관련이 있는지 또는 (DATA, WHAT) 데이터간의 관계는 무엇인지를 모델링 하는 방법 2. 프로세스 관점 – 업무에서 실제 하는 일은 무엇인지 또는 (PROCESS, HOW) 어떻게 해야 하는지에 대해 모델링 하는 방법 3. 상관 관점 – 업무가 처리하는 일의 방법에 따라 데이터는 (INTERACTION;상호작용) 어떻게 영향을 받고 있는지 모델링 하는 방법

■ 데이터 모델링이란… ▶ 정보화 시스템을 구축하기 위해, 어떤 데이터가 존재하는지 또는 업무가 필요로 하는 정보는 무엇인지를 분석하는 방법

10-2) 데이터 모델링의 주체 ▶ 프로젝트 참여한 모든 사람은 데이터모델링에 여하거나 모델내용을 이해해야 한다. 프로젝트 10-2) 데이터 모델링의 주체 프로젝트 개발 참여자 프로젝트 업무 참여자 SE, BA DBA MODELER 현업 업무전문가 ▶ 프로젝트 참여한 모든 사람은 데이터모델링에 여하거나 모델내용을 이해해야 한다.

10-3) 기본 데이터모델링 개념 업무가 관여하는 어떤 것(THINGS) 업무가 관여하는 어떤 것간의 관계(RELATIONSHIPS) 어떤 것이 가지는 성격(ATTRIBUTES)

10-4) 기본 데이터모델링 용어 개 념 타입/클래스 어커런스/인스턴스 어떤 것 엔티티타입 엔티티 어떤 것간의 관계 관계 패어링 어떤 것의 성격 속성 속성값

10-5) 엔티티((Entity) 타입 정의 ① 정보가 저장될 수 있는 사람, 장소, 물건, 사건 그리고 개념 등 - Thomas Bruce (1992) ~ ② 변별할 수 있는 사물 - Peter Chen (1976) ~ ③ 데이터 베이스 내에서 변별 가능한 객체 - C.J Date (1986) ~ ④ 추후에 참조 가능한 데이터의 논리적 저장 체 - Clive Finkelsein (1989) ~ ⑤ 정보를 저장할 수 있는 어떤 것 - James Martin (1939) – ⇒ 엔티티는 업무수행을 위해 기업이 알아야 될 대상이 되는 사람, 장소, 사물, 사건 및 개념

■ 엔티티 타입 예 강의실 과목 강사 ■ 엔티티타입 - 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 것으로 - 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 것으로   영속적으로 존재하는 단위 . ■ 과목은 정보공학이나 JAVA등을 포함하는 동일한 성격의 엔티티들을 보관하는 논리적인 장소이다. JAVA 정보공학 과목(엔티티 타입)

10-6) 엔티티 타입과 엔티티 ※ ERD (Entity Relationship Diagram) 엔티티타입-엔티티 ERD 엔티티타입-엔티티의 예 엔티티 타입 엔티티 강의실 101호 102호 과 목 J2EE DATA MODELING 강 사 박승기 이순신 엔티티타입 엔티티 → 엔티티타입은 엔티티의 집합 ※ ERD (Entity Relationship Diagram)

10-7) 엔티티 타입의 특징 ① 첫 번째 반드시 업무에서 필요하고 관리하고자 하는 정보이어야 한다. ① 첫 번째 반드시 업무에서 필요하고 관리하고자 하는 정보이어야 한다. (예. 환자, 토익의 응시횟수…) ② 두 번째 유일한 식별자에 의해 식별이 가능해야 한다. ③ 세 번째 영속적으로 존재하는 엔티티의 집합이어야 한다. (“한 개”가 아니라 “두 개 이상”) ④ 네 번째 엔티티타입은 업무 프로세스에 의해 이용되어야 한다. ⑤ 다섯 번째 엔티티타입에는 반드시 속성이 있어야 한다. ⑥ 여섯 번째 엔티티 타입은 다른 엔티티 타입과 최소 한 개 이상의 관계가 있어야 한다.

엔티티의 수 가 “한 개”가 아니라 “두 개 이상” 이어야 한다. ① 첫 번째 반드시 업무에서 필요하고 관리하고자 하는 정보이어야 한다. 병원 시스템 인사시스템 환자 ② 두 번째 유일한 식별자에 의해 식별이 가능해야 한다. 홍길동 !!??? ③ 세 번째 영속적으로 존재하는 엔티티의 집합이어야 한다. 엔티티의 수 가 “한 개”가 아니라 “두 개 이상” 이어야 한다. 엔티티타입 엔티티 회사 LG CNS 회사 엔티티타입 엔티티 병원 삼성의료원 병원

④ 네 번째 엔티티타입은 업무 프로세스에 의해 이용되어야 한다. ?? 난 뭐지… 엔티티 타입 엔티티 타입 PROCESS 엔티티 타입 엔티티 타입 PROCESS → 업무프로세스에 의해 이용되지 않는 엔티티 타입은 그 업무에 있어서는 엔티티 타입이 아니라는 것을 의미한다. ⑤ 다섯 번째 엔티티타입에는 반드시 속성이 있어야 한다. 엔티티타입? 태풍 날씨 태풍이름 발생지역 풍속 → 속성이 존재하지 않는 오브젝트는 엔티티 타입이 될 수 없다.

⑥ 여섯 번째 엔티티 타입은 다른 엔티티 타입과 최소 한 개 이상의 관계가 있어야 한다. 강의실 코드 강사 강의실번호 강의장소 강의실상태코드 강의실용도코드 코드 내용 비고 강사이름 강사타입코드 강사과목코드 주소 전화번호 → 코드와 통계성 엔티티타입 간의 관계는 연결하면 데이터모델이 너무 복잡해 지므로 편의상 생략하여 표현한다.

■ 엔티티 타입의 분류 – 유,무형에 따라… 유형 (사원, 물품) 사건 개념 (주문, 청구) (조직, 장소) 유형(TANGIBLE) 유형 (사원, 물품) 무형(CONCEPTUAL) 사건 (주문, 청구) 개념 (조직, 장소)

■ 엔티티 타입의 분류 – 발생시점에 따라… 중심 (접수, 계약) 기본 (사원, 부서) 행위 (주문내역, 계약진행) ◆ 기본(FUNDAMENTAL ENTITY TYPE) – 해당 업무에 기본적으로 존재하는 정보 ◆ 중심(MAIN ENTITY TYPE) – 업무에 핵심적인 역할을 하는 정보 ◆ 행위(ACTIVE ENTITY TYPE) – 기본과 중심 엔티티타입을 근간으로 업무가 흘러가면서 발생되는 엔티티타입

10-8) 엔티티 타입의 명명 ① 첫 번째 현업에서 사용하는 용어를 사용한다. ② 두 번째 가능한 약어를 사용하지 않는다. ③ 세 번째 단수명사를 사용한다. ④ 네 번째 모든 엔티티타입 이름은 유일해야 한다. ⑤ 다섯 번째 엔티티타입이 생성되는 자연스러운 의미를 그대로 부여한다. ⇒ ㅋ ㅋ 잘 지은 엔티티 타입 명 이름하나 열 프로세스 명 안 부럽다.

▶ 엔티티 타입의 명명 예 주문목록 ■ 엔티티타입이 생성되는 의미대로 명명 한다. 엔티티 타입 이름 설명 고객제품 고객의 제품인지, 주문제품인지 명확하지 않음. 주문제품 주문목록 주문한 제품의 이름이라는 것을 알 수 있음. 주문목록

10-9) 식별자 개념 식별자 ■ 식별자는 엔티티 타입 내에서 엔티티들을 구분할 수 있는 구분자이다. 엔티티 1001 엔티티 102 1003 엔티티타입 ■ 식별자는 엔티티 타입 내에서 엔티티들을 구분할 수 있는 구분자이다.

▶ 식별자 구분 식별자 분류 대표성여부 스스로생성여부 단일속성여부 대체여부 주 식별자 보조 내부 식별자 외부 단일 식별자 복합 원조 식별자 대리

※ 대리 식별자(SURROGATE IDENTIFIER) 주문 주문 사업소 코드 주문일자 일련번호 주문번호 사업소코드 + 년월 + 일련번호 대리 식별자 대리 식별자 방문실적 방문실적 방문 일시 방문장소 코드 방문자 주민등록번호 방문실적 일련번호 방문 일시 방문장소 코드 방문자 주민등록번호 ⇒ 대리 식별자(SURROGATE IDENTIFIER)는 주 식별자의 속성이 복합 식별자일 경우 여러 개의 속성을 묶어 하나의 속성으로 만들어 주 식별로 활용하는 것. - 주 식별자 속성을 일반 속성으로 내리고, 일련번호 형태를 사용 하는 것.

10-10) 관계의 정의 소속한다 ■ 관계란 두 개의 엔티티 타입 사이의 논리적인 관계 즉 엔티티와 엔티티가 부서 사원 소속한다 ■ 관계란 두 개의 엔티티 타입 사이의 논리적인 관계 즉 엔티티와 엔티티가 존재의 형태나 행위로서 서로에게 영향을 주는 형태를 말한다. DB팀 부서 사원 박 승기 김경재 고객 주문 CTA201 소속한다 주문한다 ■ 존재에 의한 관계 ■ 행위에 의한 관계 → 사원 박 승기라는 사원은 DB팀에 소속되어 있는 상태이다. → 김 경재 고객은 “주문한다”라는 행위를 한다.

10-11) 관계 패어링 ■ 관계-패어링 ERD Pairing = 대진 편성표 ■ 각각의 엔티티들은 자신이 관련된 엔티티들과 관계의 어커런스((Occurrence; 사건, 발생) 로 참여 하는 형태를 관계 패어링(Pairing) 이라 한다. 관계-패어링(Pairing) 예 ■ 관계-패어링 ERD 관계 패어링 소속한다. 박승기가 영업부에 소속한다. 김경재가 영업부에 소속한다. 주문되다. 마우스가 주문번호1001에 의해 주문된다. 키보드가 주문번호1001에 의해 관계 패어링 관계는 패어링의 집합 Pairing = 대진 편성표

▶ 관계 패어링 예 패어링 부서 소속된다 사원 배우 영업부 박 승기 인사부 김경재 총무부 정대산 홍길동 → 엔티티 타입은 엔티티의 집합을 논리적으로 표현 한 것. → 관계는 관계 패어링의 집합을 논리적으로 표현 한 것.

10-12) 관계의 멤버 쉽 멤버쉽(RELATIONSHIP MEMBERSHIP) ■ 멤버쉽은 엔티티 타입이 참여하는 관계에 대한 자신으로부터의 관점이다. 멤버쉽(RELATIONSHIP MEMBERSHIP) 포함한다 부서 사원 사원 소속된다 → 부서는 사원을 포함하고 있다. → 사원은 부서에 소속된다.

10-12) 관계의 카디넬러티 1) 1:1(ONE TO ONE) ■ 카디넬러티(Cardinality)는 두개의 엔티티 타입간 관계에서 참여자의 수를 표현 한 것. ■ 카디넬러티의 표현 방법은 1:1, 1:M, M:N이다. 1) 1:1(ONE TO ONE) 신청한다 구매신청 구매주문 작성한다 → 한 개의 구매신청서에 대해 한 개의 구매주문을 신청하고 → 한 개의 구매주문에는 한 개의 구매신청내용을 작성한다.

2) 1:M(ONE TO MANY) 3) M:M(MANY TO MANY) 부서 포함한다 소속된다 사원 → 한 명의 사원은 한 부서에 소속되고 한 부서에는 여러 사원을 포함한다. 3) M:M(MANY TO MANY) 주문 주문한다 주문된다 제품 → 하나의 주문은 여러 개의 제품을 주문할 수 있고 하나의 제품은 여러 개의 주문에 의해 주문될 수 있다.

▶ 관계의 참여 방법 선택(OPTIONAL) 필수(MANDATORY) ◆ 필수 참여 : 참여하는 모든 참여자가 반드시 타 엔티티 타입 참여자와 연결되어야 하는 관계. ◆ 선택 참여 : 참여해도 되고 하지 않아도 되는 관계 선택(OPTIONAL) 열차가 출발하겠습니다. 필수(MANDATORY) ◆ 필수 참여 : 지하철은 문이 닫혀야만 출발할 수 있다. ◆ 선택 참여 :안내방송이 나오지 않아도 지하철은 출발할 수 있다.

▶ 관계의 참여도 ■ 관계(RELATIONSHIP) 참여도 하나의 주문목록에는 한 개의 목록을 항상 포함하고 포함한다 포함된다 목록 하나의 주문목록에는 한 개의 목록을 항상 포함하고 한 목록은 여러 개의 주문목록에 의해 포함될 수 있다.

2) 자기참조관계(Recursive Relationship) 10-13) 관계의 종류 1) 정상관계(Normal Relationship) ■ 엔티티 타입과 엔티티 타입이 독립적으로 분리되어 있으면서 한 개의 관계만 상호간 존재하는 형태의 관계 부서 사원 2) 자기참조관계(Recursive Relationship) ■ 하나의 엔티티 타입내에서 엔티티와 엔티가 관계를 맺고 있는 형태의 관계 컴퓨터 본체 마우스 키보드 메모리 CPU 휠 기판 켸이스 부품

3) 병렬관계(Pararell Relationship) ■ 엔티티 타입과 엔티티 타입이 독립적으로 분리되어 있으면서 두 개 이상의 관계가 상호간의 존재하는 형태의 관계(예 은행에 예금/대출) 고객 계약 4) 수퍼 타입 서브 타입관계 ■ 수퍼 타입과 서브타입 사이에 1:1 관계형태로서 서브타입을 구분하는 방법에 따라 배타적 관계와 포함 관계로 구분됨 일반직원은 촉탁직원이 될 수 없는 배타적관계 인터넷접수자가 방문하여 다시 접수 할 수 있는 포함관계 일반직원 직원 직원구분코드 촉탁직원 방문접수 인터넷접수 접수 접수구분코드

5) 주식별자 관계/비식별자 관계 부서 부서코드 사원 부서코드 (FK) 사원번호 주식별자 관계 비식별자 관계 부모의 주 식별자가 자식의 주 식별자 상속됨 자식의 일반속으로