You are on page 1of 90

How To Test Investment Banking Application (With 34+ Important Test Scenarios)

Last Updated:November 10, 2019


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.
Data Science (44 Blogs)
What Is Data Science? A Beginner's Guide To Data Science
Data Science Tutorial � Learn Data Science from Scratch!
What are the Best Books for Data Science?
Top 15 Hot Artificial Intelligence Technologies
Top 8 Data Science Tools Everyone Should Know
5 Data Science Projects � Data Science Projects For Practice
Top 10 Data Science Applications
Who is a Data Scientist?
SQL For Data Science: One stop Solution for Beginners
Data Science
Topics CoveredGS LAB
From Wikipedia, the free encyclopedia
A billing mediation platform is a system used to convert data of certain datatypes
to other datatypes, usually
for billing purposes. Billing Mediation Platforms are used mostly by telephone
companies, who typically need to
process UDRs (Usage Detail Records). In call scenarios UDRs are most often known as
CDRs (Call Detail
Records), and among broadband carriers they are often referred to as IPDR.
The CDR/UDR datatypes could hold data such as NPX,NPA,Call Duration,peak time
flag,call length and this
data may be represented in binary formats. The billing mediation platform typically
reads this data and converts
into common normalized format.
Billing Systems and all other downstream systems, in turn, converts this data to
component[its own]
understandable format.
Billing mediation platforms get their name from their behavior: they "mediate"
between a variety of other
systems. In the typical telephone company scenario, the upstream systems (those
providing data to the
mediation platform) are network elements, such as telephone switches, and the
downstream systems (those
receiving data from the mediation platform) perform accounting, auditing,
archiving, or bill-generation
functions. The mediation system collects, collates and prepares data for
consumption by the downstream
systems, which often accept data only in a limited set of formats.
Typically a mediation platform is used for the following tasks:
1. Collection and validation of CDRs
2. Filtering out of non billing-relevant CDRs
3. Collating
4. Correlation of different input sources CDRs
5. Aggregation of partial CDRs related to the same call
6. Format change and CDRs normalization
7. Business transformation of data
In a telecom billing scenario, mediation is the first step after receiving a CDR.
The mediated CDR is forwarded
to a rating engine, which calculates the charge associated with the CDRs.In today's
world Rating Engines are
more becoming necessary for the telecom billing system to meet the growing variant
customer needs for
different services.[citation needed]
Despite the name, not all of the data transferred via billing mediation platforms
is actually used for billing
purposes. For instance, the mediation software might generate traffic volume
statistics based on the number and
origin of the records passing through it. Those statistics could then be used for
capacity planning, as part of a
network monitoring procedure, or for any other business intelligence applications.
Sophisticated Billing Mediation software from various providers serves end to end
functionality for Telecom
Operators. Mediation software performs various operation from Collection to
Downstream Distribution to
modules like Retail Billing, Interconnect Settlement, Business intelligence, Fraud
Detection, Revenue
Assurance, Test Call Generation. Following list of activities provides an insight
on Mediation software activities
1. Collection and Archive
2. Decoding/Encoding
3. CDR Normalization (Common Format)
Billing Mediation Platform - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Billing_Mediation_Platform
1 of 4 11/25/2010 11:02 PM
4. Filtering
5. Conversion
6. Validation
7. Record Enrichment (Using Complex Reference Data)
8. Duplicate Record Detection
9. Aggregation or Correlation
10. Buffering
11. Cloning
12. Sorting
13. Downstream Format Mapping
14. Header and Trailer generation
15. Downstream Distribution
16. Error Messaging and Alarms
17. Auditing and Reports
18. Reconciliation
19. Reference Data Configuration
20. Provisioning services for the subscription.
Complementary to Billing Mediation functions, comprehensive mediation platforms
also provide functionality
dedicated to Service Provisioning (the two areas frequently intermix as services
configured and used by the end
customer result in usage data records generation in the network).
Mediating between the systems is not the only job that Mediation Platform can do.
Actually this can be used as
a provisioning agent. The basic provisioning commands can be configured within the
mediation system and
whenever we get a request for the system which does the provisioning, the request
can be converted into a file ,
in which mediation can append the service provisioning commands and send it to HLR
for activating any
request. This of course , load dependent but can come very handy when there is a
crisis in the other system.
At core Mediation involves data transfer between various systems with or without
modification of data starting
Network elements to OSS/BSS systems.Mediation platform for Telecom Practice
supports various systems
Retail Billing
Wholesale Billing - National and International
Network Traffic Management
Data Warehousing
Reconciliation system
Fraud Management
Provisioning Feed to Sub-systems
Telecom operators offer Voice,video,data,fax and internet services to subscribers
and partners on various
product lines.Mediation products are tuned to provide solutions for complex
business challenges.
Some of the suppliers of Billing Mediation solutions are following:
AMDOCS[1]
Aradial[2]
Comarch[3]
Comverse[4]
DigitalRoute[5]
Ericsson[6]
Billing Mediation Platform - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Billing_Mediation_Platform
2 of 4 11/25/2010 11:02 PM
Etisalat -Technologia[7]
HP[8]
Intec Telecom Systems[9]
Openet[10]
Oracle[11]
Redknee[12]
Sicap[13]
SunTec Business Solutions[14]
Ventraq[15]
Dynasoft[16]
^ "AMDOCS" (http://www.amdocs.com/Offerings/CES-Portfolio/Revenue-
Management/Billing-Charging/Pages
/Billing-Charging.aspx) . AMDOCS. http://www.amdocs.com/Offerings/CES-
Portfolio/Revenue-Management
/Billing-Charging/Pages/Billing-Charging.aspx. Retrieved 2010-08-01.
1.
^ "Aradial" (http://www.aradial.com) . Aradial. http://www.aradial.com. 2.
Retrieved 2010-08-22.
^ "Comarch" (http://www.comarch.com/telecommunications) . Comarch.
http://www.comarch.com
/telecommunications. Retrieved 2010-08-01.
3.
^ "Comverse" (http://www.comverse.com/offering_comverse_one) . Comverse.
http://www.comverse.com
/offering_comverse_one. Retrieved 2010-08-01.
4.
5. ^ "DigitalRoute" (http://www.digitalroute.com) . DigitalRoute.
http://www.digitalroute.com. Retrieved 2010-08-01.
^ "Ericsson"
(http://www.ericsson.com/developer/sub/open/technologies/charging_solutions/about
/about_ericsson_multi_mediation) . Ericsson.
http://www.ericsson.com/developer/sub/open/technologies
/charging_solutions/about/about_ericsson_multi_mediation. Retrieved 2010-08-01.
6.
^ "Technologia" (http://www.technologiaworld.com/) . Etisalat Software Solutions.
http://www.technologiaworld.com/. Retrieved 2010-08-01.
7.
^ "HP" (http://h20208.www2.hp.com/cms/solutions/ci-b/rtc-m/index.jsp) . HP.
http://h20208.www2.hp.com
/cms/solutions/ci-b/rtc-m/index.jsp. Retrieved 2010-08-01.
8.
^ "Intec Telecom Systems" (http://www.intecbilling.com/) . Intec Telecom Systems.
http://www.intecbilling.com/.
Retrieved 2010-08-01.
9.
^ "Openet" (http://www.openet.com/offerings/software/convergent-mediation) .
Openet. http://www.openet.com
/offerings/software/convergent-mediation. Retrieved 2010-08-01.
10.
^ "Oracle" (http://www.oracle.com/us/industries/communications/046841.html) .
Oracle. http://www.oracle.com
/us/industries/communications/046841.html. Retrieved 2010-08-01.
11.
^ "Redknee" (http://www.redknee.com/solutions/convergent_billing) . Redknee.
http://www.redknee.com/solutions
/convergent_billing. Retrieved 2010-08-01.
12.
^ "Sicap" (http://www.sicap.com/Charging.51.0.html?&L=0) . Sicap.
http://www.sicap.com
/Charging.51.0.html?&L=0. Retrieved 2010-08-01.
13.
^ "SunTec" (http://www.telecom-billing-solutions.com/) . SunTec Business Solutions.
http://www.telecom-billingsolutions.
com/. Retrieved 2010-08-01.
14.
^ "Ventraq" (http://www.ventraq.com/solutions/dynamic-mediation) . Ventraq.
http://www.ventraq.com/solutions
/dynamic-mediation. Retrieved 2010-08-01.
15.
^ "Dynasoft" (http://www.dynasoft.net/telefactura_telecoms_billing) . Dynasoft.
http://www.dynasoft.net
/telefactura_telecoms_billing. Retrieved 2010-11-24.
16.
Polishuk, Paul (May 2001). Internet telephone monthly newsletter
(http://books.google.com
/books?id=t6Bx7NV-OVoC&pg=PA18&dq=%22Billing+Mediation+Platform%22&client=firefoxa&
cd=1#v=onepage&q=%22Billing%20Mediation%20Platform%22&f=false) . Information
Gatekeepers
Inc. p. page 18. ISBN 1521-3129. http://books.google.com/books?id=t6Bx7NV-
OVoC&pg=PA18&
dq=%22Billing+Mediation+Platform%22&client=firefox-a&cd=1#v=onepage&
Billing Mediation Platform - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Billing_Mediation_Platform
3 of 4 11/25/2010 11:02 PM
q=%22Billing%20Mediation%20Platform%22&f=false.
Retrieved from "http://en.wikipedia.org/wiki/Billing_Mediation_Platform"
Categories: Telephony
This page was last modified on 24 November 2010 at 23:08.
Text is available under the Creative Commons Attribution-ShareAlike License;
additional terms may
apply. See Terms of Use for details.
Wikipedia� is a registered trademark of the Wikimedia Foundation, Inc., a non-
profit organization.
Billing Mediation Platform - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Billing_Mediation_Platform
4 of 4 11/25/2010 11:02 PM
Interview Questions

Technical round1-
Difference between hybrid and native mobile app
API URLs used in postman
Get post and other methods
Explain abt yourself
Why did you resigned previous company
Achievement while testing the bug
Java pgm on reverse string
Defect life cycle
Difference between retesting and regression testing
about Jira
Difference in testing on multiple web browsers
Basic Linux que
Anything about networking
About postman
Depth in manual API testing
Details about project
How web application is different from app

How To Test Investment Banking Application (With 34+ Important Test Scenarios)
Last Updated:November 10, 2019
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.

testing investment banking software

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: [show]

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 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)

Testing Investment Banking Application 1

#2) From the below screen you can view the positions, quantity and price of a
particular symbol.

Testing Investment Banking Application 2

#3) Below is the sample screenshot of How a Watch List of an IB application looks
like.

Testing Investment Banking Application 3

#4) This screen shows the graphical view of a symbol.

Testing Investment Banking Application 4

#5) Below screen displays how a position or order is closed.

Testing Investment Banking Application 5

#6) This shows the profile details of a client.

Testing Investment Banking Application 6

#7) Below screen displays the view of mobile IB application.

Testing Investment Banking Application 7

[screenshot source1 and source2]

Test Scenarios:
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.

Positive Scenarios:

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.

Negative Scenarios:

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:
banking software security testing
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).
Conclusion:
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.

Recommended Reading
Difference between Desktop, Client Server Testing and Web Testing
Web Application Security Testing Guide
Application Testing � Into the Basics of Software Testing!
Installing your Application on Device and Start Testing from Eclipse
Testing Healthcare Applications - Tips and Important Test Scenarios (Part 2)
Destructive Testing and Non Destructive Testing Tutorial
Performance Testing vs Load Testing vs Stress Testing (Difference)
What is Monkey Testing in Software Testing?
CategoriesTesting Tips and Resources
Post navigation
4 Important Things I Learned in My Journey as a QA Test Manager
How to Integrate JIRA with qTest: A Step by Step Guide
28 thoughts on �How to Test Investment Banking Application (with 34+ Important Test
Scenarios)�
KiranS
| Reply
very good scenarios. do you have material on bfsi domain also?

pradeep
| Reply
Please put an article on �How to Test Trade Finance Application�..!
Thanks.

bharathi
| Reply
Appreciate the scenarios covered. It is very helpful. Similar logic can be used for
other domain application. Thanks for sharing.

Darshan
| Reply
Great info. most of the important scenarios and test types covered Thanks.
Geetha
| Reply
Useful article. shall we enter into live market with this knowledge?

Prashant
| Reply
Very useful article.Thanks a lot. :)

Laxmi STH Author


| Reply
Thank you all..

Laxmi STH Author


| Reply
Presently I don�t have any specific document on BFSI and on Trade finance
application. Will try to cover the same in near future.

@Geeta � Only the knowledge you gained from this article is not sufficient for
trading in Live market. Additionally you need to follow the daily news on trade
market.

AlexPham
| Reply
that�s nice article. Please give more examples about trading application.

Thanks a lot!

vidhya
| Reply
nice article

Mohammed Musthaq Shaik


| Reply
Very well explained Laxmi I was reading this stuff for first time in life and your
post made good sense. Thanks

Deepika Aviti
| Reply
Hi Laxmi,
Thanks alot for the article.
This is very much usefull for me. I have been searching for this kind of materia
since long.

Laxmi STH Author


| Reply
Thank you all for your appreciation. Thanks a lot

divakar
| Reply
Very useful info, Thanks� can u send(divakar215.k@gmail.com) me resume format of
tester in Capital Market Domain??

roopesh
| Reply
thank you for this .but i want what exactly i am going to test likewise all trade
is valid or not and if we have 20k trade for the particular day then one 10k
executed then remaining 10k executes.so tell me what exactly i am test for this.

Nilesh
| Reply
Very useful can we crack interviwes wtith this much information

Santosujit Mohanty
| Reply
I have a interview from an MNC. And this article helped me a lot. Hope I get the
job.

Mehrangez V Melikova
| Reply
did u get the job >?? how did it go

Ashtesh Divakar
| Reply
Hi Laxmi,

Thank you for such an amazing article. Please answer my below query.
I�m currently working in Telecom Domain and willing to switch to Banking and
finance domain. Can you please help me in gaining the Domain knowledge which is
currently required in today�s Industry or this article is sufficient for a starter
like me.

Ankita Nadawani
| Reply
Sort & Sweet Article !

Sree
| Reply
Can you explain the mortgages in banking domain

shivakumar karjol
| Reply
This is very useful for me.
Thanks a lot�

kusum
| Reply
As you said there will be different applications used for different clients. Do you
have any article or material where we find different IB applications and their
functional flows testing and the outputs?
Would be beneficial so that we can improve our skills in our operations.
Thank you

VINCENT
| Reply
This is a serious and deeper induction inner IB application Testing.Thank you a lot
for your enlightments as Expert LAXMI.Thatis a �WEALTH� deposit!

Sushil
| Reply
Very nice and useful article by Laxmi on Investment Banking. I would like to
request softwaretestinghelp.com team to please publish similar article on Telecom
Domain (BSS), Which will guide exact work carried out by tester on telecom
projects. Thank you.

siddu
| Reply
very much helpful.can you please share some test case documents to understand more
in depth to face interviews.
Anita Sahu
| Reply
Very useful info, Thanks� can u plz send(anitasahu91@gmail.com) me resume format of
tester in Capital Market Domain?? It would be a great help.

Pramod Shejul
| Reply
It�s a very great and special information provided by you, thanks a lot�

Leave a Comment
Comment

Name
Name *
Email
Email *
About SoftwareTestingHelp
Helping our community since 2006! Most popular portal for Software professionals
with 100 million+ visits! You will absolutely love our tutorial on Software
Testing, Development, Software Reviews and much more!
Join Over 200,000+ Testers

Get premium ebooks and testing tips.

Enter your email here...


SUBSCRIBE NOW!
Join Over 300,000+ Followers!
Top FREE Training Tutorials
Load Testing Buyer�s Guide
Appium Testing Tutorial
Free QA Training
Selenium Tutorials
QTP/UFT Tutorials
Quality Center QC Tutorials
LoadRunner Tutorials
JMeter Tutorials
JIRA Tutorials
VBScript Tutorials
Best Test Management Tools
Unix Tutorials
DevOps Tutorials
JAVA Tutorials
Python Tutorials
Free C++ Tutorials
101+ Interview Questions
Join Our Team!
Software Testing freelancing work

Technical round2:
Test scenarios on software configuration
Quiz 25 horses,5 can run at each race,find min race count, no stopwatch
Difference between web and mobile application

Business Analytics with R (30 Blogs)


Data Science (39 Blogs)
Mastering Python (67 Blogs)
Decision Tree Modeling Using R (1 Blogs)
SEE MORE
SAP SD (Sales & Distribution) Training Tutorial
Inform�tica
Ir a la navegaci�nIr a la b�squeda
Commons-emblem-question book yellow.svg
Este art�culo tiene referencias, pero necesita m�s para complementar su
verificabilidad.
Puedes colaborar agregando referencias a fuentes fiables como se indica aqu�. El
material sin fuentes fiables podr�a ser cuestionado y eliminado.
Este aviso fue puesto el 4 de septiembre de 2015.
La inform�tica, tambi�n llamada computaci�n,1? es una ciencia que administra
m�todos, t�cnicas y procesos con el fin de almacenar, procesar y transmitir
informaci�n y datos en formato digital.

De esta manera, la inform�tica se refiere al procesamiento autom�tico de


informaci�n mediante dispositivos electr�nicos y sistemas computacionales. Los
sistemas inform�ticos deben contar con la capacidad de cumplir tres tareas b�sicas:
entrada (captaci�n de la informaci�n), procesamiento y salida (transmisi�n de los
resultados). El conjunto de estas tres tareas se conoce como algoritmo.

No existe una definici�n consensuada sobre el t�rmino. Sin embargo, la Asociaci�n


de Docentes de Inform�tica y Computaci�n de la Rep�blica Argentina han tomado una
posici�n, defini�ndola de la siguiente manera:

"La Inform�tica es la disciplina o campo de estudio que abarca el conjunto de


conocimientos, m�todos y t�cnicas referentes al tratamiento autom�tico de la
informaci�n, junto con sus teor�as y aplicaciones pr�cticas, con el fin de
almacenar, procesar y transmitir datos e informaci�n en formato digital utilizando
sistemas computacionales. Los datos son la materia prima para que, mediante su
proceso, se obtenga como resultado informaci�n. Para ello, la inform�tica crea y/o
emplea sistemas de procesamiento de datos, que incluyen medios f�sicos (hardware)
en interacci�n con medios l�gicos (software) y las personas que los programan y/o
los usan (humanware).2?"

Es por lo que se hace distinci�n entre este t�rmino y las ciencias de la


computaci�n, puesto que el segundo engloba la parte m�s te�rica mientras que
inform�tica se refiere a la aplicabilidad de esta anterior en datos usando
dispositivos electr�nicos. De hecho se definen cinco subdisciplinas del campo de la
inform�tica: ciencias de la computaci�n, ingenier�a inform�tica, sistemas de
informaci�n, tecnolog�a de la informaci�n e ingenier�a de software.3?

La inform�tica, que se ha desarrollado r�pidamente a partir de la segunda mitad del


siglo XX con la aparici�n de tecnolog�as como el circuito integrado, el Internet y
el tel�fono m�vil,4? es la rama de la tecnolog�a que estudia el tratamiento
autom�tico de la informaci�n.5?6?

En 1957, Karl Steinbuch a�adi� la palabra alemana Informatik en la publicaci�n de


un documento denominado Informatik: Automatische Informationsverarbeitung
(Inform�tica: procesamiento autom�tico de informaci�n).7? El sovi�tico Alexander
Ivanovich Mikhailov fue el primero en utilizar Informatik con el significado de
�estudio, organizaci�n, y diseminaci�n de la informaci�n cient�fica�, que sigue
siendo su significado en dicha lengua.7? En ingl�s, la palabra informatics fue
acu�ada independiente y casi simult�neamente por Walter F. Bauer, en 1962, cuando
Bauer cofund� la empresa Informatics General, Inc.7?

�ndice
1 Or�genes
2 Historia de la Inform�tica
3 Sistemas de tratamiento de la informaci�n
4 Virus inform�ticos
5 V�ase tambi�n
6 Referencias
7 Enlaces externos
Or�genes
Art�culo principal: Anexo:Historia de la computaci�n
La disciplina de la inform�tica es anterior a la creaci�n de las computadoras. Ya
en la antig�edad se conoc�an m�todos para realizar c�lculos matem�ticos, por
ejemplo el algoritmo de Euclides. En el siglo XVII comenzaron a inventarse m�quinas
calculadoras. En el siglo XIX se desarrollaron las primeras m�quinas programables,
es decir, que el usuario podr�a modificar la secuencia de acciones a realizar.

Carcasa del procesador LGA775 de Intel, con la tarjeta madre, el ventilador del
procesador, la alimentaci�n el�ctrica, y la memoria.
En los inicios del procesamiento autom�tico de la informaci�n, con la inform�tica
solo se facilitaban los trabajos repetitivos y mon�tonos del �rea administrativa.
La automatizaci�n de esos procesos trajo como consecuencia directa una disminuci�n
de los costes y un incremento en la productividad. En la inform�tica convergen los
fundamentos de las ciencias de la computaci�n, la programaci�n y tambi�n las
metodolog�as para el desarrollo de software, la arquitectura de las computadoras,
las redes de computadores, la inteligencia artificial y ciertas cuestiones
relacionadas con la electr�nica. Se puede entender por inform�tica a la uni�n
sin�rgica de todo este conjunto de disciplinas. Esta disciplina se aplica a
numerosas y variadas �reas del conocimiento o la actividad humana, como por
ejemplo: gesti�n de negocios, almacenamiento y consulta de informaci�n,
monitorizaci�n y control de procesos, industria, rob�tica, comunicaciones, control
de transportes, investigaci�n, desarrollo de juegos, dise�o computarizado,
aplicaciones/herramientas multimedia, medicina, biolog�a, f�sica, qu�mica,
meteorolog�a, ingenier�a, arte, etc. Puede tanto facilitar la toma de decisiones a
nivel gerencial (en una empresa) como permitir el control de procesos cr�ticos.
Actualmente, es dif�cil concebir un �rea que no use, de alguna forma, el apoyo de
la inform�tica. �sta puede cubrir un enorme abanico de funciones, que van desde las
m�s simples cuestiones dom�sticas hasta los c�lculos cient�ficos m�s complejos.
Entre las funciones principales de la inform�tica se enumeran las siguientes:

Creaci�n de nuevas especificaciones de trabajo.


Desarrollo e implementaci�n de sistemas inform�ticos.
Sistematizaci�n de procesos.
Optimizaci�n de los m�todos y sistemas inform�ticos existentes.
Facilitar la automatizaci�n de datos y formatos.
Historia de la Inform�tica
1946 - Primer ordenador - EINAC

El ordenador EINAC marca el inicio de la primera generaci�n de ordenadores, de gran


tama�o y que consum�an mucha energ�a. hac�an sencillas a gran velocidad (en el caso
de EINAC, 5.000 por segundo) .El ordenador constaba de unos 18.000 tubos de vac�o

1947 - Se inventa el transitor

Aparece el transitor como componente electr�nico sustituyendo al tubo de vac�o en


la fabricaci�n de ordenadores. Los ordenadores se hacen m�s peque�os y consumen
menos.

1980 - Televisi�n por cable

Se desarrolla el primer sistema de televisi�n comercial por cable en Estados


Unidos. Robert Tarlton fue el precursor de este servicio de televisi�n difundiendo
se�ales desde Filadelfia, Pensilvania, a la localidad de Landsford a cambio de una
cuota.

1984 - Aparece la fibra �ptica

Aparece el primer art�culo sobre la transici�n de luz por fibra �ptica. Fueron los
cient�ficos Abraham Van Heel de Holanda y Harold H. Hopkins de Inglaterra quienes
presentaron los primeros de transmisi�n de im�genes por fibra

1988 - Primer circuito integrado

La aparici�n del primer circuito integrado o chip, que permite incluir miles o
millones de valiosos componentes electr�nicos en un espacio muy peque�o muy
peque�o, facilit� la reducci�n del tama�o y del consumo de los ordenadores. Para su
fabricaci�n se emplea mayoritariamente el semiconductor silicio (si).

1963 - Primera comunicaci�n por sat�lite

Estados Unidos pone en �rbita el sat�lite Syncom 2, que estableci� las primeras
comunicaciones v�a sat�lite.La primera llamada telef�nica v�a sat�lite se produjo
entre los gobiernos franc�s y americano.

1969 - Se crea Arpanet

Entra en funcionamiento Arpanet como proyecto de uso militar conectando en sus


inicios ordenadores ubicados en importantes de Estados Unidos. Con posterioridad se
fueron uniendo otras universidades americanas a esta red.

1971 - Cuarta generaci�n de ordenadores. Terminales

Con los microprocesadores desarrollados por empresas como intel o texas instruments
aparece la cuarta generaci�n de ordenadores. En torno a este a�o empiezan a
utilizarse los primeros terminales tontos, ordenadores sencillos conectados a un
gran ordenador central.

1974 - Protocolo TCP

Se hace p�blico el protocolo TCP (transmission control protocol), que es clave del
funcionamiento de internet.

1975 - Comunicaciones TCP/IP - fundaci�n de Microsoft

Se lleva a cabo las primeras comunicaciones mediante TCP/IP entre dispositivos a


ambos lados del atl�ntico. Paul y Bill Gates funda la empresa de desarrollo de
software microsoft.

1976 - Aparece el PC

Se comercializa el primer ordenador personal de Apple, el Apple I En Espa�a


telef�nica ofrece el primer sistema de telefon�a m�vil limitado al uso en veh�culos
en Madrid y Barcelona.

1981 - El IBM PC

IBM lanza al mercado su primer ordenador personal conocido como IBM PC que marca el
inicio de una era en la inform�tica.

1983 - Arpanet y los protocolos TCP

Arpanet adopta el uso de los protocolos TCP/IP y se convierte en parte de la


primera Internet.

1988 - El sistema ADSL

Se patenta en Estados Unidos el sistema ADSL que facilita la expansi�n de internet


aprovechando las l�neas telef�nicas ya existentes.

1989 - Hispanat

En Espa�a se inicia el programa hispasat que permite a Espa�a contar con sat�lites
propios de telecomunicaciones.

1990 - La WWW

Se produce la primera conexi�n plena desde Espa�a a la red Internet. Tim Berners-
Lee crea la WWW (world wide web), que hace uso del hipertexto.

1991 - Primera Red Celular M�vil

Puesta en funcionamiento en Finlandia de la primera red de telefon�a m�vil.

1992 - Primer artificial espa�ol

Se pone en �rbita el primer sat�lite espa�ol de telecomunicaciones el hispasat 1A.


Tambi�n se pone en marcha en Espa�a el primer proveedor comercial de Internet.

1995 - El primer DVD

El DVD es el resultado del trabajo de JVC, Thomson, Hitachi, Matsushita, Philips,


Sony, Pioneer, Time Warner y Toshiba. Al principio se presentaron dos est�ndares,
por un lado Sony y Philips presentaron el MMCD, Toshiba y Time Warner presentaron
otro formato. Un grupo de compa��as de ordenadores, liderado por IBM, insisti� en
que los diferentes contendientes se pusieran de acuerdo en un est�ndar �nico

1995 - Se crean Movistar y Airtel

Empiezan a operar en Espa�a dos operadores de telefon�a m�vil Movistar y Airtel


(actual vodafone)

1998 - Google inicia sus actividades

Larry page y Serguei Brini crearon en agosto la empresa Google que en poco tiempo
se hace con el liderazgo en el mundo de los buscadores de internet gracias a su
simplicidad y eficacia

1999 - Se crea WIFI

Se crea la marca WIFI por parte de un grupo de empresas que asumen el est�ndar IEEE
802.11 b para comunicaciones inal�mbricas.

2002 - Comercializaci�n de telefon�a m�vil.

En Corea se inicia la comercializaci�n de servicios de telefon�a m�vil 3G.

2004 - Aparece Facebook

Nace la red social Facebook creada por Mark Zuckerberg, un estudiante de la


universidad de harvard.
2005 - Redes de fibra �ptica FTTH

Se establece en Espa�a las primeras red de fibra �pticas FTTH (fiber to the home,
fibra hasta el hogar).

2007 - Aparece el IPhone

Se comercializa el primer tel�fono IPhone de Apple, que es presentado mundialmente


por Steve Job.

2008 - Aparece Whatsapps

Los nuevos est�ndares de comunicaciones m�viles reciben el nombre de 4G. Steve Job
presenta el Ipad de Apple. Aparece la aplicaci�n Whatsapps.

Sistemas de tratamiento de la informaci�n


Los sistemas computacionales, generalmente implementados como dispositivos
electr�nicos, permiten el procesamiento autom�tico de la informaci�n. Conforme a
ello, los sistemas inform�ticos deben realizar las siguientes tres tareas b�sicas:

Entrada: captaci�n de la informaci�n. Normalmente son datos y �rdenes ingresados


por los usuarios a trav�s de cualquier dispositivo de entrada conectado a la
computadora.
Proceso: tratamiento de la informaci�n. Se realiza a trav�s de programas y
aplicaciones dise�adas por programadores que indican de forma secuencial c�mo
resolver un requerimiento.
Salida: transmisi�n de resultados. A trav�s de los dispositivos de salida los
usuarios pueden visualizar los resultados que surgen del procesamiento de los
datos.
Sistema operativo es un conjunto de programas que permite interactuar al usuario
con la computadora.
Sistemas de mando y control, son sistemas basados en la mec�nica y motricidad de
dispositivos que permiten al usuario localizar, dentro de la log�stica, los
elementos que se demandan. Est�n basados en la electricidad, o sea, no en el
control del flujo del electr�n, sino en la continuidad o discontinuidad de una
corriente el�ctrica, si es alterna o continua o si es inducida, contra inducida, en
fase o desfase (ver perif�rico de entrada).
Sistemas de archivo, son sistemas que permiten el almacenamiento a largo plazo de
informaci�n que no se demandar� por un largo periodo de tiempo. Estos sistemas usan
los conceptos de biblioteca para localizar la informaci�n demandada.
C�digo ASCII es un m�todo para la correspondencia de cadenas de bits permitiendo de
esta forma la comunicaci�n entre dispositivos digitales as� como su proceso y
almacenamiento, en la actualidad todos los sistemas inform�ticos utilizan el c�digo
ASCII para representar textos, gr�ficos, audio e infinidad de informaci�n para el
control y manipulaci�n de dispositivos digitales.
En un editor de texto presionando las teclas ALT + el n�mero del c�digo ASCII,
aparecer� el car�cter correspondiente, solamente funciona en un teclado que tenga
las teclas num�ricas.

Virus inform�ticos
V�ase tambi�n: Virus inform�tico
Los virus inform�ticos son software o fragmentos de c�digo8? que tiene por objetivo
de alterar el funcionamiento normal de cualquier tipo de dispositivo inform�tico o
las funcionalidades de un programa, sin el permiso o el conocimiento del usuario,
principalmente para lograr fines maliciosos. A modo de ejemplo, algunas acciones
son :

Unirse a un programa y modificar el comportamiento de este.


Mostrar mensajes o im�genes, generalmente molestas.
Ralentizar o bloquear la computadora, reducir el espacio en el disco u otras
acciones que inutilizan el ordenador.
Destruir o encriptar la informaci�n almacenada.
Robo de datos: contrase�as, usuarios, y otros tipos de datos personales o
corporativos.
Hay muchas formas en que un computador puede infectarse con un virus, algunas de
ellas son:

Mensajes dejados en redes sociales.


Archivos adjuntos en los mensajes de correo electr�nico.
Sitios web sospechosos.
Insertar USBs, DVDs o CDs con virus.
Descarga de aplicaciones o programas de internet.
Anuncios publicitarios falsos.9?
Los m�todos de prevenci�n y recuperaci�n de datos tras sufrir una "infecci�n" por
un virus informatica son diversos, pero actualmente existen programas antivirus que
detectan una gran cantidad de ellos. Aun as� siempre se recomienda :

Hacer copias de seguridad de datos valiosos.


Usar siempre programas originales y rechazar copias de origen dudoso.
V�ase tambi�n
Historia de las ciencias de la computaci�n
Anexo:Historia de la computaci�n
Computadora
Ciencias de la computaci�n
Teor�a de la computaci�n
Generaciones de computadoras
Primera generaci�n de computadoras
Historia de las computadoras personales
Software
Mujeres en inform�tica
Tecnolog�a
Ver el portal sobre Inform�tica Portal:Inform�tica. Contenido relacionado con
Inform�tica.
Referencias
Real Academia Espa�ola y Asociaci�n de Academias de la Lengua Espa�ola (2014).
�Computaci�n�. Diccionario de la lengua espa�ola (23.� edici�n). Madrid: Espasa.
ISBN 978-84-670-4189-7. Consultado el 13 de agosto de 2014.
�ADICRA: �De qu� hablamos cuando hablamos de Inform�tica?�.
�Curricula Recommendations�. Association for Computing Machinery. 2005. Consultado
el 30 de noviembre de 2012.
"Inform�tica, informaci�n, y comunicaci�n", en 'Documentaci�n Social: Revista de
Estudios Sociales y de Tecnolog�a Aplicada', n� 108, julio-septiembre 1999
(consultar texto en l�nea pp. 76-82)
Diego Dikygs, Tratamiento (Autom�tico) de la Informaci�n, sitio digital 'Nociones
de Inform�tica', 12 de abril de 2011.
Historia de la Computaci�n, sitio digital 'Monograf�as'.
Patricio Villalva, �Qu� es la Inform�tica?, sitio digital 'Inform�tica avanzada'.
��Qu� es un virus? | Herramienta para analizar y eliminar virus | Avast�.
www.avast.com. Consultado el 5 de abril de 2019.
�Virus inform�ticos y antivirus: �Que es un virus inform�tico?�. GCFGlobal.org.
Consultado el 5 de abril de 2019.

SAP Sales and Distribution (SD) is an important module of SAP ERP consisting of
business processes required in selling, shipping, billing of a product. The module
is tightly integrated with other SAP MM & SAP PP. Key sub-modules of SAP SD are
Customer and Vendor Master Data, Sales, Delivery, Billing, Pricing and Credit
Management.
What should I know?
The course is designed for beginners with little or no SD experience. But knowledge
of SAP basics is a plus.
Training Syllabus
Customer Master and Material Master data
Customer is the key Master Data in SAP SD. In this section, we will learn about
Account Group ( required to Create Customer Master), Partner Function (Businesses
you work with), and Material Master ( goods sold to customer)
What is SAP?
SAP stands for Systems, Applications, and Products in Data Processing (Anwendungen
und Produkte in der Datenverarbeitung in German). SAP was founded in 1972 in
Walldorf, Germany and now has offices around the world.

Originally known for leadership in enterprise resource planning (ERP) software, SAP
has evolved to become a market leader in end-to-end enterprise application
software, database, analytics, intelligent technologies, and experience management.
A top cloud company with 200 million users worldwide, SAP helps businesses of all
sizes and in all industries to operate profitably, adapt continuously, and achieve
their purpose.

Company Information
ETL Test Scenarios are used to validate an ETL Testing Process. The following table
explains some of the most common scenarios and test-cases that are used by ETL
testers.

Test Scenarios Test-Cases


Structure Validation

It involves validating the source and the target table structure as per the mapping
document.

Data type should be validated in the source and the target systems.

The length of data types in the source and the target system should be same.

Data field types and their format should be same in the source and the target
system.

Validating the column names in the target system.

Validating Mapping document

It involves validating the mapping document to ensure all the information has been
provided. The mapping document should have change log, maintain data types, length,
transformation rules, etc.

Validate Constraints

It involves validating the constraints and ensuring that they are applied on the
expected tables.

Data Consistency check

It involves checking the misuse of integrity constraints like Foreign Key.

The length and data type of an attribute may vary in different tables, though their
definition remains same at the semantic layer.

Data Completeness Validation

It involves checking if all the data is loaded to the target system from the source
system.

Counting the number of records in the source and the target systems.

Boundary value analysis.

Validating the unique values of primary keys.

Data Correctness Validation

It involves validating the values of data in the target system.

Misspelled or inaccurate data is found in table.

Null, Not Unique data is stored when you disable integrity constraint at the time
of import.

Data Transform validation

It involves creating a spreadsheet of scenarios for input values and expected


results and then validating with end-users.

Validating parent-child relationship in the data by creating scenarios.

Using data profiling to compare the range of values in each field.

Validating if the data types in the warehouse are same as mentioned in the data
model.

Data Quality Validation

It involves performing number check, date check, precision check, data check, Null
check, etc.

Example - Date format should be same for all the values.

Null Validation

It involves checking the Null values where Not Null is mentioned for that field.

Duplicate Validation

It involves validating duplicate values in the target system when data is coming
from multiple columns from the source system.

Validating primary keys and other columns if there is any duplicate values as per
the business requirement.

Date Validation check

Validating date field for various actions performed in ETL process.

Common test-cases to perform Date validation -


From_Date should not greater than To_Date

Format of date values should be proper.

Date values should not have any junk values or null values

Full Data Validation Minus Query

It involves validating full data set in the source and the target tables by using
minus query.

You need to perform both source minus target and target minus source.

If the minus query returns a value, that should be considered as mismatching rows.

You need to match the rows in source and target using the Intersect statement.

The count returned by Intersect should match with the individual counts of source
and target tables.

If the minus query returns no rows and the count intersect is less than the source
count or the target table count, then the table holds duplicate rows.

Other Test Scenarios

Other Test scenarios can be to verify that the extraction process did not extract
duplicate data from the source system.

The testing team will maintain a list of SQL statements that are run to validate
that no duplicate data have been extracted from the source systems.

Data Cleaning

Unwanted data should be removed before loading the data to the staging area.

Previous Page Print PageNext Page


Advertisements

SAP innovations help 437,000 customers worldwide work together more efficiently and
use business insight more effectively. Explore our leadership, history,
sustainability, diversity, FAQs, and more.

Learn about SAP SE


Investor Relations

Investor Relations
The SAP Investor Relations site provides information and services for
institutional, socially responsible, and individual investors. Learn about our
financial performance, browse quarterly and annual reports, and track our financial
news.

Visit the SAP Investor Relations area

Integrated Report
SAP helps the world run better and improves peoples� lives through our integrated
strategy. Our annual Integrated Report details our performance and what is material
for our sustainable business success.

View the SAP Integrated Report


Careers

At SAP, more than 98,000 of us flourish in an environment that encourages open,


free expression of ideas. You'll work alongside creative thinkers who turn big
ideas into reality for our customers. And with innovative job training, mentors to
help you grow, and flexibility to balance work and personal life, you get more out
of your career, too.

Find your career at SAP


SAP News Center and Pressroom

The SAP News Center is the official site for the latest SAP news and information.
More than just press releases, you'll find in-depth feature articles on business
and technology trends, blogs from SAP experts and thought leaders, and more.

Visit the SAP News Center and Pressroom


Customer Involvement

At SAP, we listen closely to our customers. Their ideas and feedback help us
improve our current offerings and shape future software and services. Are you an
SAP customer? Have your say in one of our customer involvement programs.

Learn more about Customer Involvement


Events

Get ready to connect with industry experts and hone your skills. Visit our events
finder page to view upcoming webinars and conferences � and get details about the
ones you missed.

Explore SAP Events


Customer Stories

See how customers are using SAP products, services, and technology to operate
profitably, adapt continuously, and make a difference.

Explore Customer Stories


SAP Trust Center
Security, privacy, and compliance in the cloud � we keep your data safe

Your business is built on trust, and you expect the same from your software
provider. As a leading software provider and a cloud company, we�re dedicated to
building � and keeping � our customers� trust.

Learn more

Tutorial What is SAP SD? Introduction to SAP Sales & Distribution Module
Tutorial Create Customer Master
Tutorial Create Customer Number Range for Sales and Assign to Customer Account
Groups
Tutorial How to Create Partner Function
Tutorial How to Create Material Stock
Tutorial How to Create Customer Material Info Record
Tutorial How to get Overview of Material Stock
Tutorial Create Material Master for Sales View
Sales
Tutorial Overview of Sales Activities
Tutorial How to Create Inquiry
Tutorial How to Create Quotation
Tutorial How To Create Sales Order
Tutorial How To Create Debit Memo
Tutorial How To Create Credit Memo
Tutorial How To Create Sales Document Type
Tutorial All about Sales Document (header / item / schedule )
Tutorial Text determination for sales document header / item
Tutorial What is Schedule Line Category and how to define it
Tutorial How to create Item Proposal
Tutorial All About Material Exclusion & Inclusion (Listing)
Delivery
This section deals with actual packing, shipping and delivery of goods to the
customer.

Tutorial How to Determine Shipping Point


Tutorial How to create Picking ,Packing and PGI
Tutorial Returns , Free of Charge Delivery , Sub-sequent Delivery
Tutorial All About Consignment Process
Tutorial Output proposal using the condition technique
Tutorial Substituting Reason
Billing
This section deals with invoice and billing

Tutorial How to Create Bill of Materials


Tutorial How to Correct Invoice
Tutorial How to Define Item Category
Tutorial Steps To Create Blocking Reason
Pricing
Tutorial Determine Pricing by item category
Tutorial All About Tax Determination Procedure
Tutorial All about Text Type
Tutorial SAP Item Category Determination: VOV7, VOV4
Tutorial All About Condition Exclusion Group
Tutorial Accounting Key
Credit Management
This training material deals with credit management in SAP SD

Tutorial Guide to Credit Management in SAP


Tutorial SAP SD (Sales & Distribution) PDF

What Is Data Science? A Beginner�s Guide To Data Science


Last updated on Jun 20,2019146.5K Views
Hemant Sharma
1 / 9 Blog from Data Science Introduction
MI-new-launch
myMock Interview Service for Real Tech Jobs
Mock interview in latest tech domains i.e JAVA, AI, DEVOPS,etc
Get interviewed by leading tech experts
Real time assessment report and video recording
As the world entered the era of big data, the need for its storage also grew. It
was the main challenge and concern for the enterprise industries until 2010. The
main focus was on building framework and solutions to store data. Now when Hadoop
and other frameworks have successfully solved the problem of storage, the focus has
shifted to the processing of this data. Data Science is the secret sauce here. All
the ideas which you see in Hollywood sci-fi movies can actually turn into reality
by Data Science. Data Science is the future of Artificial Intelligence. Therefore,
it is very important to understand what is Data Science and how can it add value to
your business.

Edureka 2019 Tech Career Guide is out! Hottest job roles, precise learning paths,
industry outlook & more in the guide. Download now.
In this blog, I will be covering the following topics.

The need for Data Science.


What is Data Science?
How is it different from Business Intelligence (BI) and Data Analysis?
The lifecycle of Data Science with the help of a use case.
By the end of this blog, you will be able to understand what is Data Science and
its role in extracting meaningful insights from the complex and large sets of data
all around us. To get in-depth knowledge on Data Science, you can enroll for live
Data Science online course by Edureka with 24/7 support and lifetime access.

Let�s Understand Why We Need Data Science


Traditionally, the data that we had was mostly structured and small in size, which
could be analyzed by using the simple BI tools. Unlike data in the traditional
systems which was mostly structured, today most of the data is unstructured or
semi-structured. Let�s have a look at the data trends in the image given below
which shows that by 2020, more than 80 % of the data will be unstructured.
Flow of unstructured data - Edureka
This data is generated from different sources like financial logs, text files,
multimedia forms, sensors, and instruments. Simple BI tools are not capable of
processing this huge volume and variety of data. This is why we need more complex
and advanced analytical tools and algorithms for processing, analyzing and drawing
meaningful insights out of it.
This is not the only reason why Data Science has become so popular. Let�s dig
deeper and see how Data Science is being used in various domains.

How about if you could understand the precise requirements of your customers from
the existing data like the customer�s past browsing history, purchase history, age
and income. No doubt you had all this data earlier too, but now with the vast
amount and variety of data, you can train models more effectively and recommend the
product to your customers with more precision. Wouldn�t it be amazing as it will
bring more business to your organization?
Let�s take a different scenario to understand the role of Data Science in decision
making. How about if your car had the intelligence to drive you home? The self-
driving cars collect live data from sensors, including radars, cameras and lasers
to create a map of its surroundings. Based on this data, it takes decisions like
when to speed up, when to speed down, when to overtake, where to take a turn �
making use of advanced machine learning algorithms.
Let�s see how Data Science can be used in predictive analytics. Let�s take weather
forecasting as an example. Data from ships, aircrafts, radars, satellites can be
collected and analyzed to build models. These models will not only forecast the
weather but also help in predicting the occurrence of any natural calamities. It
will help you to take appropriate measures beforehand and save many precious lives.
Let�s have a look at the below infographic to see all the domains where Data
Science is creating its impression.

Data Science Use Cases - Edureka

Now that you have understood the need of Data Science, let�s understand what is
Data Science.

What is Data Science?


Use of the term Data Science is increasingly common, but what does it exactly mean?
What skills do you need to become Data Scientist? What is the difference between BI
and Data Science? How are decisions and predictions made in Data Science? These are
some of the questions that will be answered further.

First, let�s see what is Data Science. Data Science is a blend of various tools,
algorithms, and machine learning principles with the goal to discover hidden
patterns from the raw data. How is this different from what statisticians have been
doing for years?

The answer lies in the difference between explaining and predicting.

Data Analyst v/s Data Science - Edureka

As you can see from the above image, a Data Analyst usually explains what is going
on by processing history of the data. On the other hand, Data Scientist not only
does the exploratory analysis to discover insights from it, but also uses various
advanced machine learning algorithms to identify the occurrence of a particular
event in the future. A Data Scientist will look at the data from many angles,
sometimes angles not known earlier.

So, Data Science is primarily used to make decisions and predictions making use of
predictive causal analytics, prescriptive analytics (predictive plus decision
science) and machine learning.

Predictive causal analytics � If you want a model which can predict the
possibilities of a particular event in the future, you need to apply predictive
causal analytics. Say, if you are providing money on credit, then the probability
of customers making future credit payments on time is a matter of concern for you.
Here, you can build a model which can perform predictive analytics on the payment
history of the customer to predict if the future payments will be on time or not.
Prescriptive analytics: If you want a model which has the intelligence of taking
its own decisions and the ability to modify it with dynamic parameters, you
certainly need prescriptive analytics for it. This relatively new field is all
about providing advice. In other terms, it not only predicts but suggests a range
of prescribed actions and associated outcomes.
The best example for this is Google�s self-driving car which I had discussed
earlier too. The data gathered by vehicles can be used to train self-driving cars.
You can run algorithms on this data to bring intelligence to it. This will enable
your car to take decisions like when to turn, which path to take, when to slow down
or speed up.
Machine learning for making predictions � If you have transactional data of a
finance company and need to build a model to determine the future trend, then
machine learning algorithms are the best bet. This falls under the paradigm of
supervised learning. It is called supervised because you already have the data
based on which you can train your machines. For example, a fraud detection model
can be trained using a historical record of fraudulent purchases.
Machine learning for pattern discovery � If you don�t have the parameters based on
which you can make predictions, then you need to find out the hidden patterns
within the dataset to be able to make meaningful predictions. This is nothing but
the unsupervised model as you don�t have any predefined labels for grouping. The
most common algorithm used for pattern discovery is Clustering.
Let�s say you are working in a telephone company and you need to establish a
network by putting towers in a region. Then, you can use the clustering technique
to find those tower locations which will ensure that all the users receive optimum
signal strength.
Let�s see how the proportion of above-described approaches differ for Data Analysis
as well as Data Science. As you can see in the image below, Data Analysis includes
descriptive analytics and prediction to a certain extent. On the other hand, Data
Science is more about Predictive Causal Analytics and Machine Learning.

Powered by EdurekaMock Interview


80% INTERVIEW REJECTIONS HAPPEN IN FIRST 90 SECONDS
Take Data Scientist Mock Interview
Get Interviewed by Industry ExpertsPersonalized interview feedback
Data Science Analytics - Edureka

I am sure you might have heard of Business Intelligence (BI) too. Often Data
Science is confused with BI. I will state some concise and clear contrasts between
the two which will help you in getting a better understanding. Let�s have a look.

Business Intelligence (BI) vs. Data Science


BI basically analyzes the previous data to find hindsight and insight to describe
the business trends. BI enables you to take data from external and internal
sources, prepare it, run queries on it and create dashboards to answer the
questions like quarterly revenue analysis or business problems. BI can evaluate the
impact of certain events in the near future.
Data Science is a more forward-looking approach, an exploratory way with the focus
on analyzing the past or current data and predicting the future outcomes with the
aim of making informed decisions. It answers the open-ended questions as to �what�
and �how� events occur.
Let�s have a look at some contrasting features.

Features Business Intelligence (BI) Data Science


Data Sources Structured
(Usually SQL, often Data Warehouse) Both Structured and Unstructured
( logs, cloud data, SQL, NoSQL, text)

Approach Statistics and Visualization Statistics, Machine Learning, Graph


Analysis, Neuro- linguistic Programming (NLP)
Focus Past and Present Present and Future
Tools Pentaho, Microsoft BI, QlikView, R RapidMiner, BigML, Weka, R

This was all about what is Data Science, now let�s understand the lifecycle of Data
Science.

A common mistake made in Data Science projects is rushing into data collection and
analysis, without understanding the requirements or even framing the business
problem properly. Therefore, it is very important for you to follow all the phases
throughout the lifecycle of Data Science to ensure the smooth functioning of the
project.

Lifecycle of Data Science


Here is a brief overview of the main phases of the Data Science Lifecycle:

Lifecycle of Data Science - Edureka

Discovery of Data Science - EdurekaPhase 1�Discovery: Before you begin the project,
it is important to understand the various specifications, requirements, priorities
and required budget. You must possess the ability to ask the right questions. Here,
you assess if you have the required resources present in terms of people,
technology, time and data to support the project. In this phase, you also need to
frame the business problem and formulate initial hypotheses (IH) to test.
Data Science data preparation - Edureka

Phase 2�Data preparation: In this phase, you require analytical sandbox in which
you can perform analytics for the entire duration of the project. You need to
explore, preprocess and condition data prior to modeling. Further, you will perform
ETLT (extract, transform, load and transform) to get data into the sandbox. Let�s
have a look at the Statistical Analysis flow below.

You can use R for data cleaning, transformation, and visualization. This will help
you to spot the outliers and establish a relationship between the variables. Once
you have cleaned and prepared the data, it�s time to do exploratory analytics on
it. Let�s see how you can achieve that.

Phase 3�Model planning: Data Science model planning - EdurekaHere, you will
determine the methods and techniques to draw the relationships between variables.
These relationships will set the base for the algorithms which you will implement
in the next phase. You will apply Exploratory Data Analytics (EDA) using various
statistical formulas and visualization tools.

Let�s have a look at various model planning tools.

Model planning tools in Data Science - Edureka

R has a complete set of modeling capabilities and provides a good environment for
building interpretive models.
SQL Analysis services can perform in-database analytics using common data mining
functions and basic predictive models.
SAS/ACCESS can be used to access data from Hadoop and is used for creating
repeatable and reusable model flow diagrams.
Although, many tools are present in the market but R is the most commonly used
tool.

Now that you have got insights into the nature of your data and have decided the
algorithms to be used. In the next stage, you will apply the algorithm and build up
a model.

Powered by EdurekaMock Interview


Data Scientist Mock interviews for you
Interviews by Industry ExpertsPersonalized detailed interview feedbackAccess to
exclusive and curated content
Data Science model building - EdurekaPhase 4�Model building: In this phase, you
will develop datasets for training and testing purposes. You will consider whether
your existing tools will suffice for running the models or it will need a more
robust environment (like fast and parallel processing). You will analyze various
learning techniques like classification, association and clustering to build the
model.

You can achieve model building through the following tools.

Model building tools in Data Science

Phase 5�Operationalize: Data Science operationalize - EdurekaIn this phase, you


deliver final reports, briefings, code and technical documents. In addition,
sometimes a pilot project is also implemented in a real-time production
environment. This will provide you a clear picture of the performance and other
related constraints on a small scale before full deployment.

Communication in Data Science - EdurekaPhase 6�Communicate results: Now it is


important to evaluate if you have been able to achieve your goal that you had
planned in the first phase. So, in the last phase, you identify all the key
findings, communicate to the stakeholders and determine if the results of the
project are a success or a failure based on the criteria developed in Phase 1.

Now, I will take a case study to explain you the various phases described above.

Case Study: Diabetes Prevention


What if we could predict the occurrence of diabetes and take appropriate measures
beforehand to prevent it?
In this use case, we will predict the occurrence of diabetes making use of the
entire lifecycle that we discussed earlier. Let�s go through the various steps.

Step 1:

First, we will collect the data based on the medical history of the patient as
discussed in Phase 1. You can refer to the sample data below.
Data Science sample data - Edureka

As you can see, we have the various attributes as mentioned below.


Attributes:

npreg � Number of times pregnant


glucose � Plasma glucose concentration
bp � Blood pressure
skin � Triceps skinfold thickness
bmi � Body mass index
ped � Diabetes pedigree function
age � Age
income � Income
Step 2:

Now, once we have the data, we need to clean and prepare the data for data
analysis.
This data has a lot of inconsistencies like missing values, blank columns, abrupt
values and incorrect data format which need to be cleaned.
Here, we have organized the data into a single table under different attributes �
making it look more structured.
Let�s have a look at the sample data below.
Data Science inconsistent data - Edureka

This data has a lot of inconsistencies.

In the column npreg, �one� is written in words, whereas it should be in the numeric
form like 1.
In column bp one of the values is 6600 which is impossible (at least for humans) as
bp cannot go up to such huge value.
As you can see the Income column is blank and also makes no sense in predicting
diabetes. Therefore, it is redundant to have it here and should be removed from the
table.
So, we will clean and preprocess this data by removing the outliers, filling up the
null values and normalizing the data type. If you remember, this is our second
phase which is data preprocessing.
Finally, we get the clean data as shown below which can be used for analysis.
Data Science consistent data - Edureka

Step 3:

Now let�s do some analysis as discussed earlier in Phase 3.

First, we will load the data into the analytical sandbox and apply various
statistical functions on it. For example, R has functions like describe which gives
us the number of missing values and unique values. We can also use the summary
function which will give us statistical information like mean, median, range, min
and max values.
Then, we use visualization techniques like histograms, line graphs, box plots to
get a fair idea of the distribution of data.
Data Science visualization - Edureka

Step 4:

Now, based on insights derived from the previous step, the best fit for this kind
of problem is the decision tree. Let�s see how?

Since, we already have the major attributes for analysis like npreg, bmi, etc., so
we will use supervised learning technique to build a model here.
Further, we have particularly used decision tree because it takes all attributes
into consideration in one go, like the ones which have a linear relationship as
well as those which have a non-linear relationship. In our case, we have a linear
relationship between npreg and age, whereas the nonlinear relationship between
npreg and ped.
Decision tree models are also very robust as we can use the different combination
of attributes to make various trees and then finally implement the one with the
maximum efficiency.
Let�s have a look at our decision tree.

Powered by EdurekaMock Interview


NEED HELP FOR YOUR UPCOMING INTERVIEW?
Take Data Scientist Mock Interview
Get Interviewed by Industry ExpertsPersonalized interview feedback

Here, the most important parameter is the level of glucose, so it is our root node.
Now, the current node and its value determine the next important parameter to be
taken. It goes on until we get the result in terms of pos or neg. Pos means the
tendency of having diabetes is positive and neg means the tendency of having
diabetes is negative.

If you want to learn more about the implementation of the decision tree, refer this
blog How To Create A Perfect Decision Tree

Step 5:

In this phase, we will run a small pilot project to check if our results are
appropriate. We will also look for performance constraints if any. If the results
are not accurate, then we need to replan and rebuild the model.

Step 6:

Once we have executed the project successfully, we will share the output for full
deployment.
Being a Data Scientist is easier said than done. So, let�s see what all you need to
be a Data Scientist. A Data Scientist requires skills basically from three major
areas as shown below.

Data Science skills - Edureka

As you can see in the above image, you need to acquire various hard skills and soft
skills. You need to be good at statistics and mathematics to analyze and visualize
data. Needless to say, Machine Learning forms the heart of Data Science and
requires you to be good at it. Also, you need to have a solid understanding of the
domain you are working in to understand the business problems clearly. Your task
does not end here. You should be capable of implementing various algorithms which
require good coding skills. Finally, once you have made certain key decisions, it
is important for you to deliver them to the stakeholders. So, good communication
will definitely add brownie points to your skills.

I urge you to see this Data Science video tutorial that explains what is Data
Science and all that we have discussed in the blog. Go ahead, enjoy the video and
tell me what you think.

What Is Data Science? Data Science Course � Data Science Tutorial For Beginners |
Edureka

This Edureka Data Science course video will take you through the need of data
science, what is data science, data science use cases for business, BI vs data
science, data analytics tools, data science lifecycle along with a demo.

In the end, it won�t be wrong to say that the future belongs to the Data
Scientists. It is predicted that by the end of the year 2018, there will be a need
of around one million Data Scientists. More and more data will provide
opportunities to drive key business decisions. It is soon going to change the way
we look at the world deluged with data around us. Therefore, a Data Scientist
should be highly skilled and motivated to solve the most complex problems.

l hope you enjoyed reading my blog and understood what is Data Science. Check out
our Data Science certification training here, that comes with instructor-led live
training and real-life project experience.

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.
A Project Repor t on
TELEPHONE
BILLING SYSTEM
CONTENTS
1) Introduction
i) Introduction of the Project
ii) Objective of the Project
2) System Analysis
i) Introduction
ii) Existing System
iii) Drawback of the Existing System
iv) Proposed System
v) Objective and Advantage of Proposed System
vi) Software Requirement Specification
vii) Data Flow Diagram
viii) Gantt Chart
3) System Design
i) Introduction
ii) Design Strategy
iii) Input Design
iv) Output Design
v) Table Design
4) Tools Chosen
i) Proposed System Environment
ii) About Front End
iii) About Back End
5) Source Code
6) Input And Output Screen
7) Testing And Debugging
8) Scope And Result Discussion
9) Bibliography
1) (i) INTRODUCTION OF
THE PROJECT
The purpose of the project is to present the requirement of the
Computerization of Telephone Billing System. The project thus calculates
the telephone bills automatically. It does almost every work which is
related to automatic telephone billing connection system via- new
connection , customer record modification, viewing customer records &
all works related to rate of bills, meter readings in addition to bill
calculation and bill generation. �Telephone Billing System� is developed
as per seeing the increasing requirement to speed up the work and
incorporate a new work culture. Thus a new software has been proposed
to reduce manual work, improving work efficiency, saving time and to
provide greater flexibility and user-friendliness as the system previously
followed was totally manual one with lots of errors.
1) (ii) OBJECTIVE OF THE PROJECT
The main objective while implementing the project Telephone Billing
System were to minimize the work and at the same time increase
the speed of the work done.
This new system is built with the following objective:
1) Information retrieval will become easy.
2) Maintenance of database as well as overall project will become
easy.
3) Security measure will be adopted, by maintaining the login of
username and the password.
4) Data redundancy will be greatly reduced because this new
system is built using Visual Basic 6.0 as front-end. It entails
looking into duplication of efforts , bottlenecks and inefficient existing
procedures.
2) (i) INTRODUCTION
System analysis is the performance management and documentation of
activities related to the four life cycle phases of any software namely:
� The Study Phase
� The Design Phase
� The Development Phase
� The Operators Phase
System analysis is a vast field of study through which system analyst puts
his thoughts and searches for the solution of problem. He has to get a
clear idea of what he has in hand and what he has to produce. He has to
extract the essence of expectations. He has to satisfy the user in the very
possible way. System analysis needs and should include the following
steps of study:
� Study of current methods, the basic inputs available and
output desired.
� The splitting of a variable inputs into (.dbf) files so as to reduce
redundancy and increase consistency.
� Give the idea of key � field (if any) .
� Ideas regarding code generation.
Software Analysis starts with a preliminary analysis and later switches on
to a detailed one. During the preliminary analysis the Analyst takes a
quick look at what is needed and whether the cost benefits. Detailed
analysis studies in depth all the cornered factors, which builds and
strengthens the software.
A system study is a step-by-step process used to identify and then
developed the software needed to control the processing of specific
application. System study is also known as SDLC (Software Development
Life Cycle).
Steps of SDLC are:
1. Problem Definition
2. Feasibility Study
3. System Analysis
4. System Design
5. Implementation
6. Post Implementation
7. Maintenance
2)(ii) EXISTING SYSTEM
The existing system was a manual one. Whatever be the process
involved in the system were done through register (files) . There were lots
of complexities involved in the system. When any customer takes new
connections then separate files were maintained. Updating of data was
very tedious job. It was not easy to do several administrative works like
managing rates of calls, addition or modification of metered calls &
customer entries.
2) (iii) DRAWBACKS OF
EXISTING SYSTEM
In the existing system all the office works was done manually. The
manual work processes was time consuming and hence slow. Following
are the main drawbacks of the existing system:
v The existing system is totally manual thus there are chances of
error in processing.
v The basic and major drawbacks in the existing system are the
speed of retrieval of data from files, which leads to delay.
v Maintenance of voluminous data is very cumbersome and laborious
job.
v The manual jobs such as calculation are more error prone.
v There are plenty of chances of duplicity of data and information.
v Updating is very tedious job.
v There is no central database from where one can get different
statistical data at one place.
The above facts, figures and drawbacks clearly indicate that there is need
for computerization and thus decided to computerize the �TELEPHONE
BILLING SYSTEM�. Since the existing system was totally manual which
has lots of complexities, shortcomings in itself and all the data was being
stored in registers, files etc thus to overcome the limitation of the existing
system, the new computerized system was needed, so that information
can be provided to the user more quickly, easily and more accurately.
3)(iv) PROPOSED SYSTEM
The new system titled �TELEPHONE BILLING SYSTEM� was hence
proposed to remove all the drawbacks discussed above.
Information is a vital ingredient for the operation and
management of any organization. Thus any system should have the
ability to provide error free filtered information after processing the
required data. This system has been taken up with a view for developing
a more sophisticated system that can be easily handled by any kind of
users. The proposed system aims at efficient and timely information for
decision-making, integrate with other functions, and reduce redundant
work.
Important features of this proposed system are:
� Consistent user interface with high economic features built into it.
� System design in modular and structured way so as to make the
integration with other subsystems easier.
� User has complete control as it provides and accept only
appropriate and valid data.
� User-friendly error messages are provided wherever necessary.
� Addition, deletion, modification of records as when needed.
� Providing connections to new customers.
� Bill generation for customers.
2) (v) OBJECTIVES OF
THE
PROPOSED SYSTEM
� To reduce workload of staff.
� To reduce the delay in processing time.
� To reduce the delay in bill generation.
� To provide the user-friendliness in all possible ways.
� To provide greater flexibility.
� Make maintenance changes easy.
� To store data in a centralized location to reduce redundancy and
increase consistency.
2) (vi) SRS
SRS (Software Requirement Specification) is a document that completely
describes what the proposed should do, without describing how the
software does it.
PURPOSE : The purpose of the project is to develop a system which
is user friendly, easy to use , maintain and satisfies all the
requirements of the user.
PERFORMANCE REQUIREMENT
1) The operation time should be small and the throughput should be high.
2) It should produce timely and accurate result.
SOFTWARE QUALITY ATTRIBUTES
i) Maintainability � Since it is directly associated with the
database, so there is very little maintainability problem with
this tool.
ii) Portability � Since there is very limited usage of separate
forms, this tool is very much portable. This tool uses several
canvases on the same form.
iii) Flexibility � This tool is very much flexible for future
enhancements.
2) (vii) DATA FLOW
DIAGRAM
� CONTEXT DIAGRAM
CUSTOMER RECORDS
AND RATES
GENERATED BILL
TELEPHONE
BILLING
SYSTEM
CUSTOMER
ADMINISTRATOR
� FIRST LEVEL DATA FLOW DIAGRAM
Input Username And Password
Valid User
New Customer Details
New Customer
Details
(table 1)
Input Ratings
Rate Maintenance
( table 2)
Ratings
Customer Details
(Master File)
ADMINISTRATOR
1
Login
Verificatio
n
2
Processing
of new
customer
information
3
Processing of
ratings for
different types
of calls
Input Meter / Minute Reading For Valid
Customer
Customer
Number Minute reading ( table 3)
Customer Minute Details
FIRST LEVEL DATA FLOW DIAGRAM
(continued )
Valid customer number
and Minute details
Ratings
Generated
Bill
Rate Maintenance
Customer Name And Address
4
Verification of
valid customer
and processing
of minute
reading
5
Generation of
Bill
User
� SECOND LEVEL DATA FLOW DIAGRAM
Here �Process 5� is exploded, since it is required to show its further details.
Valid customer no. & minute details
R a ti ng s ( table 3)
Multiplied Result
Rate Maintenance
( table 2) Multiplied Result
Customer Bill Details
( table 4)
Individual Bills for each call
types Monthly Rental
Customer Details
(Masterfile)
Customer Minute Details
5.1
Minute
Reading is
multiplied with
corresponding
rating
5.2
Multiplied
Result is inserted
in table
5.3
Bill is generated,
using this multiplied
result, monthly
rental, getting the
sum with customer
name & address
Customer Name & Address
Customer Details
( Master file)
2) (viii) PROJECT
PLANNING AND
SCHEDULING
� GANTT CHART
Problem Statement
& Analysis
Feasibility Study
Logical & Conceptual
System Designing
Generated Bill
Coding, Testing &
Documentation
1 Jun�07 20 Jun�07 10 Jul�07 30 Jul�07 20 Aug�07
3) (i) INTRODUCTION
System design is the second step in the system life cycle, in which overall
design of the system is achieved. The functionalities of the system is
designed and studied in this phase. The first step is designing of program
specification. This determines the various data inputs to the system, data
flow and the format in which output is to be obtained.
Design phase is a transmission phase because it is a transition from user
oriented document to computer data. The activity in the design phase is
the allocation of functions to manual operations, equipment and computer
programs. Flow charts prepared in the study time received and
decomposed until all functions in the system perform evidently.
Design is a multistep process that focuses on data structures, software
architecture, procedural details( algorithms etc) and links between the
modules. The design process goes through logical and physical stages. In
logical design reviews are made linking existing system and specification
gathered. The physical plan specifies any hardware and software
requirement, which satisfies the local design.
Modularization of task is made in the mode. The success of any
integrated system depends on the planning of each and every
fundamental module. Usually a project is revised in step by step
sequence. Inter phase management of such module is also
important.Software design methodology changes continually as new
methods, better analysis and broader understanding evolve.
Various techniques for software design do exit with the availability of
criteria for design quality. Software design leads three technical
activitiesdesign,
code and test.
The techniques for software design do exit with the availability of criteria
for design quality. Software design leads three technical activities-design,
code and test that are required to build and verify software. Each activity
transforms information, which validates the software. The design system
converts theoretical solution introduced by the feasibility study into a
logical reality.
3)(ii) DESIGN
STRATEGY
The design strategy is a vital aspect of the system to be developed. The
design of the software reflects the basic understanding of the problem.
For designing a good system what we have to be is to get correct
definition of the problem and analyze the problem thoroughly.
The design of a system should be such that if a small portion is changed.
The rest of the system should be unaffected. This is the flexibility of the
system. Greater the system flexibility greater will be the system reliability.
While carrying out the job of designing of a new system one has to
consider many factors. These factors include the drawbacks and
limitations of the present manual system as well as of the features and
advantages of the proposed system. It should be designed in such a
manner that even a layman can run it without any difficulty.
An important quality of a software must enjoy is �user friendliness�. It can
be achieved in many ways like providing menu, giving context sensitive
help, doing automatic validation to input data, etc. Another main factor is
speed efficiency. In order to achieve speed efficiency, the program should
be designed accordingly and the user is provided with a compiled copy of
the software package with necessary data file format rather than source
code.
Design of input and output formats is equally important for any design.
The output format should be designed in such a way that it must reflect all
the required information in detail. The design of the database itself such
as type of data stored, size of data etc. Some of the decisions made
during database design are:
� Which data items are to be recorded and in which database.
� Length of each record, based on the characteristics of the data
items on which it is based.
� Data who�s unauthorized change must be prevented.
� Data, which must be avoided from redundancy.
� Maintenance of data integrity etc.
� Avoid over writings.
� Prevents invalid data access and changes.
Having all this, a positive interaction with clients at every stage of
development is the core around which the software is built.
3) (iii) INPUT DESIGN
Input design is the process of converting user-originate inputs to a
computer-based format. The goal of design input data is to make data
entry as easy, logical and free. The most common source of data
processing errors is inactive input data. Effective design of the input data
minimizes the error made by data entry operators. Catching errors on
input is far less costly than correcting after data storage is complete.
User-friendly input design enables quick error detecting and correction.
Verification and validation is the most important in input design. Since the
system is used interactively, it has two types of inputs. Interactive inputwhich
is the point contact of the user with the system and the input to the
internal system i.e. Databases. For full efficiency of the system, it is
necessary that the input must be accurate. Since the user of the system
may not be a technical person and may not know input concepts so it is
required that he warn, prevent and correct invalid data entry.
There are many ways that can be designed to handle such a situation.
We can prevent the user entering invalid data into the databases by
warning, neglecting or messaging appropriately. The user is then allowed
to input correct data. Some help provisions may aid the user to point out
the error. In this system inputs are collected from terminals through
keyboard.
3) (iv) OUTPUT DESIGN
Output design has been an ongoing activity from the very beginning of the
project. The objective of the output design is to convey the information of
all past activities, current status and to emphasize important events. The
output generally refers to the results and information that is generated
from the system.
The output design of the system is accomplished keeping in mind the
following activities:
� Determine what information is to display.
� Decide whether to display or print the information retrieved,
processed, generated from the system.
� Arrange the presentation of information in an acceptable format.
� Decide how to distribute the output to the intended recipients.
In the output design phase one or more output media can be selected.
Out of which the most common ones are CRT displays and print out. Here
only CRT display has been attempted. A rapid enquiry is obtained from
CRT displays. From design is made interesting and attractive. Easy
understanding and effectiveness is made possible.
3) (v) TABLE DESIGN
1. CUSTOMER_RECORDS
custname Text
custadd Text
custphno Number
2. CALL_RATES
local Number
mobile Number
STD Number
ISD Number
MonthlyRental Number
3. CUSTOMER_METER_READING
custphno Text
mLocal Number
mmobile Number
mSTD Number
mISD Number
4. BILL_RECORD
custname Text
custphno Text
custadd Text
localmt Number
mobilemt Number
STDmt Number
ISDmt Number
5. LOGIN
LOGIN_ID AutoNumber
LOGIN_NAME Text
LOGIN_PASSWORD Text
4) (i) PROPOSED SYSTEM
ENVIRONMENT
The system environment can be classified into two categories �
� Hardware environment
� Software environment
Hardware Environment
� The application front-end (client) will be designed on machines
with Windows 98/ Window XP, Pentium III processors, 64/128
MB RAM.
� The database will be running on Windows OS, Pentium III
processors, 64 MB RAM.
Mouse as pointing device.
Software Environment
� The application front end will be designed using Visual Basic 6.0.
� The database has been designed on Microsoft Access (Office
Package).
4) (ii) ABOUT FRONT END
MICROSOFT VISUAL BASIC 6.0
Visual Basic 6.0 is an enjoyable language due to its visual
environment. Building a windows program in Visual Basic requires
dragging and dropping graphic objects on to the screen from a toolbox.
Thus Visual Basic is the efficient GUI tools to develop some exciting
windows-based application.
Visual Basic 6.0 is much more than just a programming language.
The programming language forms the background of all that takes place
in a running Visual Basic program. The language is a secondary
consideration to the user interface. A windows program offers a high
degree of user interaction using the graphical elements that forms the
objects on the window the user sees .If the user interface is not correct,
user will not like the program.
Visual Basic lets one add menus, text boxes, command buttons,
option buttons (for making exclusive choice), check boxes, list boxes,
scroll bars and file and directory boxes to black windows. One can use
Visual Basic to communicate with other applications, running under
windows. Visual Basic offers: More Internet features, better support for
data base development, more language feature to make programming job
easier.
SOME TOOLS OF VISUAL BASIC 6.0
� Data access features allow creating databases, front-end
applications and scalable server side components for most
popular databases formats including Microsoft SQL server and
other enterprise level databases.
� Active X technology allows using functionality provided by other
applications such as Microsoft Word, Microsoft Excel and other
applications and objects could be created using the Professional
Enterprise editions of Visual Basic.
� Internet capabilities make it easy to provide access to documents
and applications across the Internet or Intranet server applications.
The finished applications are a true .exe files that uses a Visual Basic
virtual machine that can be freely distributed.
SIGNIFICANCE FEATURES OF VISUAL BASIC 6.0
Toolbox: The Tool Box window differs from the tool bar. The Tool Box is a
collection of tool that acts as a repository of controls we can place on
forms. Some tools are Selection Pointer, Picture Box, Label, Text Box,
Frame Button, Command Botany, Check Box, Option Button etc.
Form: Visual Basic uses a window; controls are the widgets one place of
a form. In a form we will customize by adding controls such as command
buttons, list boxes to it. At the top of the black form is the little bar with its
caption.
Common Form properties:
There are several common properties to customize a form, these are: -
Caption: Caption is used as a title that the Microsoft Window for the
application icon when the user minimizes the application.
Name: This property is used to give the name that one want to use to
refer to the form.
Enabled: If user sets Enabled to false, the form cannot respond to any
events such as the user checking on the form.
Icon: The icon property determines the icon users application will display
when it is minimized on tool bar or turned into a stand-alone application
on windows desktop.
Visible: If the value of the property is set to false, it will no longer be
visible.
Text Boxes:
It is used to display text or to accept user input. Most of the code is written
to process the information users enter into them. Several properties of
text boxes are as follows: -
Text: The text property in text box is the analog of the caption property for
a command button or a form; it controls text the users see. It determines
whether text on the control such as label or command button, is left
justified, centered, or right justified on the control. The Alignment property
take one of the three values: 0-Left justify, 1-Right justify, 2-Center.
Multiline: This property determines whether a text box can accept more
than one line of text when the user runs the application, and it is usually
combine with resulting the value of the scrollbar property. If true the
property specifies the text box can hold more than a line of text.
Max Length: This property specifies the maximum number of characters
that the text box will accept. A value of 0 indicates that the user can enter
a value of any length.
Locked: This property determines whether the user can enter a value or
change the default value of the text box. If true, the user cannot change
the text box value until the program, at run time assigns a false to this
property.
Password char: The Password property lets us limit what the text box
displays.
Labels: Use Labels to display information programmer does not want the
user to be able to change. Most common use for Labels is to identify a
text box or other control by describing its contents. Another common use
is to display help information.
Message Boxes:
Message boxes display information in the dialog box superimposed on
the form. They want for the user to choose a button before return to the
application. User cannot switch to another form in programmers
applications as long as Visual Basic is displaying a message box.
Value Named constant Description
0 vbOKOnly OK button
1 vbOKCancel OK and Cancel buttons
2 vbAboRetryIgnore Abort,Retry and Cancel buttons
3 vbYesNoCancel Yes and No and Cancel buttons
4 vbYesNo Yes and No buttons
MsgBox � The message goes in codes�, 4
Frames:
Programmer usually frames passively to group images or controls.
Option Buttons:
They all work together. When the user chooses one button, all other
buttons in the group are turned off. The value property of the option
button tells us whether a button was selected by the user. If the value
property is true, the user selected that button; otherwise, its value
property is false.
Check Boxes:
Check Boxes differ from option button in that, regardless of how many
Check Boxes one places on a form, they can all be turned on and off
independently. If the user has selected Check Boxes, the value property
switches to true. It stays true until the user deselects that box.
List and Combo boxes:
Use list boxes when we have a fixed list of choices. Visual Basic
automatically adds vertical scroll bars when the list box is small for all
items it contains.
To allow users to input data as well as choices from a list, we use a
Combo Box.
FOLLOWING ARE THE CUSTOM CONTROLS, WHICH ARE ALSO
DATA AWARE:
� Data List
� Data Combo
� Data Grid
� Microsoft Flex Grid
� Microsoft Hierarchical Flex Grid
� Rich Textbox
� Microsoft Chart
� Date Time Picker
� Image Combo
4) (iii) ABOUT BACK END
MICROSOFT ACCESS
Database: -A database is a set of data, organized for easy access. The
database is the actual data. It is the database that you will be accessing
when you need to retrieve data.
Data Dictionary: -The data dictionary is a set of tables Access uses to
maintain information about the database. The data dictionary contains
information about tables, indexes, clusters, and so on.
DBA (Database Administrator) : - The DBA is the person responsible for
the operation, configuration, and performance of the database. The DBA
is charged with keeping the database operating smoothly, ensuring that
backups are done on a regular basis (and that the backups work), and
installing new software. Other responsibilities might include planning for
future expansion and disk space needs, creating databases and
tablespaces, adding users and maintaining security, and monitoring the
database and retuning it as necessary. Large installations might have
teams of DBAs to keep the system running smoothly; alternatively, the
tasks might be segmented among the DBAs.
DBMS or RDBMS: -The Database Management System is the software
and collection of tools that manages the database. Access software is the
DBMS. A Relational Database Management System is a DBMS that is
relational in nature. This means that the internal workings access data in
a relational manner. Access is an RDBMS.
Query: -A query is a read-only transaction against a database. A query is
generated using the SELECT statement. Users generally distinguish
between queries and other transaction types because a query does not
change the data in the database.
Schema : - A schema is a collection of objects associated with the
database.
Microsoft Access is a very effective DBMS tool which is generally used by
all the users. It is compatible with all types of systems & can be installed
and used as and when required.
5) SOURCE CODE
*******************Code For Start Form*******************
Dim i As Integer
Private Sub Form_Load()
start.Show
Timer1.Enabled = True
ProgressBar1.Value = 0
i = 0
Shape1(i).BackColor = "&HC00000"
i = i + 1
ProgressBar1.Scrolling = ccScrollingSmooth
End Sub
Private Sub Timer1_Timer()
ProgressBar1.Value = ProgressBar1.Value + 2
If ProgressBar1.Value Mod 20 = 0 Then
Shape1(i).BackColor = "&HC00000"
i = i + 1
End If
If ProgressBar1.Value = 100 Then Timer1.Enabled = False: Unload
start1: Unload Me: frmopt.Show
End Sub
*******************Code For Start1 Form*******************
Private Sub Form_GotFocus()
start.Show
End Sub
Private Sub Timer1_Timer()
r = Rnd * 150
g = Rnd * 200
b = Rnd * 150
Label1.Forecolor = RGB (r , g , b)
Label2.Forecolor = RGB (r , g , b)
End Sub
*******************Code For Login Form*******************
Option Explicit
Public LoginSucceeded As Boolean
Private Sub cmdcancel_Click()
LoginSucceeded = False
Me.Hide
frmopt.Show
End Sub
Private Sub cmdok_Click()
If txtPassword = "teleproject" And txtUserName = "poonam" Then
LoginSucceeded = True
MDIForm1.Show
Unload Me
Unload frmopt
Unload frmLoginbase
Else
MsgBox "Invalid Password, try again!", , "Login"
txtPassword.SetFocus
SendKeys "{Home} + {End}"
End If
End Sub
*******************Code For (frmopt) Form*******************
Private Sub cmdenter_Click()
frmLoginbase.Show
frmLogin.Show
Me.Hide
End Sub
Private Sub cmdexit_Click()
End
End Sub
Private Sub cmdhelp_Click()
frmAbout.Show
Me.Hide
End Sub
Private Sub Form_Load()
Unload start1
Unload start
End Sub
Private Sub Timer1_Timer()
r = Rnd * 200
g = Rnd * 100
b = Rnd * 150
Label1.ForeColor = RGB(r, g, b)
Label5.ForeColor = RGB(r, g, b)
Label6.ForeColor = RGB(r, g, b)
End Sub
Private Sub Timer3_Timer()
r = Rnd * 100
g = Rnd * 150
b = Rnd * 200
Label2.ForeColor = RGB(r, g, b)
Label3.ForeColor = RGB(r, g, b)
Label4.ForeColor = RGB(r, g, b)
End Sub
*******************Code For (MDIForm1) Form*******************
Option Explicit
Private Sub about_Click()
frmAbout.Show
End Sub
Private Sub exit_Click()
Unload Me
frmopt.Show
End Sub
Private Sub mnucb_Click()
frmbill.Show
End Sub
Private Sub newcon_Click()
frmnew.Show
End Sub
Private Sub option_Click()
frmoptad.Show
End Sub
Private Sub viewrec_Click()
frmrec.Show
End Sub
**********Code For frmnew called by MDIForm1 Form**********
Option Explicit
Dim rs As Recordset
Dim con As Connection
Private Sub err_han()
Dim response As Integer
Select Case Err.Number
Case -2147467259
Call EDTB(Empty)
Call EmptyTB
MsgBox "Duplicate Record Entry", vbInformation + vbOKOnly,
"TELEBILL SOFTWARE"
Case Else
If Err.Number <> 0 Then
MsgBox Err.Number & " : " & Err.Description
End If
End Select
End Sub
Private Sub cmdadd_Click()
On Error GoTo error_handler
If Text1.Text <> Empty Or Text2.Text <> Empty Then
con.Execute "insert into table1 values('" & Text1.Text & "','" & Text3.Text
& "','" & Text2.Text & "')"
MsgBox "Records Inserted Successfully", vbInformation +
vbOKOnly, "TELEBILLING SOFTWARE"
Else
MsgBox "Check for Empty Boxes", vbInformation + vbOKOnly,
"TELEBILLING SOFTWARE"
End If
Call EmptyTB
Call EDTB(False)
error_handler:
err_han
End Sub
Private Sub cmdback_Click()
Me.Hide
MDIForm1.Show
End Sub
Private Sub Form_Load()
Set con = New Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source='C:\Poonam\tele.mdb';Persist Security Info=False"
End Sub
Public Function EDTB(cho As Boolean)
Text1.Enabled = cho
Text2.Enabled = cho
Text3.Enabled = cho
End Function
Public Sub EmptyTB()
Text1.Text = Empty
Text2.Text = Empty
Text3.Text = Empty
End Sub
**********Code For frmrec called by MDIForm1 Form**********
Option Explicit
Dim rs As Recordset
Dim rs1 As Recordset
Dim con As Connection
Private Sub err_han()
Dim response As Integer
Select Case Err.Number
Case 3021
Text1.Text = rs.Fields(0)
Text2.Text = rs.Fields(2)
Text3.Text = rs.Fields(1)
Text4.Text = 0
Text5.Text = 0
Text6.Text = 0
Text7.Text = 0
Case Else
If Err.Number <> 0 Then
MsgBox Err.Number & " : " & Err.Description
End If
End Select
End Sub
Private Sub cmdexit_Click()
Call Clear
Call EDCmd(True)
Me.Hide
MDIForm1.Show
End Sub
Private Sub cmdok_Click()
Dim match As Boolean
match = False
rs.MoveFirst
Do While Not rs.EOF
If LCase(Left(rs.Fields(0), 1)) = LCase(Text8.Text) Then
match = True
Exit Do
Else
rs.MoveNext
End If
Loop
If match = False Then
MsgBox "No such record is there!!!", vbInformation + vbOKOnly,
"TELEBILL SOFTWARE"
rs.MoveFirst
Else
Call LocateMtr
Call Display
End If
End Sub
Private Sub cmdpre_Click()
If rs.BOF Then
MsgBox "No more records!!!", vbInformation + vbOKOnly, "TELEBILL
SOFTWARE"
rs.MoveNext
Else
rs.MovePrevious
End If
If Not rs.BOF Then
Call LocateMtr
Call Display
Else
Call Clear
End If
End Sub
Private Sub cmdnext_Click()
If rs.EOF Then
MsgBox "End of record!!!", vbInformation + vbOKOnly, "TELEBILL
SOFTWARE"
rs.MovePrevious
Else
rs.MoveNext
End If
If Not rs.EOF Then
Call LocateMtr
Call Display
Else
Call Clear
End If
End Sub
Private Sub cmdfirst_Click()
rs.MoveFirst
Call LocateMtr
Call Display
End Sub
Private Sub cmdlast_Click()
rs.MoveLast
Call LocateMtr
Call Display
End Sub
Private Sub Form_Activate()
Set con = New Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source='C:\Poonam\tele.mdb';Persist Security Info=False"
Set rs = New Recordset
Set rs1 = New Recordset
rs.Open "select * from table1 order by custname", con, adOpenDynamic,
adLockOptimistic
rs1.Open "select * from table3 ", con, adOpenDynamic, adLockOptimistic
If Not rs.BOF Then
Call LocateMtr
Call Display
Else
Call EDCmd(False)
End If
End Sub
Public Function Display()
On Error GoTo error_handler
Text8.Text = "a"
Text1.Text = rs.Fields(0)
Text2.Text = rs.Fields(1)
Text3.Text = rs.Fields(2)
Text4.Text = rs1.Fields(1)
Text5.Text = rs1.Fields(2)
Text6.Text = rs1.Fields(3)
Text7.Text = rs1.Fields(4)
error_handler:
err_han
End Function
Public Function Clear()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
End Function
Public Function LocateMtr()
On Error GoTo error_handler
rs1.MoveFirst
Do While Not rs.EOF
If rs.Fields(2) = rs1.Fields(0) Then
Exit Function
End If
rs1.MoveNext
Loop
error_handler:
err_han
End Function
Public Function EDCmd(choice As Boolean)
cmdok.Enabled = choice
cmdfirst.Enabled = choice
cmdpre.Enabled = choice
cmdnext.Enabled = choice
cmdlast.Enabled = choice
End Function
**********Code For frmbill called by MDIForm1 Form**********
Option Explicit
Dim con As Connection
Dim rs As Recordset
Dim sum1 As Double
Dim sum2 As Double
Dim sum3 As Double
Private Sub Combo1_Change()
Dim reco As Recordset
Set reco = New Recordset
reco.Open "select * from table1 where custphno='" & Combo1.Text & "'",
con, adOpenDynamic, adLockOptimistic
If Not reco.EOF Then
txtname.Text = reco!custname
txtadrs.Text = reco!custadd
End If
Set reco = Nothing
Dim pp As Recordset
Set pp = New Recordset
pp.Open "select * from table3 where custphno='" & Combo1.Text & "' ",
con, adOpenDynamic, adLockOptimistic
If Not pp.EOF Then
txtmtrlocal.Text = pp!mlocal
txtmtrmobile.Text = pp!mmobile
txtmtrstd.Text = pp!mSTD
txtmtrisd.Text = pp!mISD
Else
txtmtrlocal.Text = Empty
txtmtrmobile.Text = Empty
txtmtrstd.Text = Empty
txtmtrisd.Text = Empty
End If
Set pp = Nothing
End Sub
Private Sub Combo1_Click()
Dim reco As Recordset
Set reco = New Recordset
reco.Open "select * from table1 where custphno='" & Combo1.Text & "'",
con, adOpenDynamic, adLockOptimistic
If Not reco.EOF Then
txtname.Text = reco!custname
txtadrs.Text = reco!custadd
End If
Set reco = Nothing
Dim pp As Recordset
Set pp = New Recordset
pp.Open "select * from table3 where custphno='" & Combo1.Text & "' ",
con, adOpenDynamic, adLockOptimistic
If Not pp.EOF Then
txtmtrlocal.Text = pp!mlocal
txtmtrmobile.Text = pp!mmobile
txtmtrstd.Text = pp!mSTD
txtmtrisd.Text = pp!mISD
Else
txtmtrlocal.Text = Empty
txtmtrmobile.Text = Empty
txtmtrstd.Text = Empty
txtmtrisd.Text = Empty
End If
Set pp = Nothing
End Sub
Private Sub DTPicker1_Change()
If (DateValue(Date) - DateValue(DTPicker1.Value)) > 0 Then
MsgBox "Invalid Entry Plz Enter Again, Thank U!!!", vbCritical +
vbOKOnly, "TBS SOFTWARE"
DTPicker1.Value = Date
End If
End Sub
Private Sub Form_Activate()
Set con = New Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source='C:\Poonam\tele.mdb';Persist Security Info=False"
Set rs = New Recordset
rs.Open "select custphno from table1 group by custphno", con,
adOpenDynamic, adLockOptimistic
Combo1.Clear
Do While Not rs.EOF
Combo1.AddItem (rs!custphno)
Combo1.Text = rs!custphno
rs.MoveNext
Loop
Set rs = Nothing
Dim kk As Recordset
Set kk = New Recordset
kk.Open "select * from table2", con, adOpenDynamic, adLockOptimistic
If Not kk.EOF Then
txtlocal.Text = kk!Local
txtmobile.Text = kk!Mobile
txtstd.Text = kk!STD
txtisd.Text = kk!ISD
txtmonrent.Text = kk!MonthlyRental
Else
MsgBox "No Pulse rate entry!!!", vbInformation + vbOKOnly, "TBS
SOFTWARE"
Me.Hide
Set kk = Nothing
Exit Sub
End If
Set kk = Nothing
DTPicker1.Value = Format$(Now, "dd-MMM-yyyy")
Call EmptyTB
End Sub
Public Function TotalBill()
txttotlocal.Text = Val(txtlocal.Text) * Val(txtmtrlocal.Text)
txttotmobile.Text = Val(txtmobile.Text) * Val(txtmtrmobile.Text)
txttotstd.Text = Val(txtstd.Text) * Val(txtmtrstd.Text)
txttotisd.Text = Val(txtisd.Text) * Val(txtmtrisd.Text)
sum1 = Val(txttotlocal.Text) + Val(txttotmobile.Text) + Val(txttotstd.Text) +
Val(txttotisd.Text)
txttot.Text = "Rs. " & sum1
sum3 = Val(txtmonrent.Text)
sum2 = sum1 * 0.08
txttax.Text = "Rs. " & Int(sum2)
txttot1.Text = "Rs. " & Int(sum1 + sum2 + sum3)
txtdue.Text = "Rs. " & Int(sum1 + sum2 + sum3 + 50)
End Function
Private Sub lblbill_Click()
con.Execute "delete from table4"
con.Execute "insert into table4 values ('" & Combo1.Text & "','" &
txtname.Text & "','" & txtadrs.Text & "','" & Val(txttotlocal.Text) & "','" &
Val(txttotmobile.Text) & "','" & Val(txttotstd.Text) & "','" & Val(txttotisd.Text)
& "')"
Dim reco As Recordset
Set reco = New Recordset
reco.Open " select * from table4", con, adOpenDynamic,
adLockOptimistic
If Not reco.EOF Then
With DataReport1
Set .DataSource = reco
.Sections("section1").Controls.Item("lbltelno").Caption = Combo1.Text
.Sections("section1").Controls.Item("lblname").Caption = txtname.Text
.Sections("section1").Controls.Item("lbladrs").Caption = txtadrs.Text
.Sections("section1").Controls.Item("lblmtrlocal").Caption =
txtmtrlocal.Text
.Sections("section1").Controls.Item("lblmtrmobile").Caption =
txtmtrmobile.Text
.Sections("section1").Controls.Item("lblmtrstd").Caption = txtmtrstd.Text
.Sections("section1").Controls.Item("lblmtrisd").Caption = txtmtrisd.Text
.Sections("section1").Controls.Item("lblmonrent").Caption =
txtmonrent.Text
.Sections("section1").Controls.Item("lbltotlocal").Caption = "Rs. " &
txttotlocal.Text
.Sections("section1").Controls.Item("lbltotmobile").Caption = "Rs. " &
txttotmobile.Text
.Sections("section1").Controls.Item("lbltotstd").Caption = "Rs. " &
txttotstd.Text
.Sections("section1").Controls.Item("lbltotisd").Caption = "Rs. " &
txttotisd.Text
.Sections("section1").Controls.Item("lbltot").Caption = txttot1.Text
.Sections("section1").Controls.Item("lbltax").Caption = txttax.Text
.Sections("section1").Controls.Item("lblafterdate").Caption = txtdue.Text
.Sections("section1").Controls.Item("lbldate").Caption = Format$
(DTPicker1.Value, "dd-MMM-yyyy")
.Show
End With
End If
Set reco = Nothing
End Sub
Private Sub lblexit_Click()
Me.Hide
MDIForm1.Show
End Sub
Private Sub txtmtrlocal_Change()
Call TotalBill
End Sub
Private Sub txtmtrmobile_Change()
Call TotalBill
End Sub
Private Sub txtmtrstd_Change()
Call TotalBill
End Sub
Private Sub txtmtrisd_Change()
Call TotalBill
End Sub
Public Function EmptyTB()
Combo1.Text = Empty
txtname.Text = Empty
txtadrs.Text = Empty
txtmtrlocal.Text = Empty
txtmtrmobile.Text = Empty
txtmtrstd.Text = Empty
txtmtrisd.Text = Empty
End Function
**********Code For frmoptad called by MDIForm1 Form**********
Private Sub cmdback_Click()
Unload Me
MDIForm1.Show
End Sub
Private Sub cmdok_Click()
If Option1.Value Then frmmtrentry.Show: frmoptad.Hide
If Option2.Value Then frmratentry.Show: frmoptad.Hide
If Option3.Value Then frmeditcust.Show: frmoptad.Hide
End Sub
Private Sub Label2_Click()
Option1.Value = True
End Sub
Private Sub Label3_Click()
Option2.Value = True
End Sub
Private Sub Label4_Click()
Option3.Value = True
End Sub
**********Code For frmmtrentry called by frmoptad Form**********
Option Explicit
Dim choosemoddel As Integer
Dim rs As Recordset
Dim con As Connection
Private Sub err_han()
'Handling the expected errors
Dim response As Integer
Select Case Err.Number
Case -2147467259
Call EDSaveCancel(True, False)
Call EDTB(Empty)
Call EmptyTB
MsgBox "Duplicate Record Entry", vbInformation + vbOKOnly,
"TELEBILL SOFTWARE"
Case Else
If Err.Number <> 0 Then
MsgBox Err.Number & " : " & Err.Description
End If
End Select
End Sub
Private Sub cmdok_Click()
If txtpwd.Text <> "poonampoonam" Then
MsgBox "Wrong password entered!!!", vbCritical + vbOKOnly,
"TELEBILL SOFTWARE"
Call EDPwd(False)
Call EDTB(False)
Call EDSaveCancel(True, False)
Exit Sub
End If
Call EDPwd(False)
Call EDSaveCancel(False, True)
Dim list As ListItem
With lvwModDel
.ListItems.Clear
End With
Set rs = New Recordset
rs.Open "select * from table3 ", con, adOpenDynamic, adLockOptimistic
If rs.BOF Then
MsgBox "No Records", vbInformation + vbOKOnly, "TELEBILL
SOFTWARE"
Call EDSaveCancel(True, False)
Else
lvwModDel.Visible = True
Do While Not rs.EOF
Set list = lvwModDel.ListItems.Add
list.Text = rs(0)
list.SubItems(1) = rs(1)
list.SubItems(2) = rs(2)
list.SubItems(3) = rs(3)
list.SubItems(4) = rs(4)
rs.MoveNext
Loop
End If
Set rs = Nothing
End Sub
Private Sub cmdadd_Click()
choosemoddel = 0
Call EDSaveCancel(False, True)
Call EDTB(True)
Call EmptyTB
txtteleno.SetFocus
End Sub
Private Sub cmdcancel_Click()
Call EDTB(False)
Call EDSaveCancel(True, False)
lvwModDel.Visible = False
Call EmptyTB
End Sub
Private Sub cmddelete_Click()
choosemoddel = 2
Call EDTB(False)
Call EDPwd(True)
Call EDSaveCancel(False, False)
txtpwd.Text = ""
txtpwd.SetFocus
End Sub
Private Sub cmdmodify_Click()
choosemoddel = 1
Call EDTB(True)
Call EDPwd(True)
Call EDSaveCancel(False, False)
txtpwd.Text = ""
txtpwd.SetFocus
End Sub
Private Sub cmdsubmit_Click()
Dim duplicate As Boolean
duplicate = False
If txtteleno.Text <> Empty Then
If choosemoddel = 1 Then
con.Execute "update table3 set mLocal='" & Val(txtlocal.Text) &
"',mmobile='" & Val(txtmobile.Text) & "',mSTD='" & Val(txtstd.Text) &
"',mISD='" & Val(txtisd.Text) & "'where custphno = '" & txtteleno.Text & "'"
MsgBox "Records Modified", vbInformation + vbOKOnly,
"TELEBILL SOFTWARE"
End If
If choosemoddel = 0 Then
con.Execute "insert into table3 values('" & txtteleno.Text & "','" &
txtlocal.Text & "','" & txtmobile.Text & "','" & txtstd.Text & "','" & txtisd.Text
& "')"
MsgBox "Records Inserted Successfully", vbInformation +
vbOKOnly, "TELEBILL SOFTWARE"
End If
Else
MsgBox "Check for Empty Boxes", vbInformation + vbOKOnly,
"TELEBILL SOFTWARE"
End If
Call EDSaveCancel(True, False)
Call EmptyTB
Call EDTB(False)
End Sub
Private Sub cmdexit_Click()
Unload Me
frmoptad.Show
End Sub
Private Sub Form_Activate()
Call EDTB(False)
Call EDSaveCancel(True, False)
Set con = New Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source='C:\Poonam\tele.mdb';Persist Security Info=False"
End Sub
Public Function EDSaveCancel(choose As Boolean, choice As Boolean)
cmdadd.Enabled = choose
cmdmodify.Enabled = choose
cmddelete.Enabled = choose
cmdcancel.Enabled = choice
cmdsubmit.Enabled = choice
End Function
Public Function EDTB(cho As Boolean)
txtteleno.Enabled = cho
txtlocal.Enabled = cho
txtmobile.Enabled = cho
txtstd.Enabled = cho
txtisd.Enabled = cho
End Function
Public Sub EmptyTB()
txtteleno.Text = Empty
txtlocal.Text = Empty
txtmobile.Text = Empty
txtstd.Text = Empty
txtisd.Text = Empty
End Sub
Public Function EDPwd(wish As Boolean)
Label7.Visible = wish
txtpwd.Visible = wish
cmdok.Visible = wish
End Function
Private Sub lvwModDel_Click()
lvwModDel.Visible = False
txtteleno.Text = lvwModDel.SelectedItem.Text
txtlocal.Text = lvwModDel.SelectedItem.SubItems(1)
txtmobile.Text = lvwModDel.SelectedItem.SubItems(2)
txtstd.Text = lvwModDel.SelectedItem.SubItems(3)
txtisd.Text = lvwModDel.SelectedItem.SubItems(4)
If choosemoddel = 2 Then
If MsgBox("Are You Sure!!", vbDefaultButton2 + vbYesNo, "TELEBILL
SOFTWARE") = vbYes Then
con.Execute "delete from table3 where custphno='" &
txtteleno.Text & "' and val(mLocal) ='" & txtlocal.Text & "' and
val(mmobile) = '" & txtmobile.Text & "'and val(mSTD) ='" & txtstd.Text & "'
and val(mISD) ='" & txtisd.Text & "' "
End If
Call EmptyTB
Call EDSaveCancel(True, False)
Call EDTB(False)
choosemoddel = 0
End If
End Sub
Private Sub lvwmoddel_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
lvwModDel.Visible = False
txtteleno.Text = lvwModDel.SelectedItem.Text
txtlocal.Text = lvwModDel.SelectedItem.SubItems(1)
txtmobile.Text = lvwModDel.SelectedItem.SubItems(2)
txtstd.Text = lvwModDel.SelectedItem.SubItems(3)
txtisd.Text = lvwModDel.SelectedItem.SubItems(4)
If choosemoddel = 2 Then
If MsgBox("Are You Sure!!", vbDefaultButton2 + vbYesNo, "TELEBILL
SOFTWARE") = vbYes Then
con.Execute "delete from table2 where telno='" & txtteleno.Text & "'
and val(localm) ='" & txtlocal.Text & "' and val(mobile) = '" & txtmobile.Text
& "'and val(std) ='" & txtstd.Text & "' and val(isd) ='" & txtisd.Text & "' "
End If
Call EmptyTB
Call EDSaveCancel(True, False)
Call EDTB(False)
choosemoddel = 0
End If
End If
End Sub
*******Code For frmratentry called by frmoptad Form**********
Option Explicit
Dim rs As Recordset
Dim con As Connection
Private Sub err_han()
Text1.Text = "0.00"
Text2.Text = "0.00"
Text3.Text = "0.00"
Text4.Text = "0.00"
Text6.Text = "0.00"
End Sub
Private Sub cmdadd_Click()
con.Execute "insert into CALL_RATES values('" & Text1.Text & "','" &
Text2.Text & "','" & Text3.Text & "','" & Text4.Text & "','" & Text6.Text &
"')"
MsgBox "Rate Changed Successfully", vbInformation +
vbOKOnly, "TELEBILL SOFTWARE"
cmdback.SetFocus
End Sub
Private Sub cmdback_Click()
frmoptad.Show
Unload Me
End Sub
Private Sub cmdchange_Click()
Text5.Visible = True
Label6.Visible = True
Text5.Text = ""
Text5.SetFocus
cmdok.Visible = True
End Sub
Private Sub cmdok_Click()
If Text5.Text = "Poonam Kumari" Then
con.Execute "delete from CALL_RATES"
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
Text4.Enabled = True
Text6.Enabled = True
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text6.Text = ""
Text1.SetFocus
cmdadd.Enabled = True
cmdadd.Visible = True
Else
MsgBox "Invalid Password, try again!", , "Login"
Text5.Visible = False
Label6.Visible = False
End If
cmdok.Visible = False
Text5.Visible = False
Label6.Visible = False
End Sub
Private Sub Form_Load()
On Error GoTo error_handler
Set con = New Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='C:\Poonam
Kumari\tele.mdb ';Persist Security Info=False"
Set rs = New Recordset
rs.Open "select * from CALL_RATES", con, adOpenDynamic,
adLockOptimistic
cmdadd.Enabled = False
cmdadd.Visible = False
cmdok.Visible = False
Text5.Visible = False
Label6.Visible = False
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Text4.Enabled = False
Text6.Enabled = False
Text1.Text = rs.Fields(0)
Text2.Text = rs.Fields(1)
Text3.Text = rs.Fields(2)
Text4.Text = rs.Fields(3)
Text6.Text = rs.Fields(4)
error_handler:
err_han
End Sub
*******Code For frmeditcust called by frmoptad Form**********
Option Explicit
Dim choosemoddel As Integer
Dim rs As Recordset
Dim con As Connection
Private Sub err_han()
Dim response As Integer
Select Case Err.Number
Case -2147467259
Call EDSaveCancel(True, False)
Call EDTB(Empty)
Call EmptyTB
MsgBox "Duplicate Record Entry", vbInformation + vbOKOnly, "TBS
SOFTWARE"
Case Else
If Err.Number <> 0 Then
MsgBox Err.Number & " : " & Err.Description
End If
End Select
End Sub
Private Sub cmdok_Click()
If txtpwd.Text <> "Poonam Kumari" Then
MsgBox "Wrong password entered!!!", vbCritical + vbOKOnly, "TBS
SOFTWARE"
Call EDPwd(False)
Call EDTB(False)
Call EDSaveCancel(True, False)
Exit Sub
End If
Call EDPwd(False)
Call EDSaveCancel(False, True)
Dim list As ListItem
With lvwModDel
.ListItems.CLEAR
End With
Set rs = New Recordset
rs.Open "select * from CUSTOMER_RECORDS", con, adOpenDynamic,
adLockOptimistic
If rs.BOF Then
MsgBox "No Records", vbInformation + vbOKOnly, "TBS SOFTWARE"
Call EDSaveCancel(True, False)
Else
lvwModDel.Visible = True
Do While Not rs.EOF
Set list = lvwModDel.ListItems.Add
list.Text = rs(0)
list.SubItems(1) = rs(1)
list.SubItems(2) = rs(2)
rs.MoveNext
Loop
End If
Set rs = Nothing
End Sub
Private Sub cmdsubmit_Click()
On Error GoTo error_handler
If txtaddress.Text <> Empty Or txtname.Text <> Empty Then
If choosemoddel = 1 Then
con.Execute "update CUSTOMER_RECORDS set custname='" &
txtname.Text & "',custadd='" & txtaddress.Text & "'where custphno = " &
Combo1.Text & ""
MsgBox "Records Modified", vbInformation + vbOKOnly, "TBS
SOFTWARE"
End If
Else
MsgBox "Check for Empty Boxes", vbInformation + vbOKOnly, "TBS
SOFTWARE"
End If
Call EDSaveCancel(True, False)
Call EmptyTB
Call EDTB(False)
error_handler:
err_han
End Sub
Private Sub cmdexit_Click()
Call EmptyTB
Unload Me
frmoptad.Show
End Sub
Private Sub cmdmodify_Click()
choosemoddel = 1
Call EDTB(True)
Call EDPwd(True)
Call EDSaveCancel(False, False)
txtpwd.Text = ""
txtpwd.SetFocus
End Sub
Private Sub cmddelete_Click()
choosemoddel = 2
Call EDTB(False)
Call EDPwd(True)
Call EDSaveCancel(False, False)
txtpwd.Text = ""
txtpwd.SetFocus
End Sub
Private Sub cmdcancel_Click()
Call EDTB(False)
Call EDSaveCancel(True, False)
lvwModDel.Visible = False
Call EmptyTB
End Sub
Private Sub Combo1_Click()
Set rs = New Recordset
If rs.State = adStateOpen Then
rs.Close
End If
rs.Open "select * from CUSTOMER_RECORDS WHERE custphno=" +
Combo1.Text, con, adOpenDynamic, adLockOptimistic
Do While Not rs.EOF
txtname.Text = Trim(rs.Fields(1))
txtaddress.Text = Trim(rs.Fields(2))
rs.MoveNext
Loop
Set rs = Nothing
End Sub
Private Sub Form_Activate()
Call EDTB(False)
Call DISPLAY1
Combo1.Refresh
Call EDSaveCancel(True, False)
End Sub
Public Function EDSaveCancel(choose As Boolean, choice As Boolean)
cmdmodify.Enabled = choose
cmddelete.Enabled = choose
cmdcancel.Enabled = choice
cmdsubmit.Enabled = choice
End Function
Public Function EDTB(cho As Boolean)
txtname.Enabled = cho
txtaddress.Enabled = cho
End Function
Public Function EDPwd(wish As Boolean)
Label5.Visible = wish
txtpwd.Visible = wish
cmdok.Visible = wish
End Function
Public Sub EmptyTB()
Call DISPLAY1
txtname.Text = Empty
txtaddress.Text = Empty
End Sub
Private Sub Form_Load()
Set con = New Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='C:\Poonam
Kumari\tele.mdb';Persist Security Info=False"
End Sub
Private Sub lvwModDel_Click()
lvwModDel.Visible = False
Combo1.Text = lvwModDel.SelectedItem.Text
txtname.Text = lvwModDel.SelectedItem.SubItems(1)
txtaddress.Text = lvwModDel.SelectedItem.SubItems(2)
If choosemoddel = 2 Then
If MsgBox("Are You Sure!!", vbDefaultButton2 + vbYesNo, "TBS
SOFTWARE") = vbYes Then
con.Execute "delete from CUSTOMER_RECORDS where
custphno=" & Combo1.Text & " and custname ='" & txtname.Text & "' and
custadd = '" & txtaddress.Text & "'"
End If
Call EmptyTB
Call EDSaveCancel(True, False)
Call EDTB(False)
choosemoddel = 0
End If
End Sub
Private Sub lvwmoddel_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
lvwModDel.Visible = False
txttelno.Text = lvwModDel.SelectedItem.Text
txtname.Text = lvwModDel.SelectedItem.SubItems(1)
txtaddress.Text = lvwModDel.SelectedItem.SubItems(2)
If choosemoddel = 2 Then
If MsgBox("Are You Sure!!", vbDefaultButton2 + vbYesNo, "TBS
SOFTWARE") = vbYes Then
con.Execute "delete from CUSTOMER_RECORDS where
custphno=" & Combo1.Text & " and custname ='" & txtname.Text & "' and
custadd = '" & txtaddress.Text & "'"
End If
Call EmptyTB
Call EDSaveCancel(True, False)
Call EDTB(False)
choosemoddel = 0
End If
End If
End Sub
Public Sub DISPLAY1()
Set rs = New Recordset
If rs.State = adStateOpen Then
rs.Close
End If
rs.Open "select custphno from CUSTOMER_RECORDS ", con,
adOpenDynamic, adLockOptimistic
Combo1.CLEAR
Do While Not rs.EOF
Combo1.AddItem (rs!custphno)
Combo1.Text = rs!custphno
rs.MoveNext
Loop
Set rs = Nothing
End Sub
**********Code For frmAbout called by MDIForm1 Form**********
Private Sub cmdok_Click()
Unload Me
MDIForm1.Show
End Sub
Private Sub Timer1_Timer()
r = Rnd * 150
g = Rnd * 200
b = Rnd * 150
lblTitle.ForeColor = RGB(r, g, b)
End Sub
**********Code For EXISTING CUSTOMER RECORDS Form**********
Option Explicit
Dim rs As Recordset
Dim rs1 As Recordset
Dim con As Connection
Private Sub err_han()
Dim response As Integer
Select Case Err.Number
Case 3021
Text1.Text = rs.Fields(0)
Text2.Text = rs.Fields(2)
Text3.Text = rs.Fields(1)
Text4.Text = 0
Text5.Text = 0
Text6.Text = 0
Text7.Text = 0
Case Else
If Err.Number <> 0 Then
MsgBox Err.Number & " : " & Err.Description
End If
End Select
End Sub
Private Sub cmdexit_Click()
Call CLEAR
Call EDCmd(True)
Me.Hide
MDIForm1.Show
End Sub
Private Sub cmdok_Click()
Dim match As Boolean
match = False
If rs.BOF = True Then
rs.MoveFirst
End If
Do While Not rs.EOF
If LCase(Left(rs.Fields(1), 1)) = LCase(Text8.Text) Then
match = True
Exit Do
Else
rs.MoveNext
End If
Loop
If match = False Then
MsgBox "No such record is there!!!", vbInformation + vbOKOnly,
"TELEBILL SOFTWARE"
rs.MoveFirst
Else
Call LocateMtr
Call Display
End If
End Sub
Private Sub cmdpre_Click()
If rs.BOF Then
MsgBox "No more records!!!", vbInformation + vbOKOnly, "TELEBILL
SOFTWARE"
rs.MoveNext
Else
rs.MovePrevious
End If
If Not rs.BOF Then
Call LocateMtr
Call Display
Else
Call CLEAR
End If
End Sub
Private Sub cmdnext_Click()
If rs.EOF Then
MsgBox "End of record!!!", vbInformation + vbOKOnly, "TELEBILL
SOFTWARE"
rs.MovePrevious
Else
rs.MoveNext
End If
If Not rs.EOF Then
Call LocateMtr
Call Display
Else
Call CLEAR
End If
End Sub
Private Sub cmdfirst_Click()
rs.MoveFirst
Call LocateMtr
Call Display
End Sub
Private Sub cmdlast_Click()
rs.MoveLast
Call LocateMtr
Call Display
End Sub
Private Sub Form_Activate()
Set con = New Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='C:\Poonam
Kumari\tele.mdb ';Persist Security Info=False"
Set rs = New Recordset
Set rs1 = New Recordset
rs.Open "select * from CUSTOMER_RECORDS ", con, adOpenDynamic,
adLockOptimistic
rs1.Open "select * from CUSTOMER_METER_READING ", con,
adOpenDynamic, adLockOptimistic
If Not rs.BOF Then
Call LocateMtr
Call Display
Else
Call EDCmd(False)
End If
End Sub
Public Function Display()
On Error GoTo error_handler
'Text8.Text = ""
Text1.Text = rs.Fields(1)
Text2.Text = rs.Fields(0)
Text3.Text = rs.Fields(2)
Text4.Text = rs1.Fields(1)
Text5.Text = rs1.Fields(2)
Text6.Text = rs1.Fields(3)
Text7.Text = rs1.Fields(4)
error_handler:
err_han
rs.MoveNext
End Function
Public Function CLEAR()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
End Function
Public Function LocateMtr()
On Error GoTo error_handler
rs1.MoveFirst
Do While Not rs.EOF
If rs.Fields(0) = rs1.Fields(0) Then
Exit Function
End If
rs1.MoveNext
Loop
error_handler:
err_han
End Function
Public Function EDCmd(choice As Boolean)
cmdok.Enabled = choice
cmdfirst.Enabled = choice
cmdpre.Enabled = choice
cmdnext.Enabled = choice
cmdlast.Enabled = choice
End Function
6. INPUT AND OUTPUT
SCREEN
1. LOADING STATUS OF THE FORM
2. LOGIN FORM
3. WELCOME FORM
Tele Admin
4. MDI Form
5. ENTRY FORM
6. CUSTOMER RECORD VIEWING FORM
8. CUSTOMER BILL CALCULATION FORM
9. ADMINISTRATIVE FORM
10. METER READING FORM
RATE ENTRY
11. CUSTOMER RECORD MODIFICATION FORM
12. HELP FORM
13. BILL REPORT

7) TESTING AND
DEBUGGING
Software testing is a critical element of software quality assurance and
represents the ultimate reviews of specification, design and coding.
Testing presents an interesting anomaly of the software. During earlier
definition and development phases, it was attempted to build software
from abstract concept to a tangible implementation.
The testing phase involves the testing of the
developed system using various set data. Presentation of test data plays
a vital role in system testing. After preparing the test data the system
under study was tested using test data. While testing the system by using
test data errors were found and corrected. A series of tests were
performed for the proposed system before the system was ready for
implementation. The various types of testing done on the system are:
� Unit Testing
� Integration Testing
� Validation Testing
� User Acceptance Testing
� System Testing
� UNIT TESTING
Unit testing focuses verification effort on the smallest unit of software
design, the module. It comprises the set of test performed by the
programmer prior to integration of the unit into larger system. The testing
was carried out during the coding stage itself. In this step each module is
found to be working satisfactorily as regards to the expected output from
the module.
� INTEGRATION TESTING
Integration testing is a systematic technique for constructing the program
structure while at the same time conducting tests to uncover error
associated within the interface. The objective is to take unit tested
modules and build a program structure that has been dictated by design.
All modules are combined in this step. The entire program is tested as
whole. And chaos in interfaces may usually result. A set of errors is
encountered in such a case.
The integration testing can be carried out using two
methodologies:
# Top Down Integration
# Bottom Up Integration
The first one is done where integration is carried out by addition of minor
modules to major modules. While Bottom Up integration follows
combination of smaller ones to large one. Here Bottom Up Integration
was encouraged. Even though correction was difficult because the
isolation of causes is complicated by the vastness of the entire program,
all the errors found in the system were corrected and then forwarded to
the next testing steps.
� USER ACCEPTANCE TESTING
User acceptance of a system is the key factor for the success of any
system. The system under consideration was tested for users acceptance
by constantly keeping in touch with the perspective system user at the
time of developing and making changes wherever required. This is done
with the regards to the following points:
A system may be defined as a set of instruction combined in the same
form and directed to some purpose.
Before any development is undertaken certain specifications are prepared
which objectively describe the application system. The System
specifications are made after consulting the end user managers of the
relevant departments.
Software to be developed is planned on the basis of requirement of the
user. The problem definition statement description of present situation
and goal to be achieved by news system.
The success of system depends on how accurately a problem is defined,
thoroughly investigated carried out through choice of solution. User need
identification and analysis that are concerned with what the uses needs
rather than what he/she wants. System explains how to perform specific
activities or task, which does what and what.
SCOPE AND RESULT
DISCUSSION
INTRODUCTION
Even the best system developed has some flaws or others. There always
exist scope of further improvement in the system. The effect of
implementations of new computerized system is found remarkable.
The following are the major improvement of the new system over the
existing system.
� A fully menu driven user-friendly computerized system has been
developed where the user can perform task like entering data,
deleting and updating the information with great ease.
� All the operations are carried automatically preventing a lot of
manual work.
� Additional checks have also been incorporated into the system to
avoid duplications of data as far as possible.
SCOPE FOR FURTHER IMPROVEMENT
Every project whether large or small has some limitations no matter
however diligently developed. In some cases limitations is small while in
other cases they may be broad also. The new system has got some
limitations. Major areas where modifications can be done are as follows:
� Our system is not online so further it can be improved.
� The security is limited so some additional arrangement could be
made to provide more security to the system.
� There is no provision of complain handling so further it can be added.
MAIN ACHIEVEMENT OF THE SYSTEM
This project gives an overview of the Telephone Billing System.
After entering into the project, user is left with several options via �
a) The user can take new connections.
b) The user can view the existing lists of customers, which already
have telephone connections.
c) The user can of course see bills & take billing statements.
d) The user can also do several administrative works like managing
rates of calls, addition or modification of metered calls &
customer entries.
It is a computerized system, which can be used very easily & effectively
by the administrators of the telephone billing system.
Chapter � 9
Bibliography
BIBLIOGRAPHY
The great help from our faculty members and my project guide that led
the successful completion of the project. Besides that, I took the help of
some books and websites to develop the project. They are : --
1. VISUAL BASIC BLACK BOOK
--- Steven Holzner
2. MASTERING VISUAL BASIC 6.0
---- Evangelos Petroutsos
SITES :
1. www.a1vbcode.com
2. www.google.co.in
We have also included sample test scenarios of various testing types like database,
security, and performance testing of an investment banking application.

