Sunteți pe pagina 1din 136

What is E-Banking?

E-banking or (Internet Banking) means any user with a personal computer and a browser can get connected to his bank -s website to perform any of the virtual banking functions. In internet banking system the bank has a centralized database that is web-enabled. All the services that the bank has permitted on the internet are displayed in menu. Any service can be selected and further interaction is dictated by the nature of service. Ebanking includes the systems that enable financial institution customers, individuals or businesses, to access accounts, transact business, or obtain information on financial products and services through a public or private network, including the Internet. Customers access e-banking services using an intelligent electronic device, such as a personal computer (PC), personal digital assistant (PDA), automated teller machine (ATM), kiosk, or Touch Tone telephone. E-Banking is aimed to provide host of services that ultimately bring customers and bank closer, thus improving the overall banking status. The technology for betterment is the key concept behind selecting the title as it transforms the existing idea of bank site working to a much faster and better E-banking with the upcomingtechnology .net from Microsoft.

DESCRIPTIVE OBJECTIVE

PROJECT DESCRIPTION

The project E-banking customer service is developed on Windows XP platform, using ASP.NET as the front end and SQL Server 2005 as the backend. The proposed system E-banking customer service is aimed to develop a web based banking facilities. The proposed system E-banking customer service is aimed to develop a web based banking facilities. . Through this site the customer can check their transactions at any time of the day, and as many times as they want to. They can transfer any amount from one account to another of the same bank. Customer can facilitate payment of electricity and telephone bills. They can also facilitate for demand draft request and cheque book request The basic objective of the E-Banking System is to facilitate the following support:o o o o o o o o Registration of new customers Fund Transfer. Mini details for specific account. Electricity and telephone bills payment. Mobile recharge. STDR Facility DD and Cheque book request. Generate a report of customers for transaction details And Funds transfer details

o Recommendations on Home Loans and Education Loan. o Maintaining security password information on customers.

It is assumed that all Customers are provided with a valid User Id and password from the Bank. The password can be changed through the Change Password option. The Home Page for the E Banking service asks for the AccountNo which is the userid and password. The correctness of the details needs to be verified before granting any further access to the customer. On successful validation, the Customer is taken to the summary page where all accounts belonging to the customer are outlined in a table. Against each account, the current balance is shown in figures.
4

The customer should be able to get a Print-Friendly version of the page which can be printed without excessive graphics.. The Customer may want to have Transactions Details in a specific account. For this purpose, a details page will be shown which shows latest 10 transactions In the Customer Home Page an option is provided for Funds Transfer. On selection of this option, a transaction page is displayed where the Customer will enter One Source account and one or more destination accounts. The Amount to be transferred from the source account should not exceed the current balance in the account. The sum total of the destination account amounts should be exactly equal to the Source amount. Appropriate validations should be carried out for Date, amounts and balances. A confirmation page should summaries the transaction for the customer. The customer may want to go back and modify the details or submit the transaction. This transaction should update the Core Banking database. The Customer can also pay Bill through their Account .But he had to first subscribe that Biller. The Customer can also Recharge the prepaid mobile. The Customer can also do Fixed Deposits ie STDR. The Cheque Book Request and Demand draft Request facility is provided to the customer . Generate a report of customers regarding their Transaction details. Generate a report of customers regarding their Funds Transfer Details. Recommendations are provided on the Home Loan and Personal Funds Transfer Details.

PROJECT OBJECTIVE While developing the project, it has been seen that the following objectives must be achieved:

User Affability The primary objective of this project is User Affability is to provide Friendliness environment, because User interface design creates an effective communication medium
5

between a human and a computer. If the software is difficult to use, then it would tend to arise many problems.. Keeping al these things in view in view, I have designed the screen layouts which are east to use and it allows user interaction to be interruptible.

Least Maintainability Software maintainability concerns with the ease with which repair may be made to the software as indicated by the following sub attributes: analyzability, changeability, stability and testability.

Consistency Since software consistency is defined in statistical terms as the probability of failure-free operation of a computer program in a specified environment for a specified time. This project will be a reliable one based on the existing information of Project.

Portability Portability concerns with the ease with which the software can be transported from one environment to another as indicated by the following sub attributes: adaptability, install ability, conformance, and replace ability.

Keeping all these things in view the system is designed: To provide user friendly web based module for Internal Assessment. Storage of the records of the customers in sql Database so that the data can be analyzed and reviewed more easily and efficiently. Maintenance of centralized records.

Definitely a plan to develop an improved and better system as compared to the existing system, so that it could be implemented in the banking system .

The problem definition of our project can be brought to points as below. The present system is manual one and it requires lot of resources and time to accomplish the set forth goal. This system involves great hard work and is too time-taking. Here,

individual while dealing transaction with bank involved in doing the works which include the following tasks:1.Person needs to go to the bank personally for various transactions so it can be avoided through online banking. 2.One needs to request for cheques and DD personally which can also be done through Online banking and the only thing will be to collect it from the Bank. 3.The current system is very slow responsive system. There could be delayed in either updating the accounts or could be delayed in showing balance sheets.This can be solved through Online Banking at the same time only when the transactions is being done online. 4.Due to excessive interaction among the employee of the bank it is not possible to prepare the exact and effective report. Since each file passes through various hands so there are possibility of getting ambiguous results.There is no need of interaction here in Online Banking.Every thing is stored in centralized database if any report customer wants to see it can be done on the one click of the button. 5.Any type of problem arising during the complete phase must be rectified by the various windows in the bank for which one has to appear in person at the same. So all these problems can be solved through Online Banking where there is no need to go to the Bank if any transaction is needed urgently.The Customer dont have to be in problem Updations of transactions,queries and request can be easily handled through Online Banking.

The purpose of the literature survey is to develop an overall idea for the proposed system by understanding the present situation and the requirements. Hence, it is carried out in the initial

10

stages of the project. The project E-Banking System needed a lots of information to be

built. It was necessary to understand the present manual system of the Bank. Thus Bank gave much information what is Internet banking and what facilities they provide to us. The Internet Banking is a much safer and have high security.Through the Online Banking the customer can only do Debit and can do many functions like requesting Demand Draft ,Cheque Book. It was also known that the Customer can use other features like mobile recharge and other facilities for which the bank website is to be collaborated with the other sites. Thus to accomplish the project Bank Visit was must. And also some books and sites too helped. From the sites many E-Banking Demo is available from which we get some information how work is being done on the Internet and what is the process and what kinds of security is available on the Internet.Through the Book we came to know how to implement the woking of the Bank.

11

SYSTEMDEVELOPMENT METHODOLOGIES

System Development Life Cycle :


System Development Life Cycle (SDLC), or Software Development Life Cycle, in systems engineering and software engineering refers to the process of creating or altering

12

systems, and the models and methodologies that people use to develop these systems. The concept generally refers to computer or information systems. In software engineering the SDLC concept underpins many kinds of software development methodologies. These methodologies form the framework for planning and controlling the creation of an information system :- the software development process. We have followed the classical system development life cycle method (SDLC); the waterfall model. It is the oldest and most widely used paradigm for software development .this process demands a systematic, sequential approach for software development.

Recognition of
Need

Feasibility Study System Analysis System Design System Testing Implementation and Maintenance

The life cycle involves the following activities:

Recognition of need:Software is always a part of a larger system works; basic for the system is recognition of need for improving an information system or a procedure. This need leads to a preliminary investigation to determine whether an alternative system can solve the
13

problem. At this level statement specifying the scope and objectives of the problem is derived. Feasibility study:Feasibility study is the test of the system proposal according to its workability, impact on the organization, ability to meet user needs and effective use of resources. During the study, the problem definition crystallized and aspects of the problem to be included in the system are determined. The result of the feasibility study is a formal proposal detailing the nature and scope of the proposed system. System Analysis:Analysis is a detailed study of the various operations performed by a system and their relationship within and outside the system. During analysis, data are collected on the available files, decision points and transactions handled by the present system. Logical system models and tools like DFD; interviews etc. are used in analysis. Once analysis is completed the analyst has a firm understanding of what is to be done. System design:In the system design we move from logical to the physical aspects of the SDLC.It is the most creative and challenging phase of the SDLC.At this step output and input to be produced are presented, input data and master files are designed and program construction and testing is done. Finally a completely document report is submitted. System testing:The testing process focuses on the logical internal of the software, ensuring that all statements have tested and on the functional externals, that is conducting test to uncover errors and ensure that define input will produce actual results that agree with the require results. Implementation and Maintenance:Software will undoubtedly undergo changes after it has been delivered to the user. Changes will occur because errors have been encountered, because the software must be adapted to accommodate changes in external environment or because the user requires functional or personal enhancements. Software maintenance reapplies each of the preceding life cycles rather than a new one. The basic idea of SDLC method is that there is a well defined process by which an application is conceived, developed and
14

implemented. It gives structure to a creative process. The phases in SDLC provides a basis for management and control because they define segments of the flow of work which can be identified for managerial purpose and specify the documents or other deliverables to be produced in each phase.

15

REQUIREMENT ANALYSIS SRS TECHNOLOGY SOFTWARE AND HARDWARE TOOL

16

Requirement Analysis System Study and Problem Formulation

