How to Test Banking Applications

Banking applications are considered to be one of the most complex applications in today’s software development and testing industry. What makes Banking application so complex? What approach should be followed in order to test the complex workflows involved? In this article we will be highlighting different stages and techniques involved in testing Banking applications.

The characteristics of a Banking application are as follows:

  • Multi tier functionality to support thousands of concurrent user sessions
  • Large scale Integration , typically a banking application integrates with numerous other applications such as Bill Pay utility and Trading accounts
  • Complex Business workflows
  • Real Time and Batch processing
  • High rate of Transactions per seconds
  • Secure Transactions
  • Robust Reporting section to keep track of day to day transactions
  • Strong Auditing to troubleshoot customer issues
  • Massive storage system
  • Disaster Management.

The above listed ten points are the most important characteristics of a Banking application.

Banking applications have multiple tiers involved in performing an operation. For Example, a banking application may have:

  1. Web Server to interact with end users via Browser
  2. Middle Tier to validate the input and output for web server
  3. Data Base to store data and procedures
  4. Transaction Processor which could be a large capacity Mainframe or any other Legacy system to carry out Trillions of transactions per second.

If we talk about testing banking applications it requires an end to end testing methodology involving multiple software testing techniques to ensure:

  • Total  coverage of all banking workflows and Business Requirements
  • Functional aspect of the application
  • Security aspect of the application
  • Data Integrity
  • Concurrency
  • User Experience

Typical stages involved in testing Banking Applications are shown in below workflow which we will be discussing individually.

 

Testing Banking Applications

 

1) Requirement Gathering:

Requirement gathering phase involves documentation of requirements either as Functional Specifications or Use Cases. Requirements are gathered as per customer needs and documented by Banking Experts or Business Analyst. To write requirements on more than one subject experts are involved as banking itself has multiple sub domains and one full fledge banking application will be the integration of all. For Example: A banking application may have separate modules for Transfers, Credit Cards, Reports, Loan Accounts, Bill Payments, Trading Etc.

2) Requirement Review:

The deliverable of Requirement Gathering is reviewed by all the stakeholders such as QA Engineers, Development leads and Peer Business Analysts. They cross check that neither existing business workflows nor new workflows are violated.

3) Business Scenario Preparations:

In this stage QA Engineers derive Business Scenarios from the requirement documents (Functions Specs or Use Cases); Business Scenarios are derived in such a way that all Business Requirements are covered. Business Scenarios are high level scenarios without any detailed steps, further these Business Scenarios are reviewed by Business Analyst to ensure all of Business Requirements are met and its easier for BAs to review high level scenarios than reviewing low level detailed Test Cases.

4) Functional Testing:

In this stage functional testing is performed and the usual software testing activities are performed such as:

Test Case Preparation:
In this stage Test Cases are derived from Business Scenarios, one Business Scenario leads to several positive test cases and negative test cases. Generally tools used during this stage are Microsoft Excel, Test Director or Quality Center.
Test Case Review:
Reviews by peer QA Engineers
Test Case Execution:
Test Case Execution could be either manual or automatic involving tools like QC, QTP or any other.

5) Database Testing:

Banking Application involves complex transaction which are performed both at UI level and Database level, Therefore Database testing is as important as functional testing. Database in itself is an entirely separate layer hence it is carried out by database specialists and it uses techniques like

------------

  • Data loading
  • Database Migration
  • Testing DB Schema and Data types
  • Rules Testing
  • Testing Stored Procedures and Functions
  • Testing Triggers
  • Data Integrity

6) Security Testing:

Security Testing is usually the last stage in the testing cycle as completing functional and non functional are entry criteria to commence Security testing. Security testing is one of the major stages in the entire Application testing cycle as this stage ensures that application complies with Federal and Industry standards. Security testing cycle makes sure the application does not have any web vulnerability which may expose sensitive data to an intruder or an attacker and complies with standards like OWASP.

In this stage the major task involves in the whole application scan which is carried out using tools like IBM Appscan or HP WebInspect (2 Most popular tools).