testing investment banking software

redware research ltd.


Brighton Media Centre (306), 15-17 Middle Street, Brighton BN1 1AL.
tel 0845 3010 444 web www.redware.com
Telecoms Billing
Manual
Author: Stamati Crook
Email: stamati.crook@redware.com
Date: 20 January 2009
Doc: webbilling-manual-2.12.doc
� redware research limited 2006, 2009 2
Contents
Contents ..........................................................................
.......................................................... 2
Redware Research
Limited ...........................................................................
............................. 3
Introduction ......................................................................
......................................................... 4
Telecoms Billing
Overview ..........................................................................
............................... 5
Preparation .......................................................................
.................................................... 6
Suspense ..........................................................................
..................................................... 6
Reconciliation ....................................................................
.................................................... 7
Billing ...........................................................................
.......................................................... 7
Software
Overview ..........................................................................
.......................................... 8
Preparation .......................................................................
.................................................. 10
Technical .........................................................................
.................................................... 10
Suspense ..........................................................................
................................................... 11
Reconciliation ....................................................................
.................................................. 11
Billing ...........................................................................
........................................................ 11
Search ............................................................................
.......................................................... 12
Customer ..........................................................................
....................................................... 13
Template
Email .............................................................................
...................................... 14
Portal
User...............................................................................
............................................ 14
Services ..........................................................................
.......................................................... 16
Service
Report ............................................................................
......................................... 16
CLI/Originating
Number ............................................................................
.......................... 17
Number
Translation........................................................................
......................................... 19
Product ...........................................................................
......................................................... 20
Packages ..........................................................................
........................................................ 21
Discounts .........................................................................
........................................................ 22
Bills .............................................................................
............................................................. 23
Email .............................................................................
....................................................... 23
Bill
Items .............................................................................
................................................. 24
Credits ...........................................................................
...................................................... 24
Sage ..............................................................................
........................................................... 25
Glossary ..........................................................................
......................................................... 26
Package
Workflow ..........................................................................
......................................... 27
� redware research limited 2006, 2009 3
Redware Research Limited
Redware Research Limited is a software house specialising in solutions for
Microsoft CRM
and Sage Accounting. We are a Microsoft Registered Partner and have Sage Developer
status and are based on the south coast of England and welcome telephone enquiries
on
0845 3010 444 or +442031799444.
We specialise in accounting and billing solutions and have add-on software for
Microsoft
CRM to integrate your accounting system with CRM. We currently have solutions for
Sage
accounting and QuickBooks. We offer a consultancy package to adapt our software to
integrate with any accounting package.
Our 100-page Microsoft CRM 4.0 User Handbook is available online to help you get
started
and explore all the features of Microsoft CRM including the sales, marketing, and
service
areas. You can read and print out chapters online or buy the book. Please take a
look and
give us some feedback.
Redware has developed a range of software add-ons for Microsoft CRM covering a
broad
range of functionality including CTI telephony connection to TAPI compliant
telephone
systems, SMS text messaging to mobile phones, and UK and Irish company credit check
using financial data from Companies House.
We also sell software to help handle billing requirements for users of the Sage 50
accounting
system which includes our SYNC Accounting web site application which makes your
sales
history available over the internet as part of a customer portal and SYNC Billing
to upload
invoices into Sage from a spreadsheet. We also offer a bespoke Telecoms Reseller
package
based on our technology.
Our non-commercial focus is to get young children aged 8-12 programming with the
Scratch
programming language available free from the Lifelong Learning Group at MIT and we
have
resources for parents and teachers available on our website. We encourage you to
empower
your children with programming skills using our training videos and lesson plans.
Please contact us with any enquiries on any of our products or for a discussion on
how our
consultancy service might help integrate your business systems and processes.
Stamati Crook
Redware Research Limited
Brighton Media Centre (306)
15-17 Middle Street
Brighton BN1 1AL
England
Telephone: +44 203 1799 444 or 0845 3010 444
Web: www.redware.com
Email: stamati.crook@redware.com
� redware research limited 2006, 2009 4
Introduction
Thank you for purchasing or evaluating our Telecoms Reseller Billing software. This
document describes the software and we are very happy to demonstrate it to you on
request. Please call Stamati Crook on 0845 3010 444.
The Telecoms Billing Overview describes the business processes required to produce
bills
from raw call details records and introduces some billing terminology used
throughout the
document and noted in the glossary. Please start here if you are new to telecoms
billing.
This is followed by a software overview which explains how our software is used to
perform
billing. We typically charge a setup fee which includes our time to make sure you
complete
the first two billing months successfully and you need to appoint a billing manager
within
your organisation to understand the processes described here.
Our software is hosted and comprises a website for you to enter customer
information and
an area for you to upload raw call details files. These files are typically
processed once a day
and allow you access to all the information required to successfully bill all calls
against a
customer.
The final output is a PDF and a call details file which is automatically emailed to
each
customer and an data files with all the transactions to enter into your accounting
and
payment systems. We provide full automation to the Sage 50 accounting package.
Please get your billing manager to read through the documentation and call us to
arrange a
test site for you to experience the data entry side of the application first hand.
� redware research limited 2006, 2009 5
Telecoms Billing Overview
Telecoms Billing Systems process files of call data by matching each call against a
customer
record and rating it against a pricelist to produce a cost for each call.
The data often arrives from a third party as a daily or monthly data file known as
a CDR file
(see the glossary below for more terms). This file usually contains one record for
each call
containing the following minimum level of information:
?? Number Dialed.
?? Originating Number (CLI) used to identify the customer.
?? Duration in seconds or tenths of a second.
?? Date and Time of the Call.
The billing process takes each call and first matches the originating number
against the
customer database to discover the customer and pricelist to apply to this call.
Each call is
then rated against the pricelist to produce a retail price for the call. The
pricelist contains the
following parameters used to calculate the retail price:
?? A retail price per second for the call.
?? The retail price may differ for standard, economy and weekend time zones.
?? A setup charge that is added to each call (some calls will have only a setup
charge and no
price per second).
?? A rating interval usually set to one second but sometimes rounding up the
duration to
the nearest minute so the customer is billed 120 seconds duration for a 85 second
call
for example.
They may be issues that prevent the matching and rating of an individual call.
These problem
calls are placed in a suspense file for the billing manager to look at. Each call
in the suspense
file may be flagged with a suspense code that illustrates the problem encountered.
For
example, there may be issues matching the originating number for a new line against
a
customer record because the number has not been entered into the customer database
(part of a process known as provisioning).
Call details records may come from different sources depending on the technical
options
employed by the reseller who may provide VOIP services with one supplier and
traditional
telecoms services through another. An additional consideration in the UK for some
vendors
is the processing of additional call details for customers using BT lines which
arrive in a
special DEDS call details file which needs processing alongside other CDR data.
Part of the job of a billing manager is to look at the suspense file regularly and
then resolve
any issues and reprocess the suspense files. Billing often takes place on a
particular day each
month and bills are produced for each customer only once all the calls in the
suspense file
have been re-rated or written off. Part of the billing process is to perform a
reconciliation
where a number of bills are checked for accuracy and the totals for the month are
checked
against the telecoms provider invoice and validated against previous months to look
out for
any problems.
The actual billing run often involves the creation of an invoice and a data file
containing the
monthly call data for each customer. A summary may also be imported into the
accounting
system.
One final thing to note about billing is that it is often a monthly process that
uses a call detail
file created from a telecoms provider which itself has put the call details through
their billing
process. The provider may also provide a daily file or one may be available from
local
� redware research limited 2006, 2009 6
equipment (from an asterisk box or a local telecoms switch). It is important to
monitor the
daily files for fraud in case a customer�s system has been compromised. Fraud can
occur
over a bank holiday where a phone system is compromised and used to set up a call
shop
over a weekend which can result in thousands of pounds of fraudulent calls being
made. If
no other process is available, the billing system might also used for monitoring
fraud by
processing daily files although the actual customer bills might use the monthly
call details
file for producing the actual bills.
Preparation
A good deal of preparation is required before a monthly billing run can be
completed
successfully. It is possible to simply run a call details file through the billing
system and
watch all the call records drop into the suspense file which will provide a list of
every action
that needs to be performed to resolve billing issues for each call. A more
efficient process is
to prepare the following data for provisioning into the billing database:
?? Customers need to be entered into the database together with details of any
Originating
Numbers to be used to match against the call detail records. Additional information
may
need to be billed each month for rental of handsets and a maintenance fee or other
system costs.
?? Pricelist information needs to be maintained for each destination called by the
customer. The rating process should place calls to any destinations that do not
have a
valid retail price into the suspense file.
?? Many telecoms providers will include the cost information for each call in their
call
details record which can be used to double check that each call is being billed at
a profit.
An alternative is to create a pricelist for call costs and to rate each call for
both retail and
cost prices as part to aid the reconciliation process.
?? Call details may originate from different source each of which may have a
different
format. The pre-processing of each data file into a format that can be processed by
the
billing system is called mediation and needs to be set up by the technical team
before
billing can commence. This may also require the identification of additional
information
for a call such as whether it was a data or voice call.
Suspense
A large part of the responsibility of a Billing Manager is to eliminate calls from
the suspense
file. Each of these calls represents a call that cannot be billed to a customer and
therefore a
potential loss of revenue. Some of these calls may be due to an error by the
telecoms
provider and a mechanism might be required to claw this money back from the
provider if
the call cannot be billed.
A variety of reasons can prevent a call being matched and rated successfully. Here
are some
of the typical suspense reasons that are encountered each month:
?? Missing CLI (Originating Number) where no match is found in the customer
database.
?? Retail price of the call is less than the cost obtained using the cost pricelist
or from the
provider�s cost data.
?? Invalid destination number.
?? Retail price not found in the database.
� redware research limited 2006, 2009 7
Each of these issues needs to be resolved and the suspense files re-rated ready for
billing.
The Billing Manager needs to clear all the suspense or write off the call records
prior to
completing the billing process.
Reconciliation
The reconciliation process is usually performed by the Billing Manager, maybe
together with
the Accounts department, and involves a series of cross-checks to make sure that
there have
been no errors during this month�s billing process.
Each company devises their own checks some of which might be taken from the list
below:
?? A justification is required for each call written off in the suspense file and
occasionally
revenue needs to be reclaimed from the provider.
?? Each individual call might be checked against the actual cost charged by the
provider or
against a cost pricelist.
?? A percentage of the monthly bills for each customer should to be checked
manually.
?? The monthly totals for each customer (minutes and value) should be checked
against
historical spending patterns to look for any discrepancy (or fraud).
?? Total duration and number of calls per destination can be checked against
historical
trends.
?? The total duration and number of calls can be checked against the provider�s
invoice and
often broken down by destination.
?? Totals for items other than calls needs to be checked against historical trends
both by
customer and as totals by product type.
Reconciliation is critical to the billing process and any errors in billing needs
to be identified
before the bills are sent out to the customers. Sometimes the monthly billing run
may need
to be repeated (using a backup of the database) if a major error is encountered.
Billing
The final stage in the billing process once reconciliation is complete is the
creation of the
customer bills and their fulfilment by sending out emails or importing data into
the
accounting system.
This final stage typically involves some or all of the following:
?? Creation and emailing of a spreadsheet and maybe a summary sheet or PDF
containing
call details for each customer.
?? Importing of billing information into the accounting system for the production
of
invoices.
?? Interfacing with a payment system (such as direct debit in the UK) for payment
processing.
Billing is an endless cycle and processing of daily call details and suspense may
continue
during the billing process or immediately once billing is complete in preparation
for the next
month of bills. Larger companies may need to stagger billing into a weekly process
for
different groups of customer to regulate the Billing Manager�s workload or level
out the
cashflow.
� redware research limited 2006, 2009 8
Software Overview
This document describes the process of implementing and running the Telecoms
Billing
System from Redware Research Limited. Please read our Overview on Telecoms Billing
if you
need a refresher on the meaning of some of the terms used in this document �
mediation,
provisioning, matching and rating.
Our software is a hosted system so you do not need to invest in servers or database
infrastructure to run your billing. Billing is usually a monthly process which
creates two files
that can be emailed automatically to each customer:
?? A PDF document shows a summary of call charges together with a list of any
monthly
charges such as line or equipment rental and internet hosting charges.
?? A data file in CSV format containing a list of all the calls made during the
month together
with the destination and prices.
A summary data file of all the items billed for all customers is also produced for
you to
import into your accounting systems and we provide software to import this directly
into the
Sage 50 accounting package as product invoices or as sales transactions. We also
provide
utilities to help you send accounting data on to your payment provider to process
direct
debits or credit card payments for example.
The billing process requires you to provision the billing database with all the
information
required to match and rate each call. The calls themselves are loaded onto our
server from
your telecoms provider or from your own equipment. You can load a call details file
directly
from an asterisk box or your own telecoms switch for processing through the billing
system
or use a monthly call details file created by your telecoms provider.
Call data is processed through the system and problem calls that have data missing
from the
billing database are passed into a suspense file for the person appointed your
Billing
Manager to view and fix. Typical issues encountered on a daily basis might be the
need to
add an Originating Number and Pricelist against a customer record once a new line
has
become active or the need to enter a retail and cost price for a new destination
that has not
been encountered before.
The Billing process in general is described in our Telecoms Billing Overview
document and
our approach detailed below.
Our approach to implementation involves a setup process where we take you through
the
mediation and preparation phases so that we assist you to complete the first
billing run. We
also assist and guide you with telephone support for a second month before leaving
your
billing manager in control of the process. We then charge you a minimal support fee
in case
of new issues arising so you can request our help once a month a few days before
your
billing run or purchase consultancy days from us if you need further help (for
example to
integrate a new source of data when you change telecoms provider).
Once all the initial information has been entered, we can process the call data
through the
billing system to create the first suspense files. We then need to resolve all the
suspense
issues together with your Billing Manager. This approach is iterative so that we
can prepare
most of the data with the initial upload and then resolve any issues using the
website
gradually as the errors appear as the each set of calls is processed.
A sample screenshot from the website is shown below. Customer care staff can change
customer details and add service details (Originating Numbers) or packages of
monthly costs
to each customer as well as view past billing history. This is the method of
specifying
provisioning data after the initial preparation phase.
� redware research limited 2006, 2009 9
Suspense reports are available as spreadsheet files and have a different format
according to
the suspense code. An example is shown below where calls have a retail price which
is less
than the cost price. The options for this category of suspense is to change either
the retail
price or the cost price and rerate the calls or to accept the calls as they are for
billing.
Sometimes the calls need to be written off and perhaps the telecoms provider
contacted for
a refund as these calls cannot be billed.
Our approach to the following tasks and processes is detailed below:
?? The preparation phase involves the initial provisioning of customer details
together with
the list of their originating numbers and additional monthly charges.
?? Pricelists need to be created for both cost and retail pricing by destination.
?? We take a look at your call details files (you may have several sources of call
data) and
specify the mediation process for each format so that you can upload the call data
successfully into the billing database.
?? At this point, you are in a position to process call details through the system.
Any
problems with individual calls results in them being placed in a suspense file. You
receive
an email containing a spreadsheet with summary information for each suspense code
so
that the billing manager can take the required action and then re-rate the call
data.
� redware research limited 2006, 2009 10
?? Reconciliation reports are available that summarise the billing activity for the
current
month so you can cross-check against provider invoices and historical trends before
completing the monthly billing. Most Billing Managers also physically check a
number of
customer bills for accuracy.
?? The final billing process results in an email going out to each customer and
integration
with your accounting and payment systems.
?? Billing is a monthly process and you also need to consider daily monitoring of
call data to
monitor and anticipate issues with fraud.
Preparation
We usually help you with the initial provisioning of the system by asking you to
prepare
spreadsheets containing the data we require to bill the call details. We provide
you with
sample spreadsheets which you complete and we upload into the database:
?? A spreadsheet of all customers is required each with an account number. We can
create
this spreadsheet automatically from the Sage 50 accounting database (you can delete
any customers not required in the billing system).
?? We provide you with a spreadsheet of all the possible destinations and you enter
as
many of the cost prices as you can. We can sometimes massage the data from your
provider if you have pricing data in a suitable format for us to process
automatically.
?? You can create a retail price tariff directly from a cost tariff by copying the
cost tariff and
applying a 20% mark up for example. You then add specific retail pricing for any
important destinations such as UK national and mobile calls and you can create as
many
pricelists as you like.
?? You can upload the originating numbers for each customer from a spreadsheet or
use
the website to enter this information alongside any monthly billing costs for the
customer. You can also specify the pricelist against the customer or each
originating
number so that you apply different pricelist for traditional telephony and VOIP
calls.
?? We help you define monthly packages in the billing database to represent monthly
equipment rental or charges which you then apply against each customer using the
website.
Technical
You need to give us details of your call details file format (and sample files) so
we can
implement the mediation layer necessary for successful importing of call data into
the billing
database.
We also need your logo and simple design information such as the font you would
like to use
so we can design the format of the PDF file to contain the billing summary to be
emailed to
the customer.
� redware research limited 2006, 2009 11
Suspense
The billing system is typically configured to process call details and re-rate
suspense once per
day. You upload call details files onto a server each day before your scheduled
time and the
system processes any new data and sends a number of spreadsheets you the Billing
Manager by email containing details of any suspense calls. Often you may upload a
file just
once a month as you receive the monthly CDR from your telecoms provider.
The Billing Manager resolves any issues using the web interface and the re-rating
process
occurs again the next day resulting in a new set of suspense data being emailed to
the Billing
Manager. Our support staff also check the suspense data once a month to see if we
need to
take any action to resolve any suspense issues.
You may need to run the re-rating process more than once per day as you get close
to your
monthly billing date. The Billing manager must resolve or write off any suspense
before
monthly billing can take place.
Reconciliation
A number of reports are available that monitor the current state of monthly billing
and
produce a comparison against the previous months data. You must define your own
reconciliation procedure often involving reports (spreadsheets) containing the
following
data:
?? Summary per customer for this month and the previous month.
?? Summary per destination for this month and the previous month.
?? Summary per telecoms provider for this month and the previous month.
?? Individual details of the monthly and call costs to be invoiced for each
customer.
Summary data usually includes the number and total duration of all calls together
with the
retail price and cost price and also the CDR cost price from the telecoms provider
if supplied
in the call details file.
Billing
The billing process can take place once reconciliation is complete and results in
an email
being sent to the customer with a PDF containing the billing summary of call costs
and
monthly costs together with a spreadsheet format data file of all call details.
The invoices can be imported directly into Sage 50 as product invoices or
transaction files
integrated with your own systems and third party payment providers. The bills and
spreadsheet files are available for download onto your internal systems allowing a
customer
portal to be created easily from billing data.
� redware research limited 2006, 2009 12
Search
The search page allows you to search the different areas of the billing database.
Select the
appropriate entity in the mode selection box:
� Customer.
� Originating Number.
� Number Translation.
� Products.
� Packages
A single search field is provided which searches several different fields in the
target database
and pressing the search button produces a table of the required data. Clicking on
the
leftmost column will take you to the required entity.
This example below shows you a query on number translation. Clicking on the
customer link
will take you to the web page for managing the service for that particular
customer.
� redware research limited 2006, 2009 13
Customer
The Customer page gives you access to all the options for maintaining information
and
services for a customer. The menu along the top of the page gives access to the
following
options:
?? Return to the search page.
?? View the services for a customer. Services include Originating Numbers (CLI) for
processing call details and monthly products and packages as well as non-geographic
numbers provisioned against that account (see the services section).
?? Discounts allow a range of special discounts to be applied when billing.
?? Switch is for custom provisioning not normally provided with our service.
?? Bills allow access to previous billing information for the customer.
?? Sage gives access to your accounting database if you are running our SYNC
Accounting
website locally on your network and are using the Sage 50 accounting system.
An edit and save button allows you to change the details held against a customer.
Note that
the address information relates only to the billing contacts and you may need to
update
information in your accounting database separately.
The following fields are important from a billing point of view:
?? The account number needs to match your accounting records.
?? The address is the address to receive billing information.
?? The email address is used to email bills and call details.
?? The email format is HTML or TEXT.
� redware research limited 2006, 2009 14
?? The bill format is for the call detail records and is only EXCEL 95 is currently
specified.
?? The bill group is specified if you need separate billing information but a
single invoice for
a particular group of customers. Just select a unique billing reference (usually
the
account number) for the group account.
?? The direct debit flag is helpful if you integrate with direct debit or other
automated
payment systems.
?? The autobill flag is set to false if you do not want to automatically send out
emails and
call details when the monthly billing is complete.
?? Start and End date is used to control when an account is active.
Template Email
It is possible to set up a number of email templates within the website which can
be used for
emailing the customer.
Please email support for more information.
Portal User
You may have purchased a customer portal website from us in which case you can
setup the
user details using the portal users page available from the bottom of the Customer
webpage.
Add a portal user against a customer account using the Add Portal User button or
edit the
details by pressing the link. Once on the portal user webpage you can email a
forgotten
password to the user by pressing the Email User Details button.
� redware research limited 2006, 2009 15
� redware research limited 2006, 2009 16
Services
The services webpage provides access to most of the provisioning functionality of
the
system. You can control the following services from this webpage:
?? CLI/Originating numbers which allow a match against your call details records.
?? Number Translation for 0845 and other non-geographic numbers assigned to the
account.
?? Products which may be billed once only or monthly or annually.
?? Packages (predefined collections of products) which may be billed once, or
monthly or
annually.
Service Report
The service report is a simple webpage that can be printed out or emailed to the
customer
as a summary of the active services provisioned against that account.
� redware research limited 2006, 2009 17
CLI/Originating Number
The Originating Number (CLI) can be a single number or a continuous range of
numbers
depending on the requirements of your system. Sometimes a different identifier that
is not a
valid phone number may need to be specified for VOIP and other telecoms providers.
� redware research limited 2006, 2009 18
The postcode, product, connection, and provider fields are not required for billing
and are
for information only. If you use BT Openreach services you will need your own
interface to
the WLR3 system as we do not support provisioning through BT (although we do
support
billing with the DEDS CDR received daily from BT).
Note that the pricelist is inherited from the customer record but you can specify a
different
pricelist for individual services. This is useful if you want to provide one
pricelist for
traditional telephony and a different pricelist for VOIP services.
The start and finish and active dates are important for controlling the processing
of CDR. Any
call details that fall outside of these dates will go into suspense so you can make
sure that
your telecoms provider has ceased providing a service on your customer equipment.
� redware research limited 2006, 2009 19
Number Translation
Number Translation can be set up easily in the billing system and will need also to
be
provisioned with your provider or on your equipment. We need technical information
on
how these calls are represented in your call details files when we set up your
system so we
can make the relevant adjustments in the mediation process that loads your call
details files
into the billing system.
The non-geographic number is specified in the number field and the number it maps
on to is
specified in the destination field. The destination field can be a mobile number or
a national
number and the system uses the default pricelist of the customer to calculate
costs.
We can cope with the special case of international toll free numbers but need to
set up
special processing in the mediation layer. International toll free numbers are
specified in the
access field and also mapped onto a number that may be used in the call details
file and a
destination for calculating the price (in this case an international number).
The product is always NGN (for non-geographic number translation) and the provider
is for
information only. The active, start, and end dates should match your provisioning
so you can
check if your provider is still passing calls through when you have de-provisioned
the
number,
� redware research limited 2006, 2009 20
Product
The available product are predefined in your system often by uploading from the
products
defined in your accounting database.
The frequency, quantity and unit price are used for billing together with the
active flag,
start and end dates. The description field is for information and is copied into
the invoice
and billing summary each month and the billed date shows you the date that the
customer
has been billed to. Occasionally you will need to use the billed date to calculate
the amount
required for a credit note if a customer cancels the product after they have
already paid for
the time.
The following values for frequency are permitted:
?? Once only appears only once on the next bill.
?? Monthly appear each month.
?? Quarterly appear each quarter using the start date as the date reference.
?? Annual appear once a year on the anniversary of the start date.
� redware research limited 2006, 2009 21
Packages
Packages are complex and are setup specifically for your business. Typically they
allow a
collection of products to be billed as a single item on the invoice. You may
provide a range of
internet hosting services for example but want a single item on the bill. You can
add a
package to the customer and then select or deselect from a range of products
available for
that package.
Packages are setup specifically for your business if required and not discussed
here.
� redware research limited 2006, 2009 22
Discounts
A small number of pre-define discounts can be applied to a customer bill.
You can add a discount of the following types:
?? A global discount applies a percentage discount to any number that is
provisioned on
your system. That means that any customer calling a service to any other customer
provisioned on your billing system can receive discounted calls.
?? The intra-company discount applies a discount percentage but only to service
provisioned on your systems for the single customer.
Friends and Family discounts to specific numbers are also possible.
Note that you can also specify prices to individual destinations using a custom
pricelist.
� redware research limited 2006, 2009 23
Bills
Bills allows you access to information for the billing history for a customer. A
PDF file for the
billing summary (invoice) and a data file of all the call details is stored for
each monthly bill
for each customer. These files can be copied down to your local server or accessed
from this
webpage.
Email
The email link on the bills page allows you to send out a template email to a
customer with a
copy of their billing information for the month specified.
� redware research limited 2006, 2009 24
Bill Items
The Bill Items webpage allows you to view (and drill down) on the individual bill
items for a
customer.
Credits
The Credits button allows you to view any credits (applied only to packages) for a
customer
which are automatically incorporated into the next bill.
� redware research limited 2006, 2009 25
Sage
You can install our SYNC Accounting package on your local systems to gain access to
all your
Sage 50 accounting data from within the Billing website. The Sage webpage gives
access to
this information.
� redware research limited 2006, 2009 26
Glossary
Billing Manager The person responsible for the billing process, particularly the
elimination
of suspense call detail records before the monthly billing run.
Billing Run A monthly (usually) process to complete billing by eliminating suspense
records and actually creating the bills for the customer.
CDR Billing data for each call is received as part of a file containing CDR - Call
Detail Records.
Mediation The raw CDR file is often massaged to pre-process the data ready for
matching and rating. This usually involves formatting the number dialled
field and recording additional information such as whether the call was
over an ISDN line and so on.
Match Each call record is matched against a customer record usually with the CLI
field.
Provisioning The process of setting up a new line with the telecoms provider and
entering the information into the billing database.
Rate Each call record is rated against a pricelist to product a price for the call.
Reconciliation The process undertaken by the billing manager where the monthly CDR
is
checked thoroughly before completing the billing run and sending out the
bills to customers.
Suspense There may be issues when processing a call record that prevent the
matching and rating process from completing. These call details records
are held in a suspense file and the Billing Manager needs to identify the
issues and then re-rate these records prior to the monthly billing run.
� redware research limited 2006, 2009 27
Package Workflow
Packages invariably have some workflow issues and the status selection box is
designed to
help organise each package with a next action indicator. The current values include
some
cancellation codes and the following actions:
� To be ordered.
� Install Date Set.
� Live.
The 'to be ordered' search term is entered into the search page for packages to
view all the
packages that still need to initial order fulfilment to be made:
Select the package that you wish to process and complete the provisioning before
changing
the status to On Order and filling in the order date. The package will be presented
next
when you enter On Order as the search term for packages.

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: [show]

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 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)