Existing System The present system is manual one and it requires lot of resources and time to accomplish the set forth goal. This system involves great hard work and is too time-taking. Here, individual while dealing transaction with bank involved in doing the works which include the following tasks: Person needs to go to the bank personally for various transactions. One needs to collect various cheques and DD personally.

Drawbacks of Existing System The major drawbacks which the existing system suffers are of following types:1. Very slow responsive system The current system is very slow responsive system. There could be delayed in either updating the accounts or could be delayed in showing balance sheets. 2. Lot of documentation work While preparing the balance sheet and other transaction list lots of, documentation work is done. 3. Delay in Report preparation Due to excessive interaction among the employee of the bank it is not possible to prepare the exact and effective report. Since each file passes through various hands so there are possibility of getting ambiguous results. 4. Chances of repetition of same work . While preparing the balance sheet and other reports there are chances of the redundancy over a period of time.

17

5.Resource required for smooth running of program Human as well as other resources are required for smooth running of various transactions within the bank and smooth execution of the same. 6.To access any information, customer needs to access the person in window . Any type of problem arising during the complete phase must be rectified by the various windows in the bank for which one has to appear in person at the same.

Proposed System E Banking Service is a Towns proposed to centralize sharing of information across all and

banks and its branches . Initially, the system will be implemented across Cities records in the state thus helping speedy and successful completion well update the account information Purpose of Proposed System

and later on, be interlinked so that a banks can access information across all to the transaction.

The System would also be used to generate information for customer accounts detail as

IT implies a service that allows customers to usesome form of computer to access account specific information and possibly conduct transactions from a remote location. (Such as at home or at the workplace) The System is made to provide web based facilities to the customer so that one can use this facility from anywhere. Benefits of the system: Through Internet banking, you can check your transactions at any time of the day, and as many times as you want to. Where in a traditional method, you get quarterly statements from the bank. If the fund transfer has to be made outstation, where the bank does not

18

have a branch, the bank would demand outstation charges. Whereas with the help of online banking, it will be absolutely free for you.

Advantages of the proposed system

Cost Effective:-It's cost effective. Putting a banking information on own website costs the bank nothing while putting one on a bank site usually only costs a couple of hundred pounds, and than advertising in a national newspaper can cost thousands and time consuming also. Speed:- Fast retrieval of information is possible. Easy retrieval and access of information:- Account information and information related to customers transaction can be easily retrieved from the database of bank system with the help of keywords. User friendly:-This ebanking is user-friendly and customer doesnt need to have an indepth knowledge of IT to do banking transactions online.

Introduction
At the heart of system analysis is a detailed understanding of all important facets of business area under investigation. (For this reason, the process of acquiring this is often termed the detailed investigation) Analyst, working closely with the employees and managers, must study the business process to answer these key questions:

What is being done? How is it being done? How frequent does it occur? How great is the volume of transaction or decisions? How well is the task being performed? Does a problem exist?
19

If a problem exists, how serious is it? If a problem exists, what is the underlying cause? Requirement analysis relies on fact-finding techniques. These include: Interview Questionnaires Record inspection On-site observation

Preliminary Investigation A request to take assistance from information system can be made for many reasons, but in each case someone in the organization initiate the request. When the request is made, the first system activity the preliminary investigation begins. This activity has three parts: Request clarification Feasible Study Request approval Many requests from employees and users in the organization are not clearly defined. Therefore, it becomes necessary that project request must be examined and clarified properly before considering systems investigation.

The feasibility study is carried out by a small group of people who are familiar with information system techniques, understand the parts of the business or organization that will be involved or affected by the project, and are skilled in the system analysis and design process. Request Approval:

20

It is not necessary that all request projects are desirable or feasible. Some organizations receive so many projects request from employees that only a few of them can be purchased. However, those projects that are feasible and desirable should be put into a schedule. In some cases, development can start immediately, although usually system staff members are busy on other ongoing projects. When such situation arises, management decides which projects are more urgent and schedule them accordingly. After a project request is approved, its cost, priority, completion time and personal requirements are estimated and used to determine where to add it to any existing project list. Later on, when the other projects have been completed, the proposed application development can be initiated. Analysis is a process of studying a problem and to find the best solution to that problem. System analysis gives us the target for the design and the implementation. Analysis is one phase, which is important phase for system development life cycle. System development is a problem solving techniques. Analysis involves interviewing the client and the user. Three people and the existing documents about the current mode of operation are the basic source of information for the analyst. Analysis is the process of studying a problem to find the best solution to that problem. System analysis gives us the target for the design and the implementation. Analysis is one phase of the very important phase of the system development life cycle. System development is a problem solving techniques. Analyses involve interviewing the client and the user. These people and the existing document about the current mode of operation are the basic source of information for the analyst.

Software Requirement Specification

Software requirement specification (SRS) is the starting point of the software development activity. Little importance was given to this phase in the early days of software development. The emphasis was first on coding and then shifted to design.
21

As systems grew more complex, it became evident that the goals of the entire system cannot be easily comprehended. Hence the need for the requirement analysis phase arose. Now, for large software systems, requirements analysis is perhaps the most difficult activity and also the most error prone. Some of the difficulty is due to the scope of this phase. The software project is initiated by the clients needs. In the beginning these needs are in the minds of various people in the client organization. The requirement analyst has to identify the requirements by talking to these people and understanding their needs. In situations where the software is to automate a currently manual process, most of the needs can be understood by observing the current practice. The SRS is a means of translating the ideas in the minds of the clients (the input), into formal document (the output of the requirements phase). Thus, the output of the phase is a set of formally specified requirements, which hopefully are complete and consistent, while the input has none of these properties. Benefits of a Good SRS

Establish the basis for agreement between the customers and the suppliers on what the software product is to do. Reduce the development effort. Provide a basis for estimating costs and schedules. Provide a baseline for validation and verification. Serve as a basis for enhancement.

22

Platform (Technology/Tool Selection)


OVERVIEW OF C#:C# is fully object oriented language like Java and is the first Component-oriented language. It has been designed to support the key features of .NET Framework, the new development platform of Microsoft for building component-based software solution. It is simple, efficient, productive and type-safe language derived from the popular C and C++. The main design goal of C# was simplicity rather than pure power. C# fulfils the need for a language that is easy to write, read and maintain and also provides the power and flexibility of C++. The language that is designed for both computing and communications is characterized by several key features. These are Object-oriented

Object-Oriented design is a technique that helps the programmer visualizes the program using real-life objects. Ease of use and Reusability are the other benefits of Object Orientation. Simpler language o Compared to earlier OOP languages like C++, it is simple o Designed considering the pitfalls of earlier languages o Certain complex features like multiple inheritances, pointers, explicit memory de-allocation are not present in C# language.

Robust Two main reasons for program failure are related to:

(1) Memory management is very easy since the de allocation is done by the garbage collector automatically (2) C# provides object oriented exception handling to manage run time errors Architecture Neutral / Portable

23

With C#, the program need only be compiled once, and the code generated by the C# compiler can run on any platform. If you are writing software for the World Wide Web, being able to run the same program on many different systems is crucial to that program's success. C# is platform independent at both the source and the binary level. C# can be easily ported on any type of system and irrespective of the operating system being used. C# achieves this portability due to its feature of Implementation Independency.

Secure o Built -in security features like absence of pointers and confinement of the C# program within its runtime environment

Support for Multithreading at language level Designed to handle Distributed applications

Microsoft .NET Framework a computing platform for developing distributed applications for the Internet. Why .NET? Interoperability Components of applications written in one programming

language can be used for applications developed in other programming languages OVERVIEW OF ASP.NET Is the platform that we use to create Web applications and Web services that run

under IIS At a high level, ASP.NET is a collection of .NET classes that collaborate to

process an HTTP request and generate an HTTP response It provides high level of consistency across web applications We have components like web development tools

24

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.

1)

Easy Programming Model

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. 2) Flexible Language Options

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.

3)

Great Tool Support

25

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-dropdouble 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. Rich Class Framework Application features that used to be hard to implement, or required a 3rd-party component, can now be added in just a few lines of code using the .NET Framework. The .NET Framework offers over 4500 classes that encapsulate rich functionality like XML, data access, file upload, regular expressions, image generation, performance monitoring and logging, transactions, message queuing, SMTP mail, and much more. With Improved Performance and Scalability ASP.NET lets you use serve more users with the same hardware.

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 automatically detect any changes, dynamically compile the files if needed, and store the compiled results to reuse for subsequent requests. Dynamic compilation ensures that your application is always up to date, and compiled execution makes it fast. Most applications migrated from classic ASP see a 3x to 5x increase in pages served.
26

Rich output caching 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.

Web-Farm Session State 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.

Enhanced Reliability ASP.NET ensures that your application is always available to your users.

Memory Leak, Deadlock and Crash Protection 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
27

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.

Dynamic update of running application 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. start using the new code. With ASP.NET, you simply copy the component over the existing DLL; ASP.NET will automatically detect the change and

Easy Migration Path 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


28

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. Mobile Web Device Support 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. ADO.NET is a data access technology in the .NET platform Implemented as a set of classes, interfaces, structures and enumerations that

manages data communication from within the .NET Framework

