Mynk Cse320srs
Mynk Cse320srs
Specification
For
ATM
1. Introduction 1
2. Overall Description 3
3. Specific Requirements 6
3.1 Functional Requirement 6
3.2 Requirements of the bank computer for the ATM 6
4. External Interface Requirements 13
5. Other Nonfunctional Requirements 13
6. DFD Daigram 15
7. USE CASE Daigram 16
8.
1.Introduction
• Purpose
This document describes the software requirements and specification for an automated teller
machine (ATM) network.
The document is intended for all the stakeholders customer and the developer (designers,
testers, maintainers). The reader is assumed to have basic knowledge of banking accounts
and account services. Knowledge and understanding of UML diagrams is also required.
• Definitions, abbreviations
➢ Definitions
• Account
A single account in a bank against which transactions can be applied. Accounts may be of
various types with at least checking and savings. A customer can hold more than one account.
• ATM
A station that allows customers to enter their own transactions using cash cards as
identification. The ATM interacts with the customer to gather transaction information, sends
the transaction information to the central computer for validation and processing, and
dispenses cash to the customer. We assume that an ATM need not operate independently of
the network.
• Bank
A financial institution that holds accounts for customers and that issues cash cards
authorizing access to accounts over the ATM network.
• Bank computer
The computer owned by a bank that interfaces with the ATM network and the bank’s own
cashier stations. A bank may actually have its own internal network of computers to process
accounts, but we are only concerned with the one that interacts with the network.
• Cash Card
A card assigned to a bank customer that authorizes access to accounts using an ATM Machine.
Each card contains a bank code and a card number, coded in accordance with national
standards on credit cards and cash cards. The bank code uniquely identifies the bank within
the consortium. The card number determines the accounts that the card can access. A card
does not necessarily access all of a customer’s accounts. Each cash card is owned by a single
customer, but multiple copies of it may exist, so the possibility of simultaneous use of the
same card from different machines must be considered.
• Customer
The holder of one or more accounts in a bank. A customer can consist of one or more persons
or corporations, the correspondence is not relevant to this problem. The same person holding
an account at a different bank is considered a different customer.
• Transaction
➢ A single integral request for operations on the accounts of a single customer. We only
specified that ATMs must dispense cash, but we should not preclude the possibility of
printing checks or accepting cash or checks. We may also want to provide the
flexibility to operate on accounts of different customers, although it is not required
yet. The different operations must balance properly
➢ Abbreviations
• Product Perspective
The ATM network does not work independently. It works together with the banks’ computers
and the software run by the network’s banks.
o Communication interface: The ATMs communicate with the banking systems via a
communication network.
o Software interface: The messages sent via the communication network are specific
to the target banking software systems. At present, two known banking systems will
participate in the ATM network.
o Hardware interface: The software will run on an ATM computer yet to be chosen.
• User interfaces
o Customer: The customer user interface should be intuitive, such that 99.9% of all
new ATM users are able to complete their banking transactions without any
assistance.
o Bank Security Personnel: Bank security personnel are responsible for removing
deposits and adding cash to ATMs. There should be a simple interface (e.g., a switch
or button) that they can use to initialize the ATM whenever they restock.
• Maintainer: The maintainer is responsible for adding new ATMs to the network and
servicing existing ATMs. A maintainer should be possible to add a new ATM to the
network within 1 hour.
• Product Features
The ATM should work 24 hrs. The ATM identifies a customer by a cash card and password.
It collects information about a simple account transaction (e.g., deposit, withdrawal,
transfer, bill payment), communicates the transaction information to the customer’s bank,
and dispenses cash to the customer. The banks provide their own software for their own
computers. The bank software requires appropriate record keeping and security provisions.
The software must handle concurrent accesses to the same account correctly.
• User Classes and Characteristics
Customers are simply members of the general public with no special training.
• Operating Environment
The hardware, software and technology used should have following specifications:
• Login
• Validate Bank Card:
• Validate for Stolen or Lost Card: Validate that the card is not reported lost or
stolen
• If card is lost, prompt error message, "Card has been reported lost"
• If card is stolen, prompt error message, "Card has been reported stolen"
<expiration date>"
• Validate for Locked Account:
• Lock Account:
3. Specific Requirements
• Functional Requirements
The functional requirements are organized in two sections First requirements of the ATM
and second requirements of the bank.
The requirements for the automated teller machine are organized in the following way
General requirements, requirements for authorization, requirements for a transaction.
General
o Functional requirement 1:
o Functional requirement 2:
o Functional requirement 4:
• .
o Functional requirement 6:
• Processing: If the ATM gets any of these messages from the bank
computer, the card will be ejected and the user will get the
relevant error message.
• Output: After the Customer has taken the card the money is
dispensed.
• Input: ATM gets message “transaction not successful” from the bank
computer.
• Processing: ATM displays error message. Dialog: Customer should
take the card.
• Output: Eject card.
o Functional requirement 1:
• Input: Request from the ATM to verify card (Serial number and
password.)
• Processing: Check if the cash card was issued by the bank.
• Output: Valid or invalid bank code.
o Functional requirement 2:
• Output: The bank computer sends the message “bad bank code”
to the ATM.
o Functional requirement 3:
The bank computer gets a request to process a transaction from the ATM.
o Functional requirement 7:
o Functional requirement 8:
• User Interfaces
The customer user interface should be intuitive, such that 99.9% of all new ATM users are
able to complete their banking transactions without any assistance
• Hardware Interfaces
• Software Interfaces
The software interfaces are specific to the target banking software systems.
• Safety Requirements
• • The cabin door will always be locked, which will open only when user swipes
his/her ATM card in the slot & is validated as genuine
• Security Requirements
Security.
Performance.
• Maintainability: Only maintainers are allowed to connect new ATMs to the network.
6. DFD DAIGRAM
Step Test Steps Test Data Expected Result Actual Result Status (Pass/Fail) Notes
N/A
1 Insert card Valid ATM Card ATM prompts for PIN entry User is navigated to PIN Entry Pass
Access granted to main menu User is navigated to main Pass N/A
2 Enter PIN Correct PIN menu
3 Withdrawal Amount Rs. 5000 Prompt for withdrawal amount Money is withdrawal Pass N/A
Valid new PIN and ATM confirms the PIN changed PIN changed successfully Pass N/A
4 Change PIN confirmation shown on screen
Do you Want to print a Transaction is cancelled , ATM User is navigated to main Pass N/A
5 Mini statement receipt ? return to main menu menu
Post-conditions:
User is validated with database of bank and successfully withdrawal Cash from ATM. The transaction session details are logged
in database.