DB를 설계할 때는 다음과 같이 5가지 방법으로 크게 나눌 수 있다.
1. 최종 목표 잡기
2.문서화된 요구사항
3. 프로그램의 메뉴 및 기능
4.E-R Diagram
5.데이터베이스 스키마
1. 프로젝트의 최종 목표
- 저희 프로젝트의 목표는 컴퓨터 주문 및 A/S시스템으로써 현재 상용화 되어있는 컴퓨터 판매 프로그램과 유사하게 만들어 내는 것과 자바와 오라클간의 연동 오라클 DBMS의 쿼리문 사용을 숙달 하는 것을 목표로 합니다.
2. 문서화된 요구사항
고객은 회원으로 가입하려면 회원아이디 , 비밀번호 ,이름 ,나이 ,주소, 연락처를 입력해야한다. 가입한 회원에게는 등급과 관리 직원아이디가 부여된다. 등급은 쇼핑등급 기반으로 5개 등급으로 구별된다. 회원은 회원아이디로 식별한다. 직원은 각 개인이 직원 ID를 가지고 있으며, 이름, 전화번호,연락처,직책,비밀번호를 가지고 있다. 직원은 직원아이디로 식별한다. 직원은 여러명의 회원을 관리할 수 있고, 회원 한명은 한명의 관리자에게만 관리 받는다. 상품에 대한 상품번호, 상품명, 가격, CPU, 그래픽카드, 메인보드, 메모리, 파워, SSD, HDD, 수량을 유지해야 한다. 상품은 상품번호로 식별한다. 회원은 여러 상품을 주문할 수 있고, 하나의 상품은 재고에 따라 여러 회원이 주문할 수 있다. 회원이 상품을 주문하면 주문에 대한 주문번호, 주문아이디, 주문한상품번호, 주문수량 , 배송지 , 주문일자, 판매완료정보, 연락처를 유지해야한다. 부품들을 조립하여 하나의 상품으로 만들 수 있다. 하나의 상품은 여러 개의 부품을 조립해 만들 수 있다. 부품 여러 개를 조립해 하나의 상품을 만들 수 있다. 부품이 납품회사를 통해 납품되면 부품번호, 최종공급일자, 공급량, 종류, 부품명, 가격, 납품회사명을 유지해야한다. 부품은 부품번호로 식별한다. 각 부품들은 납품회사를 통해 납품을 받는다. 하나의 납품회사는 여러 개의 부품을 납품할 수 있다. 하나의 부품은 한 납품회사만 납품할 수 있다. 납품회사에 대한 납품회사명, 전화번호, 담당자를 유지해야 한다. 납품회사는 납품회사명으로 식별한다. 회원은 수리접수 신청을 할 수 있고, 수리접수를 신청하면 수리접수에 대한 수리접수번호, 회원아이디, 수리접수일자, 주문번호, 주소, 연락처, 수리상태 정보를 유지해야 한다. 한명의 회원은 여러 개의 수리접수를 신청할 수 있다. 수리접수 신청 하나는 한명의 회원만 신청할 수 있다. 수리접수는 수리접수번호로 식별한다.
|
3. 프로그램의 메뉴 및 기능
회원가입을 제외한 모든 기능은 로그인을 하여야 사용 가능합니다. 직원아이디로 로그인 할 시 직원의 기능을 사용가능하고, 회원아이디로 로그인 할 시 회원의 기능을 사용가능합니다.
첫 번째 기능은 회원 가입입니다. 회원 가입 시 고객은 회원아이디, 나이, 주소, 연락처, 비밀번호, 이름를 입력해야 합니다. 회원가입시 자동으로 등급과 관리 직원의 아이디가 할당 됩니다. 직원은 회원관리를 할 수 있습니다. 세부적으로 회원 검색, 수정, 삭제기능이 있습니다. 고객은 회원가입과 로그인을 한 후 상품을 주문 할 수 있습니다. 회원 검색에서 이름을 검색 할 시 이름의 일부분만 적어도 검색이 됩니다.
두 번째 기능은 재고 관리입니다. 직원으로 로그인 한 뒤 직원은 재고관리를 할 수 있습니다. 납품될 부품들을 받을 납품회사들을 먼저 등록합니다. 납품회사를 등록하면 납품회사명, 전화번호, 담당자의 정보가 저장됩니다. 직원은 납품회사에서 납품된 재고들을 프로그램에 입력합니다. 그 재고들은 부품으로 구별됩니다. 부품을 받으면 부품번호, 최종공급일자, 공급량, 종류, 납품회사명, 부품명, 가격을 할당 합니다. 직원은 재고 관리를 통해 재고 정보를 수정합니다. (여기서 재고라 함은 CPU,그래픽카드 등 상품으로 합쳐지지 않은 부품이다.)
세 번째 기능은 상품 주문과 상품 관리입니다. 직원이 재고들을 합쳐 상품을 만들면 상품에 대한 상품번호, 상품명, 가격, CPU 그래픽카드, 메인보드, 메모리, 파워, SSD, HDD, 수량이 저장됩니다. 직원은 상품을 등록할 수 있습니다. 상품은 재고들을 결합하여 만들어진 PC여야 합니다. 회원은 원하는 상품을 주문 할 수 있습니다.
네 번째 기능은 주문기능입니다. 회원은 프로그램에 등록된 가격과 성능을 보고 상품을 주문합니다. 회원이 주문할 상품을 선택 후 받는 이의 주소 및 전화번호 등을 입력하고 주문을 버튼을 누르면 주문완료 됩니다. 주문 생성 시 주문에 대한 주문번호, 주문아이디, 주문한상품번호, 주문수량, 주문일자, 배송지, 판매완료정보, 연락처가 저장됩니다. 직원은 회원이 주문을 하면 해당 주문정보를 조회 가능합니다.
다섯 번째 기능은 수리접수 신청기능입니다. 고객은 자신이 이 프로그램을 통해 주문한 상품만 수리접수신청이 가능합니다. 자신의 상품구매 정보 및 주소지 연락처 등을 입력하고 수리접수신청을 누르면 수리접수신청이 완료됩니다. 수리접수 신청은 직원이 확인하여 관리 할 수 있습니다. 수리접수 신청시 수리접수번호, 회원아이디, 수리접수일자, 주문번호, 주소, 연락처, 수리상태의 정보가 남습니다.
여섯 번째 기능은 주문 신청관리와 A/S 신청관리입니다. 회원이 상품을 주문하면 직원은 이 주문 신청관리 기능으로 어떤 상품이 주문되었는지 확인 할 수 있고 상품이 배송완료 되었다는 가정하에 완료된 주문을 판매완료 상태로 변경할 수 있습니다. A/S 신청관리는 상품을 배송받은 회원이 수리접수를 신청한뒤 직원이 수리접수를 신청한 회원의 명단을 볼 수 있는 기능으로서 앞의 주문 신청관리와 마찬가지로 수리접수가 완료되었다는 가정하에 수리접수 상태를 완료상태로 바꿀 수 있습니다.
일곱 번째 기능은 판매량조회기능입니다. 이 기능으로 어느 회원이 몇 개의 상품을 샀는지 알 수 있으며 직원이 원하는 날짜를 입력하면 입력한 날짜부터 날짜까지의 그 날 해당 판매총액이 나오게 됩니다. 판매액은 테이블로 보여지며 판매량이 많은 순, 판매량이 적은 순으로 볼 수도 있습니다.
4. E-R Diagram
5. 데이터베이스 스키마
회원 회원아이디, 나이, 주소, 연락처, 등급, 직원아이디, 비밀번호, 이름 외래키: 직원아이디
직원 직원아이디, 이름, 연락처 ,직책, 비밀번호
수리접수 수리접수번호, 회원아이디, 수리접수일자, 주문번호, 주소, 연락처, 수리상태 외래키 : 회원아이디, 주문번호
상품 상품번호, 상품명, 가격, CPU 그래픽카드, 메인보드, 메모리, 파워, SSD, HDD, 수량
부품 부품번호, 최종공급일자, 공급량, 종류, 납품회사명, 부품명, 가격 외래키 : 납품회사명
납품회사 납품회사명, 전화번호, 담당자
주문 주문번호, 주문아이디, 주문한상품번호, 주문수량, 주문일자, 배송지, 판매완료정보, 연락처 외래키 : 회원아이디, 주문한상품번호 |
'DB > Oracle' 카테고리의 다른 글
DB 쿼리 (0) | 2018.12.25 |
---|---|
Statement 대신 preparedStatement 사용하는 이유 (0) | 2018.12.25 |
SQL실습을 위한 Oracle XE 11g 설치 및 준비 (0) | 2018.07.27 |
sqldeveloper 테스트 실패 (0) | 2018.07.27 |
JSP oracle 연동 (0) | 2018.07.26 |