Académique Documents
Professionnel Documents
Culture Documents
Banking-Data Profile
Banking-Data Profile
Introduction
Banking Data Profile helps to share a set of common functionalities for a particular Customer. In the
Present Scenario there is a rapid increase in the Online Banking for Transferring funds and checking
the account details. So there is a need to maintain an accessible profile which helps in Time
consumption.
Objective
The main objective of this project is to create an accessible profile with the functionalities registered
and wanted by the customer i.e..; a customer may have different accounts like Savings, NRI, and
Fixed. This can shared by the Banking authorities to process a Personal loan, Credit card based on
His/Her Profile. This also includes having a Single Sign On Mechanism for the Customer where he
doesn’t need to re-enter his User Name and Password again and again.
This also provides an automated usage report generation and alerts for finding any deviation from
regular usage pattern by the customer. The application uses cutting edge technologies and provides
information on usage reports and the unexpected usage.
There is no automated system to generate and analyze Banking Data Profile as well as user behavior.
The existing systems follow manual process.
As there is lot of manual intervention, there is a possibility of increased delays and misinterpretation of
data. Any escalation to the concerned persons will be time consuming.
1
SINGLE SIGN ON
Proposed System
Modules
• Administration Module
2
SINGLE SIGN ON
• Database design
Software Requirements:
• Microsoft .Net
2 SYSTEM ANALYSIS:
3
SINGLE SIGN ON
1. What are the user’s demonstrable needs and how does a candidate system Meet
them?
3. What are the likely impacts of the candidate system on the organization?
During feasibility analysis for this project, following primary areas of interest are to
be considered. Investigation and generating ideas about a new system does this.
4
SINGLE SIGN ON
A study of resource availability that may affect the ability to achieve an acceptable
system. This evaluation determines whether the technology needed for the
proposed system is available or not.
• Can the work for the project be done with current equipment existing software
technology & available personal?
This is concerned with specifying equipment and software that will successfully
satisfy the user requirement. The technical needs of the system may include:
Front-end selection:
1. It must have a graphical user interface that assists employees that are not from
IT background.
3. Flexibility.
4. Robustness.
5
SINGLE SIGN ON
7. Platform independent.
10. Front end must support some popular back end like Ms Access.
According to the above stated features we selected C#.NET ,ASP.NET as the front-
end for developing our project.
Back-end Selection:
6. Popularity.
8. Easy to install.
The technical feasibility is frequently the most difficult area encountered at this
stage. It is essential that the process of analysis and definition be conducted in
6
SINGLE SIGN ON
Economical feasibility:
Economic justification is generally the “Bottom Line” consideration for most systems.
Economic justification includes a broad range of concerns that includes cost benefit
analysis. In this we weight the cost and the benefits associated with the candidate
system and if it suits the basic purpose of the organization i.e. profit making, the
project is making to the analysis and design phase.
The financial and the economic questions during the preliminary investigation are
verified to estimate the following:
• The cost of hardware and software for the class of application being considered.
• The proposed system will give the minute information, as a result the performance
is improved which in turn may be expected to provide increased Profits.
Operational Feasibility:
7
SINGLE SIGN ON
Considered are:
The system is operationally feasible as it very easy for the End users to operate it. It
only needs basic information about Windows platform.
Schedule feasibility:
Registration
In this module a Customer Should register With That of Bank in order to avail
services. Newly Customers can send request to Bank admin. The Admin validates his
account and sends an Online Password. Priority for this module can be set to 9.
Customer asks for an Online Transaction Password.
The Bank Admin will validate the details provided by Customer and should generate an
Online Transaction Password.
The Password remains for his account al
8
SINGLE SIGN ON
Functional Requirements
Queries
Alerts
9
SINGLE SIGN ON
Account Types
In this module SSO Logic is implemented. A user who is already in session tries
to login into another application then his credentials are Redirected automatically by
the web server. As this is the core Module of the entire application Priority for this
module can be set to 9.
Stimulus/Response Sequences
customer is already in session in one application uses to login in another.
A token is generated and is used by the server to identify Customers.
Every time the user tries to login another application the credentials are validated by
the server using the Token generated earlier.
This Saves a lot of time in turn and helps customer not remember there credentials for
many applications.
Functional Requirements
2.1 SSO
10
SINGLE SIGN ON
Functional Requirements
Queries
• Generating a Token?
• Appending Token to every Request generated?
• Mapping the Token generated with that of Customer id.
Alerts
11
SINGLE SIGN ON
Software Requirements
Language : C#.Net 2.0, ASP.Net 2.0, ADO.Net.
Database : SQL Server 2000.
Operating System : Windows NT/200/XP.
RAM : 256 MB TO 512 MB.
Hardware specifications:
12
SINGLE SIGN ON
3. Literature Overview:
Why ASP.NET?
Since 1995, Microsoft has been constantly working to shift it's focus from Windows-
based platforms to the Internet
. As a result, Microsoft introduced ASP (Active Server Pages) in November 1996. ASP
offered the efficiency of ISAPI applications along with a new level of simplicity that
made it easy to understand and use. However, ASP script
was an interpreted script and consisted unstructured code and was difficult to
debug and maintain. As the web consists of many different technologies, software
integration for Web development was complicated and required to understand many
different technologies. Also, as applications grew bigger in size and became more
complex, the number of lines of source code in ASP applications
increased dramatically and was hard to maintain. Therefore, an architecture was
needed that would allow development of Web applications in a structured and
consistent way.
13
SINGLE SIGN ON
The .NET Framework was introduced with a vision to create globally distributed
software with Internet functionality and interoperability. The .NET Framework
consists of many class libraries, includes multiple language support and a common
execution platform. It's a very flexible foundation on which many different types of
top class applications can be developed that do different things. Developing Internet
applications with the .NET Framework is very easy. ASP.NET is built into this
framework; we can create ASP.NET applications using any of the built-in languages.
Unlike ASP, ASP.NET uses the Common Language Runtime (CLR) provided by the
.NET Framework. This CLR manages execution of the code we write. ASP.NET code is
a compiled CLR code instead of interpreted code (ASP). CLR also allows objects
written in different languages to interact with each other. The CLR makes
development of Web applications simple.
14
SINGLE SIGN ON
Client-side refers to the browser and the machine running the browser. Server-side
on the other hand refers to a Web server.
Client-Side Scripting:
JavaScript and VBScript and generally used for Client-side scripting. Client-side
scripting executes in the browser after the page is loaded. Using client-side scripting
you can add some cool features to your page. Both, HTML and the script
are together in the same file and the script is downloading as part of the page which
anyone can view. A client-side script runs only on a browser that supports scripting
and specifically the scripting language that is used. Since the script is in the same
file as the HTML and as it executes on the machine you use, the page may take
longer time to download.
Server-Side Scripting:
15
SINGLE SIGN ON
way that it allows you to write your code alongside HTML. Unlike client-side scripting,
ASP.NET code is executed on the server and not in the browser. The script that you
write alongside your HTML is not sent back to the browser and that prevents others
from stealing the code you developed.
ASP.NET Features:
ASP.NET is not just a simple upgrade or the latest version of ASP. ASP.NET combines
unprecedented developer productivity with performance, reliability, and
deployment. ASP.NET redesigns the whole process. It's still easy to grasp for new
comers but it provides many new ways of managing projects. Below are the features
of ASP.NET.
ASP.NET makes building real world Web applications dramatically easier. ASP.NET
server controls enable an HTML-like style of declarative programming that let you
build great pages with far less code than with classic ASP. Displaying data,
validating user input, and uploading files are all amazingly easy. Best of all, ASP.NET
pages work in all browsers including Netscape, Opera, AOL, and Internet Explorer.
ASP.NET lets you leverage your current programming language skills. Unlike classic
ASP, which supports only interpreted VBScript and JScript, ASP.NET now supports
more than 25 .NET languages (built-in support for VB.NET, C#, and JScript.NET),
giving you unprecedented flexibility in your choice of language.
16
SINGLE SIGN ON
You can harness the full power of ASP.NET using any text editor, even Notepad. But
Visual Studio .NET adds the productivity of Visual Basic
-style development to the Web. Now you can visually design ASP.NET Web Forms
using familiar drag-drop-double-click techniques, and enjoy full-fledged code support
including statement completion and color-coding. VS.NET also provides integrated
support for debugging and deploying ASP.NET Web applications. The Enterprise
versions of Visual Studio .NET deliver life-cycle features to help organizations plan,
analyze, design, build, test, and coordinate teams that develop ASP.NET Web
applications. These include UML class modeling, database modeling (conceptual,
logical, and physical models), testing tools (functional, performance and scalability),
and enterprise frameworks and templates, all available within the integrated Visual
Studio .NET environment.
Compiled execution:
ASP.NET is much faster than classic ASP, while preserving the "just hit save" update
model of ASP. However, no explicit compile step is required. ASP.NET will
17
SINGLE SIGN ON
automatically detect any changes, dynamically compile the files if needed, and store
the compiled results to reuse for subsequent requests.
ASP.NET output caching can dramatically improve the performance and scalability of
your application. When output caching is enabled on a page, ASP.NET executes the
page just once, and saves the result in memory in addition to sending it to the user.
When another user requests the same page, ASP.NET serves the cached result from
memory without re-executing the page. Output caching is configurable, and can be
used to cache individual regions or an entire page. Output caching can dramatically
improve the performance of data-driven pages by eliminating the need to query the
database on every request.
ASP.NET session state lets you share session data user-specific state
values across all machines in your Web farm. Now a user can hit different servers in
the Web farm over multiple requests and still have full access to her session. And
since business components created with the .NET Framework are free-threaded, you
no longer need to worry about thread affinity.
Enhanced Reliability:
18
SINGLE SIGN ON
ASP.NET automatically detects and recovers from errors like deadlocks and
memory leaks to ensure your application is always available to your users. For
example, say that your application has a small memory leak, and that after a week
the leak has tied up a significant percentage of your server's virtual
memory. ASP.NET will detect this condition, automatically start up another copy of
the ASP.NET worker process, and direct all new requests to the new process. Once
the old process has finished processing its pending requests, it is gracefully disposed
and the leaked memory is released. Automatically, without administrator
intervention or any interruption of service, ASP.NET has recovered from the error.
Easy Deployment:
ASP.NET takes the pain out of deploying server applications. "No touch"
application deployment. ASP.NET dramatically simplifies installation of your
application. With ASP.NET, you can deploy an entire application as easily as an HTML
page, just copy it to the server. No need to run regsvr32 to register any
components, and configuration settings are stored in an XML file within the
application.
19
SINGLE SIGN ON
ASP.NET now lets you update compiled components without restarting the
web server. In the past with classic COM components, the developer would have to
restart the web server each time he deployed an update. With ASP.NET, you simply
copy the component over the existing DLL; ASP.NET will automatically detect the
change and start using the new code.
You don't have to migrate your existing applications to start using ASP.NET.
ASP.NET runs on IIS side-by-side with classic ASP on Windows 2000 and Windows XP
platforms. Your existing ASP applications continue to be processed by ASP.DLL, while
new ASP.NET pages are processed by the new ASP.NET engine. You can migrate
application by application, or single pages. And ASP.NET even lets you continue to
use your existing classic COM business components.
XML Web services allow applications to communicate and share data over
the Internet, regardless of operating system or programming language. ASP.NET
makes exposing and calling XML Web Services simple. Any class can be converted
into an XML Web Service with just a few lines of code, and can be called by any
SOAP client. Likewise, ASP.NET makes it incredibly easy to call XML Web Services
from your application. No knowledge of networking, XML, or SOAP is required.
20
SINGLE SIGN ON
ASP.NET Mobile Controls let you easily target cell phones, PDAs and over 80
mobile Web devices. You write your application just once, and the mobile controls
automatically generate WAP/WML, HTML, or iMode as required by the requesting
device.
3.2 C#.Net:
Microsoft Visual C# .NET is the comprehensive tool set for creating XML Web
services and Microsoft .NET connected applications for Microsoft Windows® and the
Web. This robust development package, which uses the component-oriented C#
development language, offers beginning and intermediate developers with C++ or
Java experience a modern language and environment for creating next-generation
software. Visual C# .NET delivers superior functionality for streamlining business
processes, including:
With Visual C# .NET, developers can build solutions for the broadest range of clients,
including Windows, the Web, and thin-client devices. With this elegant, modern
programming language, developers can leverage their existing C++ and Java skills
and knowledge to be successful in the Microsoft .NET development environment.
Advantages of C#.net:
21
SINGLE SIGN ON
Interoperability:
Employ "unsafe" code to call native Windows APIs, use prebuilt COM
components, and leverage existing Microsoft ActiveX® controls to seamlessly
integrate existing applications and components.
3.3 SQL:
22
SINGLE SIGN ON
SQLDATA Providers:
23
SINGLE SIGN ON
Microsoft SQLDB SDK version 2.0 shipped two SQLDB providers: the
SQLDB Provider and sample text provider. The sample text provider is an example
that demonstrates the implementation detail of an SQLDB provider. The SQLDB
Provider is an SQLDB provider for ODBC drivers. This provider enables consumers to
use the existing SQLDB drivers without having to implement new OLEDB providers to
replace existing SQLDB drivers. With SQLDB version 2.0, providers for SQL Server,
Oracle data, and Microsoft Jet databases were added to the SDK. For more
information about OLEDB and OLEDB providers, see the OLEDB section of the
Microsoft Data Access
24
SINGLE SIGN ON
3.4 ADO.Net:
Dataset:
25
SINGLE SIGN ON
Data Provider:
• The Data Adapter object which populates a disconnected Dataset with data
and performs update
26
SINGLE SIGN ON
object.
5 DESIGN
27
SINGLE SIGN ON
Class Diagram:
28
SINGLE SIGN ON
29
SINGLE SIGN ON
Sequence Diagram:
30
SINGLE SIGN ON
Activity Diagram:
6 ARCHITECTURE
31
SINGLE SIGN ON
32
SINGLE SIGN ON
Banking-Data
Profile
HOME Registration
33
SINGLE SIGN ON
Banking-Data Profile
HOME Login
34
SINGLE SIGN ON
Bank-Data Profile:
35
SINGLE SIGN ON
8 DATABASE TABLES
36
SINGLE SIGN ON
9 SOURCE CODE
37
SINGLE SIGN ON
Transfer.aspx.cs:
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;
using System.Data.SqlClient;
public partial class Transfer : System.Web.UI.Page
{
int Balance;
string user;
int Account;
int traacc;
int Initialamount;
int Initialamountdest;
string transaction;
int Balancedest;
int ACC;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
user = Session["Username"].ToString();
//accounttype = Session["accounttype"].ToString();
transaction = Session["Transaction"].ToString();
Initialamount = Convert.ToInt32(Session["initialamount"]);
//traacc = Convert.ToInt32(Session["accountnumber"]);
}
}
protected void btnTransfer_Click(object sender, EventArgs e)
{
user = Session["Username"].ToString();
ACC = Convert.ToInt32(Session["accountnumber"]);
String s3 =
ConfigurationManager.ConnectionStrings["singlesignonConnectionString"].ToSt
ring();
SqlConnection con4 = new SqlConnection(s3);
cmd4.Connection = con4;
cmd4.CommandText = "select accountnumber from tblinsertaccounttype
where accountnumber!='" + txtEnterAccountNumber.Text + "' and
username='"+user+"'";
SqlDataReader dr5;
con4.Open();
38
SINGLE SIGN ON
dr5 = cmd4.ExecuteReader();
dr5.Read();
if (dr5.HasRows)
{
string account = dr5["accountnumber"].ToString();
Session["accountnumber"] = account;
Account = Convert.ToInt32(Session["accountnumber"]);
}
dr5.Close();
cmd4.CommandText = "select count(1) from tblinsertaccounttype where
accountnumber='" + txtEnterAccountNumber.Text + "'";
//con4.Open();
int i = Convert.ToInt32(cmd4.ExecuteScalar());
con4.Close();
if (i == 1)
{
//Response.Redirect("Dynamicpassword.aspx");
transaction = Session["Transaction"].ToString();
//ACC = Convert.ToInt32(Session["accountnumber"]);
String s =
ConfigurationManager.ConnectionStrings["singlesignonConnectionString"].ToSt
ring();
SqlConnection con = new SqlConnection(s);
cmd1.Connection = con;
//inserting
cmd1.Parameters.Add("@accountnumber",
SqlDbType.VarChar).Direction = ParameterDirection.Input;
//inserting values
cmd1.Parameters["@accountnumber"].Value = Account;
dr.Read();
if (dr.HasRows)
{
string initialamount = dr["initialamount"].ToString();
string balance = dr["balance"].ToString();
Session["initialamount"] = initialamount;
Session["balance"] = balance;
}
dr.Close();
Initialamount = Convert.ToInt32(Session["initialamount"]);
Balance = Convert.ToInt32(Session["balance"]);
Initialamount = Balance;
//int totamount = Initialamount + Balance;
39
SINGLE SIGN ON
if (ACC == Convert.ToInt32(txtEnterAccountNumber.Text))
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Please Enter other account numbers');</Script>");
}
else if (Initialamount == 0)
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Not possible to transfer');</Script>");
}
else if (Balance >=
Convert.ToInt32(txtEnterAmounttoTransfer.Text))
{
Balance = Balance -
Convert.ToInt32(txtEnterAmounttoTransfer.Text);
//Initialamount = Balance;
String s1 =
ConfigurationManager.ConnectionStrings["singlesignonConnectionString"].ToSt
ring();
SqlConnection con1 = new SqlConnection(s1);
cmd2.Connection = con1;
cmd2.CommandType = CommandType.StoredProcedure;
cmd2.CommandText = "sp_updatewithdraw";
cmd2.Parameters.Add("@accountnumber",
SqlDbType.VarChar).Direction = ParameterDirection.Input;
cmd2.Parameters.Add("@transactiontype",
SqlDbType.VarChar).Direction = ParameterDirection.Input;
cmd2.Parameters.Add("@initialamount",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
cmd2.Parameters.Add("@transactionamount",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
cmd2.Parameters.Add("@balance", SqlDbType.BigInt).Direction
= ParameterDirection.Input;
//cmd2.Parameters.Add("@transactionid",
SqlDbType.Int).Direction = ParameterDirection.Output;
//inserting values
cmd2.Parameters["@accountnumber"].Value = Account;
cmd2.Parameters["@transactiontype"].Value = transaction;
cmd2.Parameters["@initialamount"].Value = Initialamount;
cmd2.Parameters["@transactionamount"].Value =
txtEnterAmounttoTransfer.Text;
cmd2.Parameters["@balance"].Value = Balance;
con1.Open();
cmd2.ExecuteNonQuery();
con1.Close();
//Initialamount = Initialamount -
Convert.ToInt32(txtEnterWithDrawAmount.Text);
int pid =
Convert.ToInt32(cmd2.Parameters["@accountnumber"].Value);
if (pid == 0)
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Money transfer not possible');</Script>");
40
SINGLE SIGN ON
}
//transaction = Session["Transaction"].ToString();
//ACC = Convert.ToInt32(Session["accountnumber"]);
String s5 =
ConfigurationManager.ConnectionStrings["singlesignonConnectionString"].ToSt
ring();
SqlConnection con5 = new SqlConnection(s5);
cmd5.Connection = con5;
cmd5.CommandText = "select accountnumber from
tblinsertaccounttype where accountnumber='" + txtEnterAccountNumber.Text +
"'";
SqlDataReader dr1;
con5.Open();
dr1 = cmd5.ExecuteReader();
dr1.Read();
if (dr1.HasRows)
{
string accountnumber = dr1["accountnumber"].ToString();
Session["accountnumber"] = accountnumber;
traacc = Convert.ToInt32(Session["accountnumber"]);
}
dr1.Close();
//traacc = Convert.ToInt32(Session["accountnumber"]);
cmd5.CommandText = "select count(*) from
tblinserttransactions where accountnumber='" + txtEnterAccountNumber.Text +
"'";
//con5.Open();
int p = Convert.ToInt32(cmd5.ExecuteScalar());
con5.Close();
if (p == 0)
{
int destinitial = 0;
int bal =
Convert.ToInt32(txtEnterAmounttoTransfer.Text);
String s6 =
ConfigurationManager.ConnectionStrings["singlesignonConnectionString"].ToSt
ring();
SqlConnection con6 = new SqlConnection(s6);
//procedure for deposite
SqlCommand cmd6 = new SqlCommand();
cmd6.Connection = con6;
//cmd6.CommandText = "select accountnumber from
tblinsertaccounttype where accountnumber='" + txtEnterAccountNumber.Text +
"'";
//SqlDataReader dr1;
//con6.Open();
//dr1 = cmd6.ExecuteReader();
//dr1.Read();
41
SINGLE SIGN ON
//if (dr1.HasRows)
//{
// string accountnumber =
dr1["accountnumber"].ToString();
// Session["accountnumber"] = accountnumber;
//}
//dr1.Close();
//traacc = Convert.ToInt32(Session["accountnumber"]);
cmd6.CommandType = CommandType.StoredProcedure;
cmd6.CommandText = "sp_insertdeposite";
//inserting
cmd6.Parameters.Add("@accountnumber",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
cmd6.Parameters.Add("@transactiontype",
SqlDbType.VarChar).Direction = ParameterDirection.Input;
cmd6.Parameters.Add("@initialamount",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
cmd6.Parameters.Add("@transactionamount",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
cmd6.Parameters.Add("@balance",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
cmd6.Parameters.Add("@transactionid",
SqlDbType.Int).Direction = ParameterDirection.Output;
//inserting values
cmd6.Parameters["@accountnumber"].Value = traacc;
cmd6.Parameters["@transactiontype"].Value =
transaction;
cmd6.Parameters["@initialamount"].Value = destinitial;
cmd6.Parameters["@transactionamount"].Value =
txtEnterAmounttoTransfer.Text;
cmd6.Parameters["@balance"].Value = bal;
con6.Open();
cmd6.ExecuteNonQuery();
con6.Close();
int did =
Convert.ToInt32(cmd6.Parameters["@transactionid"].Value);
if (did == 0)
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Money transfer failed');</Script>");
}
else
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Money transfer successfully completed');</Script>");
}
}
else
{
String s7 =
ConfigurationManager.ConnectionStrings["singlesignonConnectionString"].ToSt
ring();
42
SINGLE SIGN ON
cmd7.Connection = con7;
//inserting
cmd7.Parameters.Add("@accountnumber",
SqlDbType.VarChar).Direction = ParameterDirection.Input;
//inserting values
cmd7.Parameters["@accountnumber"].Value =
txtEnterAccountNumber.Text;
dr2.Read();
if (dr2.HasRows)
{
string initialamountdest =
dr2["initialamount"].ToString();
Session["initialamount"] = initialamountdest;
string balancedest = dr2["balance"].ToString();
Session["balance"] = balancedest;
}
dr2.Close();
String s8 =
ConfigurationManager.ConnectionStrings["singlesignonConnectionString"].ToSt
ring();
SqlConnection con8 = new SqlConnection(s8);
cmd8.Connection = con8;
Initialamountdest =
Convert.ToInt32(Session["initialamount"]);
Balancedest = Convert.ToInt32(Session["balance"]);
Initialamountdest = Balancedest;
//traacc = Convert.ToInt32(Session["accountnumber"]);
cmd8.CommandType = CommandType.StoredProcedure;
cmd8.CommandText = "sp_updatewithdraw";
Balancedest = Balancedest +
Convert.ToInt32(txtEnterAmounttoTransfer.Text);
cmd8.Parameters.Add("@accountnumber",
SqlDbType.VarChar).Direction = ParameterDirection.Input;
cmd8.Parameters.Add("@transactiontype",
SqlDbType.VarChar).Direction = ParameterDirection.Input;
43
SINGLE SIGN ON
cmd8.Parameters.Add("@initialamount",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
cmd8.Parameters.Add("@transactionamount",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
cmd8.Parameters.Add("@balance",
SqlDbType.BigInt).Direction = ParameterDirection.Input;
//cmd2.Parameters.Add("@transactionid",
SqlDbType.Int).Direction = ParameterDirection.Output;
//inserting values
cmd8.Parameters["@accountnumber"].Value = traacc;
cmd8.Parameters["@transactiontype"].Value =
transaction;
cmd8.Parameters["@initialamount"].Value =
Initialamountdest;
cmd8.Parameters["@transactionamount"].Value =
txtEnterAmounttoTransfer.Text;
cmd8.Parameters["@balance"].Value = Balancedest;
con8.Open();
cmd8.ExecuteNonQuery();
con8.Close();
//Initialamount = Initialamount -
Convert.ToInt32(txtEnterWithDrawAmount.Text);
int sid =
Convert.ToInt32(cmd8.Parameters["@accountnumber"].Value);
if (sid == 0)
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Money transfer not possible');</Script>");
}
else
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Money transfer successfully completed');</Script>");
}
}
}
else
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Money transfer not possible');</Script>");
}
}
else
{
Page.RegisterStartupScript(@"StartUp", @"<Script>
alert('Invalid account number');</Script>");
}
}
}
44
SINGLE SIGN ON
10 TESTING
The testing phase involves the testing of the developed system using various kinds of
data. An elaborated testing of data is prepared and a system is tested using the test
data. While testing, errors are noted and corrections remade, the corrections are also
noted for future use.
SYSTEM TESTING
Testing is a set of activities that can be planned in advance and conducted systematically. The
proposed system is tested in parallel with the software that consists of its own phases of
analysis, implementation, testing and maintenance. Following are the tests conducted on the
system.
UNIT TESTING
During the implementation of the system each module of the system was tested
separately to uncover errors with in its boundaries. User interface was used as a guide
in the process.
MODULE TESTING
A module is composed of various programs related to that module. Module testing is
done to check the module functionality and interaction between units within a module.
It checks the functionality of each program with relation to other programs within the
same module. It then tests the overall functionality of each module.
INTEGRATION TESTING
Integration testing is a systematic technique for constructing the program structure
while conducting tests to uncover errors associated with interfacing. The objective is
to take unit-tested module and build a program structure that has been dictated by
design.
ACCEPTANCE TESTING
The software has been tested with the realistic data given by the client and produced
fruitful results. The client satisfying all the requirements specified by them has also
developed the software within the time limitation specified. A demonstration has been
given to the client and the end-user giving all the operational features.
45
SINGLE SIGN ON
11 IMPLEMENTATION PHASE
The implementation is the final and important phase. It involves User training,
system testing and successful running of the developed system. The users test the
developed system when changes are made according to the needs. The testing phase
involves the testing of the developed system using various kinds of data. An elaborate
testing of data is prepared and system is tested using the tests data.
Implementation is the stage where theoretical design turned into a working system.
Implementation is planed carefully to propose system to avoid unanticipated problems.
Many preparations involved before and during the implementation of proposed
system. The system needed to be plugged in to the organization’s network then it
could be accessed from anywhere, after a user logins into the portal. The tasks that had
to be done to implement the system were to create the database tables in the
organization database domain. Then the administrator was granted his role so that the
system could be accessed.
The next phase in the implementation was to educate the system. A demonstration of
all the functions that can be carried out by the system was given to examination
department person, who will make extensive use of the system.
46
SINGLE SIGN ON
12 SCREENSHOTS
Home page:
47
SINGLE SIGN ON
48
SINGLE SIGN ON
49
SINGLE SIGN ON
50
SINGLE SIGN ON
51
SINGLE SIGN ON
52
SINGLE SIGN ON
53
SINGLE SIGN ON
Registration Page:
54
SINGLE SIGN ON
Create ACCOUNTS:
55
SINGLE SIGN ON
Select Account:
56
SINGLE SIGN ON
TRANSACTION
57
SINGLE SIGN ON
Deposit:
58
SINGLE SIGN ON
WithDraw:
59
SINGLE SIGN ON
Balance Enquiry:
60
SINGLE SIGN ON
Transfer:
61
SINGLE SIGN ON
13 CONCLUSION
This is Application can be embedded into any Application where a User needs to enter his/her
credentials for multiple times.
This application uses to enter Credentials for only one time and the necessary Token for the
Application is generated and the Token is appended for the entire Transaction.
62
SINGLE SIGN ON
14 FUTURE SCOPE
The scope of the Single Sign-On Standard (code-named XSSO at the present), is to define
services in support of:
63
SINGLE SIGN ON
15 REFERENCES
10. Bibilography:
1) Professional C#.Net ,
5) Fundamentals of C#.Net,
64