Once the Scan is complete the Scan Report is published out of which False Positives are filtered out and rest of the vulnerability are reported to Development team for fixing depending on the Severity.

Other Manual tools for Security Testing used are: Paros Proxy, Http Watch, Burp Suite, Fortify tools Etc.

Apart from the above stages there might be different stages involved like Integration Testing and Performance Testing.

In today’s scenario majority of Banking Projects are using: Agile/Scrum, RUP and Continuous Integration methodologies, and Tools packages like Microsoft’s VSTS and Rational Tools.

As we mentioned RUP above, RUP stands for Rational Unified Process, which is an iterative software development methodology introduced by IBM which comprises of four phases in which development and testing activities are carried out.

Four phases are:
i) Inception
ii) Collaboration
iii) Construction and
iv) Transition
RUP widely involves IBM Rational tools.

In this article we discussed how complex a Banking application could be and what are the typical phases involved in testing the application. Apart from that we also discussed current trends followed by IT industries including software development methodologies and tools.

In case you have queries, comments or any unanswered questions please post it below I will be happy to answer those.

Like this post? Subscribe to get new articles via RSS or Email.



Get FREE eBook + Blog Updates By Email!

Subscribe to get software testing awesome articles and free resources. Enter your email address and click 'SIGN UP NOW' button.


84 comments ↓

#1 Shridhar on 06.20.11 at 6:47 pm

Security testing is the crucial part in testing any banking application. The tools u mentioned are really helpful and I know are used in many high end banking application testing.

Nice article.

#2 Lunje on 06.21.11 at 5:25 am

What a nice article. Thank you very much!

#3 Sbu on 06.21.11 at 7:53 am

Testing banking applications sounds more interesting and it’s massive system. But i am still a greenhorn in testing so i would like to know that what is the difference between business scenario and use case?

#4 Mohit on 06.21.11 at 11:08 am

Business Scenario is a High Level Scenrario from which Test Cases are Written.

Lets take an Example of ATM.

Test Scenarios : Withdraw Cash , Balance Enquiry Etc.

Test Cases would be with detailed steps and covering negative and positive condition.

Test Case 1 : Withdraw valid Amount
Test Case 2 : Withdraw Invalid Amount
Test CAse 3 : Withdraw 0 INR Etc.

With Detailed Steps

#5 Mohit on 06.21.11 at 11:13 am

Whereas a Use Case contains User Actions and FOrmat is like :

1. Pre Condition : ATM should be up and Running , Use has an ATM Card

2. Basic Flow:

* User Inserts ATM Card
* User Enters PIN
* User selects Enter
* User selects Withdrawl
* User Enters Amount
* User Confirms
* User Selects YES for Reciept
* User Collects Cash
* User Collects Reciept
* User Collects Card

3. Exceptions :

* User enters Wrong PIN
* User enters Wrong Amount
* ATM is out of Cash
* Any Other

This is an Use Case from which Business Scenarios and Test Cases are Derived

#6 AROO on 06.21.11 at 2:44 pm

HAI,This is a brilliant article and really appreciable.Few
Questions :1) What are the documents Used and produced in requirements gathering,review and business scenario preperation phases? 2)Are functional specifications derived from business scenario? or Are Business scanarios derived from Functional spec? Pls let me know.

#7 shafik on 06.21.11 at 4:12 pm

This article is good and definitely help me in testing of banking products

#8 Ramesh on 06.21.11 at 6:04 pm

It is really very web site for information gathering & acquire & great job.

#9 Mohit on 06.22.11 at 6:04 am

1) What are the documents Used and produced in requirements gathering,review and business scenario preperation phases?

Requirement gathering may use Tickets/Service Requests/Change Requests generated by Internal and External Customers as Input and Output of Requirement Gathering are Specs , Use Cases and Mock Screens

2)Are functional specifications derived from business scenario? or Are Business scanarios derived from Functional spec?

Its other way round Business Scenarios derived from Functional Specs and is done by QA Engineer , Domain knowledge most important skill needed in Business Scenario Prep.

#10 Karuna on 06.22.11 at 6:39 am

Really very very informative…..it’s really helpful to the guys who are new to the banking domain…..Good Article