Testing Investment Banking Application 1

#2) From the below screen you can view the positions, quantity and price of a
particular symbol.

Testing Investment Banking Application 2

#3) Below is the sample screenshot of How a Watch List of an IB application looks
like.

Testing Investment Banking Application 3

#4) This screen shows the graphical view of a symbol.

Testing Investment Banking Application 4


#5) Below screen displays how a position or order is closed.

Testing Investment Banking Application 5

#6) This shows the profile details of a client.

Testing Investment Banking Application 6

#7) Below screen displays the view of mobile IB application.

Testing Investment Banking Application 7

[screenshot source1 and source2]

Test Scenarios:
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.

Positive Scenarios:

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.

Negative Scenarios:

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:
banking software security testing
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).
Conclusion:
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.

Recommended Reading
Difference between Desktop, Client Server Testing and Web Testing
Web Application Security Testing Guide
Application Testing � Into the Basics of Software Testing!
Installing your Application on Device and Start Testing from Eclipse
Testing Healthcare Applications - Tips and Important Test Scenarios (Part 2)
Destructive Testing and Non Destructive Testing Tutorial
Performance Testing vs Load Testing vs Stress Testing (Difference)
What is Monkey Testing in Software Testing?
CategoriesTesting Tips and Resources
Post navigation
4 Important Things I Learned in My Journey as a QA Test Manager
How to Integrate JIRA with qTest: A Step by Step Guide
28 thoughts on �How to Test Investment Banking Application (with 34+ Important Test
Scenarios)�
KiranS
| Reply
very good scenarios. do you have material on bfsi domain also?

