You are on page 1of 10

THE UNIVERSITY OF MALAWI THE POLYTECHNIC FACULTY OF ENGINEERING DEPARTMENT OF ELECTRICAL

ENGINEERING

MODULE: SOFWARE ENGINEERING

Software Requirements Specification for an


ATM OPERATIONAL SOFTWARE
Version 1.0
approved Prepared by BECE 4 POLYTECHNIC
COMPUTER ENGINEERS
Table of Contents Table of Contents ...................................................................................................................... iii
1. Preface .......................................................................................................................................

1 2. Introduction ..............................................................................................................................

2 2.1 Purpose .............................................................................................................................

2 2.2 Document Conventions ....................................................................................................

2 2.3 Intended Audience and Reading Suggestions ..................................................................

2 2.4 Product Scope ..................................................................................................................

2 2.5 References ........................................................................................................................

3. Overall Description ..................................................................................................................

3.1 Product Perspective ..........................................................................................................

3.2 Product Functions ............................................................................................................

3.3 User Classes and Characteristics.....................................................................................

3.4 Scenarios ..........................................................................................................................

3.5 Use Case Model Survey ...................................................................................................

3.6 Operating Environment ....................................................................................................

3.7 User Documentation ......................................................................................................

3.8 Assumptions and Dependencies ....................................................................................

4. External Interface Requirements .........................................................................................

4.1 User Interfaces ...............................................................................................................

4.2 Hardware Interfaces .......................................................................................................

4.3 Software Interfaces.........................................................................................................

4.4 Communications Interfaces ............................................................................................


1. Preface
This Software Requirements Specification (SRS) is intended for users and managers of the ATM OPERATIONAL
SOFTWARE and those evaluating its potential use. It is also useful to any maintainers of the interface's codebase.
Version One of the SRS covers the interface at the time of Release.
2. Introduction

2.1 Purpose
This document describes the software requirements and specification (SRS) of an automated teller machine
(ATM). This document is intended for the customer and developer (designer, testers and maintainers). The
reader is assumed to have a basic knowledge of banking accounts and accounts services. Knowledge and
understanding of unified modeling languages (UML) diagrams is also required.

2.2 Document Conventions

PIN (Personal identification number):

 Is a numeric password shared between a user and a system that can be used to authenticate the user to the
system. Account:

 A single account at a bank against which a transaction can be applied. A customer can only hold one account.
ATM (Automated Teller machine):

 An electronic telecommunications device that enables the customers of a financial institution to perform
financial transactions without the need for a human cashier, clerk or bank teller.

2.3 Intended Audience and Reading Suggestions

The intended audience for this SRS consists of: Software engineers

 System engineers
 System customers

 System test engineers

 System customers

 System maintenance engineers

 Managers

2.4 Product Scope


The software supports a computerized banking system. The system enables customers to complete simple bank
account service via an ATM. An ATM session consists of authenticating a user (i.e., proving the user's identity)
based on an account number and personal identification number (PIN), followed by creating and executing
financial transactions. To authenticate a user and perform transactions, the ATM must interact with the bank's
account information database. For each bank account, the database stores an account number, a PIN and a
balance indicating the amount of money in the account. ATM users should be able to view their account
balance, withdraw cash (i.e., take money out of an account) and deposit funds (i.e., place money into an
account).
3. Overall Description
3.1 Product Perspective This ATM’s software is to run on a new ATM hardware that a local bank wants to install
for its customers. This product will be developed from an existing system of the same local bank or from another
bank that has similar characteristics of this local bank. The system will be designed in such a way that the user
will access and use the ATM and then accesses the banking system, which updates, configures and accesses the
details and data of the user from his/her database. The system will also accommodate an operator who will load
money in the ATM machine, validate deposits made by a customer, and make sure the system hardware is
always on and on power.

3.2 Product Functions The functions of the system are:


Login

 Balance inquiry

 Cash withdraw

 Funds deposit

3.3 User Classes and Characteristics

Open to all users but access level is dependent on knowledge of the system.

 Customers are simply members of the public with no special training.

 Bank security personnel need have no special education or experience.

 Maintainers must be experienced system administrators, able to upgrade and repair the

 system.

3.4 Scenarios

3.4.1 Initial assumption


The assumption made are: DATABASE BANKING SYSTEM COMPUTER

An individual with a valid bank account and valid unique PIN attempts to access the banking

 system services using the ATM. The ATM machine has money loaded that will be able to be withdrawn by a
customer

 The customer knows how to use the ATM machine.


 The ATM is always on.

3.4.2 Normal For the user:


The customer enters the account number and pin and is successfully validated by the

 banking system The customer is logged in the system and is able to withdraw cash after entering the pin and

 account number The customer is logged in the system and is able to Deposit cash after entering her pin and

 account number The customer can request a query balance of his/her account

 For the operator: The operator can successfully update the customer’s account and database after a deposit

 transaction of a customer He/she is able to keep the ATM on power all the time

 He/she is able to load cash in the ATM machine, which customers will be able to withdraw

3.4.3 What can go wrong


Unauthorized access for an account by a user who is not the owner of that particular account

 Failure to update the bank account database after a customer makes a transaction

 Operator making an accounting error and updating a customer’s account wrongly after a

 customer deposits cash A customer trying to withdraw cash that is greater than that is in the customer’s
account

3.4.4 Other activities


Deposits by a customer are manually updated by the operator

 The operator and system administrator customizes, updates and manages the database of the

 bank customers

3.4.5 System state on completion Customer is logged on to the ATM and bank system and can make various
transactions

 Operator can load cash into the ATM machine for customers to withdraw
a)login
This is a use case used to verify the authentication of the user. T