#11 Bhargavi on 06.22.11 at 7:48 am

very informative..thanks

#12 uma on 06.22.11 at 4:21 pm

Really nice article it is really helpful for me
Thank you….

#13 Rajani on 06.23.11 at 10:37 am

Really Nice article.
Can any one tellme
how to create or get the logs?
what is cache memory?
In security testing means only authetication or others also?
while doing testing I executed application in different platforms like window 2003 and AIX .
why we do that and even what is the difference between them?

#14 Rajani on 06.23.11 at 10:38 am

What is requirment analysis?

#15 anand on 06.24.11 at 11:51 am

hai iam anand have nice year

If any job requrement or job vacancy
contact me raysoftanand@gmail.com

#16 mah on 06.29.11 at 6:18 am

thank you very much ,this article is really informative..
but i just want to say that second phase in RUP development cycle is not “collaboration” , it’s “elaboration”
source : http://www.ibm.com/developerworks/rational/library/content/03July/1000/1251/1251_bestpractices_TP026B.pdf

#17 Arpit on 06.29.11 at 10:33 am

Very Nice article really.

#18 Mohit on 07.03.11 at 6:41 pm

@Mah

You are correct , Thanks for correcting the Typo

#19 Abdelkrim on 07.06.11 at 10:38 pm

I don’t see what makes your article specific to banks. this is just a summary of methods.

I am disappointed

#20 Mohit on 07.08.11 at 2:35 pm

@ Abdelkrim

Nothing specific to banks , that is correct.

The aim of the article is to give an Overview of how testing for Financial Apps is carried out and what is followed diffrently then a Generic Applicaiton.

However , diffrent Projects may follow diffrent Approaches.

#21 Vishal on 07.13.11 at 2:30 am

what is Database testing? and how to make in MS-access ?

#22 Mohit on 07.13.11 at 9:55 am

Hi Vishal

There is an Article on DB Testing on this Forum …please read that for more details.

#23 usman ali on 07.26.11 at 5:24 am

nice article and is very helpfull for the new comers in banking secter for testng.

#24 Shibin P on 08.02.11 at 11:41 am

Good article.

#25 ria on 11.15.11 at 3:12 pm

Nice article .Thank u so much,
Can u tell me hw integration testing is done (practically)for banking application

#26 ramireddy on 11.17.11 at 9:29 am

this is nice article and easily understand to who are new in banking sector for testing …….

keep it up

#27 Mujahid on 11.22.11 at 1:27 pm

A good article which is very informative and easy to understand.

#28 paul on 11.26.11 at 1:54 pm

Hi, I just started learning Banking applications. This post really helps me.
I want to know about Cards and Payments options used in a Banking application.

Thanks in advance !!!

#29 chandrasekhar on 12.12.11 at 5:39 am

i am unable to find scenarious from functional specification document is there any methods to identify scenarious from functional specification document

#30 khajappa singe on 12.28.11 at 1:26 pm

Nice article, Presently i am working in retail domain as qa . I am interest in banking domain,can you please tell me how Can I improve banking domain knowledge because I do not have enough knowledge about it

#31 PRAKASH on 01.06.12 at 11:28 am

What No.of tools use in banking application software testing ?

#32 Annapoorani on 01.17.12 at 12:02 pm

I am an official with one of the top public sector banks. I have been working in many softwares like bankmaster, banc@24, exim bills, mercury (Forex), SWIFT etc. Now I prefer to switch over to IT industry in the area of testing. Can u please tell me Whether I am already exposed to testing (User acceptance)? If so, How I can project the same in my CV?

#33 Geethanjali on 02.16.12 at 2:35 pm

Very nice article on banking application. helpful to the readers.

#34 Ram Krishna Das on 02.18.12 at 6:45 pm

hi this article is just a summary of Testing methods and not for specific Banking Project…..

I am disappointed

#35 Amrut on 03.02.12 at 6:29 am

For Banking Application testing,Tester must Banking domain knowledege. Tester must have to relate the day to day banking activity and logic while testing the Banking Application.

#36 Sangram Kumar Das on 03.02.12 at 9:38 am

