Software Requirement Analysis for Point Of Sale System Project Team Team 6 Date 2017.11.06 Team Information 201311264 김병식 201610379 김나연 201611248 강병성 201610070 김지우 Team 6 1
Table of Contents 1 Introduction 4 1.1 Purpose 4 4 1.2 Scope 4 1.3 Definition, acronyms, and abbreviations 4 1.4 Reference 5 1.5 Overview 5 2 Overall Description 5 2.1 Product Perspective 5 2.2 Product functions 5 2.3 User characteristics 5 2.4 Constraints 6 3 Structured Analysis 7 3.1 System Context Diagram 7 3.1.1 Basic System Context Diagram 7 3.1.2 Event List 7 오류! 책갈피가정의되어있지않습니다. 3.1.3 The System Context Diagram 8 3.2 Data Flow Diagram 8 3.2.1 DFD level 0 8 3.2.1.1 DFD 8 오류! 책갈피가정의되어있지않습니다. 3.2.1.2 Process Specification 9 오류! 책갈피가정의되어있지않습니다. 3.2.1.3 Data Dictionary 9 Team 6 2
오류! 책갈피가정의되어있지않습니다. 3.2.2 DFD Level 1 11 3.2.2.1 DFD 11 3.2.3 DFD Level 2 12 3.2.3.1 DFD 12 3.2.3.2 Process Specification 13 3.2.3.2.1 Process 1.1 13 3.2.3.2.2 Process 1.2 13 3.2.3.2.3 Process 1.3 13 3.2.3.2.4 Process 1.4 14 오류! 책갈피가정의되어있지않습니다. 3.2.3.2.5 Process 1.5 14 3.2.3.2.6 Process 2.1 15 3.2.3.2.7 Process 2.2 16 3.2.3.2.7 Process 2.2 오류! 책갈피가정의되어있지않습니다. 오류! 책갈피가정의되어있지않습니다. 3.2.3.2.8 Process 2.3 16 오류! 책갈피가정의되어있지않습니다. 3.2.3.2.9 Process 2.4 16 오류! 책갈피가정의되어있지않습니다. 3.2.3.3 Data Dictionary 17 오류! 책갈피가정의되어있지않습니다. 3.2.4 DFD Level 3 19 3.2.4.1 DFD 19 3.2.4.2 State Transition Diagram 20 3.2.5 Overall DFD 20 Team 6 3
1 Introduction 1.1 Purpose 본문서는 2017년건국대학교의소프트웨어공학개론강의의실습과제를설명한다. 실습과제는 Point Of Sale (POS) System을소프트웨어만을이용한가상의시스템으로구현하는것이다. 1.2 Scope POS System 이란판매와관련한데이터를일괄적으로관리하고, 고객정보를수집하여부가가치를향상시키는시스템이다. 본프로젝트는전체 POS System 중 POS 단말기만을대상으로구현하는것으로규모를제한한다. 모든시스템은 SW 만으로구현하고 HW 가필요한부분은 SW 모듈을만들어가상의 HW 를구현한다. 1.3 Definition, acronyms, and abbreviations HW: Hardware SW: Software POS: Point Of Sale Team 6 4
POST: Point Of Sale Terminal 캐셔 : Cashier POST 사용자 1.4 Reference 1.5 Overview 2 장개발대상에대한설명 ; 3 장세부기능명세 2 Overall Description 2.1 Product Perspective SW 로개발하는가상의 POS 시스템 2.2 Product functions POST 는캐셔화면 ( 터치스크린 ) 을이용해판매, 환불, 재고확인을할수있다. POST 는바코드스캐너를통해상품또는영수증의바코드를스캔하여정보를입력받는다. POST 는판매상황에서상품의바코드를바코드스캐너로스캔하여판매목록에상품을추가하고상품의수량을증가시킬수있다. POST 는판매상황에서캐셔화면 ( 터치스크린 ) 의입력을통해판매할상품의수량을증가, 감소시키거나상품을목록에서제거할수있다. POST 는판매상황에서고객화면을통해판매할상품의총액을보여준다. POST 는판매를완료한후고객화면과캐셔화면에각각판매정보를출력한다. POST 는판매를완료한후프린터기를이용해판매영수증을출력한다. POST 는판매를완료한후재고서버의상품수량정보를업데이트한다. POST 는환불상황에서영수증의바코드를바코드스캐너로스캔하여환불가능한영수증인지판단할수있다. POST 는환불을완료한후고객화면과캐셔화면에각각환불정보를출력한다. POST 는환불을완료한후프린터기를이용해환불영수증을출력한다. POST 는환불을완료한후재고서버의상품수량정보를업데이트한다. POST 는재고확인요청이들어오면현재매장의재고정보를화면에출력한다. POST는매일 24시 ( 자정 ) 에정산이이루어지며재고서버에있는하루동안있었던판매, 환불정보를프린터기를이용해정산보고서를출력한다. 2.3 User characteristics Team 6 5
POST 사용자는캐셔이다. 사용자는언제든지전원을끌수있다. 사용자는바코드스캐너를이용해상품, 영수증을스캔할수있다. 2.4 Constraints POST 의캐셔화면 ( 터치스크린 ) 입력및스캐너스캔행위는키보드입력으로대체한다. POST 의모든모니터의출력은 Cygwin Console(Cygwin Bash Shell) 로대체한다. POST 의프린터를사용한모든출력은텍스트파일생성으로대체한다. POST 프로그램의하루는현실시간 3 분으로가정한다. ( 현실시간 1 초 à 가상시간 8 분 ) POST 프로그램에서시각표현이필요한부분은 YYYYMMDDhhmm 으로 연월일시분 로표현한다. - 201709111843 POST 프로그램종료후재실행시기존에진행하던시각이이어지도록한다. POST 에서다루는상품은총 7 종류 ( 과자, 아이스크림, 과일, 물, 라면, 음료수, 커피 ) 로한정한다. - 상품의정보는하위표참고 상품 단가 바코드 과자 1,000 001 아이스크 1,500 010 과일 3,000 011 물 500 100 라면 800 101 음료수 1,200 110 커피 2,000 111 고객이환불요청시, 영수증내역의전체상품에대해환불을수행한다. 재고서버는 2 개의텍스트파일로대체한다. ( 상품파일 : YYYYMMDD_product.txt, 판매목록파일 : YYYYMMDD_sale_management.txt) 하루가지나면재고서버의상품파일, 판매관리파일은다음날짜로새로생성이되며상품파일의모든상품은 100 개로초기화한다. POST 의전원이켜지면자동으로재고서버와상품을동기화한다. Team 6 6
3 Structured Analysis 3.1 System Context Diagram 3.1.1 Basic System Context Diagram 3.1.2 Event List Team 6 7
3.1.3 The System Context Diagram 3.2 Data Flow Diagram 3.2.1 DFD level 0 3.2.1.1 DFD Team 6 8
3.2.1.2 Process Specification 3.2.1.3 Data Dictionary Team 6 9
Team 6 10
3.2.2 DFD Level 1 3.2.2.1 DFD Team 6 11
3.2.3 DFD Level 2 3.2.3.1 DFD Team 6 12
3.2.3.2 Process Specification 3.2.3.2.1 Process 1.1 3.2.3.2.2 Process 1.2 3.2.3.2.3 Process 1.3 Team 6 13
3.2.3.2.4 Process 1.4 3.2.3.2.5 Process 1.5 Team 6 14
3.2.3.2.6 Process 2.1 Team 6 15
3.2.3.2.7 Process 2.2 3.2.3.2.8 Process 2.3 3.2.3.2.9 Process 2.4 Team 6 16
3.2.3.2.10 Process 2.5 3.2.3.3 Data Dictionary Team 6 17
Team 6 18
3.2.4 DFD Level 3 3.2.4.1 DFD Team 6 19
3.2.4.2 State Transition Diagram * 빨간선은예외상황이발생시전이되는흐름을나타냄 * 노란선은기능수행을완료후작업 (Key) 삽입상태로전이되기전내부스토리지 및외부 entity 에동작명령을내리는흐름을나타냄 3.2.5 Overall DFD Team 6 20