he user types their allotted account number and pin as input. The system then verifies whether their account
number and pin stored on the data base matches or not ,if it matches then it allows the user to use the system
or else it asks the user to enter the pin number again.

b)balance inquiry
This use case is used to check the account balance.After every transaction the balance in the user’s account is
updated .

c)withdrawal
This use case facilitates the user to withdraw money from their account.After the money is withdrawn it is
updated in the user’s account.

d)deposit
This use case is used to execute the deposit transaction by the user. Even though the account balance is updated
after the deposit. The deposited amount is only available after it is updated manually.

e)exit
This use case enables the user to exit the system and to enable a new user to access the system. The following
list offers a brief outline and description of the functionalities of the ATM software system.

3.6 Operating Environment


The hardware, software and technology used should have the following: Ability to read values from a keyboard

 Ability to count the currency notes

 Continuous power supply

 Ability to connect to bank’s network

 Ability to validate user

 Design and Implementation Constraints login validate account number

 validate if the account number is hosted bank, if not prompt an error message

 validate if the account number is functional, if not prompt an error message


 validate PIN

 validate that PIN is not blank, if blank ,prompt error message ”please enter

 PIN” validate that PIN matches with the account number, if not prompt error

 message” Incorrect PIN, please try again ” Software Requirements Specification for an ATM OPERATIONAL
SOFTWARE Page 10 3.7 User Documentation User manual

 3.8 Assumptions and Dependencies Hardware never fails

 Limited amount of money withdrawn per day

 Limited number of transactions per day

 ATM casing is impenetrable

4. External Interface Requirements

4.1 User Interfaces Upon first approaching the ATM, the user should experience the following sequence of
events (shown in Fig. 1):

1. The screen displays a welcome message and prompts the user to enter an account number. 2. The user enters
a five-digit account number, using the keypad. 3. The screen prompts the user to enter the PIN (personal
identification number) associated with the specified account number. The user enters a five-digit PIN, using the
keypad. Figure:

4.1 If the user enters a valid account number and the correct PIN for that account, the screen displays main
menu the main menu (Fig. 2).

I Figure:4.2 If the user enters

2 to make a withdrawal the screen displays the menu in figure

4.3. Software Requirements Specification for an ATM OPERATIONAL SOFTWARE

Figure:4.3 4.2 Hardware Interfaces A screen that displays messages to the user

 A keypad that receives numeric input from the user

 A cash dispenser that dispenses cash to the user and

 A deposit slot that receives deposit envelopes from the user

. Figure:4.4 4.3 Software Interfaces Software requirements at the end user are: 1. Operation systems Software
Requirements Specification for an ATM OPERATIONAL SOFTWARE Page 13 Windows XP

 Windows 7, 8 e.t.c.
 2. Languages supported C++

 3. Database

4.4 Communications Interfaces There is no restriction of the ATM network to a specific network protocol as long
as the performance requirements are satisfied.

You might also like