Today’s article will bring you enhanced clarity on the Investment Banking Domain. You will get to know what to test and how in an Investment Banking Application.
Before we dive deeper into how to test investment banking applications , it's important to understand this domain first. So, we will first learn the Investment Banking domain terminologies, which will help you understand the test cases easily.
We have also included sample test scenarios of various testing types like database, security, and performance testing of an investment banking application.
Also read => Testing Banking applications
Let's start with ‘Investment Basics':
Investment is nothing but saving money in a way that will get you returns for it in the future (short-term or long-term). Saving money in accounts will not generate any benefits. Instead, one should invest the money in options like Mutual Funds, Bonds etc., which yield returns in the future.
Learn more about IB domain here.
Why should one Invest?
One needs to invest money in order to earn returns and generate returns to meet their monetary goals in life. In other words, we can say that one should invest to meet the cost of inflation (Inflation means the rate at which the cost of living increases in future).
When to start Investing?
The important rule for all investors is to invest early, regularly and for the long term, not short term.
What are the available Investment options?
One can either invest in Physical Assets such as real estate, gold/jewelry, commodities (seeds, crude oil, natural gas, metals etc.,) or in Financial Assets such as fixed deposits with banks, provident/pension fund etc., or in securities market such as shares, bonds, debentures etc.
Financial Options for Investments:
Few Short-term investment options are,
- Savings Bank Account: This is nothing but saving our funds in regular bank accounts. For such savings, the interest rate will be very low, approximately the interest rate varies between 4% – 5% p.a.
- Money Market or Liquid Funds: This is another option for short-term investment which gives better returns than the above-mentioned savings account. However, the interest rate for Money Market Funds will be lesser than the fixed deposits.
- Fixed Deposits with Banks: This is a better investment option with a bit higher interest rates when compared with the above two options. Fixed deposits are also named as term deposits. The investment period for this option starts with a minimum period of 30 days.
Apart from the above short-term investment options these are a few of the Long-term investment options,
- Post Office Savings: This is saving our money in the Post Office under various types of schemes. The risk involved in this is low. The interest rate for this option is 8% per annum. The interest amount for this option is paid monthly and the maturity term is 6 years.
- Public Provident Fund: Another main long-term savings investment option is Public Provident Fund. The interest rate for this option is about 8% p.a and the maturity period is 15 years.
- Company Fixed Deposits: This is a different kind of investment option in which we can invest for short-term (6 Months) to medium-term (3 – 5 years) with a company. The interest rate will vary from 6% – 9% p.a. The interest amount will be paid monthly, quarterly or annually.
What You Will Learn:
- Introduction to Investment Banking Domain:
- Below are the few important terms of Investment Banking Domain:
- Investment Banking Organizational Structure:
- Trade Life Cycle:
- How to Test Investment Banking Application:
- Test Scenarios:
- Testing the Database of an Investment Banking application:
- Testing the Security of an Investment Banking application:
- Testing the Performance of an Investment Banking application:
- Tips for testing an Investment Banking Application:
- Recommended Reading
Introduction to Investment Banking Domain:
Investment Bank is a financial entity that suggests an individual, company, government sectored firm, etc. on how to raise their financial capital by participating in the market activities.
The main role of the Investment Bank is to act as a mediator between the companies (who are interested in selling their securities / shares) and the individuals (who are willing to purchase the same).
Investment bank operates in two ways – ‘buy side’ and ‘sell side’.
‘Buy side’ includes services such as buying shares for investors whereas ‘Sell side’ includes underwriting the stock and selling the shares to the investors from companies.
‘Buy side’ operation of Investment Bank with an example:
Suppose an investor wants to buy 50 shares of ABCD Company. Then he will consult an Investment bank where the stock broker places an order for the same and delivers the shares to the Investor.
‘Sell side’ operation of Investment Bank with an example:
Suppose a Company PQR plans to issue new shares of stock in IPO then the Investment Bank verifies the shares and sells the same to their Clients. This way PQR Company raises funds by issuing their stock.
Below are the few important terms of Investment Banking Domain:
1) Stock Exchange: An entity that controls the business of buying and selling of securities. Stock Exchange can be regional or national exchanges.
Example: NASDAQ – USA, NSE – India etc.
2) Stock/Share/Equity: Total capital of a company is divided into equal units; each unit is termed as share/equity/stock. Stock also represents a part of ownership of a company.
3) Face value of a Share: The amount or value (used during buying or selling) allotted to a share by the company.
4) Issue Price: The price of a company’s shares at which they are available in the market. When these shares are traded in the market the price may be below or above the issue price.
5) Initial Public Offering (IPO): This is nothing but selling the securities or shares of a company to the public for the first time in the market.
6) Market Capitalization: The financial value of a company is calculated by multiplying the share price with number of shares which is termed as Market Capitalization.
Example: Suppose a Company X has 100 shares. The current market price of each share is $50. Then the market capitalization of the Company X is $5000.
7) Security Market: Security market is a place where buyers and sellers of securities (bonds, debentures, stocks etc.,) do their transactions of buying and selling the securities.
8) SEBI (Security and Exchange Board of India): An authority that makes sure whether the buyers and sellers behave in a proper way in the market. So that they get their desired profits. There are different security and exchange boards/commissions as per the country.
9) Dividend on share: Dividend is a percentage of the value of a share, which a company returns to its share holders from its annual profits.
10) Bid Price: Bid Price is the rate at which the buyer is ready to buy the stock.
11) Ask Price: This is the price at which the seller wants to sell his stock.
12) Futures: A future contract is an agreement between the buyer and the seller in which the stock of future delivery is transacted at a particular price.
For example, if you want to purchase a March future contract of XYZ Company then you have to do that at the current price available in the market. Let’s say that the March futures are trading at $100 per share. By the time the contract expires (last day of the contract in March month) the price of the stock may not be the same. It may be $95 or $110. Based on these price differences investors makes profits in the markets.
13) Options: It is a financial contract between the buyer and seller in which the buyer has the right to buy or sell a security at a particular price on or before a particular date.
Options are of two types: Calls, and Puts.
Call means the right to buy an asset at a price within a period of time.
Put means the right to sell an asset at a price within a period of time.
14) Portfolio: A Portfolio is a combination of various investment assets mixed and matched for gaining profits as per an investor’s goal. Items that are included in the portfolio can be shares, debentures, mutual funds etc.
15) Depository: An entity that holds the securities and funds of depositors in an account. The two depositories in India are National Securities Depository Limited (NSDL) and Central Depository Services Limited (CDSL).
16) Mutual Funds: An entity that collects money from investors and invests the same in various financial instruments like shares, bonds, debentures etc.
17) Net Asset Value (NAV): NAV of the fund is the cumulative market value of the asset. NAV per unit is the net value of the assets divided by the number of units. Buying and selling of shares in the market are done on the basis of NAV related prices.
18) Nifty Index: It is a scientifically developed, 50 stock index, which shows the movement of the Indian markets. It behaves as a barometer for the Indian markets.
19) Watch List: A list of selected securities. It is mainly used to monitor their movement in the market regularly, closely or frequently.
Investment Banking Organizational Structure:
Investment banking comprises of Front Office, Middle Office, and Back Office.
1) Front Office: This plays a major role in generating funds. The main areas of front office are Investment banking, Sales & trading, and Research.
- ‘Investment Banking’ helps customers in raising funds in capital markets and also suggests the companies in raising their capital.
- ‘Sales & Trading’ deals with buying and selling of stock (shares, bonds etc.,)
- ‘Research’ involves reviewing the company reports about their buy/sell ratings, company’s prospects etc. This will help in providing advice to their clients in the right way.
2) Middle Office: This deals with ‘Risk Management’, ‘Corporate Treasury’ and ‘Financial Control’.
- ‘Risk Management’ involves analyzing the market situations and informing the clients of the risks involved in their trades.
- ‘Corporate Treasury’ is responsible for the funds of Investment Banks.
- ‘Financial Control’ tracks the capital flow of the firm and its success.
3) Back Office: This includes ‘Operations’ and ‘Technology’.
- ‘Operations’ checks whether the trades have been executed properly and funds transferred successfully.
- ‘Technology’ supports the software, data, and systems of Investment Banks.
Trade Life Cycle:
The main goal of every trade order is to get executed at a suitable price with a minimum risk spread.
The various stages of a trade order are as follows,
- Decision of the investor to trade
- Placing the trade order
- Execution of the trade
- Clearing of the trades (Trade validation and confirmation)
- Settlement of trades
- Funds / Securities settlement
How to Test Investment Banking Application:
Before moving to the testing part of Investment Banking applications here are the sample screenshots of how an IB application looks like.
#1) From the below screen you can view the terms options (sell and buy of IBM shares), bid price, ask price etc.,
(Note: Click on any image for enlarged view)
#2) From the below screen you can view the positions, quantity and price of a particular symbol.
#3) Below is the sample screenshot of How a Watch List of an IB application looks like.
#4) This screen shows the graphical view of a symbol.
#5) Below screen displays how a position or order is closed.
#6) This shows the profile details of a client.
#7) Below screen displays the view of mobile IB application.
Different Investment Banking applications have different software testing and QA requirements. Below are few general test scenarios or test cases useful for testing such applications.
1) The Investment banking applications have different logins for different users like brokers, dealers, individuals or investors etc. Verify the logins of appropriate users with their login IDs as the permissions for accessing the application for all the users may not be the same.
For example, a broker has the permission to view the trading limits of the individuals based on the amount/funds in the individual’s account. However, this facility may not be available for the individual.
2) The function of the Watch-list can be verified by adding, removing the securities/symbols to it. Ensure that the removed symbols should get deleted from the Watch-list and vice versa.
3) Buy Order – To test this functionality, place a trade buy order for any symbol with some quantity like 10 or 20 etc and submit the same. Then go the orders section and verify the details whether the order has been placed successfully or not.
4) Sell Order – Place a trade sell order as above (buy order) and verify the details.
5) Change Order – Go to the orders section and open any previous order or existing order and make few changes like editing the quantity or symbol etc and verify whether the modifications get updated or not.
6) Cancel Order – Open an existing order and try to cancel it. The order should be canceled successfully.
7) Different types of orders have to be tested.
- Market order – Try to place a trade order for the market price and check whether the trade gets executed for that price at the same point of time.
- Limit order – Try to place an order for a particular price and check whether the trade has been executed when the market price meets the price set by the user.
8) Check and verify whether the proper notifications or warning messages are getting displayed for the corresponding actions.
For example, after placing a trade buy order and submitting it, a message should be displayed that the ‘order has been placed successfully’.
9) Try to update the user information like email, mobile no. etc, save it and log out from the application. Login to the application and verify whether the updated information has been saved or not.
10) If the AUT (application under test) supports various territories or geo-locations, check few functionalities for various locations.
11) Test the calculations part of the application very thoroughly and also, test its localization.
12) Test the connections of the applications whether they work out of the staging environments.
13) The security of the application should also be tested as it contains the personal data of the users.
14) Multi-tasking of the applications should also be tested when other apps are open on the device.
15) Applications quality, look and feel, user friendliness etc are also to be tested as it gains the user’s trust.
1) Try to place a trade order for more than the value of funds available in the account and the order should not get placed and it should pop-up a warning message stating that the funds are insufficient.
2) Test the ‘quantity of shares' feature in the application. Place a trade order for the number of shares greater than the available quantity of shares. Trade should not be placed as the quantity of shares requested is more than the available quantity.
3) Try to place a trade order for a stock for which the expiry date has been reached. The order should not get placed.
Also read => How to Classify Positive and Negative Test Scenarios
Testing the Database of an Investment Banking application:
- Login to the IB application and create a profile for a Client with all required mandatory details and save the details. Now login to the database of the same IB application and verify the details of the client through SQL queries. All the details entered through the front-end application needs to be saved in the database.
- Open an existing record of a Client and modify few details like email, address or phone number and save the data. The updated details should get saved in the database.
- While creating a profile for a Client, enter only a few details and without saving the data close the application or sign out from the application. Now check in the database that the earlier entered details should not get saved.
- Try to create a duplicate record for an already existing client, the record should not get created.
- On behalf of a Client place 2 or 3 trade orders and submit. Now verify the database whether the same trade orders got updated in the database or not.
- Login to a Client’s account and cancel an existing order, now check the same in the database that the particular record should get canceled.
Testing the Security of an Investment Banking application:
- Create a Client’s profile, enter the username or login id and enter the password too. The data in the password field should be encrypted so that the hackers cannot find the password.
- Try to login to the application with invalid credentials. The system should not allow the login.
- While navigating through the pages in the IB application or website the back button functionality of the browser should not work. (Mainly for financial websites this functionality should be blocked.)
- Login to the application and try to perform any transaction and leave the system idle for some time. Then try to proceed with the transaction the system should get logged off. This indicates the session time-out of the application.
- Try to login to the application with for a particular user Id with an invalid password and repeat the same for 3 attempts. Then the particular login id should be blocked. This feature restricts hackers from entering into the system with bulk data.
- Login to the application and perform any transaction. And now verify the cookies of the browser, they should be in an encrypted form to avoid hacking of the data.
Testing the Performance of an Investment Banking application:
- While navigating through the IB web-site check whether the system responds quickly to an action performed or not. This determines the speed of the application.
- Try to login to the IB application with various user Ids simultaneously from various systems (no. of users that the application can handle). The application should handle multiple user logins the way it is intended to.
- Login to IB site with a user Id and place the huge number of trades included with some complex funds transactions. This reveals the ability of the application to handle large volume.
- Login to IB site with various user Ids from various systems parallelly and perform huge transactions from all the used Ids at the same time. This shows how much stress the application can handle.
Tips for testing an Investment Banking Application:
- The tester cannot test the Investment Banking or trading application until he/she gains a grip on the domain.
- An Investment banking application is not just tested for knowledge but should be tested for the logic behind it.
- While testing the functionality related to trades, concentrate on the expiry dates of the stock.
- While placing any trades through an IB application you should be careful and concentrate on the Symbols, as there may be an ‘alphabet’ difference in them. For example, while placing a trade order for Silver, just make sure for which type of Silver you are placing the order. (Silver = 30kg lot, SilverM = 5 kg).
With the above-mentioned terminology, you will now be able to understand the live market analysis to an extent, which in turn helps your testing process and makes it easier.
About author: This is guest post by Laxmi. She is having 7+ years of Software testing experience mainly in BFSI domain. She is currently working as a Sr. software test engineer in one of the top MNCs.
This is all the information on Investment Domain and testing tips with simple testing ideas that I wanted to share. As always, hoping that it helps and waiting to answer any questions you might have.