Designed for disconnected environments A programming model with advanced XML support A programming model that uses strongly typed data ADO.NET advocates implementation of a standard set of .NET objects that

enables clients to connect to data sources. These objects are Connection, Command, Data Reader and Data Adapter

29

SQL Server Database Is a collection of Objects containing System Tables, User Defined Tables, Stored Procedures, Scalar Functions, Constraints, Views, and Triggers etc. Is owned by a single user account. It can contain objects owned by other users also. Has a system catalog that owns a set a of system tables defining the database. Maintains a set of user accounts and security. Maintains logical consistency among the objects and is the primary unit of recovery Maintains a transaction log which manages the transactions within a database. Shrinks or grows either by command or automatically and can be in the range of 1MB to limits of TB

30

Features of SQL Server 2005

Internet Integration. The SQL Server 2005 database engine includes integrated XML support. It also has the scalability, availability, and security features required to operate as the data storage component of the largest Web sites. The SQL Server 2005 programming model is integrated with the Windows DNA architecture for developing Web applications, and SQL Server 2005 supports features such as English Query and the Microsoft Search Service to incorporate user-friendly queries and powerful search capabilities in Web applications.

Scalability and Availability. The same database engine can be used across platforms ranging from laptop computers running Microsoft Windows 98 through large, multiprocessor servers running Microsoft Windows 2005 Data Center Edition. SQL Server 2005 Enterprise Edition supports features such as federated servers, indexed views, and large memory support that allow it to scale to the performance levels required by the largest Web sites.

Enterprise-Level Database Features. The SQL Server 2005 relational database engine supports the features required to support demanding data processing environments. The database engine protects data integrity while minimizing the overhead of managing thousands of users concurrently modifying the database. SQL Server 2005 distributed queries allow you to reference data from multiple sources as if it were a part of a SQL Server 2005 database, while at the same time, the distributed transaction support protects the integrity of any updates of the distributed data. Replication allows you to also maintain multiple copies of data, while ensuring that the separate copies remain synchronized. You can replicate a set of data to multiple, mobile, disconnected users, have them work autonomously, and then merge their modifications back to the publisher.

Ease of installation, deployment, and use. SQL Server 2005 includes a set of administrative and development tools that improve upon the process of installing, deploying, managing, and using SQL Server across several sites. SQL Server 2005 also supports a standards-based programming model integrated with the Windows DNA, making the use of SQL Server databases and data warehouses a seamless part of building powerful and scalable systems. These features allow you to rapidly deliver SQL Server applications that customers can implement with a minimum of installation and administrative overhead.

31

XML XML is a universal, standardized language used to represent data such that it can be both processed independently and exchanged between programs and applications and between clients and servers Disparate systems can exchange information in a common format

Software and Hardware Specification


1.1) Software Interfaces Following software are required for developing Web based application: I. II. III. IV. V. VI. VII. Operating System Environment Front-end Tool Technology Versioning Tools Backend Tool Data Access Tool Windows NT, 2000, XP Prof Etc. .Net C# ASP.NET. IIS 5.0. SqlServer2000. ADO.NET.

1. 2) Hardware Interfaces The hardware requirements are:

32

I. II. III. IV. V.

Processor Motherboard RAM Hard Disk I/O Devices

PIV 700 MHz and above. Intel 845 and above 256 to 768 MB 2.5 GB for Visual Studio .NET and 1 GB for Microsoft SQLServer2000. Keyboard, mouse and Colour monitor

33

TECHNICAL FEASIBILTY ECONOMIC FEASIBILTY OPERATIONAL FEASIBILITY

34

TECHNICAL FEASIBILITY There are a number of technical issues which are generally raised feasibility stage of the investigation. They are as follows: during the

Does the necessary technology exist to do what is suggested (and can it be acquired). Hardware used in this project are- p4 processor

2.8GHz, 512 MB RAM, 80 GB hard disk. This hardware was already available on the existing computer system. The software like ASP.NET, C# SQLSERVER2005 and operating system WINDOWSXP used were provided and were installed on the existing computer system. So no additional hardware and software were required to purchase and it is technically feasible .The above tools are readily available, easy to work with and widely used for developing commercial application.

Does the proposed equipment have the technical capacity to hold the data required using the new system? Yes the proposed equipment has the technical capacity to hold the data required to use the new system

Would it be possible to upgrade the system after it is developed and Implemented, if necessary?

Yes it is possible to upgrade the system after it is developed as a software developer can easily upgrade the software.

35

Would the recommended technology guarantee the reliability, accuracy, eases of access and data security?

Yes there is technology guarantee the access and data security

reliability, accuracy, ease of

So, it appears that the proposed system is technically feasible.

ECONOMIC FEASIBILITY

Economic analysis is the most frequently used method for evaluating the effectiveness of a system more commonly known as cost benefit analysis. The procedure is to determine benefits and savings that are expected from a system, if benefits outweigh costs, then a decision is made to design and implement the system. Otherwise further justifications or alterations in the proposed system will have to be made. This is an ongoing effort that improves accuracy at each phase of system development life cycle. The Hardware resources needed for the system development already exists. The cost involved in installing the software is affordable. The cost of manual resources is also nil because no any employee rather than MCA student is going to develop the proposed system. The only cost involve is the cost of resources used during the development period. Also it gives more accurate output and it is less time consuming. Since there is no extra cost associated with the project, the project is economically feasible.

36

OPERATIONAL FEASIBILITY Operational feasibility is mainly concerned with issues like whether the system will be used if it is developed and implemented. Whether there will be resistance from users that will affect the possible application benefits? The essential questions that help in testing the operational feasibility of a system are following. Does user will support the project? Yes, there will be sufficient support for the project from the user as their work become easier. The present system is very tedious one, so the present system is not well liked & they are very eager to switch to the new system. Are the users not happy with current business practices? Will it reduce the time (operation) considerably? If yes, then they will welcome the change and the new system. The current method is not acceptable in modern trend since there are a lot of problem associated with the current system. The user will surely get benefited by the newly proposed system. The users will welcome a change in the current method as this new system will be more beneficial than the present one. Will the proposed system cause harm? Will it produce poorer result in any case? Will the system affect the users in considerable way? No, the proposed system will not cause any harm if it is used properly. It can produce poor result if data are not feed correctly though all measures will be taken. The system will ease the work of the users. Thus the project is operationally feasible.

37

FLOWCHART DATA FLOW DIAGRAM DATABASE DESIGN

FLOWCHART :
38

start

Home Page

Y N
If want to login?

Login Page

enter id &pass

Error message

If verified?

Y
Customer Home Page

Y
Account detail page If Account detail

39

y
If Fund transfer ? Fund Transfer Page

If Bill Paymen t?

Bill Payment page page

Y
If Edit Profile ? Edit Profile Page

If chequebook request ?

Y
Cheque-buk req page

If Demand Draft Request ?

Y
Demand Draft Request Page

A 40 If logout?

If mobile recharg e?

Y
Mobile Recharge Page

If STDR?

STDR Page

Reports ?

Report Page

Recom mendati ons?

Home Loan and Personal Loan Recommendations

Change Passwor d?

Change Password Page

DATA FLOW DIAGRAM


stop

41

Data Flow Diagramming is a means of representing a system at any level of detail with a graphic network of symbols showing data flows, data stores, data processes, and data sources/destination. The data flow diagram is analogous to a road map. It is a network model of all possibilities with different detail shown on different hierarchical levels. This processes of representing different details level is called leveling or partitioning by some data flow diagram advocates. Like a road map, there is no starting point or stop point, no time or timing, or steps to get somewhere. We just know that the data path must exist because at some point it will be needed. A road map shows all existing or planned roads because the road is needed. Details that is not shown on the different levels of the data flow diagram such as volumes, timing, frequency, etc. is shown on supplementary diagrams or in the data dictionary. For example, data store contents may be shown in the data dictionary. Data Flow Diagram (DFD) uses a number of symbols to represent the systems. Data Flow Diagram also known as Bubble Chart is used to clarify system requirements and identifying the major transformations that will become programs in system design. So it is the starting point of the design phase that functionally decomposes the requirements specifications down to the level of details.

Terms used in DFD Process A process transforms data values. The lowest level processes are pure functions without side effects. An entire data flow graphics high level process.

42 Graphical Representation:

Data flows A data flow connects the output of an object or process to input of another object

or process. It represents the intermediate data value within a computation. It is represented by an arrow and labeled with a description of data, usually its name or type.

Graphical Representation:

Data store A data store is a passive object with in a data flow diagram that stores data for

later access.

Graphical Representation:

External Entity A rectangle represents an external entity such as a librarian ,a library member.

Graphical Representation:

Output Symbol
43

This box represented data production during human computer interaction

CONTEXT ANALYSIS DIAGRAM : 0 Level DFD


44

The Context Analysis Diagram also know as Level 0 DFD shows the system's interactions with the outside world which are modelled purely in terms of data flows across the system boundary. The context diagram shows the entire system as a single process, and gives no clues as to its internal organization. This does not describe the system in detail.

Reque st Queries Customer

0 E-Banking System

Info about Request & Queries

Respons e to Request & Queries

Bank

45

46

47

48

DATABASE DESIGN :

