1. FACULTY TECHNOLOGY ANDINFORMATION SCIENCEASNETA MAJUSA142129Software Requirement For AutomatedTeller Machine
2. 1.0 SOFTWARE OF FUNCTIONALREQUIREMENT OF THE SYSTEM
3. The simple ATM machine only requires two usecases :
4. WithdrawActors : Account holder, ATM and bankDescription : Enables account holder towithdraw funds from anaccount held at a bankPriority : HighRisk : MediumMain Scenario : Success
5. • If the account holder inserts card, the systemwill run and ATM asks for a Pin.• If the account holder enters Pin, the systemwill run and ATM asks for source account.
6. • If the account holder choose for the specificsource amount, the system will run and the ATMasks for the amount to be withdrawn.• If the account holder inserts the specific amount,the ATM requests account to be debited and theATM depenses cash.
7. DepositeActors : Account holder and bankDescription : Enables account holder towithdraw funds from anaccount held at a bankPriority : HighRisk : MediumMain Scenario : Success
8. • If the account holder inserts card, system willcreate and the ATM asks for Pin• If the account holder enters Pin, system willcreate and the ATM asks for the destinationaccount.
9. • If the account holder choose the specificdestination account, system will create andATM will asks for the amount to be deposited.• If the account holder already choose thespecific amount, the system will create andATM asks for depost envelop.
10. • If the account holder places deposit envelopin slot, the bank request account to becredited and credit account.
11. 2.0 NON-FUNCTIONALREQUIREMENTSOF THE SYSTEM
12. • Error message should be displayed at least 6seconds.• If there is no response from the bankcomputer after a request within minutes thatcard is rejected with an error message
13. • The ATM dispenses money if and only if thewithdrawal from the account is processed andaccepted by the bank.• Each bank may be processing transactionsfrom several ATMs at the same time.
14. 3.0 ASSUMPTIONS
15. • Hardware is never fails• ATM casing is impenetrable
16. • Limited number of transactions per day i.e.sufficient paper for receipt• Limited amount of money withdrawn per dayi.e. sufficient money
17. 4.0 THE MATHEMATICALSTATEMENTS OF THEFUNCTIONAL REQUIREMENTS(PROPOSITIONAL CALCULUS)
18. WithdrawalAccountHolder_insert_card : The account holder insert their cardSystem_run : The system will runATM_asks_pin : ATM asks for a pinAccountHolder_insert_card  system_run ^ ATM_asks_pinAccountHolder_enters_pin : The account holder enters pinSystem_run : the system will runATM_asks_source_account : ATM asks for source accountAccountHolder_enters_pin  system_run ^ ATM_asks_source_account
19. AccountHolder_choose_SpecificSourceAmount : the account holder choosefor the specific source amountSystem_run : the system will runATM_asks_amount_withdrawal : ATM asks for the amount to be withdrawalAccountHolder_choose_SpecificSourceAmount  sytem_run ^ATM_asks_amount_withdrawal
20. AccountHolder_insert_SpecificAmount : The account holder inserts thespecific amountATM_request_debited : the ATM request account to be debitedATM_depenses_cash : the ATM depenses cashAccountHolder_insert_specificAmount  ATM_request_debited ^ATM_depenses_cash
21. DepositAccountHolder_insert_card : the account holder inserts cardSystem_create : the system will createATM_asks_pin : ATM asks for pinAccountHolder_insert_card  system_create ^ ATM_asks_pinAccountHolder_enter_pin : the account holder enters a pinSystem_create : the system will createATM_asks_destinationAccount : ATM asks for the destination accountAccountHolder_enter_pin  system_create ^ ATM_asks_destinationAccount
22. AccountHolder_specificDestinationAccount : the account holder choose forthe specific destination accountSystem_create : system will createATM_ deposited : ATM will asks for the amount to be depositedAccountHolder_specificDestinationAccount  system_ create ^ATM_depositedAccountHolder_specificAmount : the account holder choose the specificamountSystem_create : system will createATM_deposit_envelop : ATM asks for deposit envelopAccountHolder_specificAmount  system_create ^ ATM_deposit_envelop
23. 5.0 COMMENT ABOUT THETRANSLATION PROCESS FROMNATURAL LANGUAGES STATESMENTSTO MATHEMATICCAL STATEMENTS
24. • Redundancy : To make up for ambiguity andreduce misunderstanding, natural languagesate often redundant. Mathematicalstatements are more concise.• Ambiguity : Natural languages are full ofambiguity, which people deal with by usingcontextual clues and other information.Mathematical statements are designed to beunambiguous, which means that anystatement has exactly one meaning,regardless of context.
25. • Literalness : natural languages are full of idiomand metaphor. Formal languages mean exactlywhat they say. People who grow up speaking anatural language often have a hard time adjustingo formal languages. In some ways the differencebetween formal and natural languages is like thedifference between poetry and prose.• Statement : the meaning of a mathematicalstatement is unambigious is unambigious andliteral and can be understood entirely by analysisof the tokens and structure.