It’s a very nice article on banking application. Its helpful to the every readers/people belongs to same domain and different domain people who are wants to change the domain.

#37 CHANDANA on 03.07.12 at 9:53 am

HAI…its very nice article and i hope that it wil be very helpful for freshers/others….
THANQ………..

#38 Amit on 03.23.12 at 9:15 am

Structured, informative article. Could you let me know how to frame E2E test cases for modules related to core banking application & associated applications connected to it?

#39 Shruthi on 03.29.12 at 1:59 pm

Hi Mohit,

Can you take a real time example and explain me the flow of testing for any banking application like for example online payment system or any other application. I am a fresher in software testing and i need your help in understanding how the projects are handled within a team in a banking environment

Thanks in advance!

#40 aman on 04.06.12 at 9:42 am

Its really nice article for those who have just entered in Banking domain

#41 VJ on 04.19.12 at 7:16 pm

can u provide us with some examples of business scenario preparations from business requirement documents by QA team

#42 anil on 05.14.12 at 3:15 pm

Hi Mohit,
Do you have any idea about finacle application testing?

#43 BV on 05.28.12 at 7:23 am

Hi,

Where do we get std spec documents for financial applications?

#44 BV on 05.28.12 at 7:29 am

Hi,

Where do we get std spec documents for financial applications?

#45 Jayan on 05.30.12 at 6:53 am

I am 4+ yrs of experienced testing professional,looking for a job at Bangalore it self?Can anybody help me to get the same?

#46 Priyaa on 06.21.12 at 11:13 am

Hi..Can anyone help me out…
I want to know how stubs are actually used for testing banking applns in real time.. Will we have real database to check or does this have any thing to do wiyh these stubs or drivers?

#47 Priyaa on 06.21.12 at 11:14 am

I would be happy if somebody could help me with this query.

#48 k Srinivas on 08.04.12 at 10:27 am

I am in the teaching field for the last 20 years teaching IT in schools. I have a fair knowledge in SQL and java. Recently underwent training in QTP and QC. I would like to shift(transition) to System testing or Coporate learning. Can anyone pl guide me as to how to build my career toward this goal?

#49 Narendra on 09.04.12 at 5:19 am

I am 2+ testing professional, i am looking for job change, can anyone please help in this regrad, my phone numbers: 09035532329

#50 sunny on 09.06.12 at 3:57 pm

This article is really nice….

#51 kumar on 09.07.12 at 11:53 pm

Hi,
Nice one. One quick query. Why Security testing comes before UAT? why not after UAT testing?

Kumar

#52 sahlini on 09.28.12 at 7:05 pm

Can u provide some test scenarios for bank application

#53 Rinki on 10.01.12 at 7:23 am

Hi ,

I have worked in 2 projects for banking and this article is really helpful in briefing the testing in financial systems. It very simple and easily explained … Really appreciate it :)

#54 sai on 10.09.12 at 1:09 pm

Can any one describe end to end testing in banking application

#55 rajendra on 10.17.12 at 10:54 am

this article really very helpful for banking knowledge

#56 M.SRINIVASKUMAR on 11.03.12 at 5:15 am

Please send me how to write the testcases in retailbanking application domain

#57 Shushkanthan on 11.07.12 at 12:20 pm

I like her

#58 satish on 01.01.13 at 4:47 pm

which is the best site for prepare the banking application in software testing

#59 SRINIVAS KUMAR MUKKAMALA on 01.27.13 at 3:13 am

please tell me how to write Test cases about Banking Domain.

#60 Giri on 01.29.13 at 9:51 am

Good one……..

#61 Girish Badagar on 01.29.13 at 9:52 am

Informative………

#62 ertger on 02.06.13 at 6:04 am

@sdf
dndsjgvdifuvjdf

#63 madhu sudhan on 03.07.13 at 11:39 am

send me some examples in banking applications

#64 narasimha on 05.01.13 at 8:25 am

this is very good article and very useful. send some scenarios related to banking application.

#65 teena on 05.08.13 at 6:21 am

thanks for the article. please post some test cases related to banking sector.