A database is central controlled, integrated collection of logically organized data. Before we use a dbms to actually build the tables, forms and other objects that will make up my database, it is important to take time to design my database. A good database design is keystone to creating a database that doses what we want to do effectively, accurately and efficiently.

Steps in designing a database These are the basic steps in designing a database. 1. Determines the purpose of the database. 2. Determine the tables you need in the database. 3. Determine the fields you need in the database. 4. Identify fields you need in the database. 5. Determine the relationship between tables 6. Refine your design 7. Add data and create other database object.

Determine the purpose of the database The first step in designing a database is to determine the purpose of the database and how it is to be used. You need to know what subject you want from the database. From that, you can determine what subject you need to store facts about and what acts to need to store about each subject.

Determine the tables you need in the database

49

When designing, the tables, the pieces of information were divided by keeping these fundamental design principles in mind. A table should not contain duplicate information and information should not be duplicated between tables. When each piece of information is stored in only one table, you update in one place, this is more efficient, and also eliminates the possibility of duplicate that contain different information. Each table should contain information about one subject the table contained in the database relate to different accounts heads.

Determine the fields you need When each table contains facts about only one subject , you can maintain information about each subject independently from other subjects. Explain the logic for creating different tables for different account heads.

Identify fields with unique values In order to connect information stored in separate tables, each table in your database must include a field or set of field of set of fields that uniquely identifies each individual record in the tables. Such a fields or set for fields is called a primary key. The database uses the primary key foreign key relationship of is_no/os_no field.

Determine the relationship between tables Now that you have divided your information table and identified primary key field your need a way to related information back together again in meaningful ways. To do this you define relationship between tables.

50

Refine the design After the required tables fields, and relationship have been design is time to the design and detect any flaws that might remain. It is easier to change your database design now, rather then after you have filled the tables with data. Enter data and create other database objectWhen you are satisfy that tables structures meet the design goals described hare. Then its time to go ahead and all your existing data to table.

Tables Description tblCustomers Column Name CustomerID FirstName LastName AccountNo Description This is a unique key id given to every customer First name of the customer Last name of the DataType nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50)

Customer This is the Account Number provided by the bank This is the address of the customer This is the postal code of the customer where he lives This is the location of the customer This is the phone no of the customer This is the mobile no of the customer This is the email id of
51

Address Postal Code

nVarchar(50) nVarchar(50)

Location Phone Number Mobile Number Email

nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50)

Date Joined Account Type

the customer This defines the date joined This defines the type of account the customer is opening This is the amount the customer pays when he open his account This is the login pin This is the transaction pin This is the the security security

DateTime nVarchar(50)

Opening Balance

nVarchar(50)

LPin TPin Security question Security answer Status VDate

nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50) DateTime

question This is

answer This is the status of the customer This is the visited date of the customer

tblTransactions Column Name Code CustomerID Account No Description This is the Code This is a unique key id given to every customer This is the Account Number provided by the
52

Data Type int nVarchar(50) nVarchar(50)

Narration CheckNo Dated Debit Credit Balance Mode

bank This is the detail of transaction This is the CheckNo This is the date of transaction This is the debited This is the amount amount

nVarchar(50) nVarchar(50) datetime nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50)

credited This is the Balance This is the Mode

tblBalances Column Name CustomerID AccountNo Description This is a unique key id given to every customer This is the Account Number provided by the Balance bank This is the Balance of the Customer nVarchar(255) Data Type nVarchar(50) nVarchar(50)

Transfer Column Name TransferId Description This is the id generated when the transfer is ToAccount made This is AccountNo to
53

Data Type int

nVarchar(50)

which FromAccount

amount

is nVarchar(50)

transferred This is AccountNo from which amount is transferred This is the detail of transaction This is the amount

Narration Amount TDate

nVarchar(50) nVarchar(50) nVarchar(50)

transferred This is the Transaction Date

Deposits Column Name AccountNo Description This is the Account Number provided by CustomerId CustomerName Balance DepositAmount RateofInterest Tenor the bank This is a unique key id given to every customer This is the Customer Name This is the Balance This is the deposit nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50) Data Type nVarchar(50)

amount This is the rateof inerest This is the tenor


54

MaurityAmount DepositDate MaturityDate Currency AccNo

This is the maturity amount This is the deposit date This is the Maturity date This is the currency type This is the deposit

nVarchar(50) datetime datetime nVarchar(50) nVarchar(50)

account no

BillerDetails Column Name BillerName AccountNo Address State PhoneNo FromAccountNo Description This is the Biller Name This is the Account No This is the address of the biller This is the state This is the phone no This is the account from which bill is payed Data Type nVarchar(50) nVarchar(50) nVarchar(50) nVarchar(50) int nVarchar(50)

BillPayment Column Name BillerName Description This is the name of the biller
55

Data type nVarchar(50)

CustomerID ToAccountNo FromAccountNo

This is the unique id of the customer This is the account no to which bill is payed This is the accountno from which amount is deducted This is the amount This is the paydate

nVarchar(50) nVarchar(50) nVarchar(50)

Amount Paydate

int datetime

MODULES

56

Project Modules
1. Login.
2. .Check other Accounts

3. Account detail 4. Money Transfer. 5. Bill Payment 6. Check the Balance Status. 7. Request for Cheque Book & sent status. 8. Request for Demand draft & sent status. 9. Prepaid Mobile Recharge 10. STDR Facility 11. Reports 12. Recommendations. 13. Change Password 14. Forgot Password

Login module. This module ensures that only registered users can enter user home

page of bank site. Any user who enters the job site will be identified by User Name. If he gives his correct user ID & password i.e. if he is a registered then only he can enter his home page else he gets an error message
Check Other accounts:This module ensures that a customer can see their other

accounts details which are in the same bank.


57

.
Account detail. In this module. The user can view all information related to his

account. He may have more than one account. All the bank accounts and their details can be obtain by entering his home page through successful validation.
Money transfer .In this module user can transfer money from one account to

another these transactions are done under successful verification and validation. If the account no given for the transaction is wrong then it will show an error message. If the amount to be transfer through source account is less than the actual balance then an error message is given.
E-payment services. User can pay their telephone bills and electricity bills direct to

their accounts. In this module epayment services are provided and a detail information about billing can be viewed. Printing and search options are there to help them.

Check the Balance Status. In this module balance status are checked. A detail

information can be seen in the mini-details provided for each bank account. All withdrawal and deposit from an account can be viewed.print and search options are given.
Request for Cheque Book & sent status. In this module a user can request for a

cheque-book. User has to enter all the details necessary for a cheque-book request. All information must be enter and then it is verified. After successful submittion a response is given to the customer which shows that whether the request is accepted or rejected.
Request for Demand draft & sent status . In this module a user can request for a

cheque-book. User has to enter all the details necessary for a demand draft request. All information must be enter and then it is verified. After successful submittion a response is given to the customer which shows that whether the request is accepted or rejected.
Prepaid Mobile Recharge: The Customer can also recharge his/her mobile through

Online Banking.

58

STDR Faciltiy: The Customer can also do Fixed Deposits through Online Banking

for a period of time.


Report. All records can be viewed through this module. user can see all

information related to a particular transaction or his whole transaction related to all his accounts. All Account Details records and Funds Transfer records can be viewed.
Recommendations: The Customer can also see Recommendations on Home Loan

and Education Loan.


Change Password: The Customer can also change the password. Forgot Password:- The Customer if forgots his password can recover his password

through this process and then password will be sent to his mail.

59

SCREEN SHOTS

60

HOME PAGE

61

FORGOT PASSWORD PAGE

62

LOGIN PAGE

63

USERHOMEPAGE

64

MY ACCOUNTS

65

MYACCOUNTS MINIPAGE

66

MYACCOUNTS DETAIL

67

FUNDS TRANSFER

68

BILL PAYMENT HOME

69

ADD BILLER PAGE

70

BILL PAYMENT PAGE

71

EDIT PROFILE PAGE

72

EDIT PHONENO PAGE

73

EDIT EMAIL ID PAGE

74

SERVICES HOME PAGE

75

DEMAND DRAFT REQUEST PAGE

76

CHEQUE BOOK REQUEST

77

PREPAID MOBILE RECHARGE PAGE

78

STDR DEPOSIT PAGE

79

RECOMMENDATION HOME PAGE

80

HOME LOAN

81

EDUCATION LOAN

82

CHANGE PASSWORD PAGE

83

FUNDS TRANSFER REPORT


84

ACCOUNT DETAILS REPORT

85

86

Login Page:using System; using System.Data; using System.Configuration;


87

using using using using using using using using using

System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient; System.Data.SqlClient;

