요구사항 분석
설계 1단계 : 요구사항 분석
목적
- 사용자의 요구 사항을 수집하고 분석하여 개발할 데이터베이스의 용도를 파악
- 업무에 필요한 데이터가 무엇인지, 그 데이터에 어떤 처리가 필요한지 등을 고려
결과물
주요작업
- 데이터베이스를 실제로 사용할 주요 사용자의 범위를 결정
- 사용자가 조직에서 수행하는 업무를 분석
- 면담, 설문조사, 업무 관련 문서 분석등의 방법을 이용해 요구사항 수집
- 수집된 요구사항에 대한 분석결과를 요구사항 명세서로 작성
요구사항 분석 예 - [한빛 마트 데이터베이스]
- 인터넷으로 회원들에게 상품을 판매하는 한빛 마트의 데이터베이스개발
설계 2단계 : 개념적 설계
목적
- DBMS에 독립적인 개념적 스키마 설계
- 요구 사항분석 결과물을 개념적 데이터 모델을 이용해 개념적 구조로 표현
->개념적 모델링
- 일반적으로 E-R모델을 많이 이용
결과물
주요작업
- 요구 사항 분석결과를 기반으로 중요한 개체를 추출하고 개체간의 관계를 결정하여 E-R다이어그램으로 표현
작업과정
- 개체 추출, 각 개체의 주요속성과 키속성 선별
- 개체간의 관계 결정
- E-R다이어그램으로 표현
개념적 설계 - 개체와 속성 추출
- 개체 : 저장할만한 가치가 있는 중요 데이터를 가진 사람이나 사물 등
- 예) 병원 데이터베이스 개발에 필요한 개체
- 병원 운영에 필요한 사람 : 환자, 의사, 간호사 등
- 병원 운영에 필요한 사물 : 병실, 수술실, 장비 등
- 개체 추출방법
- 요구 사항문장에서 업무와 관련이 깊은 의미있는 명사를 찾아라!
- 업무와 관련이 적은 일반적이로 광법위한 의미의 명사는 제외 (예 : 한빛마트)
- 의미가 같은 명사가 여러개일 경우는 대표 명사는 하나만 선택 (예 : 회원, 고객)
- 찾아낸 명사를 개체와 속성으로 분류하라
개체와 속성 추출 예
- '한빛마트'는 일반적이고 광범위한 의미의 명사이므로 제외
- 회원아이디, 비밀번호, 이름 , 나이 , 직업, 등급, 적립금은 회원의 속성으로 분류
- 회원아이디는 키 속성으로 분류
개체와 속성을 추출한결과
개념적 설계 - 관계추출
- 관계 : 개체 간의 의미있는 연관성
- 관계 추출방법
- 요구사항 문장에서 개체간의 연관성을 의미 있게 표현한 동사를 찾아라
- 의미가 같은 동사가 여러 개일 경우는 대표 동사 하나만 선택
- 찾아낸 관계에 대해 매핑 카디널리티와 참여특성을 결정하라
- 매핑 카티널리티 : 일대일, 일대다, 다대다
- 참여특성 : 필수적 참여 / 선택적 참여
관계 추출 예
- '입력해야한다', '부여된다', '식별한다'는 개체와 개체의 관게를 표현하는 동사로 볼 수 없으므로 제외
- 관계 : 주문
- '회원' 개체와 '상품' 개체가 맺는 관계, 다대다 관계
- '회원' 개체는 관계에 선택적으로 참여 / '상품'개체는 관계에 선택적으로 참여
- '주문'관계의 속성 : 주문번호, 주문수량, 배송지, 주문일자
개념적 설계 - E-R다이어그램 작성
- 요구사항명세서를 개념적 스키마로 작성한 결과