JackPot ATM OOPT Stage 2040 ver2 <Analyze> Team 5 Date 2018-05-09 201312259 백만일 201112052 방민석 201211383 조영래
INDEX Activity 2041. Design Real Use Cases Activity 2042. Define Reports UI, and Storyboards Activity 2043. Refine System Architecture Activity 2044. Define Interaction Diagrams Activity 2045. Define Design Class Diagrams Activity 2046. Design Traceability Analysis
Activity 2041. Design Real Use Cases Use Case withdraw Actor User Purpose 사용자계좌에있는돈을출금한다. Overview 사용자가 ATM 기의출금버튼을누르고출금할계좌를 입력한다. 계좌가확인되면금액을입력받아잔고보다적을 경우출금을진행한다. 그후사용자가돈을갖고떠난다. Type Primary and Essential Cross Reference System Function R.1.2 Pre-Requisites ATM 에입력한계좌가은행에계좌정보가있어야한다. Typical Courses of Events (A):Actor, (S):System 1.(A) User 가 withdraw 버튼을누른다. 2.(S) 계좌 ID 입력화면을출력한다. 3.(A) User는계좌 (inputid) 를입력한다. 4.(S) Account.ID와 inputid를비교확인한다. 5.(S) 출금화면을출력한다. 6.(A) 출금금액 (inputmoney) 을입력한다. 7.(S) 계좌 password 입력화면을출력한다. 8.(A) 비밀번호 (inputpw) 를입력한다. 9.(S) Account.password와 inputpw가일치하는지확인한다. 10.(S) Account.Balance와 inputmoney을비교한다. 11.(S) Account.Balance를 inputmoney만큼감소시킨다. 12.(S) ATM 잔액 (TotalMoney) 을감소시킨다. 13.(S) ATM 각지폐별잔고를감소시킨다. 14.(S) 거래후사용자의계좌잔고 (Account.Balance) 를출력한다. Alternative Courses of Events N/A
Exceptional Courses of Events E1: 잘못된계좌를입력받으면에러메시지를출력한다 E2: 비밀번호가틀릴경우에러메시지를출력한다 E3: 계좌잔고가출금액보다적을경우에러메시지를 출력한다 Use Case deposit Actor User Purpose 사용자계좌에돈을입금한다. Overview 사용자가 ATM 기의입금버튼을누르고입금할계좌를 입력한다. 사용자가입금할금액을기기에넣으면 ATM 이 금액을세고, 그액수만큼입력된계좌의잔고를증가시킨다. Type Primary and Essential Cross Reference System Function R.2 Pre-Requisites ATM 에입력한계좌가은행에계좌정보가있어야한다. Typical Courses of Events (A):Actor, (S):System 1.(A) User가 deposit 버튼을누른다. 2.(S) 계좌 ID 입력화면을출력한다. 3.(A) User는계좌 (inputid) 를입력한다. 4.(S) Account.ID와 inputid를비교확인한다. 5.(S) 금액입력화면을출력한다. 6.(A) 입금금액 (inputmoney) 을입력한다. 7.(S) Account.Balance를 inputmoney만큼증가시킨다. 8.(S) ATM 잔액 (TotalMoney) 을증가시킨다. 9.(S) ATM 각지폐별잔고를증가시킨다. 10. (S) 거래후계좌잔액 (Account.Balance) 을표시한다. Alternative Courses of Events N/A Exceptional Courses of Events E1: 잘못된계좌를입력받으면에러메시지를출력한다
Use Case remittance Actor User Purpose 사용자계좌의돈을다른사용자계좌로송금한다. Overview 사용자가 ATM 기의송금버튼을누르고자신의계좌를 입력한다. 계좌가확인되면송금할계좌와금액을 입력받는다. 송금계좌가맞고통장잔고가송금액보다 많으면송금계좌의잔고가액수만큼증가한다. Type Primary and Essential Cross Reference System Function R.3 Pre-Requisites ATM 에입력한계좌가은행에계좌정보가있어야한다.
Typical Courses of Events (A):Actor, (S):System 1.(A) User가 remittance 버튼을누른다. 2.(S) 계좌 ID 입력화면을출력한다. 3.(A) User는계좌 (inputid) 를입력한다. 4.(S) Account.ID와 inputid를비교확인한다. 5.(S) 송금받을계좌입력화면을출력한다. 6.(A) User는송금받을계좌 (inputid) 를입력한다. 7.(S) Account.ID와 inputid를비교한다. 8.(A) User는송금금액 (inputmoney) 을입력한다. 9.(S) User의잔고 (Account.Balance) 와송금액 (inputmoney) 을비교확인한다. 10.(A) User는비밀번호 (inputpw) 를입력한다. 11.(S) Account.password와 inputpw가일치하는지확인한다. 12.(S) 받는사람의통장잔고 (Account.Balance) 를증가시킨다. 13.(S) User의통장잔고 (Account.Balance) 를감소시킨다. 14.(S) 거래후계좌잔액 (Account.Balance) 을표시한다. Alternative Courses of Events N/A Exceptional Courses of Events E1: 잘못된계좌를입력받으면에러메시지를출력한다 E2: 비밀번호가틀릴경우에러메시지를출력한다 E3: 송금계좌가잘못된경우에러메시지를출력한다 E4: 계좌잔고가송금액보다적을경우에러메시지를출력한다 Use Case view_account_detail Actor User
Purpose 사용자가입력한계좌의잔액을보여준다. Overview 사용자가계좌조회버튼을누르고자신의계좌를입력한다. 계좌가확인되면입력된계좌의잔고를표시한다. Type Primary and Essential Cross Reference System Function R.4 Pre-Requisites ATM 에입력한계좌가은행에계좌정보가있어야한다. Typical Courses of Events (A):Actor, (S):System 1.(A) User가 view_account_detail 버튼을누른다 2.(S) 계좌입력화면을출력한다 3.(A) User는계좌 (inputid) 를입력한다 4.(S) Account.ID와 inputid를비교확인한다 5.(S) 계좌 password 입력화면을출력한다 6.(A) 비밀번호 (inputpw) 를입력한다 4.(S) Account.password와 inputpw가일치하는지확인한다 5.(S) 확인이되면 Account.Balance를화면에표시한다 Alternative Courses of Events N/A Exceptional Courses of Events E1: 잘못된계좌를입력받으면에러메시지를출력한다 E2: 비밀번호가틀릴경우에러메시지를출력한다 Use Case Random_Jackpot Actor User Purpose 출금기능을이용하는임의의사용자에게추가로 5 만원을 지급한다.
Overview 00 시가되면 ATM 기의몇번째출금고객에게추가로 5 만원이출금될지정해진다. 해당순서의사용자가출금시에 5 만원이추가로출금된다. Type Primary and Essential Cross Reference System Function R.1.1 Pre-Requisites N/A Typical Courses of Events (A):Actor, (S):System 1.(S) ATM의 Timer가 00시가되면당첨되는순서를랜덤하게선택한다. 2.(S) User가돈을출금했을때해당 User가해당순서의사용자인지확인한다. 3.(S) 해당 User에게돈을 5만원더추가로출금해준다. Alternative Courses of Events N/A Exceptional Courses of Events N/A Use Case manage_atm Actor Manager Purpose 관리자가 ATM 의잔고를추가하거나뺄수있다 Overview ATM 의 TotalMoney 가일정수준이하로낮아지면관리자가 TotalMoney 를추가하고잔고가일정수준이상으로 많아지면 TotalMoney 를뺀다 Type Primary and Essential Cross Reference System Function R.5 Pre-Requisites N/A
Typical Courses of Events (A):Actor, (S):System 1.(A) Manager가 manage 버튼을누른다. 2.(S) 관리자 ID 입력화면을출력한다. 3.(A) Manager가관리자 ID(inputID) 를입력한다 4.(S) ManagerID와 inputid를비교확인한다 5.(A) Manager가관리자 Password(inputPW) 를입력한다 6.(S) ManagerPW와 inputpw를비교확인한다 5.(S) 확인이끝나면 Manager가화폐별잔고에접근할수있도록한다. 6.(A) Manager가화폐별잔고를추가하거나뺀다 7.(S) GUI_Interface.TotalMoney를갱신한다 8.(S) Count50000, Count10000, Count5000, Count1000 각화폐별금액을갱신한다. Alternative Courses of Events N/A Exceptional Courses of Events E1.MID 와 MPW 가잘못된경우에러메시지를출력한다
Activity 2042. Define Reports UI, and Storyboards 1. 초기메뉴화면 2. 예금출금시통장 / 카드번호입력화면 3. 예금출금시비밀번호입력화면 4. 예금출금시출금금액입력화면
5. 예금출금시거래내역출력화면 6. 입금시출력화면 7. 예금조회시계좌잔고출력화면 8. 관리자모드 ID 입력화면 9. 관리자모드 PW 입력화면 10. 관리자모드진입화면
11. 관리자모드출금시지폐권입력화면 12. 관리자모드입금시지폐권 입력화면 13. 잭팟 ATM 당첨화면
Activity 2043. Refine System Architecture
Activity 2044. Define Interaction Diagrams 1.withdraw
2.deposit
3.remittance
4.view_account_detail
5.Random_Jackpot
6.manage_ATM
Activity 2045. Define Design Class Diagrams Activity 2046. Design Traceability Analysis