pradeep
| Reply
Please put an article on �How to Test Trade Finance Application�..!
Thanks.

bharathi
| Reply
Appreciate the scenarios covered. It is very helpful. Similar logic can be used for
other domain application. Thanks for sharing.

Darshan
| Reply
Great info. most of the important scenarios and test types covered Thanks.

Geetha
| Reply
Useful article. shall we enter into live market with this knowledge?

Prashant
| Reply
Very useful article.Thanks a lot. :)

Laxmi STH Author


| Reply
Thank you all..

Laxmi STH Author


| Reply
Presently I don�t have any specific document on BFSI and on Trade finance
application. Will try to cover the same in near future.

@Geeta � Only the knowledge you gained from this article is not sufficient for
trading in Live market. Additionally you need to follow the daily news on trade
market.

AlexPham
| Reply
that�s nice article. Please give more examples about trading application.

Thanks a lot!

vidhya
| Reply
nice article
Mohammed Musthaq Shaik
| Reply
Very well explained Laxmi I was reading this stuff for first time in life and your
post made good sense. Thanks

Deepika Aviti
| Reply
Hi Laxmi,
Thanks alot for the article.
This is very much usefull for me. I have been searching for this kind of materia
since long.

Laxmi STH Author


| Reply
Thank you all for your appreciation. Thanks a lot

