American International University-Bangladesh (AIUB) Department of Computer Science Software Quality and Testing Fall 2021-2022
American International University-Bangladesh (AIUB) Department of Computer Science Software Quality and Testing Fall 2021-2022
Objective:
The objective of this project is to develop a test plan. The students will apply their knowledge and
understanding learned from the course in order to develop the test plan. Based on the given requirements
and functionalities of the system under test, the students will write the Test Plan.
Submission Rules:
Deadline: December 1, 2021
Group: Group of four or five (minimum– four members; maximum– five members);
You have to choose your project-partners.
Plagiarism: 100% penalty for all the groups involved in copying each other’s works (It includes the
original producer).
Late Submission: NOT allowed
Total marks: 20% of the final term marks
Problem Statement:
Suppose your software firm Datasoft, Inc. has been awarded a contract to develop software for AIUB
Bank ATM Systems. You are the Test Lead of the project. Based on the requirements and
functionalities of the system, you have to develop (write) a software test plan.
General description and specifications of the software application are as follows:
AIUB Bank Limited has automated teller machines (ATMs) which are geographically distributed and
connected via a wide area network to a central server. Each ATM machine has a card reader, a cash
dispenser, a touch screen display, and a receipt printer. By using the ATM machine, a customer can
withdraw cash from either checking or savings account, query the balance of an account, or transfer
funds from one account to another.
A transaction is initiated when a customer inserts an ATM card into the card reader. Encoded on the
magnetic strip on the back of the ATM card is the card number, the start date, and the expiration date.
Assuming the card is recognized, the system validates the ATM card to determine that the expiration
date has not passed, that the user-entered PIN (personal identification number) matches the PIN
maintained by the system, and that the card is not lost or stolen. The customer is allowed three attempts
to enter the correct PIN; the card is confiscated if the third attempt fails. Cards that have been reported
lost or stolen are also confiscated.
If the PIN is validated satisfactorily, the customer is prompted for a withdrawal, query, or transfer
transaction. Before withdrawal transaction can be approved, the system determines that sufficient funds
exist in the requested account, that the maximum daily limit will not be exceeded, and that there are
sufficient funds available at the local cash dispenser. If the transaction is approved, the requested
amount of cash is dispensed, a receipt is printed containing information about the transaction, and the
card is ejected. Before a transfer transaction can be approved, the system determines that the customer
has at least two accounts and that there are sufficient funds in the account to be debited. For approved
query and transfer requests, a receipt is printed and card is ejected. A customer may cancel a transaction
at any time; the transaction is terminated and the card is ejected. Customer records, account records, and
debit card records are all maintained at the server.
An ATM operator may start up and close down the ATM to replenish the ATM cash dispenser and for
routine maintenance. It is assumed that functionality to open and close accounts and to create, update,
and delete customer and debit card records is provided by an existing system and is not part of this
problem.
The AIUB Bank Limited can have many automated teller machines (ATMs), and the new
software system will provide functionality on all ATMs.
The system will enable the customers of AIUB Bank Limited, who have valid ATM cards, to
perform three types of transactions
1) Withdrawal of funds
2) Query of account balance
3) Transfer of funds from one bank account to another account in the same bank
An ATM card usage will be considered valid if it meets the following conditions:
o The card was issued by the authorized bank
o The card is used after the start date (i.e. the date when the card was issued)
o The card is used before the expiration date (i.e. the date when the card expires)
o The card has not been reported lost or stolen by the customer, who had been issued that
card
o The customer provides correct personal identification number (PIN), which matches the
PIN maintained by the system
The system will confiscate the ATM card if it detects that a lost or stolen card has been inserted
by a customer. The system will also display an apology to the customer.
The system will allow the customer to enter the correct PIN in no more three attempts. The
failure to provide correct PIN in three attempts will result in the confiscation of the ATM card.
The system will ask for the transaction type after satisfactory validation of the customer PIN.
The customer will be given three options: withdrawal transaction, or query transaction, or
transfer transaction.
If a customer selects withdrawal transaction, the system will prompt the customer to enter
account number and amount to be dispensed.
For a withdrawal transaction, the system will determine that sufficient funds exist in the
requested account, that the maximum daily limit has not been exceeded, and that there are
sufficient funds available at the local cash dispenser.
If a withdrawal transaction is approved, the requested amount of cash will be dispensed, a receipt
will be printed containing information about the transaction, and the card will be ejected. The
information printed on the receipt includes transaction number, transaction type, amount
withdrawn, and account balance.
If a customer selects query transaction, the system will prompt the customer to enter account
number.
If a query transaction is approved, the system will print a receipt and eject the card. The
information contained on the receipt includes transaction number, transaction type, and account
balance.
If a customer selects transfer transaction, the system will prompt the customer to enter from
account number, to account number, and amount to be transferred.
The system will check if there are enough funds available in the ‘from account’, which are being
requested for transfer to the ‘to account’.
If the transfer transaction is approved, a receipt will be printed and the card will be ejected. The
information printed on the receipt includes transaction number, transaction type, amount type,
and account balance.
The system will cancel any transaction if it has not been completed if the customer presses the
Cancel button.
The customer records, account records, and debit card records will all be maintained at the server
and will not be the responsibility of the system.
The system will enable an ATM operator to shutdown or start up an ATM for routine
maintenance.
The system will enable an ATM operator to add cash to the cash dispenser.
The system will not be responsible for opening or closing of accounts, and to create, update, or
delete customer and debit card records. These tasks are performed elsewhere by the bank.
The system will be linked with the bank server through communication systems, which are
beyond the scope of the current system. It is assumed that this facility is always available.
The system will not be responsible for the maintenance of the hardware devices of the ATM or
network facilities.
A sample test plan outline is given below. Use it for your project; however you can customize it.