Software Requirements Specification

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 10

Software Requirements Specification

for

Automated Teller Machines

Prepared by J.Varun Sagar

Vardhaman College Of Engineering

13th October,2022
1. Introduction

1.1 Purpose

These machines allow you to undergo self-serviced transactions without an actual teller overhead and without
having to visit the bank branch. ATMs are convenient, allowing consumers to perform quick self-service
transactions such as deposits, cash withdrawals, bill payments, and transfers between accounts

1.2 Scope

There is a huge opportunity for growth of the ATM market in India. The future will see multi-vendor vendorATM
popularity, which will provide personalized features and a user-friendly interface. ATMs will be a popular “Public
Technology”.Original equipment manufacturers and vendors will get ample scope for handling ATM
machines.Modern ATMs are now capable of personalized branding, CRM applications, integrated fraud
alert,customer-notifications,and flexible services.The ATM technology has developed to such an extent that some
ATMs can memorize consumer-preferences as per their past transactions,behavior,accordingly.In many
cases,ATMs have internet scope which facilitates two way communications with live agents, provide biometric
options, and have the ability to demonstrate personalized advertisements.Maintenance of web enabled ATMs are
easy. These ATMs can be quickly connected to the central monitoring system of vendors.

1.3 Overview

An ATM, which stands for automated teller machine, is a specialized computer that makes it convenient to
manage a bank account holder’s funds.ATMs can be on-premise or off-premise. On-premise ATMs are located in
financial institutions. Clients enjoy more choice, convenience and availability, while banks can boost their
revenue from transactions, lessen operational costs and maximize staff resources.The overview is that it can be
used to withdraw the money at remote places where there is less availability of banks.
2 The Overall Description

2.1 Product feature


ATMs are convenient, allowing consumers to perform quick self-service transactions such as deposits, cash
withdrawals, bill payments, and transfers between accounts. Fees are commonly charged for cash withdrawals by
the bank where the account is located, by the operator of the ATM, or by both. Some or all of these fees can be
avoided by using an ATM operated directly by the bank that holds the account.

2.2 User Characteristics

Document any assumptions you make about the user and any assumptions you make about the
background or how much training the user will need to use the system. For example, you could build
different user interfaces for knowledgeable and novice users. Only consider user characteristics that
affect the software requirements

There are several users of the ATM network:


Customers: They are simply members of the general public with no special training.
Bank security personnel: They need to have no special education or experience.
Maintainers: They must be experienced network administrators, to be able to connect new ATMs to the
network.
2.3 Constraints

The constraints from the managing department are:


*regulatory policies
*hardware limitations
*parallel operation
*audit functions
*control functions
*criticality of the application safety
*security considerations
*standards
*laws
The constraints from the user side must be he must contain an account which is in active state in that
respective bank and he must have a valid or ample amount of balance to perform the various tasks which
have been provided by the ATM.

3 Specific Requirements

These requirements are observable tasks or processes that must be performed under development.
The main functionality features of the automated teller machine are follows

3.1 Functional Requirements:Authentication

3.1.1 Description and Priority

The ATM provides access to the banking system services. For a customer to perform a transaction with
the bank the system needs to validate the user through their user credentials- a unique account number
and pin. This feature is of high priority since it is the starting point of the user access the system.

3.1.2 Stimulus/Response Sequences

The response/stimulus for different class of users are

· Welcome- welcome message

· Please enter your account number: user login credential

· Enter your pin: user login credentials

3.1.3 Functional requirements:Verify withdrawals and deposits

The system should be able to perform banking transactions from the main menu that the user selects at
the ATM.

Input: Main Menu Option

Output: Executed Banking transaction

3.1.4 Description and priority

This feature enables users not to overdraw their accounts and update their accounts when deposits

have been carried out.

If the user makes a balance inquiry, the screen displays the user's account balance.
3.1.5 Stimulus and response

If withdrawn amount chosen is greater than users account balance: the screen should display this to

the user

If the withdrawn amount is acceptable: The ATM proceeds to the next withdrawal step

If the user deposits an envelope. The amount is added to the user's bank balance but not available for

withdrawal until physically verified.

3.1.6 Functional Requirements: Banking transactions

The banking system provides services to many users. The system should identify individual users of the
banking system by the account number and account pin.

Input: Account Number, Account PIN

Output: Main Menu

3.1.7 Priority

The utility is executable from the main menu displayed numbered options. It enables various users to
request balance enquiry, perform withdrawals and carryout deposits.

3.1.8 Stimulus and response

The response/stimulus for the different classes of users are:

1) Balance enquiry option: the screen displays the user's account balance.

2) Withdrawal Option: The screen displays a menu containing standard withdrawal amounts:
₹100 (option 1), ₹200 (option 2), ₹500 (option 3), ₹1000 (option 4) and ₹2000 (option 5)
etc. The menu also contains an option to allow the user to cancel the transaction (option 6).

3) Deposit feature: The user enters a deposit amount or 0.


3.1.9. Functional requirement:User exit interface

The system should be able to verify the withdrawals and deposits.

Input: withdrawal or deposit

Output: ATM proceeds to the next step of transaction or displays message of failure to proceed to

the next step.

3.1.10 Description and priority

The feature enables the user to exit the system and to display the welcome message for the next

user.

3.1.11 Stimulus and response

Exit the system (option 4): thank you message, then display the welcome message for the next user

3.1.12 Functional requirement

The system should log out the user to control access the users bank account

Input: exit the system (option 4).

Output: thank you message, then display the welcome message for the next user.

In general steps which describe the functional requirements are:

•Insert ATM card


•Validate ATM card
•Enter product Task.
•Enter the pin.
•Validate pin.
•Validate for account type if the task is banking.
•Ask for an amount to be withdrawn.
•Amount is debited if sufficient balance is available.
•Error message is displayed otherwise.
•Ask for printing advice if the task is a balanced enquiry.

3.2 Non-functional Requirements:

Software Quality Attributes

i. Safety

ii.Security

iii Performance

3.2.1 Safety Requirements

i.The cabin door will always be locked, which will open only when the user swipes his/her ATM card in
the slot & is validated as genuine.

ii. Must be safely kept in physical aspects, say in a cabin.

iii. Must be bolted to the floor to prevent any kind of theft.

iv. Must have an emergency phone outside the cabin.

3.2.2 Security Requirements

i. Users' accessibility is censored in all the ways.

ii. Users are advised to change their PIN on first use.

iii. Users are advised not to tell their PIN to anyone.

iv. The maximum number of attempts to enter PIN will be three.


3.2.1 Performance Requirements

i. It must be able to perform in adverse conditions like high/low temperature etc.

ii. Uninterrupted interrupted connections.

3.3. Other Requirements

3.3.1 Database

The ATM must be able to use several data formats according to the data formats that are provided by the
databases of different banks. A transaction should have all the properties of a database transaction
(Atomicity, Consistency, Isolation, Durability).And the databases should be updated all the values if the
transactions gets successful if the transaction is in waiting state or it doesn’t get performed then the
previous values should not get updated.The databases makes a key role to maintain the bank statement
of a particular Bank Account.

You might also like