Giter Site home page Giter Site logo

cashii-atm's People

Contributors

aumkarpraja avatar eyyalexx avatar sameer-mehta avatar smehtaca avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

cashii-atm's Issues

GUI

Basic Login Screen and Main Menu

Read Cheque

To be implemented after #1

Use Case:
Read Cheque

Description:
The ATM attempts to read the inserted cheque

Actors:
ATM (Primary)

Triggers:
The user has inserted a cheque into the ATM’s cheque slot

Flow of Events:

  1. use case begins when user selects the account in which the deposit is supposed to be made
  2. the ATM opens the cheque slot
  3. the ATM receives the cheque and fixes its position in accordance to the scanner
  4. the cheque is scanned, and a visual representation of the cheque on the screen with the read value

Preconditions:
The user has requested a deposit action

Success Postcondition(s):
The ATM correctly reads the cheque

Failure Postcondition(s):
The ATM is unable to read the cheque, and returns it to the user

Extension Point:
none

Check Card Slot

To be implemented after #16

Use Case:
Check Card Slot
Description:
ATM checks if card slot is empty
Actors:
ATM
Triggers:
ATM has attempted to return card to the user
Flow of Events:

  1. ATM checks if card slot is empty
  2. Warn user is card is still is card slot
  3. Continue warning until card slot if finally empty
    Preconditions:
    Access card in slot while no section is taking place
    Success Postcondition(s):
    Card is collected from ATM
    Failure Postcondition(s):
    None
    Extension Point:
    None

Request Receipt

Use Case:
Request Receipt
Description:
ATM receives request for a receipt
Actors:
User (Primary)
ATM (Secondary)
Triggers:
User asks for a receipt of the transaction
Flow of Events:

  1. ATM provides user with the choice for a receipt
  2. User requests a receipt
    Preconditions:
    A transaction was completed
    Success Postcondition(s):
    User successfully requests a receipt
    Failure Postcondition(s):
    User does not request a receipt
    Extension Point:
    None

Request Account Statement

Use Case:
Request Account Statement
Description:
The user makes a request to receive an account statement
Actors:
User (Primary)
ATM (Secondary)
Triggers:
User selects operation from the ATM’s main menu screen
Flow of Events:

  1. use case begins when user selects the Account Statement button on the main menu
  2. ATM receives the request and prompts the user to select the desired account (checking/savings)
  3. ATM communicates to the Database and receives the account statement
    Preconditions:
    The user is currently looking at the main menu
    Success Postcondition(s):
    The user is able to select the correct account and the ATM responds to the request
    Failure Postcondition(s):
    none
    Extension Point:
    none

Return Card

Comes into action after #15 has already been selected. To be implemented after #15.

Use Case:
Return Card
Description:
ATM unlocks card
Actors:
ATM
Triggers:
Section was just completed
Flow of Events:

  1. ATM unlocks card
  2. ATM warns user to collect card
    Preconditions:
    Section not taking place, and card still in card slot
    Success Postcondition(s):
    User collects access card
    Failure Postcondition(s):
    User does not collect access card
    Extension Point:
    None

Check Sufficient Funds

Use Case:
Check sufficient funds
Description:
ATM checks if funds are enough to allow the requested withdrawal
Actors:
ATM
Triggers:
Account withdrawal limit check successfully passed
Flow of Events:

  1. ATM requests account funds from the database
  2. ATM checks the requested value against current funds
    Preconditions:
    Account funds have not been checked
    Success Postcondition(s):
    The withdrawal request does not exceed current funds
    Failure Postcondition(s):
    Current funds are not enough to fulfil withdrawal request. The transaction is cancelled.
    Extension Point:
    None

Read Card

Use Case:
Read Card
Description:
The ATM reads the card inserted into it
Actors:
ATM
Triggers:
A card is inserted into the ATM
Flow of Events:

  1. ATM reads the card
  2. ATM communicates to the database and checks for card validity
    Preconditions:
    ATM must be in idle mode
    Success Postcondition(s):
    The database confirms the card’s validity
    Failure Postcondition(s):
    The card is declined, and it is ejected from the ATM
    Extension Point:
    None

Request Withdrawal

Use Case:
Request Withdrawal
Description:
The user makes a request to withdraw from an account
Actors:
User
Triggers:
The User selects the “withdraw” option on the main menu
Flow of Events:

  1. ATM prompts the user to select account to withdraw from (Checking or Savings)
  2. ATM prompts user to enter amount to withdraw
    Preconditions:
    User is currently looking at the main menu
    Success Postcondition(s):
    User is able to select the correct account and ATM responds to the request
    Failure Postcondition(s):
    The user ends the process by choosing to cancel the transaction
    Extension Point:
    None

Exit System

