input
bank1: Kakao
bank2: Daegu
acc1: Kakao, David, 111111111111, 1004, 20000
acc2: Daegu, Jane, 222222222222, 2435, 100000
acc3: Kakao, Kate, 333333333333, 9876, 150000
acc4: Kakao, David, 444444444444, 8282, 400000
acc4: Daegu, David, 555555555555, 2468, 200000
ATM1: Kakao, 111111, type 2, lang 2, [ 10, 10, 10, 10 ]
ATM2: Daegu, 222222, type 1, lang 1, [ 10, 10, 10, 10 ]
ATM serial number: 111111
language: Ko
insert card: 111111111111
password: 1004
[Banks]
bank1: Kakao
bank2: Daegu

[Accounts]
acc1: Kakao, David, 111111111111, 1004, 20000
acc2: Daegu, Jane, 222222222222, 2435, 100000
acc3: Kakao, Kate, 333333333333, 9876, 150000

acc4: Kakao, David, 444444444444, 8282, 400000
acc4: Daegu, David, 555555555555, 2468, 200000
[ATM]
ATM1: Kakao, 111111, type 2, lang 2, [ 10, 10, 10, 10 ]

ATM2: Daegu, 222222, type 1, lang 1, [ 10, 10, 10, 10 ]

[Session]
ATM serial number: 111111
language: Ko
insert card: 111111111111
[Session deposit]
[Admin session]
insert card : 000000
(REQ1.9) An admin can access the menu of “Transaction History” via an admin card (See REQ
Display of Transaction History).
[Session end]
(REQ2.2) A session ends whenever a user wishes (e.g., by choosing a cancel button) or there are
some exceptional conditions detected by the ATM (e.g., no cash available)
(REQ2.3) When a session ends, the summary of all transactions performed in a session must be
displayed.
(e.g.) Account/card info, transaction types (deposit, transfer, withdrawal), and their amount,
…
(REQ2.4) Each transaction has a unique identifier across all sessions.

(REQ3.1) An ATM checks if the inserted card is valid for the current type of ATM.
(REQ3.2) If an invalid card is inserted, the ATM shall display an appropriate error message (e.g.,
Invalid Card).

(REQ3.3) An ATM shall ask a user to enter the password (e.g., Enter Password), and verify if the
password is correct.

An ATM does not maintain any user information, so the card and password information need
to be passed to the bank; then, the bank verifies the password, and return the authorization
result. (Bank has the account list, ATM verifies the password by checking the account list in the bank)

(REQ3.4) If the entered password is incorrect, the ATM shall display an appropriate error message.
(e.g., Wrong Password)
(REQ3.5) If a user enters wrong passwords 3 times in a row, a session is aborted, and return the
card to the user.

(REQ4.1) An ATM shall take either cash or check from a user.
o (REQ1.8) Each ATM have several types of transaction fees, and paid as follows:
- Deposit fee for primary banks: KRW 0
Acc: 100000 → 103000 (3000 KRW / Cash Deposit) / 10000 → 13000 (3 1000 KRWPaper Cash)
After cash deposit, 3000 won has decreased in ATM balance, increased in the Daegu Account
(REQ4.3) Once cash or checks are accepted by ATM, the transaction must be reflected to the bank
account as well (i.e., the same amount of fund must be added to the corresponding bank account)

REQ4.2) An ATM shall display an appropriate error message if the number of the inserted cash or
checks exceed the limit allowed by the ATM. (Cash Deposit limit is about 30 paper cashes)

(REQ2.3) When a session ends, the summary of all transactions performed in a session must be
displayed.
Deposit for 222222222222 → Total Balance of the Account : 117000

(REQ8.1) An ATM that is configured with the bilingual support shall provide an option for a user
to choose the preferred language either English or Korean.
(REQ8.2) Once a certain language is chosen, all menus must be displayed using the chosen
language.
(ATM: Kakao, Account: Daegu)
As ATM supports bilingual, user can choose the language between English and Korean.
The case above selects “Korean”, therefore all menus are displayed in Korean.

(REQ4.4) Some deposit fee may be charged (See REQ in System Setup)
(REQ1.8) Each ATM have several types of transaction fees, and paid as follows:
- Deposit fee for non-primary banks: KRW 1,000; the fee is paid by inserting additional cash.
Acc: 117000 → 127000 (10000 KRW / Cash Deposit) / 20000 → 31000 (11 (10 Paper Cash + Fee))
According to the bank of the account, this is the non-primary bank transaction.
ATM asks user to deposit extra fee (1000 KRW), therefore remaining 1000 KRW balance become 31.

(REQ4.4) Some deposit fee may be charged (See REQ in System Setup)
(REQ1.8) Each ATM have several types of transaction fees, and paid as follows:
- Deposit fee for non-primary banks: KRW 1,000; the fee is paid by inserting additional cash.
(REQ4.6) The deposited check does not increase available cash in ATM that can be used by other
users.
Acc: 127000 → 169000 (42000 KRW / Check Deposit) / 31000 → 32000 (1000 KRW for fee)
According to the bank of the account, this is the non-primary bank transaction.
Check deposit doesn’t change the available cash in ATM, however due to the extra fee, 1000 KRW increases in ATM Balance.
![[Notion] :](https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2Fc0389671-d63b-4c5d-a65d-5113fb1666a2%2Faf276f8d-c43c-4190-a784-11927a8f1c86%2F%25EB%2585%25B8%25EC%2585%2598_%25EC%2595%2584%25EC%259D%25B4%25EC%25BD%2598.png?table=block&id=244dd211-78d0-4c22-8c35-2efb01da5258&cache=v2)