divakar
| Reply
Very useful info, Thanks� can u send(divakar215.k@gmail.com) me resume format of
tester in Capital Market Domain??

roopesh
| Reply
thank you for this .but i want what exactly i am going to test likewise all trade
is valid or not and if we have 20k trade for the particular day then one 10k
executed then remaining 10k executes.so tell me what exactly i am test for this.

Nilesh
| Reply
Very useful can we crack interviwes wtith this much information

Santosujit Mohanty
| Reply
I have a interview from an MNC. And this article helped me a lot. Hope I get the
job.

Mehrangez V Melikova
| Reply
did u get the job >?? how did it go

Ashtesh Divakar
| Reply
Hi Laxmi,

Thank you for such an amazing article. Please answer my below query.
I�m currently working in Telecom Domain and willing to switch to Banking and
finance domain. Can you please help me in gaining the Domain knowledge which is
currently required in today�s Industry or this article is sufficient for a starter
like me.

Ankita Nadawani
| Reply
Sort & Sweet Article !

Sree
| Reply
Can you explain the mortgages in banking domain
shivakumar karjol
| Reply
This is very useful for me.
Thanks a lot�

kusum
| Reply
As you said there will be different applications used for different clients. Do you
have any article or material where we find different IB applications and their
functional flows testing and the outputs?
Would be beneficial so that we can improve our skills in our operations.
Thank you