#66 jaya on 06.21.13 at 9:18 am

hi all, any guide for billing testing? thanks

#67 nanda on 07.16.13 at 12:47 am

Very nice article. It gave me an over view to prepare for my project .Iam trying hard to put my foot in to the testing field.Can you also give me an over view of how
Health Insurance domain ,auto insurance domain,general motors work’s.It would be huge help.
Thank you

#68 kalyani on 07.16.13 at 7:40 am

Hi sir ,I am a fresher, I wanted to work on some projects and put it in my resume, i have planeed to work on a project “Online Banking for Retail Customers” module is to make payment. give me some ideas how to proceed with testing

#69 ANEESH.P.K on 07.21.13 at 7:30 am

ITS VERY USEFUL ARTICLE. I THANK TO U FOR GIVING SUCH A GOOD ARTICLE.

#70 jay on 08.21.13 at 11:30 pm

This process resembles waterfall model. Though arrows are not specified. Truth of reality is that all stages are Agile and TDD. I feel platform testing (Linux,windows,Symbian etc.) is also part of whole process. Profit to risk ratio is also calculated.

#71 Asha on 10.07.13 at 6:33 am

Is there any particular exams that one could give in order to get a “Certification” in Banking domain?

#72 viknesh on 10.25.13 at 3:49 am

sir i need some sample resume for the experience of 2.3 years also i want the project description for online banking as a test engineer

#73 apparao on 12.16.13 at 6:54 am

very nice article it is very useful

#74 apparao on 12.16.13 at 6:56 am

Hi sir I am a fresher, I wanted to work on some projects and put it in my resume, i have to work on a project “Online Banking” module is to make payment. give me some ideas how to proceed with testing

#75 Anusha on 12.16.13 at 7:40 am

Sir,

I am a fresher i want to know the different domains in testing for my career growth.

Can you please explain some of the modules in Banking Domain.
Can we check that manually?if yes,please explain how?

#76 Martina on 12.18.13 at 11:43 am

Can you explain the complete testing with an real time application and test cases

#77 Mani on 12.19.13 at 2:31 pm

Hi,

I am working in energy domain for the past 7 years. I want to switch my career in other Domains like Banking, Healthcare.
Please give me a suggestion how to change??

#78 Mani on 12.19.13 at 2:35 pm

Hi,

I am working in energy domain for the past 7 years. I want to switch my career in other Domains like Banking, Healthcare.
Please give me a suggestion how to change??

#79 apparao on 12.24.13 at 6:29 am

hi,
nice article can you please send banking related qtp scripts, manual testing projects for writing test cases, scenarios,… my mail id-”apparao.upp@gmail.com”

thank u sir..

#80 aman on 01.06.14 at 8:00 am

can you please send banking related qtp scripts, manual testing projects for writing test cases, scenarios,
my mail -Id-test4rhsoftware@gmail.com

#81 jyothi on 01.12.14 at 11:40 pm

hi,am a fresher.please help me out.what is system integration testing?who does it manual or automated tester ,if then how in banking or finance application

#82 Prachi on 01.19.14 at 4:18 pm

Sir, I wanted to work on some projects and put it in my resume, i have to work on a project “Online Banking” module is to make payments.Please can you please send banking related qtp scripts, manual testing projects for writing test cases, scenarios, and other support docs.
Thanking You

#83 Nandini on 02.03.14 at 6:09 am

Hellosss Guyzz,
Those have experience in banking domain, could you please solve few interview questions for me.

1. List Security Testing Scenarios and How to test using open source tools?
(I already know that there should be padlock,https:// and disable back/refresh button)
2. Database Testing Scenarios and list queries that a tester executes?

Thanks a lot
Nandini

#84 srinivas on 02.14.14 at 5:50 pm

Hi frnds gud eveng to one an all who involved in this posting the opinions before asking my query i request to all to give your valuable advice without fail my queryis i am about 5 n half yrs got experienced in the qc dept as a testing engineer on core field now planning to shift to software testing i passed my graduation in 2007 how should i forward my resume as a fresher or exp.if not so can i get any real time project pl guide me.