Software Engineering Lab: Subject Code: KCS-651
Software Engineering Lab: Subject Code: KCS-651
SUBMITTED BY : SUBMITTED TO :
Rakesh Kumar Dr. Preety Dhaka Verma
ROLL NO : 1901320130078 Assistant Professor
YEAR/SEC : 3RD (B) Department of CSE
INDEX
Date of
S.No. Name of Experiment Remarks
Experiment
Prepare a SRS document in line with the IEEE
1. 08/03/2022
recommended standards.
1. Introduction
1.1. Purpose
1.2. Scope
1.3. Definition, Acronyms and Abbreviations
1.4. Reference
1.5. Overview
2. Overall Description
2.1. Product Perspective
2.2. Product Function
2.3. User Characteristics
2.4. Constraints
2.5. Assumption and Dependencies
3. External Interface Requirements
3.1. User Interface
3.2. Hardware Interface
3.3. Software Interface
3.4. Communications Interface
4. System Features
6. Other Requirements
Appendix A:
Appendix S:
1. Introduction
1.1. Purpose
The SRS document defines External Interface, Performance and Software System Attributes
requirements of ATM version1.0.
This document is intended for the following group of people :
• Developers for maintenance and new releases of the software.
• Management of the bank.
• Documentation writers.
• Testers.
1.2. Scope
This document applies to Automated Teller Machine software ATM version1.0. This
software facilitates the user to perform various transactions in his account without going
to bank. This software offers benefits such cash withdrawals, balance transfers, deposits,
inquiries, credit card advances and other banking related operations for customers. It also
allows the administrator to fix the tariffs and rules as and when required.
The software takes as input the login Id and the bank account number of the user for
login purposes. The outputs then comprise of an interactive display that lets the user
select the desirable function that he wants to perform.
The software is expected to complete in duration of 3 months and the estimated cost is
Rs. 5 lakhs.
Abbreviation Definition
Automated Teller Machine.
An unattended electronic machine in a public place, connected to a data
ATM
system and related equipment and activated by a bank customer to obtain
cash withdrawals and other banking services.
AIMS ATM Information Management System.
AC Aternate Current
MB Mega Bytes
MS Miliseconds
Sec Seconds
1.4. Reference
• www.google.co.in
• www.wikipedia.com
• IEEE. Software Requirements Specification Std. 830-1993.
• Chevy Chase Bank, UMBC Branch.
URL : http://www.math-cs.gordon.edu/local/courses/cs211/ATMExample/
1.5. Overview
2. Overall Description
2.1.Product Perspective
The major functions that ATMExcel 3.0TM performs are described as follows:
Language Selection: After the user has logged in, the display provides him with a list of languages
from which he can select any one in order to interact with the machine throughout that session. After
the language selection the user is prompted with an option that whether he wants the selected
language to be fixed for future use so that he is not offered with the language selection menu in
future thus making the transaction a bit faster. User also has the freedom to switch to a different
language mentioned in the list in betweenthat session.
Account Maintenance: The various functions that a user can perform withhis account are as follows:
Account Type:The user has the freedom to select his account type towhich all the transactions are
made.
There are different kind of users that will be interacting with the system. The intended user ofthe
software are as follows:
User A: A novice ATM customer. This user has little or no experience with electronic means of
account management and is not a frequent user of the product. User A will find the product easy to use
due to simple explanatory screens for eachATM function. He is also assisted by an interactive
teaching mechanism at every step of the transaction, both with the help of visual and audio help
sessions.
User B: An experienced customer. This user has used an ATM on several occasions before and does
most of his account management through the ATM. There is only a little help session that too at the
beginning of the session thus making the transaction procedure more faster.
Maintenance Personnel: A bank employee. This user is familiar with the functioning of the ATM. This
user is in charge of storing cash into the ATM vault and repairing the ATM in case of malfunction.
This user is presented with a different display when he logs in with the administrator’s password and
is provided with options different from that of normal user. He has the authority to change or restrict
various features provided by the software in situations of repairing.
2.4. Constraints
ii. The number of invalid pin entries attempted must not exceed three. After three unsuccessful login
attempts, the card is seized/blocked and need to be unlocked bythe bank.
iii. The simultaneous access to an account through both, the ATM and the bank is not supported.
iv. The minimum amount of money a user can withdraw is Rs 100/- and the maximum amount of
money a user can withdraw in a session is Rs.10,000/- and the maximum amount he can withdraw
in a day is Rs 20,000/-
v. fore the transaction is carried out, a check is performed by the machine to ensure that a minimum
amount of Rs 1000/- is left in the user’s account after the withdrawal failing which the withdrawal
is denied.
vi. The minimum amount a user can deposit is Rs 100/- and the maximum amount hecan deposit is
Rs 10,000/-.
The requirements stated in the SRS could be affected by the following factors:
i. One major dependency that the project might face is the changes that need to be incorporated with
the changes in the bank policies regarding different services. As the policies changes the system
needs to be updated with the same immediately. A delay in doing the same will result to
tremendous loss to the bank. So this should be changed as and when required by the developer.
ii. Another constraint relating to the operating environment is that we are specific to Oracle
Database.
iii. The project could be largely affected if some amount is withdrawn from the user’s account from
the bank at the same time when someone is accessing that account through the ATM machine.
Such a condition shall be taken care of.
iv. At this stage no quantities measures are imposed on the software in terms of speed and
memoryalthough it is implied that all functions will be optimised with respect to speed and
memory.
v. It is furthermore assumed that the scope of the package will increase considerably in the future.
3.1.User Interface
The interface provided to the user should be a very user-friendly one and it should provide an optional
interactive help for each of the service listed. The interface provided is a menu drivenone and the
following screens will be provided:
i. A login screen is provided in the beginning for entering the required username/pin no.and
account number.
ii. An unsuccessful login leads to a reattempt(maximum three) screen for again entering thesame
information. The successful login leads to a screen displaying a list of supported languages from
which a user can select any one.
iii. In case of administrator, a screen will be shown having options to reboot system, shut down
system, block system, disable any service.
iv. In case of reboot/ shut down, a screen is displayed to confirm the user’s will to reboot and also
allow the user to take any backup if needed.
v. In case of blocking system, a screen is provided asking for the card no. By entering the card no
of a particular user, system access can be blocked for him.
vi. Administrator is also provided with a screen that enables him to block any service provided to
the user by entering the name of the service or by selecting it from the list displayed.
vii. After the login, a screen with a number of options is then shown to the user. It contains all the
options along with their brief description to enable the user to understand their functioning and
select the proper option.
viii. A screen will be provided for user to check his account balance.
ix. A screen will be provided that displays the location of all other ATMs of same bank elsewhere
in the city.
x. A screen will be provided for the user to perform various transactions in his account.
The following reports will be generated after each session dealt with in the machine:
i. The login time and logout time along with the user’s pin no and account number is registered in
the bank’s database.
ii. The ATM’s branch ID through which the session is established is also noted down in thebank’s
database.
iii. Various changes in the user’s account after the transactions, if any, are reported in the database.
iv. A printed statement is generated for the user displaying all the transactions he performed.
There are various hardware components with which the machine is required to interact. Various
hardware interface requirements that need to be fulfilled for successful functioning of the software are
as follows:
i. The ATM power supply shall have a 10/220 V AC manual switch.The ATM card should have the
following physical dimensions:
i. Width - 85.47mm-85.72mm
ii. Height - 53.92mm-54.03mm
iii. Thickness - 0.76mm+0.08mm
ii. The card reader shall have Smart card option.
iii. The slot for a card in the card reader may include an extra indentation for the embossed area of
the card. In effect it acts as a polarisation key and may be usedto aid the correct insertion
orientation of the card. This is an additional characteristic to the magnetic field sensor which
operates off the magnetic stripe and is used to open a mechanical gate on devices such as ATMs.
iv. There shall be a 40 column dot matrix receipt printer.
v. There shall be a 40 column dot matrix statement printer.
vi. The receipt dispenser shall be a maximum of 4" width and 0.5" thickness. The statement
dispenser shall be a maximum of 5" width and 0.5" thickness.
vii. The envelope depository shall be a maximum of 4.5" width, 10" length and 0.5"thickness.
viii. Screen resolution of at least 800X600-required for proper and complete viewingof screens.
Higher resolution would not be a problem.
In order to perform various different functions, this software needs to interact with various other
softwares. So there are certain software interface requirements that need to be fulfilled which are
listed as follows :
i. The transaction management software used to manage the transaction and keep trackof
resources shall be BMS version 2.0.
ii. The card management software used to verify pin no and login shall be CMSversion 3.0.
iii. The database used to keep record of user accounts shall be Oracle version7.0.
The machine needs to communicate with the main branch for each session for various functions such
as loginverification, account access etc. so the following are the various communication interface
requirements that are needed to be fulfilled in order to run the software successfully:
i. The system will employ dial-up POS with the central server for low costcommunication.
ii. The communication protocol used shall be TCP/IP.
iii. Protocol used for data transfer shall be File Transfer Protocol(FTP).
4. System Features
The system is designed to provide the user with the facility of remote banking and perform various
other functions at an interface without any aid of human bank teller. The functioning of the system
shall be as follows
At the start, the user is provided with a log in screen and he is required to enter his PIN NO. and
Account details which are then verified by the machine. In case of an unsuccessful attempta user is
asked again for his credentials but the maximum number of attempt given to the user is limited to 3
only, failing which his card is blocked and need to be unblocked by the bank for any future use.
After a successful log in, the user is presented with a list of language. The user can select any one in
the listfor interaction with the machine for the entire session. After the language selection the user is
also asked whether he wants to fix that language for future use also so that he is never asked for
language in future. Inaddition there is also a facility for the user to switch to any other language
during that session.
After the language selection, the user is directed towards a main page that displays a set of options/
services along with their brief description, enabling the user to understand their functioning. The user
can select any of the listed option and can continue with the transaction.
The machine also provides the user with a number of miscellaneous services such as:
The machine lists a set of operators that are supported by the bank. A user can clear of his pending
mobile phone bills be selecting his operator.
The machine also has the facility to display a map that marks the location of other ATMs of the same
bank inthe city. This may help the user to look for the ATM nearest to his destination.
At any moment if the user wants to abort the transaction, he is provided with an option to cancel it.
Just by pressing the abort button he can cancel all the changes made so far and can begin with a new
transaction.
After the user is finished with his work, for security purpose, he is required to log out and then take
his card out of the slot.
Validity Checks
In order to gain access to the system, the user is required to enter his/her correct user id/pin no and
accountno failing which his card may be blocked.
The user can access only one account at a time and can enter only one account number.
Also if the user is an administrator, he is required to enter his login id in order to access and
change thefacilities provided by the system.
Sequencing Information
The information about the users and their account should be entered into the database prior to any
of thetransactions and the backup be maintained for all account information
If any of the above validation/sequencing flow does not hold true, appropriate error messages will be
prompted to the user for doing the needful.
2. Receipt Generation
After each transaction user has performed, a receipt is generated that contains all the information
about thetransaction. The format of the generated receipt is as shown below:
XYZ BANK
Branch name/Id (address)
Login Time: Date:
Account No:
User Name:
TRANSACTIONS:
5.1.Performance Requirement
The following list provides a brief summary of the performance requirements for the software:
5.1.1. Capacity
iv. The card verification time must not exceed 0.8 sec. under normal server workload and 1 sec
under peakserver workload.
v. The pin number verification time must not exceed 0.3 sec. under normal server workload and 0.5
sec. underpeak server workload.
vi. Account balance display time must not exceed 2 sec. under normal server workload and 3 sec.
under peakserver workload.
vii. Account balance transfer time must not exceed 3 sec. under normal server workload and 4 sec.
under peakserver workload.
viii. Cash withdrawal transaction time must not exceed 4 sec. under normal server workload and 5
sec. underpeak server workload.
ix. Deposit transaction time after insertion of the deposit envelope must not exceed 5 sec. under
normal serverworkload and 6 sec. under peak server workload.
x. Receipt printing time after must not exceed 3 sec. under normal server and peak server workload.
5.1.3. Quality
The primary objective s to produce quality software. As the quality of a piece of software is difficult
to measure quantitatively, the following guidelines will be used when judging the quality of the
software:
i. Consistency – All code will be consistent with respect to the style. (This is implied when
adhering to the standard).
ii. Test cases – All functionality will be thoroughly tested .
5.2.1.Reliability
The data communication protocol shall be such that it ensures reliability and quality of data and
voicetransmission in a mobile environment. For example, CDMA.
The memory system shall be of non-volatile type.
5.2.2. Availability
The product will have a backup power supply incase of power failures. Any abnormal operations shall
result in the shutting down of the system.After abnormal shutdown of the ATM, the system shall
have to be manually restarted by a maintenancepersonnel.There should be no inconsistency
introduced in the account during whose transaction the system isabnormally shut down.
5.2.3. Security
5.2.4. Maintainability
The system components i.e. modem, memory, disk, drives shall be easily serviceable without
requiring access to the vault.The system should have the mechanism of self-monitoring periodically in
order to detect any fault.The system should inform the main branch automatically as soon as it
detects any error. The kind offault and the problem being encountered should also be mentioned by the
system automatically.
6. Other Requirements
None.
Practical-2
Usecase Diagram
Practical-5
Sequence Diagram
Practical-6
Deployment Diagram
Practical-7
Context Diagram
Practical-8
Activity Diagram
Practical-9
Collaboration Diagram