VINCENT
| Reply
This is a serious and deeper induction inner IB application Testing.Thank you a lot
for your enlightments as Expert LAXMI.Thatis a �WEALTH� deposit!

Sushil
| Reply
Very nice and useful article by Laxmi on Investment Banking. I would like to
request softwaretestinghelp.com team to please publish similar article on Telecom
Domain (BSS), Which will guide exact work carried out by tester on telecom
projects. Thank you.

siddu
| Reply
very much helpful.can you please share some test case documents to understand more
in depth to face interviews.

Anita Sahu
| Reply
Very useful info, Thanks� can u plz send(anitasahu91@gmail.com) me resume format of
tester in Capital Market Domain?? It would be a great help.

Pramod Shejul
| Reply
It�s a very great and special information provided by you, thanks a lot�

Leave a Comment
Comment

Name
Name *
Email
Email *
About SoftwareTestingHelp
Helping our community since 2006! Most popular portal for Software professionals
with 100 million+ visits! You will absolutely love our tutorial on Software
Testing, Development, Software Reviews and much more!
Join Over 200,000+ Testers

Get premium ebooks and testing tips.

Enter your email here...


SUBSCRIBE NOW!
Join Over 300,000+ Followers!
Top FREE Training Tutorials
Load Testing Buyer�s Guide
Appium Testing Tutorial
Free QA Training
Selenium Tutorials
QTP/UFT Tutorials
Quality Center QC Tutorials
LoadRunner Tutorials
JMeter Tutorials
JIRA Tutorials
VBScript Tutorials
Best Test Management Tools
Unix Tutorials
DevOps Tutorials
JAVA Tutorials
Python Tutorials
Free C++ Tutorials
101+ Interview Questions
Join Our Team!
Software Testing freelancing work

You might also like