public partial class Login1 : System.Web.UI.Page { SqlConnection con; SqlCommand cmd; String user, pass, st,ct; HttpCookie cookie, Counts; // Running Code void update() { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); SqlCommand cmd = new SqlCommand("Update tblCustomers Set Status='" + txtdata .Text + "' where AccountNo='" + txtUser .Text + "'",con); //cmd.Parameters.Add("@Nm", SqlDbType.VarChar ).Value = Convert.ToString(str2); if (cmd.ExecuteNonQuery() > 0) { Response.Write("Record has been updated successfully"); } con.Close(); } protected void Page_Load(object sender, EventArgs e) { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString());
88

if (IsPostBack==true ) { // if (Convert.ToInt32(Request.Cookies["Counters"].Value)<1) if (Request.Cookies["Counters"] == null) { Counts = new HttpCookie("Counters"); Counts.Value = "1"; Counts.Expires = Convert.ToDateTime("12/06/2010"); //Response.Write(Counts.Value.ToString()); Response.Cookies.Add(Counts); } ; } } protected void btnLogin_Click1(object sender, EventArgs e) { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand("Select CustomerID,AccountNo,LPin,Status from tblCustomers where AccountNo='" + txtUser.Text + "' and LPin='" + txtPass.Text + "'", con); SqlDataReader dr; dr = cmd.ExecuteReader(); if (dr.Read()) { Session.Add("Customerid", dr.GetValue(0).ToString()); Session.Add("AccountNo", dr.GetValue(1).ToString()); ct = dr.GetValue(0).ToString(); user = dr.GetValue(1).ToString(); pass = dr.GetValue(2).ToString(); st = dr.GetValue(3).ToString(); dr.Close(); // Response.Redirect("UserHome.aspx"); }
89

if (txtUser.Text == user && txtPass.Text == pass) { if (st == "Allowed") { cookie = new HttpCookie("UN", txtUser.Text); cookie.Expires = Convert.ToDateTime("12/06/2010"); Response.Cookies.Add(cookie); Response.Write("Login Succeeded"); Response.Redirect("UserHome.aspx"); } else { lblmsg.Visible = true; lblmsg.Text = "Sorry !!! your Account is Blocked"; Response.Redirect("Login1.aspx"); } } else { int Cnt = 0; int i; Counts = new HttpCookie("Counters"); // Counts.Value = (Convert.ToInt32(Request.Cookies["Counters"].Value) + 1).ToString(); i = Convert.ToInt32(Request.Cookies["Counters"].Value) + 1; Counts.Value = i.ToString(); Counts.Expires = Convert.ToDateTime("12/06/2010"); Response.Cookies.Add(Counts); //Request.Cookies["Counters"].Value = (Convert.ToInt32(Request.Cookies["Counters"].Value) + 1).ToString(); Response.Write(Request.Cookies["Counters"].Valu e); Cnt = Convert.ToInt32(Request.Cookies["Counters"].Value);

90

if (Cnt >= 3) { Counts.Value = "1"; txtdata.Text = "Blocked"; update(); Cnt = 0; Request.Cookies["Counters"].Value = Cnt.ToString(); Response.Write(Request.Cookies["Counters"]. Value); Response.Write("Your Account has been bloked"); lblmsg .Text ="Your Account has been Blocked"; } // Response.Write(); } } }

My accounts mini:using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security;
91

using using using using using

System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;

public partial class MyAccounts1 : System.Web.UI.Page { SqlConnection con; SqlCommand cmd; protected void Page_Load(object sender, EventArgs e) { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand("Select AccountNo,Balance from tblBalances where AccountNo='" + Session["AccountNo"] + "'", con); // DataTable Dt = new DataTable(); // Adp.Fill(Dt); // GridView1.DataSource = Dt; // GridView1.DataBind(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()==true ) { txtaccountno.Text = dr.GetValue(0).ToString(); txtavailablebalance.Text = dr.GetValue(1).ToString(); dr.Close(); } Fill_Grid(); } void Fill_Grid() { //SqlDataAdapter adp = new SqlDataAdapter("SELECT TOP 10 format(Dated,'dd/MM/yyyy') as Dated,Narration,Debit,Credit from tblTransactions where AccountNo='" + Session["AccountNo"] + "' order by Dated desc", con);
92

SqlDataAdapter adp = new SqlDataAdapter("SELECT TOP 10 Dated,Narration,Debit,Credit from tblTransactions where AccountNo='" + Session["AccountNo"] + "' order by Dated desc", con); DataSet ds = new DataSet(); adp.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind(); } protected void TextBox2_TextChanged(object sender, EventArgs e) { } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; } protected void GridView1_PageIndexChanged(object sender, EventArgs e) { Fill_Grid(); } protected void txtavailablebalance_TextChanged(object sender, EventArgs e) { } protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { } } My account details:-

using using using using

System; System.Data; System.Configuration; System.Collections;


93

using using using using using using using

System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;

public partial class MyAccountsDetails : System.Web.UI.Page { SqlConnection con; SqlCommand cmd; DateTime str1, str2; protected void Page_Load(object sender, EventArgs e) { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); SqlCommand cmd = new SqlCommand("select Firstname,LastName from tblCustomers where AccountNo='" + Session["AccountNo"] + "'", con); SqlDataReader dr; dr = cmd.ExecuteReader(); if (dr.Read() == true) { txtfirstname.Text = dr.GetValue(0).ToString(); txtlastname.Text = dr.GetValue(1).ToString(); dr.Close(); } } protected void btnSearch_Click(object sender, EventArgs e) { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); //try // str1 = Convert.ToDateTime ( txtFDate.Text.ToString ());

94

// str2 =Convert.ToDateTime ( txtTDate.Text.ToString ()); //long FD, TD //FD = Convert.ToInt64(txtFDate.Text); //TD = Convert.ToInt64(txtTDate.Text); SqlDataAdapter adp = new SqlDataAdapter("SELECT CustomerID,Dated,Narration,Debit,Credit,Mode from tblTransactions where AccountNo='" + Session["AccountNo"] + "' and (Dated BETWEEN '"+ txtFDate .Text +"' and '"+ txtTDate .Text +"' ) order by Dated desc", con); // SqlCommand cmd = new SqlCommand("SELECT Dated,Narration,Debit,Credit from tblTransactions where AccountNo='" + Session["AccountNo"] + "' and (Dated between '" + Convert.ToDateTime(txtFDate.Text.ToString()) + "' and '" + Convert.ToDateTime(txtTDate.Text.ToString()) + "' ) order by Dated desc", con); DataSet ds = new DataSet(); // SqlDataAdapter adp = new SqlDataAdapter(); adp.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind(); // con.Close(); //}on //catch (Exception ex) //{ // Response.Write("<script>alert('" + ex.Message.ToString() + "')</script>"); //} } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; } protected void GridView1_PageIndexChanged(object sender, EventArgs e) { SqlDataAdapter adp = new SqlDataAdapter("SELECT Dated,Narration,Debit,Credit from tblTransactions where AccountNo='" + Session["AccountNo"] + "' order by Dated desc", con); DataSet ds = new DataSet(); adp.Fill(ds);
95

GridView1.DataSource = ds; GridView1.DataBind(); } protected void Button1_Click(object sender, EventArgs e) { } protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { } }

Funds Transfer Code using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security;
96

using using using using using

System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;