Use Case:
Exit System
Description:
The ATM closes the account
Actors:
ATM
Triggers:
User requested to exit the system. Idle time was too long.
Flow of Events:

  1. ATM ends the section
  2. ATM returns to idle screensaver
    Preconditions:
    An account must be open
    Success Postcondition(s):
    System successfully closed the section and returned to idle state
    Failure Postcondition(s):
    None
    Extension Point:
    None

Deposit to Account

A possible path from #2. To be implemented after #2.

Use Case:
Deposit to Account

Description:
The ATM inserts the cheque into the bank's database and money into the desired account

Actors:
ATM (Primary)

Triggers:
The ATM has successfully read the cheque

Flow of Events:

  1. use case begins when the ATM successfully reads the cheque
  2. the ATM inserts the scanned picture into the bank's database
  3. the ATM inserts the scanned value into the account
  4. the ATM provides the option to print a receipt

Preconditions:
The user has requested a deposit action

Success Postcondition(s):
The ATM correctly reads the cheque

Failure Postcondition(s):
The ATM is unable to read the cheque, and returns it to the user

Extension Point:
4a. the user asks the ATM for a receipt
b. the ATM

Validate Password/NFC

To be implemented after #6.

Use Case:
Validate Password/NFC
Description:
The ATM requires validation before granting access to the account linked to the card
Actors:
ATM (Primary)
User (Secondary)
Triggers:
The card was validated by the ATM
Flow of Events:

  1. The ATM prompts the user to select the type of validation (Password or NFC)
  2. ATM displays textbox for password input
  3. User enters password through keypad
  4. ATM checks the provided password against the one associated with the account
    Preconditions:
    The card inserted was validated
    Success Postcondition(s):
    ATM grants access to account
    Failure Postcondition(s):
    Validation failed, prompt user to re-enter password
    Extension Point:
  5. a. ATM receives NFC signal
  6. ATM checks the information received against the one associated with the account

Check Idle Time

Use Case:
Check Idle Time
Description:
ATM checks for idle time
Actors:
ATM
Triggers:
Time (30 seconds)
Flow of Events:

  1. ATM checks how long it has been since last activity
    Preconditions:
    An account is open on ATM
    Success Postcondition(s):
    ATM checks time successfully
    Failure Postcondition(s):
    None
    Extension Point:
    None

Request Deposit

Use Case:
Request Deposit

Description:
The user makes a request to deposit to his bank account

Actors:
User (Primary)
ATM (Secondary)

Triggers:
User selects operation from the ATM’s main menu screen

Flow of Events:

  1. use case begins when user selects the deposit button on the main menu
  2. the ATM receives the request and prompts the user to select the desired account (checking/savings)
  3. the ATM prompts the user to insert a cheque

Preconditions:
The user is currently looking at the main menu

Success Postcondition(s):
The user is able to select the correct account and the ATM responds to the request

Failure Postcondition(s):
The user ends the process by choosing to cancel the transaction

Extension Point:
none

Deliver Money

Use Case:
Deliver Money
Description:
The ATM provides money to user
Actors:
ATM
Triggers:
Withdrawal request passed all checks
Flow of Events:

  1. ATM selects the correct amount of bills to fulfil request
  2. ATM passes command to cash dispenser
  3. Cash dispenser gives money to user
  4. ATM warns the user to collect the cash provided
    Preconditions:
    No cash currently in the cash dispenser
    Success Postcondition(s):
    User collects cash from cash dispenser
    Failure Postcondition(s):
    User does not collect cash
    Extension Point:
    none

Print Receipt

To be implemented after #12.

Use Case:
Print Receipt
Description:
ATM prints the requested receipt
Actors:
ATM
Triggers:
Receipt was requested
Flow of Events:

  1. ATM prints a formatted version of the transaction that just took place
  2. ATM wans the user to collect the receipt
    Preconditions:
    Printer not currently in use
    Success Postcondition(s):
    Receipt removed from printer
    Failure Postcondition(s):
    Receipt not removed from printer
    Extension Point:
    None

Print Account Statement

To be implemented after #4.

Use Case:
Print Account Statement
Description:
The ATM prints the account statement it received from the Database
Actors:
ATM
Triggers:
The ATM has received an account statement
Flow of Events:

  1. ATM prints the requested document
  2. ATM warns the user to collect the document
    Preconditions:
    A request was made through “Request Account Statement” use case
    Success Postcondition(s):
    The document is extracted from the ATM
    Failure Postcondition(s):
    The document is not extracted from the ATM
    Extension Point:
    none

Check Limit

Use Case:
Check limit
Description:
ATM checks withdrawal limit
Actors:
ATM
Triggers:
User selected the amount required to be withdrawn
Flow of Events:

  1. ATM requests withdrawal limit from the database
  2. ATM checks the requested value against the registered value
    Preconditions:
    The limit has not been checked
    Success Postcondition(s):
    The value entered is within the allowed limit
    Failure Postcondition(s):
    The value entered exceeds the allowed limit. The transaction is cancelled.
    Extension Point:
    none

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.