Documente Academic
Documente Profesional
Documente Cultură
INTRODUCTION
1.1 SYNOPSIS
The ATM Management is the project which is used to access their bank accounts
in order to make cash withdrawals. Whenever the user need to make cash withdraws, they
can enter their PIN number (personal identification number) and it will display the
amount to be withdrawn in the form of 100s 500s and 1000s. Once their withdrawn was
successful, the amount will be debited in their account.
The ATM will service one customer at a time. A customer will be required to enter
ATM Card number, personal identification number (PIN) both of which will be sent to
the database for validation as part of each transaction. The customer will then be able to
perform one or more transactions. Also customer must be able to make a balance inquiry
of any account linked to the card.
The ATM will communicate each transaction to the database and obtain
verification that it was allowed by the database. In the case of a cash withdrawal, a
second message will be sent after the transaction has been physically completed (cash
dispensed or envelope accepted). If the database determines that the customers PIN is
invalid, the customer will be required to re-enter the PIN before a transaction can
proceed.
If a transaction fails for any reason other than an invalid PIN, the ATM will
display an explanation of the problem, and will then ask the customer whether he/she
wants to do another transaction.
The ATM will provide the customer with a printed receipt for each successful
transaction, showing the date, time, machine location, type of transaction, account(s),
amount, and ending and available balance(s) of the affected account (to account for
transfers).
Our core expertise then was Networking and Telecommunications, and remains so
till now. We have also branched out to other domains such as Data Processing, Data
Analytics, Web Hosting and Development, SEO, Application Software development. We
have had reputed clients such as Raga e-Storage Solutions Pvt Ltd, Bangalore; i-Data
Professional Services Pvt Ltd, Bangalore; Classof1, Chennai; Tutor2Help, Chennai; We
have completed a data processing project for the Indian National Congress.
Apart from this Pandian Systems and Solutions Pvt Ltd is a PEARSON VUE
Authorized Test Center. We are authorized to conduct a large number of IT Certification
Exams including those of CISCO, Oracle, Microsoft,IBM, CompTIA, Adobe, Nokia,
Citrix, Siemens, VMware, Pega systems etc.,
2. SYSTEM ANALYSES
In the existing system the user need to go the bank branch which is only available
during business hours . The user has to present physically and wait in long queue
to check their balance , to withdraw the amount from the bank.
In the traditional banking it keeps lots of paper into a record or file to maintain
the user details such account holder name, account details etc., and it may be
possible that it may be missed somewhere.
It also cosumes lot of time to retrieve the data about the customer and
When a client comes to ATM centre to update and delete their account. It
reduces the time consumption and lot of paperwork. For any single operation it
involves numerous references and updating also takes subsequent changes in
other places.
Accessibility at traditional banks is limited, as you can only conduct business at their brick-andmortar locations. If youre traveling or unable to make it into the location during standard hours of
operation, you wont be able to do business.
Time consuming.
Security of data.
Greater efficiency.
Better service.
3. SYSTEM REQUIREMENT
3.1SOFTWARE REQUIREMNTS
Operating System
Windows XP professional
Front End
Technology
ASP.net
Language
Visual C#.Net
Back End
SQL Server
3.2HARDWARE REQUIREMNTS
Processor
Pentium III / IV
Hard Disk
40 GB
RAM
256 MB
Monitor
15VGA Color
Mouse
: Ball / Optical
Keyboard
102 Keys
Web Forms allow you to build powerful forms-based Web pages. When building
these pages, you can use ASP.NET server controls to create common UI elements,
and program them for common tasks.
These controls allow you to rapidly build a Web Form out of reusable built-in or
custom components, simplifying the code of a page. For more information, see
Web Forms Pages.
language compatible with the common language runtime (CLR), including Microsoft
Visual Basic and C#. These languages enable you to develop ASP.NET applications that
benefit from the common language runtime, type safety, inheritance, and so on.
There are a number of tools available to help you test and monitor the
performance of your Web application. Microsoft Visual Studio .NET provides
Application Center Test 1.0 (ACT), which simulates a large group of users by
opening multiple connections to a Web server and rapidly sending HTTP requests.
ASP.NET includes a number of performance counters that you can use to track the
execution of your application. You can also use the built-in ASP.NET tracing
feature to track code execution for a page or an application.
A Microsoft ASP.NET application is defined as all the files and executable code
that can be invoked from a virtual directory and its subdirectories on a Web
server. These can include Web pages (.html files), Web Forms pages (.aspx files),
Web Forms user controls (.ascx files), XML Web Services (.asmx files), HTTP
handlers, HTTP modules, and other files (such as image and configuration files).
Any script maps that are associated with the version of the Microsoft .NET
Framework that you are using are also a part of an ASP.NET application.
The
Microsoft
ASP.NET
configuration
system
features
an
extensible
If you have ASP development skills, the new ASP.NET programming model will
seem very familiar.
However, the ASP.NET object model has changed significantly from ASP, making
it more structured and object-oriented.
Unfortunately this means that ASP.NET is not fully backward compatible; almost
all existing ASP pages will have to be modified to some extent in order to run
under ASP.NET.
In addition, major changes to Visual Basic .NET means that existing ASP pages
written with Visual Basic Scripting Edition typically will not port directly to
ASP.NET.
In most cases, though, the necessary changes will involve only a few lines of
code. For more information, see Migrating from ASP to ASP.NET.
ASP.NET provides a simple model that enables Web developers to write logic that
runs at the application level.
3.3.4 ADVANTAGES
ASP.NET has many advantages over other platforms when it comes to creating
Web applications. Probably the most significant advantage is its integration with the
Windows server and programming tools. Web applications created with ASP.NET are
easier to create, debug, and deploy because those tasks can all be performed within a
single development environmentVisual Studio .NET.
ASP.NET delivers the following other advantages to Web application developers:
Use of the widely known Visual Basic programming language, which has been
enhanced to fully support object-oriented programming
Introduction of the new Visual C# programming language, which provides a typesafe, object-oriented version of the C programming language
Automatic state management for controls on a Web page (called server controls)
so that they behave much more like Windows controls
The ability to create new, customized server controls from existing controls
Built-in
security
through
the
Windows
server
or
through
other
authentication/authorization methods
Full support for Extensible Markup Language (XML), cascading style sheets
(CSS), and other new and established Web standards
Built-in features for caching frequently requested Web pages on the server,
localizing content for specific languages and cultures, and detecting browser
capabilities.
Simple access to object values without having to use the Request object.
Ability to react to events in server-side code to create applications that are better
structured.
In addition to the built-in controls, the ASP.NET page framework also provides the
ability to create user controls and custom controls. User controls and custom controls can
enhance and extend existing controls to build a much richer user interface.
5.2 SQL
5.2.1 INTRODUCTION
SQL referred to as Structured Query Language) is a programming language
designed
for
managing
data
in
relational
11
database
management
systems
(RDBMS).Originally based upon relational algebra and tuple relational calculus, its scope
includes data insert, query, update and delete, schema creation and modification, and data
access control.
SQL was one of the first commercial languages for Edgar F. Codd's relational
model, as described in his influential 1970 paper, "A Relational Model of Data for Large
Shared Data Banks". Despite not adhering to the relational model as described by Codd,
it became the most widely used database language. Although SQL is often described as,
and to a great extent is, a declarative language, it also includes procedural elements. SQL
became a standard of the American National Standards Institute (ANSI) in 1986 and of
the International Organization for Standards (ISO) in 1987. Since then, the standard has
been enhanced several times with added features. However, issues of SQL code
portability between major RDBMS products still exist due to lack of full compliance
with, or different interpretations of, the standard. Among the reasons mentioned are the
large size and incomplete specification of the standard, as well as vendor lock-in.
12
13
These SQL commands are used for creating, modifying, and dropping the
structure of database objects.
14
4. SYSTEM DESIGN
4.1. DATA DICTIONARY
Table: New Customer
FIELD NAME
Name
Accno
Pin
Sex
Age
Qualification
P_Address
P_city
P_state
P_pincode
Balance
Acctype
Branch
t_Address
t_city
t_state
t_pincode
Phoneno
Mobno
Regdate
Userid
Password
DATA TYPE
Varchar
Varchar
Number
Varchar
Varchar
Varchar
Varchar
Varchar
Varchar
Varchar
Number
Varchar
Varchar
Varchar
Varchar
Varchar
Varchar
Number
Number
Varchar
Varchar
Varchar
15
CONSTRAINS
Not null
Primary key
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
Not null
TABLE 1: ACCOUNT
Field Name
Type
Constrains
Accno
AccType
Custname
CurrentBal
Numeric
Nvarchar
Nvarchar
Decimal
Primary Key
NotNull
NotNull
NotNull
PinNumber
Numeric
NotNull
TABLE 2: CUSTOMER
Field Name
accNo
custName
Sex
Address
City
State
Country
pinCode
DOJ
Branch
Type
Numeric
Nvarchar
Nvarchar
Nvarchar
Nvarchar
Nvarchar
nvarchar
Numeric
nvarchar
Nvarchar
Constrains
Primary Key
NotNull
NotNull
NotNull
NotNull
NotNull
NotNull
NotNull
NotNull
NotNull
TABLE 3: TRANSINFO
Field Name
AccNo
Date
Amt
CurrentBal
Process
Receiver
Type
Numeric
Nvarchar
Decimal
Decimal
Nvarchar
Nvarchar
Constrains
Primary Key
NotNull
NotNull
NotNull
NotNull
NotNull
16
Account
Current/Savings Account:
To offer a account (Mini) statement which displays a detailed transaction history on the
selected customer account and selected period.
To view the status of the cheque issued by the customer against the account number and
cheque number.
Fixed Deposit:
To view the fixed deposit details which includes principal amount, maturity amount,
maturity date, and rate of interest.
17
18
4. SYSTEM DESIGN
using System;
using System.Data;
using System.Configuration;
using System.Collections;
19
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
new
SqlConnection(@"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ATMsystem.mdf;Integrated
Security=True;User Instance=True");
DateTime dt = DateTime.Now;
TextBox1.Text = dt.ToString("dd/MM/yyyy");
withdrawCount();
withdrawCalc();
}
protected void withdrawCount()
{
int count=0;
sqlcon.Open();
s1 = "select COUNT(accNo) AS Expr1 from TransInfo where accNo = " +
Session["accno"]
20
read = cmd.ExecuteReader();
if (read.RecordsAffected > 0)
{
while (read.Read())
{
totAmt = Convert.ToDouble(read.GetDecimal(0));
}
}
read.Close();
sqlcon.Close();
if (totAmt >= 45000)
{
Label7.Text = "Sorry ! You can't Withdraw Above Rs.45,000 per Day";
Label7.Visible = true;
Button1.Enabled = false;
Button3.Enabled = false;
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
int amt;
amt = Convert.ToInt32(DropDownList1.SelectedValue);
if (amt == 15000)
{
DropDownList2.SelectedIndex = 0;
22
DropDownList2.Enabled = false;
}
else
{
DropDownList2.Enabled = true;
}
}
protected void Button1_Click(object sender, EventArgs e)
{
int thous, hrds,wdraw;
double curbal,newbal,totAmt = 0.00;
thous = Convert.ToInt32(DropDownList1.SelectedValue);
hrds = Convert.ToInt32(DropDownList2.SelectedValue);
{
while (read.Read())
{
totAmt = Convert.ToDouble(read.GetDecimal(0));
}
}
read.Close();
sqlcon.Close();
Button1.Enabled = false;
}
else
{
Button1.Enabled = false;
Label7.Text = "You can't withdraw this much amount";
Label7.Visible = true;
24
}
}
else
{
Button1.Enabled = false;
Label7.Text = "You didn't have sufficient balance to withdraw this amount";
Label7.Visible = true;
}
}
protected void Button3_Click(object sender, EventArgs e)
{
withdrawCount();
DropDownList1.SelectedIndex = 0;
DropDownList2.SelectedIndex = 0;
Label5.Text = "";
Button1.Enabled = true;
Label7.Visible = false;
}
}
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
25
using System.Data.SqlClient;
public partial class MoneyTransfer : System.Web.UI.Page
{
SqlConnection sqlcon;
SqlCommand cmd;
SqlDataReader read;
string s1, s2, s3;
protected void Page_Load(object sender, EventArgs e)
{
sqlcon
new
SqlConnection(@"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ATMsystem.mdf;Integrated
Security=True;User Instance=True");
TextBox1.Text =""+ Session["accno"];
DateTime dt = DateTime.Now;
TextBox3.Text = dt.ToString("dd/MM/yyyy");
}
amt = Convert.ToInt32(DropDownList1.SelectedValue);
if (amt == 15000)
{
DropDownList2.SelectedIndex = 0;
DropDownList2.Enabled = false;
}
else
{
26
DropDownList2.Enabled = true;
}
}
protected void Button1_Click(object sender, EventArgs e)
{
int thous, hrds, trans;
double curbal, newbal,receiverBal = 0.00;
int flag = 0 ;
thous = Convert.ToInt32(DropDownList1.SelectedValue);
hrds = Convert.ToInt32(DropDownList2.SelectedValue);
trans = thous + hrds;
ListBox1.SelectedIndex = 0;
curbal = Convert.ToDouble(ListBox1.SelectedValue);
if (curbal > trans)
{
newbal = curbal - trans;
sqlcon.Open();
s1 = "update Account SET balance = " + newbal + "where accNo = " +
Session["accno"];
cmd = new SqlCommand(s1, sqlcon);
cmd.ExecuteNonQuery();
ListBox1.DataBind();
s2 = " insert into transInfo values(" + Session["accno"] + ",'" + TextBox3.Text +
"'," + trans + "," + newbal + ",'Transferred','" + TextBox2.Text + "')";
cmd = new SqlCommand(s2, sqlcon);
cmd.ExecuteNonQuery();
s3 = "select balance from Account where accNo = " + TextBox2.Text;
cmd = new SqlCommand(s3, sqlcon);
read = cmd.ExecuteReader();
while (read.Read())
27
{
receiverBal =Convert.ToDouble(read.GetDecimal(0));
flag = 1;
}
read.Close();
if (flag == 1)
{
receiverBal = receiverBal + trans;
s2 = " insert into transInfo values(" + TextBox2.Text + ",'" + TextBox3.Text +
"'," + trans + "," + receiverBal + ",'Received from','" + Session["accno"] + "')";
cmd = new SqlCommand(s2, sqlcon);
cmd.ExecuteNonQuery();
28
6. TESTING
6.1 UNIT TESTING
Unit testing focuses verification efforts on the smallest unit of the software
design, the modules. This is also known as Module Testing. The modules are tested
separately.
29
The testing was carried out during programming stage itself. In the testing each
module is found to be working satisfactorily as regards to the expected output from the
module.
During the implementation of the system each module of the system is tested
separately to uncover errors with its boundaries. We use interfaces as a guide in this
process. For a complete software examination, both white box and black box tests are
required.
6.2INTEGRATION TESTING
Once the modules are tested individually under the unit testing strategy, it is
necessary to put all these modules together interfacing. It is here that the data can be lost
across the interface; one module can have an inadvertent adverse effect on another.
Integration testing is a systematic technique for constructing the program
structure while at the same time conducting tests to uncover errors associated with
interfacing the objective is to take unit-testing modules and build a program structure that
has been dictated by design. This is the last phase of the testing.
The main objective of integration testing is to take the unit tester modules and
build a program structure that has defined in the designing. There are two approaches in
this testing.
7. Screenshots
Login page:
30
Account information:
31
3. MONEY WITHDRAWING
32
33
IMPLEMENTATION
The system will work best on recent operating systems such as windows operating
systems: A window 98 or higher version, Linux, etc. The system was developed using the
following: i. Dreamweaver: this is for writing, edited, debugging and building HTML,
CSS, PHP and javascript codes. ii. Sql-yog : this is used in designing and re-editing
MySQL database. iii. Wamp server: this was used for running and detecting of PHP and
MySQL errors. The system was implemented using the following languages: HTML,
CSS, PHP, MySQL, JAVASCRIPT.
Transaction Interface
MAINTENANCE:
ATM management (Roles and Responsibilities of Third party)
ATM engineering services. o Maintenance of all equipment like CCTV, VSAT, UPS, Air
conditioners, etc
ATM Installation and logistics services o ATM relocation services and incident
management
34
8. FUTURE ENHANCEMENT
Entire treasuries in Kerala can be integrated with the network as part of the core
banking system so that account holder can withdraw money from any of the treasury
ATMs from his own account holding at any Treasury. Treasury ATMs can also be used as
the information kiosk by displaying information about treasury transactions, functions,
interest rate of savings and fixed deposit accounts.
Furthermore, can add more functionality like bill payment and can give
advertisements as a part of revenue generation. Department should take initiative to
integrate Treasury with the National Financial Switch (NFS) because it is the backbone of
the service improvement of SB accounts. Now it is only intended for the cash drawing
process, but later, including deposit ATMs will be an added advantage for the treasury
department for improving the services.
35
You can withdraw cash at any time, day or night. The banks dont need to be open.
ATMs offer the convenience of multiple locations. You can withdraw cash at any bank
that is part of the system to which your ATM card is linked.
You dont need to fill out withdrawal and deposit slips as is required at the bank.
DEMERITS
36
11. CONCULISION
Implementation of this project including the core banking system would create a
drastic change in the services of Treasury Department and it will become one of the
competitive financial institutions under Government of Kerala.
Integration with the National Financial Switch (NFS) is necessary for the
competitiveness and existence of the Treasury and for that Treasury should follow the
membership criteria of NFS and guidelines of RBI. So that citizens can use other bank
ATMs and it will be an added service improvement and it will attract more people
towards Treasury under Government of Kerala.
Anyway this pilot project will be an excellent initiative for the process and service
improvements because similar kind of banking and financial institutions have already
proved its business improvements by introducion
37
12. BIBLOGRAPHY
Books
Website
www.wikipedia.com
www.msdn.microsoft.com
www.developnew.com
www.scribed.com
www.media.wiley.com
38