public partial class Fundstransfer : System.Web.UI.Page { long str, str2, str3; string str1, str4, s1,s2; SqlConnection con; SqlCommand cmd; void GenEmpNo() { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand ("Select max(Code) from tblTransactions", con); SqlDataReader Dr = cmd.ExecuteReader(); if ( Dr.Read()) { if (Dr.IsDBNull(0) == true) { s1 ="1"; } else { // s1 = (Convert.ToUInt32( Dr[0]) + 1)); s1=(Convert.ToUInt32( Dr[0]) + 1).ToString(); } } Dr.Close(); con.Close(); } void GenTransferNo() {

97

con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand ("Select max(TransferId) from Transfer", con); SqlDataReader Dr = cmd.ExecuteReader(); if (Dr.Read()) { if (Dr.IsDBNull(0) == true) { s2 = "10001"; } else { // s1 = (Convert.ToUInt32( Dr[0]) + 1)); s2 = (Convert.ToUInt32(Dr .GetValue(0)) + 1).ToString(); } } Dr.Close(); } void insert3() { GenTransferNo(); con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand("Insert into Transfer values(@fname2,@gname2,@hname2,@iname2,@jname2,@cid2)", con); cmd.Parameters.Add("@fname2", SqlDbType.Decimal).Value = s2 ; cmd.Parameters.Add("@gname2", SqlDbType.VarChar).Value = txtdestinationaccno.Text; cmd.Parameters.Add("@hname2", SqlDbType .VarChar ).Value = Session["AccountNo"].ToString();

98

cmd.Parameters.Add("@iname2", SqlDbType.VarChar).Value = "Transfer"; cmd.Parameters.Add("@jname2", SqlDbType.VarChar).Value = txtamttransfer.Text.ToString (); cmd.Parameters.Add("@cid2", SqlDbType.DateTime).Value = DateTime.Now.ToString(); if (cmd.ExecuteNonQuery() > 0) { Response.Write("record saved"); // Response.Write("<script> alert('hello'); </script> "); } con.Close(); }

void insert1() { GenEmpNo(); con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand("Insert into tblTransactions values(@fname1,@gname1,@hname1,@accno1,@bccno1,@iname1,@jna me1,@cid1,@cccno1,@kname1)", con); cmd.Parameters.Add ( "@fname1", SqlDbType .Decimal ).Value= s1; cmd.Parameters.Add ("@gname1",SqlDbType .VarChar ).Value= str4.ToString(); cmd.Parameters.Add ("@hname1", SqlDbType .VarChar ).Value = Session["AccountNo"].ToString(); cmd.Parameters.Add ("@accno1", SqlDbType .VarChar ).Value= "Transfer"; cmd.Parameters.Add ( "@bccno1", SqlDbType .VarChar ).Value= "N/A";

99

cmd.Parameters.Add ("@iname1", SqlDbType .DateTime DateTime.Now.ToString(); cmd.Parameters.Add("@jname1", SqlDbType .VarChar ).Value = txtamttransfer.Text.ToString(); cmd.Parameters.Add ("@cid1", SqlDbType .VarChar ).Value = "0"; cmd.Parameters.Add ("@cccno1", SqlDbType .VarChar ).Value = str.ToString(); cmd.Parameters.Add ("@kname1", SqlDbType .VarChar ).Value= "N/A"; if (cmd.ExecuteNonQuery() > 0) { Response.Write("record saved"); } con.Close(); ).Value= } void insert2() { GenEmpNo(); con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand("Insert into tblTransactions values(@fname,@gname,@hname,@accno,@bccno,@iname,@jname,@ci d,@cccno,@kname)", con); cmd.Parameters.Add ( "@fname", SqlDbType .Decimal ).Value =s1; cmd.Parameters.Add ("@gname",SqlDbType .VarChar ).Value = str1.ToString(); cmd.Parameters.Add ("@hname", SqlDbType .VarChar ).Value = txtdestinationaccno .Text ; cmd.Parameters.Add ("@accno", SqlDbType .VarChar ).Value= "Transfer"; cmd.Parameters.Add ( "@bccno", SqlDbType .VarChar ).Value="N/A"; cmd.Parameters.Add ("@iname", SqlDbType .DateTime ).Value= DateTime.Now.ToString(); cmd.Parameters.Add ("@jname", SqlDbType .VarChar ).Value ="0"; cmd.Parameters.Add ("@cid", SqlDbType .VarChar ).Value =txtamttransfer.Text.ToString();

100

cmd.Parameters.Add ("@cccno", SqlDbType .VarChar ).Value = str2.ToString(); cmd.Parameters.Add ("@kname", SqlDbType .VarChar ).Value= "N/A"; if (cmd.ExecuteNonQuery() > 0) { Response.Write("record saved"); } con.Close(); }

void dest() { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand ("Select CustomerID,Balance from tblBalances where AccountNo='" + txtdestinationaccno.Text + "'", con); SqlDataReader Dr = cmd.ExecuteReader(); if (Dr.Read() == true) { str1 = Dr.GetValue(0).ToString(); txtdestinationbal.Text = Dr.GetValue(1).ToString(); Dr.Close(); } str = Convert.ToInt32(txtsourcebalance.Text); str3 = Convert.ToInt32(txtamttransfer.Text); str2 = Convert.ToInt32(txtdestinationbal.Text); if (str > 500) { str = str - str3; str2 = str2 + str3; } else Response.Write("not much balance"); //txtpass.Text = Convert .ToString (str); con.Close();

101

} void updatesrc() { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); SqlCommand cmd = new SqlCommand ("Update tblBalances Set Balance= "+ str.ToString () +" where AccountNo='"+ Session["AccountNo"]+"'", con); // cmd.Parameters.Add("@Nm", SqlDbType .VarChar).Value = Convert.ToString (str); if (cmd.ExecuteNonQuery() > 0) { Response.Write("Record has been updated successfully"); } con.Close(); } void updatedest() { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); SqlCommand cmd = new SqlCommand ("Update tblBalances Set Balance=" + str2.ToString () +" where AccountNo='" + txtdestinationaccno .Text + "'", con); //cmd.Parameters.Add("@Nm", SqlDbType.VarChar ).Value = Convert.ToString(str2); if (cmd.ExecuteNonQuery() > 0) { Response.Write("Record has been updated successfully"); } con.Close(); } protected void Page_Load(object sender, EventArgs e) {

102

con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand ("Select CustomerID,AccountNo,Balance from tblBalances where AccountNo='" + Session["AccountNo"] + "'", con); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() == true) { str4 = dr.GetValue(0).ToString(); txtsourceaccno.Text = dr.GetValue(1).ToString(); txtsourcebalance.Text = dr.GetValue(2).ToString(); } dr.Close(); con.Close(); } protected void txtdestinationaccno_TextChanged(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { try { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); Response.Write(con.State.ToString()); cmd = new SqlCommand ("Select TPin from tblCustomers where AccountNo='" + Session["AccountNo"] + "' and TPin='" + txtpass.Text + "'", con); SqlDataReader Dr = cmd.ExecuteReader(); if (Dr.Read()) { dest(); updatesrc();
103

updatedest(); insert1(); insert2(); insert3(); Dr.Close(); lblmsg.Visible = true; lblmsg.Text = "Money has been transfered "; // Response.Write("<script> alert('message!!'); </script>"); // Response .Write ("<script> alert('"+ lblmsg .Text +"'); </script>"); Button1.Enabled = false; } else lblerror.Text = "Password not Correct"; con.Close(); // lblmsg.Text = "Money has been transfered "; // Button1.Enabled = false; } catch (Exception ex) { Response.Write("<script> alert('"+ ex.Message +"'); </script>"); }

} protected void txtsourceaccno_TextChanged(object sender, EventArgs e) { } protected void txtamttransfer_TextChanged(object sender, EventArgs e) { } }

104

Demand Draft Request

using using using using using

System; System.Data; System.Configuration; System.Collections; System.Web;


105

using using using using using

System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;

public partial class DemandDraft : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { txtaccountno.Text = Session["AccountNo"].ToString(); } protected void btnsubmit_Click(object sender, EventArgs e) { if (txtdate.Text == "") { lblerror .Visible =true; lblerror.Text = "enter date"; } else { Session.Add("name", txtname.Text); Session.Add("address", txtaddress.Text); Session.Add("date", txtdate.Text); Session.Add("amount", txtamt.Text); Session.Add("favour", txtfavour.Text); Session.Add("payable", txtpayable.Text); Response.Redirect("Confirmdemanddraft.aspx"); } } protected void ImageButton1_Click1(object sender, ImageClickEventArgs e) { Calendar1.Visible =true ; } protected void Calendar1_SelectionChanged(object sender, EventArgs e) { txtdate .Text = Calendar1.SelectedDate.Date.ToShortDateString().ToString(); Calendar1.Visible = false;
106

Cheque Book Request using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls;
107

using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class ChequeBook : System.Web.UI.Page { int str1; protected void Page_Load(object sender, EventArgs e) { txtaccountno.Text = Session["AccountNo"].ToString (); } protected void Button1_Click(object sender, EventArgs e) { if (txtdate.Text == "") { lblerror.Visible = true; lblerror.Text = "Enter Date"; } else { Session.Add("typeofcheque", ddtypeofcheque.SelectedItem); Session.Add("date", txtdate.Text); Session.Add("chequeleaves", ddcheckleaves.SelectedItem); str1 = Convert.ToInt32(ddcheckleaves.SelectedItem.ToString()); if (str1 == 25) Session.Add("tax", lbl100.Text); else if (str1 == 50) Session.Add("tax", lbl200.Text); else if (str1 == 100) Session.Add("tax", lbl300.Text); Response.Redirect("ConfirmChequeBook.aspx"); } } protected void Calendar1_SelectionChanged(object sender, EventArgs e) { txtdate .Text = Calendar1.SelectedDate.Date.ToShortDateString().ToString(); Calendar1.Visible = false; } protected void ImageButton1_Click(object sender, ImageClickEventArgs e) {
108

Calendar1.Visible = true; } }

STDR Deposits using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls;
109

using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; public partial class Deposits : System.Web.UI.Page { SqlCommand cmd; SqlConnection con; string str1,str2,str3,str4,str5,s1; int str6,str7,str8; double i1, i2, i3, i4, i5,i6,i7,i8,i9,r2,p,r1,t1,t2; void data() { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); cmd = new SqlCommand ("Select * from Deposits where AccountNo='" + Session["AccountNo"] + "'and AccNo='" + txtac .Text + "' ", con); SqlDataReader Dr = cmd.ExecuteReader(); if (Dr.Read() == true) { Session.Add("accountno", Dr[0].ToString()); Session.Add("customer", Dr[1].ToString()); Session.Add("name", Dr[2].ToString()); Session.Add("balance", Dr[3].ToString()); Session.Add("deptamt", Dr[4].ToString()); Session.Add("rate", Dr[5].ToString()); Session.Add("tenor", Dr[6].ToString()); Session.Add("maturityamt", Dr[7].ToString()); Session.Add("deptdate", Dr[8].ToString()); Session.Add("matdate", Dr[9].ToString()); Session.Add("currency", Dr[10].ToString()); Session.Add("accno", Dr[11].ToString()); Dr.Close(); } } void compound() { i1 = Convert.ToInt32(txtamt.Text); i2 = 7;

110

i3 = Convert.ToInt32(ddyear.SelectedItem.ToString()); i4 = Convert.ToInt32(ddmonth.SelectedItem.ToString()); i5 = i3 * 365; i6 = i4 * 30; i7 = Convert.ToInt32(dddays.SelectedItem.ToString()); i8 = i5 + i6 + i7; r1 = 400+7; r2 = r1 /400; t1 = i8 / 90; t2 = Math.Pow(r2, t1); p = i1 * t2; txtresult.Text = p.ToString(); } void GenAccNo() { cmd = new SqlCommand ("Select max(AccNo) from Deposits",con ); SqlDataReader Dr = cmd.ExecuteReader(); if (Dr.Read()) { if (Dr.IsDBNull(0) == true) { s1 = "110023"; } else { // s1 = (Convert.ToUInt32( Dr[0]) + 1)); s1 = (Convert.ToUInt32(Dr[0]) + 1).ToString(); } } Dr.Close(); } void dest() {

111

con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); cmd = new SqlCommand ("Select Balance from tblBalances where AccountNo='" + Session["AccountNo"] + "'", con); SqlDataReader Dr = cmd.ExecuteReader(); if (Dr.Read() == true) { str3 = Dr.GetValue (0).ToString(); } Dr.Close(); } protected void Page_Load(object sender, EventArgs e) { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); cmd = new SqlCommand ("Select CustomerID,FirstName from tblCustomers where AccountNo='" + Session["AccountNo"] + "'", con); SqlDataReader Dr = cmd.ExecuteReader(); if (Dr.Read() == true) { str1= Dr.GetValue (0).ToString(); str2=Dr.GetValue (1).ToString (); Dr.Close(); } txtdate.Text = DateTime.Now.ToShortDateString(); txtacc.Text = Session["AccountNo"].ToString(); lbltenure.Visible = false; rbdays.Visible = false; rbmonths.Visible = false; lblyear.Visible = false; lblmonth.Visible = false; lbldays.Visible = false; dddays.Visible = false; ddmonth.Visible = false; ddyear.Visible = false; chkterms.Visible = false;

112

} protected void rbstdr_CheckedChanged(object sender, EventArgs e) { if (rbstdr.Checked == true) { lbltenure.Visible = true; rbdays.Visible = true; rbmonths.Visible = true; } } protected void rbtdr_CheckedChanged(object sender, EventArgs e) { if (rbtdr.Checked = true) { lbltenure.Visible = true; rbdays.Visible = true; rbmonths.Visible = true; } }

protected void rbdays_CheckedChanged1(object sender, EventArgs e) { if (rbdays.Checked = true) { lbldays.Visible = true; dddays.Visible = true; chkterms.Visible = true; rbdays.Visible = true; rbmonths.Visible = true; lbltenure.Visible = true; } } protected void rbmonths_CheckedChanged1(object sender, EventArgs e) { if (rbmonths.Checked = true) { lblyear.Visible = true; lblmonth.Visible = true; lbldays.Visible = true; dddays.Visible = true;
113

ddmonth.Visible = true; ddyear.Visible = true; chkterms.Visible = true; rbmonths.Visible = true; rbdays.Visible = true; lbltenure.Visible = true; } } protected void btnsubmit_Click(object sender, EventArgs e) { Try { if (rbstdr.Checked == true) { compound(); GenAccNo(); txtac.Text = s1; string s5 = Convert.ToString(ddyear.SelectedItem.ToString()); string s6 = Convert.ToString(ddmonth.SelectedItem.ToString()); string s7 = Convert.ToString(dddays.SelectedItem.ToString()) ; string s8 = s5 + "yr" + s6 + "mon" + s7 + "days"; int s2 = Convert.ToInt32(ddyear.SelectedItem.ToString()); int s3 = Convert.ToInt32(ddmonth.SelectedItem.ToString()); int s4 = Convert.ToInt32(dddays.SelectedItem.ToString()); DateTime date = Convert.ToDateTime(txtdate.Text); DateTime arrivalDate1 = date.AddYears(s2); DateTime arrivalDate2 = arrivalDate1.AddMonths(s3); DateTime arrivalDate3 = arrivalDate2.AddDays(s4); dest(); //str5 = ddyear.SelectedItem.ToString(); con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open();

114

cmd = new SqlCommand ("Insert into Deposits values(@data1,@data2,@data3,@data4,@data5,@data6,@data7,@da ta8,@data9,@data10,@data11,@data12)", con); cmd.Parameters.Add("@data1", SqlDbType .VarChar ).Value = Session["AccountNo"]; cmd.Parameters.Add("@data2", SqlDbType .VarChar ).Value = str1.ToString(); cmd.Parameters.Add("@data3", SqlDbType .VarChar ).Value = str2.ToString(); cmd.Parameters.Add("@data4", SqlDbType .VarChar ).Value = str3.ToString(); cmd.Parameters.Add("@data5", SqlDbType.VarChar ).Value = txtamt.Text; cmd.Parameters.Add("@data6", SqlDbType .VarChar ).Value = "7%"; cmd.Parameters.Add("@data7", SqlDbType .VarChar ).Value = s8.ToString(); cmd.Parameters.Add("@data8", SqlDbType .VarChar ).Value = txtresult.Text; cmd.Parameters.Add("@data9", SqlDbType .DateTime ).Value = txtdate.Text; cmd.Parameters.Add("@data10",SqlDbType .DateTime ).Value = arrivalDate3.ToString(); cmd.Parameters.Add("@data11", SqlDbType .VarChar ).Value = "INR"; cmd.Parameters.Add("@data12", SqlDbType .VarChar ).Value = s1; if (cmd.ExecuteNonQuery() > 0) { Response.Write("record saved"); } calculate(); updatesrc(); Session.Add("Year", ddyear.SelectedItem.ToString()); Session.Add("Month", ddmonth.SelectedItem.ToString()); Session.Add("Days", dddays.SelectedItem.ToString()); lblyear.Visible = true; lblmonth.Visible = true; lbldays.Visible = true; dddays.Visible = true; ddmonth.Visible = true; ddyear.Visible = true;
115

chkterms.Visible = true; rbmonths.Visible = true; rbdays.Visible = true; lbltenure.Visible = true; chkterms.Visible = true; } Catch Response.write(<script> alert( +ex.Message +) </script>); } } protected void ddyear_SelectedIndexChanged(object sender, EventArgs e) { lblyear.Visible = true; lblmonth.Visible = true; lbldays.Visible = true; dddays.Visible = true; ddmonth.Visible = true; ddyear.Visible = true; chkterms.Visible = true; rbmonths.Visible = true; rbdays.Visible = true; lbltenure.Visible = true; } protected void ddmonth_SelectedIndexChanged(object sender, EventArgs e) { lblyear.Visible = true; lblmonth.Visible = true; lbldays.Visible = true; dddays.Visible = true; ddmonth.Visible = true; ddyear.Visible = true; chkterms.Visible = true; rbmonths.Visible = true; rbdays.Visible = true; lbltenure.Visible = true; } protected void dddays_SelectedIndexChanged(object sender, EventArgs e) { lblyear.Visible = true;
116

lblmonth.Visible = true; lbldays.Visible = true; dddays.Visible = true; ddmonth.Visible = true; ddyear.Visible = true; chkterms.Visible = true; rbmonths.Visible = true; rbdays.Visible = true; lbltenure.Visible = true; } void calculate() { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open(); cmd = new SqlCommand ("Select Balance from tblBalances where AccountNo='" + Session ["AccountNo"] + "'", con ); SqlDataReader Dr = cmd.ExecuteReader(); if (Dr.Read() == true) { txtbal .Text = Dr.GetValue (0).ToString(); Dr.Close(); } str6 = Convert.ToInt32(txtamt.Text ); str7 = Convert.ToInt32(txtbal.Text); if (str7> 500) { str7 = str7- str6; } else Response.Write("not much balance"); //txtpass.Text = Convert .ToString (str); } void updatesrc() { con = new SqlConnection("Data Source=HOMEE83A512B4A;Initial Catalog=Banking;Integrated Security=SSPI"); con.Open();
117

SqlCommand cmd = new SqlCommand ("Update tblBalances Set Balance='" + Convert.ToString(str7 ) + "' where AccountNo='" + Session["AccountNo"] + "'", con ); // Cmd.Parameters.Add("@Nm", OleDbType.VarChar).Value = Convert.ToString(str7 ); if (cmd.ExecuteNonQuery() > 0) { Response.Write("Record has been updated successfully"); } //Cmd.Dispose(); } protected void btnprint_Click(object sender, EventArgs e) { data(); Response.Redirect("stdrdeposit.aspx"); } }

118

UNIT TESTING SYSTEM TESTING INTEGRATION TESTING

SYSTEM TESTING

Here the System testing involved is the most widely used testing process consisting of five stages as shown in the figure. In general, the sequence of testing activities is component testing, integration testing, and then user testing. However, as defects are discovered at any one stage, they require program modifications to correct them and this may require other stages in the testing process to be repeated.
119

Unit testing Module testing

Subsystem testing

System testing

Acceptance testing

(Component testing)

(Integration testing)

(User testing)

Testing is vital to the success of the system. System testing makes a logical assumption that if the parts of the system are correct, the goal will be successfully achieved. In adequate testing or non-testing leads to errors that may not appear until months or even years later.
120

This creates two problems: 1. 2. The time lag between the cause and the appearance of the problem. The time interval effect of the system errors on files and the records on the system.

Another reason for system testing is its utility as a user oriented vehicle before implementation. The best program is worthless if it does not meet the user requirements. Unfortunately, the users demands are often compromised by efforts to facilitate program or design efficiency in terms of processing time or design efficiency.

Because web application evolve continuously , the testing process is an ongoing activity, conducted by web support staff in our case the Organizations IS people who will finally update and manage the application. LEVELS OF TESTING

In order to uncover the errors present in different phases, we have the concept of levels of testing. The basic levels of testing are

Client Needs

Acceptance Testing

Requirements

System Testing

Design
121

Integration Testing

Code

Unit Testing

Unit testing

Unit testing focuses verification effort on the smallest unit of software i.e. the module. Using the detailed design and the process specifications, testing is done to uncover errors within the boundary of the module. All modules must be successful in the unit test before the start of the integration testing begins.

Integration Testing

After unit testing, we have to perform integration testing. The goal here is to see if modules can be integrated properly, the emphasis being on testing interfaces between modules. This testing activity can be considered as testing the design and hence the emphasis on testing module interactions.

In this project the main system is formed by integrating all the modules. When integrating all the modules I have checked whether the integration effects working of any of the services by giving different combinations of inputs with which the two services run perfectly before Integration.

SYSTEM TESTING

122

Here the entire software system is tested. The reference document for this process is the requirements document, and the goal is to see if software meets its requirements. Here entire HRRP has been tested against requirements of project and it is checked whether all requirements of project have been satisfied or not. Acceptance Testing Acceptance Testing is performed with realistic data of the client to demonstrate that the software is working satisfactorily. Testing here is focused on external behavior of the system; the internal logic of program is not emphasized.

White Box Testing This is a unit testing method, where a unit will be taken at a time and tested thoroughly at a statement level to find the maximum possible errors.

I tested step wise every piece of code, taking care that every statement in the code is executed at least once. The white box testing is also called Glass Box Testing.

I have generated a list of test cases, sample data, which is used to check all possible combinations of execution paths through the code at every module level.

Black Box Testing This testing method considers a module as a single unit and checks the unit at interface and communication with other modules rather getting into details at statement level. Here the module will be treated as a block that will take some input and generate output. Output for a given set of input combinations are forwarded to other modules.

123

Black-box test are designed to uncover errors functional requirement without regard to the internal workings of a program. Black-box testing techniques focus on the information domain of the software, deriving test cases by partitioning the input and output domain of a program in manner that provides through test coverage. The blackbox test is used to demonstrate that software functions are operational, that input is properly produced, and that the integrity of external information are maintained. A blackbox test examines some fundamental aspect of a system with little or no regard for the integral logical structure of the software.

System Testing

Validation Testing

Integration Testing

124

Validation testing

System Security

125

IMPLEMENTATION MAINTANENCE EVALUATION

IMPLEMENTATION The Implementation Phase is the final phase of the SDLC and it involves the actual construction and installation of a system. This phase also includes the maintenance of the system and any future updates or expansion of the system. With the database project example, the following activities would be common: Physical installation of the server hosting the database Installation of the database onto the system Installation of the Database Management System Initialization and continuous operation of the database and DBMS Maintaining the hardware and software hosting the database
126

Updating the hardware (physical hard drives, etc) and software (DBMS) as needed Any future expansion of the database.

This phase is the longest phase as it has no defined endpoint, with the exception of the end of the system and it's users. MAINTENANCE :

Software maintenance is the modification of a software product after delivery to correct faults, to improve performance or other attributes, or to adapt the product to a modified environment. The international standard (ISO/IEC 14764) describes the 6 software maintenance processes as: 1. The implementation processes contains software preparation and transition activities, such as the conception and creation of the maintenance plan, the preparation for handling problems identified during development, and the follow-up on product configuration management. 2. The problem and modification analysis process, which is executed once the application has become the responsibility of the maintenance group. The maintenance programmer must analyze each request, confirm it (by reproducing the situation) and check its validity, investigate it and propose a solution, document the request and the solution proposal, and, finally, obtain all the required authorizations to apply the modifications. 3. The process considering the implementation of the modification itself. 4. The process acceptance of the modification, by checking it with the individual who submitted the request in order to make sure the modification provided a solution. 5. The migration process (platform migration, for example) is exceptional, and is not part of daily maintenance tasks. If the software must be ported to another
127

platform without any change in functionality, this process will be used and a maintenance project team is likely to be assigned to this task. 6. Finally, the last maintenance process, also an event which does not occur on a daily basis, is the retirement of a piece of software. Maintenance or enhancement can be classified as: Corrective Maintenance Adaptive Maintenance Perfective Maintenance

Corrective maintenance means repairing processing or performance failures or making changes because of previously uncorrected problems or false assumptions. Logic errors result from invalid tests and conclusions, incorrect implementation of design specifications, faulty logic flow or incomplete test of data. Coding errors are caused by incorrect implementation of detailed logic design and incorrect use of the source code logic. Defects are also caused by data processing errors and system performance errors. All these errors, sometimes called residual errors or bugs, prevent the software from conforming to its agreed specification. The need for corrective maintenance is usually initiated by bug reports drawn up by the end users .

Adaptive maintenance means changing the program function. Adaptive maintenance consists of adapting software to changes in the environment, such as the hardware or the operating system. The term environment in this context refers to the totality of all conditions and influences which act from outside upon the system, for example, business rule, government policies, work patterns, software and hardware operating platforms . The need for adaptive maintenance can only be recognized by monitoring the environment.

128

Perfective maintenance means enhancing the performance or modifying the program(s) to respond to the users additional or changing needs. Perfective maintenance concerns functional enhancements to the system and activities to increase the systems performance or to enhance its user interface. A successful piece of software tends to be subjected to a succession of changes, resulting in an increase in the number of requirements. This is based on the premise that as the software becomes useful, the users tend to experiment with new cases beyond the scope for which it was initially developed.

Preventive maintenance concerns activities aimed at increasing the systems maintainability, such as updating documentation, adding comments, and improving the modular structure of the system . The long-term effect of corrective, adaptive and perfective changes increases the systems complexity. As a large program is continuously changed, its complexity, which reflects deteriorating structure, increases unless work is done to maintain or reduce it. This work is known as preventive change. The change is usually initiated from within the maintenance organization with the intention of making programs easier to understand and hence facilitating future maintenance work . Examples of preventive change include restructuring and optimizing code and updating documentation.

Among these four types of maintenance, only corrective maintenance is traditional maintenance. The other types can be considered as software evolution. As important as it is, many programmers and analysts are reluctant to perform or identify themselves with the maintenance effort. There are psychological, personality and professional reasons for this. In any case, a first class effort must be made to ensure that software changes are made properly and in time to keep the system in tune with user specifications.

Maintenance is costly. One way to reduce maintenance costs is through maintenance management and software modification audits. Software modification consists of

129

program rewrites system level updates, and re-audits of low ranking programs to verify and correct the soft spots.

In HRRP, care has been taken towards maintenance; Loop Holes can be eradicated from the system from time to time according to changing requirements with lesser cost.

EVALUATION :

The evaluation phase ranks vendor proposals and determines the one best suited, Evaluation of the system is performed to identify its strengths and weaknesses. The actual evaluation can occur along any of the following dimensions :

Operational Evaluation: Assessment of the manner in which the system functions, including case of use, response time, overall reliability and level of utilization.

Organizational Impact: Identification and measurement of benefits to the organization in such areas as financial concerns, operational efficiency and competitive impact.

User Manager Assessment Evaluation of the attitudes of senior and user manager within the organization, as well as end-users.

Development Performance: Evaluation of the development process in accordance with such yardsticks as overall development time and effort, conformance to budgets and standards and other project management criteria.

130

131

CONCLUSION:After the successful completion of ebanking website I can conclude that website prepared by me provides all necessary information that a customer asks for. while working on the project, I tried to incorporate as many features as provided by the user module of bank site. I have provided Page level security On every access, the system will check whether a valid user is requesting for the information. No page will be accessible without a valid login. This Software is easy to use and maintain.Since,I have used ASP.NET as front -end friendly & does not need any prior training for using it. and SQLSERVER2005 as backend for maintaining the database ,which is very user-

132

133

Future Scope
The Future Scope of the project is that some new functionalities can also be added as the new technology comes. Many AddIns Featues can also be added to this project. Many high securities can also be added to the project by adding in it externally. Many sites can be collaborated with the Bank site for Customer Service Convience .Many new functionalities which comes new in bank can also be provided to the online banking.

134

135

References

http://www.ucobank.com

http://www.sbi.com http://www.unitedbank.com http://www.google.com http://www.wikipedia.com http://www.asp.net

Books Fundamentals of Software Engineering by Rajiv Mall. System Analysis and Design by Elias M.Awad. C# your visual blueprint for building .NET applications by Eric Butow and Tommy Ryan. C# professional by Wrox ASP.NET Unleashed ,Second Edition By Stephen Walther ASP.NET 1.1 with Hart,David Sussman Microsoft SQL Server 2005 by Dusan Petkovic C# 2003 by Chris Ullman,John Kauffman, Chris

136

S-ar putea să vă placă și