Download - MCA Synopsis MCS-044
BANKING AUTOMATION SYSTEM(MCS-044)
Submitted to
BANKING AUTOMATION SYSTEM
(MCS-044)
FOR THE DEGREE OF
by
Ravi kumar Director, GSE SOFT SOLUTIONS, GSE SOFT Under Guidance of Mr. SURENDRA SHARMA
1
Note :( All entries of the proforma of suggestions should be filled in with appropriate and complete information.Incomplete proforma of suggestions in any respect will be summarily rejected).
2. Title of the project: “BANKING AUTOMATION SYSTEM”
3. Name and Address of the counselor:
4. Educational Qualification of the councellor:
5. Working/Teaching experience of the counseller:
6. Software used in the project:- Java & oracle Signature of the students: - Signature of the counselor
Date: Date:
2
PERFORMA FOR SUGGESTIONS OF MCS-044 PROJECT PROPOSAL
3
CERTIFICATE OF AUTHENTICATED WORK
This is to certify that the project report entitled “BANKING AUTOMATION SYSTEM” Submitted to Indira Gandhi National Open University in partial fulfillment of the requirement for the award of the degree of MASTER OF COMPUTER APPLICATION (MCA), is an original work carried out by group of following students.1.Umesh Kr Mehta 0937232552.Md. Akhtar Ansari 0937222853.Ravi Kumar 0937232484.Arvind Kumar 084249644The matter embodied in this project is a genuine work done by the student and has not been submitted whether to this University or to any other University/Institute for the fulfillment of the requirement of any course of study.
Signature of the Students: Signature of the Guide:
Date: --------------- Date: -----------------
Name & address of Name, Designation and theStudents. Address of the Counsellor:
BIODATA OF THE GUIDE
Name : Surendra Sharma
Designation : Sr. Software Developer 4
Sex : Male
Date of Birth : 05-Jan-1985
Mailing address : [email protected]
Contact No : 09953080091
Eductional qualification:
I have completed MCA from IGNOU in 2008.
I have done BCA from IGNOU in 2006.
“A (PGDCA)” and “O (DCA)” Level from DOEACC Society.
Intermediate from BIEC in 2002.
10th from BSEB, in 2000.
Working experience:
Currently working with webvirtue software pvt ltd as Sr. Software Developer
Hands on Experience of 3+ years as a Software Engineer, responsible for Software development, Unit Testing, Database Designing, at SARS Softavate Technologies Pvt. Ltd, New Delhi.
Date: Signature:
ABSTRACT
The main objective of the project entitled "BANKER" is to facilitate Reliable, Fast and Easy transaction and
5
provide in formation on single keystroke. An attempt is made to computerized the Banking System, which would reduce the manual workload on employees of bank. This in turn would increase the efficiency of the Bank. The project contains following modules:-
1. Authentication: - Authentication is an important procedure, which must be performed before any users have an access to the system. Only valid users are allowed to access the system with different access modes. There are three types of users namely,
(i) User(ii) Manager(iii) Administrator
And there are two access modes Clerical, Managerial Managers and Administrator can also work on the system in clerical mode to perform common clerical tasks but User cannot work in the managerial.
2. Account Creation: - The Bank provides facility to open new account for their new customers. The accounts can be of following nature:-
(i) Current Account (CA)(ii) Saving Account (SB)
(iii) Fixed Deposit (FD)
3. Transactions: - There are mainly three types of Transaction.
i) Receipts
ii) Payments
iii) Transfers
All the above types are transactions are applicable to only Saving AC, Current AC and Cash
6
Credit ACs. Further no any transactions will be performed on dormant accounts.
4. Authorization: - Authorization is the most important module of the project. All the transactions must be authorized in order to update various tables. No payments will be possible on unauthorized accounts. However receipts will be available to those accounts also. Authorization is performed in only 'Managerial' mode.
5. DD and Cheque Module: - Demand Draft and Cheque are important instruments, which will be managed by the project very efficiently. Demand Drafts will be issued to both account holders and non-account holders.
Cheque can be issued to either at account opening time or later at any time. There is a restriction of Rs. 1000/- should be maintain as minimum balance to account having cheque facility. 6. Tools:- There are various tools available for various administrative tasks such as User-ID maintenance, interest calculation etc. User-ID maintenance includes user-ID creation, user-ID modification and user-ID deletion. Interest calculation is described below.
7. Interest Calculation: - Different interest rates will be offered by bank on different account types which is reviewed by RBI (Reserve Bank of India) over period to period. No interest will be paid to Current account but some surcharge is charged to those accounts.
7
8. Reports: - Reports are essential to have a view retrieving various details related to transaction made to accounts and for sending details to head-office. Various reports includes Account Statement, Account listing for any particular account type, list of all transactions made between a given period of time etc.
Above we provide only brief information about modules. The workings of each module are discussed later on in detail.
8
ACKNOWLEDGMENTS
I have tried to achieve all requirements of a common Retal shop. I am responsible for all omissions and for any errors found in this project.
I as the Student of IGNOU, acknowledge the noble and worthy guidance of our teachers of the Pioneer Institute, Delhi-1 Who gave their support in developing this project successfully.
I express my profound gratitude to My parents providing me this golden opportunity of being student of this department and for providing all necessary facilities required during the project.
I have unparallel faith to work under the Guidance of Mr. Surendra Sharma for his invaluable guidance, suggestions continuous encouragement through out the project.
A special thanks to the Director of IGNOU and Regional Director of Regional Centre Delhi-1 and all other those are direct or indirect support support during
9
in my course of this department; given me a golden chance of my course for fulfill the project work.
At last but not least, I am thankful to all my friends who had been helpful throughout the period of my project work.
TABLE OF CONTENTS1: Certificates
1.1: Certificate of Originality2: Acknowledgement3: Preface4: Introduction5: Objectives 6: System Study
6.1: Analysis6.2: Existing System with Limitations6.3: Proposed System with Objectives 6.4: Design6.5: Implementation6.6: Debugging6.7: Deployment & System Testing
10
7: Feasibility7.1: Economic Feasibility7.2: Technical Feasibility7.3: Operation Feasibility
8: Hardware & Software Requirements9: Java10: Tools 11: Oracle12: Data Flow Diagrams (DFDs)13: Software Engineering Paradigm 14: Data base Tables15: Validation Checks16: System Security17: Gantt chart 18: Future Scope 19: Conclusion20: Appendix21: Synopsis
11
PREFACE
Today's commercial world is built around money. Every commercial transaction needs to be supported using a financial transaction. Traditional procedure for maintaining records using Ledgers, Day book etc. is very time consuming and may lead to error if not perfomed carefully.
Keeping this in mind I have made an effort automate the banking operation by developing a small package "BANKER”. "BANKER" (A Project to Automate Banking System) is developed using Java and Oracle 8 J.S.P. used as front-end for the following reasons:
* JAVA is a flexible* Structured programming language.* JAVA is widely available.* JSP provides user friendly interface through forms.
12
The project has used ORACLE 8.0 as back-end for database management. The ORACLE 8.0 provides more handy and safe database management tools. ORACLE 8.0 has tools like DTS Wizards, Query analyzer, enterprise manager etc. Which makes it easier to handle the database?
13
14
INTRODUCTION
About The Project:Banks facilitate financial transactions and hence are an integral part of the commercial world. Banking services has grown by leaps and bounds. Today a bank that offers its customers the widest spread of services mapped to their business (and personal) needs is the bank that is successful.
The Project entitle "BANKER" (A Project to Automate Banking System) is an effort towards designing an in formation system that would provide most of the requirements of Bank.
The project has been designed using the ORACLE 8.0 Database Management System. ORACLE 8.0 is an RDBMS; It uses the relational data model. In this application we have used the concept of the relations to stored and manipulate the data of the Information System. Physically there relations have been stored in form of the tables. Corresponding to each entitle and the relationships we have a database table. These tables contain the columns as the fields of table. Further, each column have some attributes such as data types, size default value etc. which defines and validate the data.
In the Design of "BANKER" we have exploited the rich facilities (tools) of the Java. Java is Sun Micro system language for Rapid Application Development (RAD). It is easy to use, efficient and flexible. I prefer this language because on can build a Windows program quicker and with less effort with Java than with any other programming language. It's is natural language for building database applications, owing to the level and sophistication of the tools included with the language.
We have use JSP for designing the date entry screens corresponding to each table. These forms have been further customized using the tools button, option 15
button, data grid and functions to provide the functionality to make them as user friendly and easy to use as possible. We are providing the data retrieval and the data manipulation task a matter by clicking the desire buttons and the result of the task mentioned on button would be displayed on the screen.
We designed reports that would request the users parameter and provide the result based on the query define the data model of the report and the parameter passed by the users.
After the designing the database tables for defining and manipulating the data, the forms for the data entry and manipulation and the reports for query processing, the next important step is of the integrating these objects into the final up BANKER.
These objectives have been achieved using the form. Various forms have been used to design the screen and these screens have been used along with the coded buttons to integrate objects.
16
17
Objective
The main objective of the project entitled "BANKER" is to facilitate Reliable, Fast and Easy transaction and provide in formation on single keystroke. An attempt is made to computerized the Banking System, which would reduce the manual workload on employees of bank. This in turn would increase the efficiency of the Bank. The project contains following modules:-
1. Authentication: - Authentication is an important procedure, which must be performed before any users have an access to the system. Only valid users are allowed to access the system with different access modes. There are three types of users namely,
(i) User(ii) Manager(iii) Administrator
And there are two access modes Clerical, Managerial Managers and Administrator can also work
18
on the system in clerical mode to perform common clerical tasks but User cannot work in the managerial.
2. Account Creation: - The Bank provides facility to open new account for their new customers. The accounts can be of following nature:-
(i) Current Account (CA)(ii) Saving Account (SB)
(iii) Fixed Deposit (FD)
3. Transactions: - There are mainly three types of
transaction.i) Receipts
ii) Payments
iii) Transfers
All the above types are transactions are applicable to only Saving AC, Current AC and Cash Credit ACs. Further no any transactions will be performed on Dormant accounts.
4. Authorization: - Authorization is the most important module of the project. All the transactions must be authorize in order to update various tables. No payments will be possible on unauthorized accounts. However receipts will be available to those accounts also. Authorization is performed in only 'Managerial' mode.
5. DD and Cheque Module: - Demand Draft and Cheque are important instruments, which will be managed by the project very efficiently. Demand Drafts will be issued to both account holders and non-account holders.
19
Cheque can be issued to either at account opening time or later at any time. There is a restriction of Rs. 1000/- should be maintain as minimum balance to account having cheque facility. 6. Tools:- There are various tools available for various administrative tasks such as User-ID maintenance, interest calculation etc. User-ID maintenance includes user-ID creation, user-ID modification and user-ID deletion. Interest calculation is described below.
7. Interest Calculation: - Different interest rates will be offered by bank on different account types which is reviewed by RBI (Reserve Bank of India) over period to period. No interest will be paid to Current account but some surcharge is charged to those accounts.
8. Reports: - Reports are essential to have a view retrieving various details related to transaction made to accounts and for sending details to head-office. Various reports includes Account Statement, Account listing for any particular account type, list of all transactions made between a given period of time etc.
Above we provide only brief information about modules. The working of each module are discussed later on in detail.
20
21
SYSTEM STUDY
Analysis:I had to undertake a logical and proficient
analysis to scrutinize the feasibility of the project. The demands and system needs were carefully analyzed. I had studied several Banks in Gorakhpur. I had also studied the report of SBI . The types of considerations that were taken were economical, technical and resource wise. The resources like the users who will operate the computer, were thoroughly studied to ensure that they could ably ensure total compatibility with the objectives of the project. An effort was made to make the banking system efficient in all type of day to day transactions.
Existing system with limitations:
The existing system has a manual work system. The manual work system takes more time and then it may also be possible that the system has errors. The manual systems work is very slow, has emotion, tiredness and some other problems. The existing "manual banking system" has many limitations. It takes a reasonable time to search a particular account in Account Ledgers and takes reasonable time in checking, updating and authorizing various transactions. Major problem faced during interest calculation because interest will be given on the minimum balance between 10th and last of the every month. Interest Calculation is very time consuming and hard working operation when it is done manually. Also reports prepared by clerks are not very appropriate due their poor writing and improper format used.
Proposed System with Objectives:
22
The approach adopted in “BANKER” system is
very simple, lucid, comprehensive, and user friendly. The proposed system can efficiently handle all the tasks as keeping the record of the Bank and it’s through different sides. This task can be efficiently handled at the single instruction of the user without taking more time, which on the other hand become very hazardous when done manually.
The Menu’s have been so easily defined one within the other so that there is no difficulty in understanding it. It is very sophisticated software and can be used by any Banking organization to store their information in an efficient manner and we hope that it will be of great help to them. This Project has been designed to reduce the manual work. Interest calculation and report generation modules are designed carefully to reflect the actual system behavior.D ESIGN :
The prototype was iteratively enhanced. Each new enhanced prototype was sought to be more powerful and robust. The process of constant enhancement was carried out until the Project-guide and some other concerning persons were fully satisfied with the System-design in hand. After the analysis of the project, the most creative phase of the Project was commenced, that of the Designing. The designing dealt with the conception of the System-designs that are to be implemented to execute the project. Data-Flow-Drawings was don’t to define the accurate flow of DATA. After various rounds of discussion and arguments the design was finalized.IMPLEMENTATION:
The next stage that of implementation dealt with the synergizing of the System design and application of the various technical-tools. The final prototype that was designed was coded in the tools, most convenient, powerful and flexible for the implementation of the
23
various modules. Various modules were coded very carefully only after considering every conditions and cases that may affect the functionality of the module.Expert’s suggestions are also considered along with my own ideas and experience. During Implementation, all the small queries and doubts were referred to the Project Guide.
DEBUGGING:
After successfully coding the individual modules, all the modules were crosschecked. The debugging was performed to ensure that no software bugs exited. Debugging is recursively performed until the newly designed system resembles the proposed system. It was ensure that all the modules were logically and syntactically correctly coded. During Debugging, The entire module combined together by systematically checking and correcting the modules one at a time. All the troubles hooting was dealt deftly by the experts and project guide to ensure robustness of the individual modules.
DEPLOYMENT & SYSTEM TESTING:
The phase of Deployment and system Testing involved the task of the linking of all the individual modules to establish the actual and complete project. The system testing involved String Testing (to check compatibility of the modules with one another to establish integration), Overall Testing (validation of the System against failures) and Ensurance to the original Project guidelines. Any discrepancy found was immediately removed and all the testing were undertaken once more to establish System- Credibility. The Project-Guide was demonstrated the Project and all his challenging enquiries were fully satisfied.
24
25
FEASIBILITY
Many feasibility studies are disillusioning for both users and analysts. First, The study often presupposes that when the feasibility document is being prepared, the analyst is in a position to Evaluate solutions. Second most studies tend to overlook the confusion inherent in system development. The constraints and the assumed attitudes. If the feasibility study is to serve as a decision document, It must Answer three key question-
26
1. Is there a new and better way to do the job that will benefit the user?
2. What are the costs and savings of the alternatives?3. What is recommended?
The most successful system projects are not necessarily the biggest or most visible in a business but rather those that truly meets user Expectations. More projects fail because of inflated expectation than for any other reason.
ECONOMICAL FEASIBILITY:
Economical Analysis is the most frequently method for evaluating the effectiveness of a system. More Commonly Known as Cost/Benefit analysis. Cost/Benefit analysis is the procedure to determine the benefits and saving that are expected from a candidate system and compare them with costs. If benefits outweigh costs, then the decision is made to design and implement the system. Otherwise, further justification or alternation in the proposed system will have to be made if it is to have to chance of being approved. The Computerized system is economically very feasible.
In this project the economy side is not affected because any banking organizations have to pay less amount and can use this software. That organization has to purchase a small configuration computer and installation of this software is very easy.
TECHNICAL FEASIBILITY :
Technical Feasibility centers around the existing computer system (Hardware, Software etc.) and to what extent it can support the proposed addition. For example- if the current computer is operating at 80 percent capacities and arbitrary ceiling than running another application hardware. This involves financial
27
consideration to accommodate technical enhancement. Once you gave installed a computer system instead of manual system all things will go on in smooth and efficient manner.
OPERATION FEASIBILITY :
The computer system is very durable as compared to manual system. The computer system has guaranteed to do works with same speed and accuracy even at longer time while a man can do it so better. Any users who know very little about the computer can also use this software very easily. So the Computerized System is time feasible than the manual system.
28
29
HARDWARE & SOFTWARE REQUIREMENTS
HARDWARE REQUIREMENT: (Recommended)
1. Pentium III (566 MHz)2. RAM 64 MB3. H.D.D. 10 GB
SOFTWARE REQUIREMENTS :
Language:- JAVA JSPBackend :- ORACLE-8.0Platform :- Windows 98 (SE)
MINIMUM HARDWARE REQUIREMENT :
1. Pentium I (133 MHz)2. RAM 32 MB3. H.D.D. 5 GB
30
JAVA
Java is a technology that makes it easy to build
distributed applications, which are programs
executed by multiple computers across a networks.
Java is designed to meet the challenges of application
development in the context of heterogeneous,
network-wide distributed environment. Paramount
among these challenges is secure delivery of
applications that consume the minimum of system
resources, can run on any hardware and software
platform, and can be extended dynamically.
Sun had developed a new language called Oak. Oak preserved the familiar syntax of C++, but omitted the potentially dangerous features like explicit resources references, and pointer arithmetic and operator overloading. In 1994 Sun completed work on a product known as Web Runner. Web Runner was later renamed Hot Java. Finally, in 1995, Oak was renamed Java.
Java is a simple, Object-Oriented, Distributed,Interpreted, Robust, Secure, Architectural, Portable,High-performance, Multithreaded, Dynamic, Buzzword-complaint, General-purpose programming for the Internet in the form of platform-independent Java applets.The most likely place to find the Java is on the World Wide Web. Java has begun to address the protocol problem by
31
using Java applets is a Java program, which appears embedded in a Web document, just as graphics would be. Java’s strength derives form its unique architecture. Java uses a compiler to convert human-readable source code into executable programs.
Features of Java:
Java is Simple, Object-Oriented, Distributed, Interpreted, Robust, Secure, Architectural-Neutral, Language. There are several major characteristics that make Java such a powerful development tool:
Simple Java is simple and elegant language whose syntax is reminiscent of the infant terrible of modern computer science like C++. Java was made simpler primarily to give programmers fewer ways of making mistakes. Java omits many rarely used, poorly understood, confusing feature of C++ that in our experience bring more brief overloading, multiple inheritance, and extensive automatic coercion. Java add auto garbage collection.
Object-Oriented Unlike C++ Java required that everything be an object. Global data and standalone functions are not allowed. Every class in Java is directly or indirectly descendent from the grandfather of all classes in Java, the Object class. Java is an Object-Oriented language ; that is, it has facilities for Object-Oriented Programming incorporated into the language.
Distributed and Dynamic
Java has extensive library of routines for copying easily with TCP/IP protocols like HTTP and FTP. Java application can open and access object across the net
32
via URLs with the same ease that programmers are used to when accessing a local file system. Java has inherent extensive TCP/IP and HTTP capabilities.
Java is Robust
Pointer to pointer manipulation can be used by knowledge based programmers to tremendous advantage. Java put a lot of emphasis on early checking for possible problem, later dynamic (runtime) checking and eliminating situation that are error prone.
Security
Security is probably the number one problem facing Internet developers. Java’s security model has three primary components: the Class Loader, Byte-code Verifier, and the Security Manager. When the class loader retrieves classes from the network, it keeps classes from different servers separate from both each other and local classes. The Security manager implements a security policy for the VM. Java is client side technology. Java is intended to be used in networking/distributed environments. After the transmission to Java byte-code phase, Java programs are in effect, download from the host machine using conventional Web Server. Java provides different level of security checks.Architectural Neutral
Java byte-codes are independent of any underlying architectural. The Java compiler generate byte-code instruction which have nothing to do with a computer architecture.
High Performance
The byte-codes can be translated on the fly(at runtime) in to machine code for the particular CPU the application is running on. The performance of
33
byte-code converted to machine code is almost indistinguishable from native C or C++.
Multithreaded
A multithreaded application can have several threads of execution running independently and simultaneously. Multithreading is a way of building application with multiple threads. Java has a sophisticated set of synchronization primitives that are based on the widely used moniter and condition variable paradigm. Benefits of multithreading are better interactive responsiveness and real time behavior. Multithreading is commonly used to perform the following functions: Maintain user interface responsiveness Multitasking Multi-user application Multiprocessing
Portable
The Java programs are highly portable. Unlike C and C++, there are no implementation dependent aspects of the specification. The libraries that are a part of the system define portable interfaces.
Interpretative
The Java interpreter can execute Java byte codes directly on any machine to which the interpreter has been ported. Java links are more incremental and lightweight process, the development process can be much more rapid and exploratory.
Versatility/ Flexibility
34
Java understands interfaces classes, which have run time representation. Java is more dynamic language than C/C++(e.g. One major problem with using C++ in a production environments is a side effect of the way that code is always implemented).
Open Standards
Java VMS are available for more than a dozen different hardware-operating system combinations. The most exciting aspect of Java’s cross-platform capability is that Java class files do not need to be compiled for each platform in advance.Memory management and Garbage collection Memory management is the bane of all C and C++ programs. If the memory allocations do not perfectly match memory be allocations, the program will either crash immediately, or consume system resources until exhausted. Temporary memory is automatically reclaimed after it is no longer referenced by any active part of the program. Memory management reinforces the security of the VM.
35
Tools and Environment used
Introduction to tool concept:
36
Tool:- In a strict sense, tools are those things which are necessary to create some result. “A Carpenter would use a hammer and saw to create furniture, a programmer would use a compiler and a program editor to create software”.
Definition (Tool):A tool is any device that, when used properly,
improves the performance of a task, such as the development of computer information systems.
JSP
A JSP page is a text-based document that describes how to process a request to create a response. JSP is a Java-based technology that simplifies the process of developing dynamic web sites. With JSP, web designers and developers can quickly incorporate dynamic elements into web pages using embedded java and simple markup tags. These tags provide the HTML designer with a way to access data and business logic stored inside java objects. Java Server Pages are text files with the extension .jsp, which take the place of traditional HTML pages. JSP files contain traditional HTML along with embedded code that allows the developer to access data from the java code running on the server.
Advantages of JSP
JSP technology is the JAVA platform technology for building applications containing dynamic web content such as HTML, DHTML, XHTML, and XML . The Java Server Pages technology enables the authoring of web pages that create dynamic content easily but with maximum power and flexibility.
37
The Java Server Pages technology offers a number of advantages:
Write Once, Run Anywhere properties The Java Server Pages technology is platform independent, both in its dynamic Web pages, its Web servers, and its underlying server components. We can author JSP pages on any platform, run them on any Web server or Web enabled application server, and access them from any web browser. We can also build the server components on any platform and run them on any server.
Support for scripting and actions The Java Server Pages technology supports scripting elements as well as actions. Actions permit the encapsulation of useful functionality in a convenient from that can also be manipulated by tools. Scripts provide a mechanism to glue together this functionality in a per-page manner.
Performance
JSP is typically implemented via servlets. When a web server receives a request for a JSP page, it forwards it to a special process dedicated to handling servlet execution. This process is referred to as the servlet container. In the context of JSP, it is referred to as the JSP container. The servlet container is normally a separate process from the HTTP server, primarily due to the fact that the servlet container is a Java process, running in a JVM, while most HTTP servers are written in other languages. The key factor here is that, for servlet containers associated with conventional HTTP servers, there is only one additional process for the servlet container, which handles all servlet-related requests, including JSP. This process is initiated when the HTTP server starts up, and continues to run until the HTTP server is shut down.
38
There are three categories of JSP tags: * Directives These affect the overall structure of the servlet that results from translation, but produce no output themselves.* Scripting Elements These let us insert Java code into the JSP page (and hence into the resulting servlet).
* Actions These are special tags available to affect the runtime behavior of the JSP page. JSP supplies some standard actions, such as <jsp:useBean>, These custom actions are usually referred to as tag extensions or custom tags.
JSP Directives syntax is:
<%@ directivename attribute=”value” attribute=”value”%>
There are three main directives that can be used in a JSP: * the page directive * the include directive * the taglib directive Syntax of the page directive is:-
<%@ page ATTRIBUTES %>
Syntax of the include directive is:- <%@ include file=”Filename”%>
Syntax of the taglib directive is:- <%@ taglib uri=”tagLibraryURI” prefix=”tagPrefix” %>
39
JAVA SCRIPT
Scripting languages are programming languages that are interpreted by programs rather than by a computer processor. Therefore, you do not need to translate scripting languages to machine code for interpretation by the browser. Scripting languages are used to incorporate user interactivity in web documents. Java Script was developed, by Netscape Communications Corporation. JavaScript code Syntax is similar to that of Pascal code and C language. JavaScript can be used for writing scripts that can be interpreted by the server and the client computers. JavaScript is supported by Internet Explorer version 4.0 and later versions and Netscape Navigator version 4.0 and later versions. JavaScript was initially called live Script by its developer, Netscape Communications Corporation. The language was later renamed JavaScript, although JavaScript is distinguishably different from Java. JavaScript was developed to be embedded with in the HTML code to enhance Client-side interactivity in the web documents.
Features of JavaScript
# JavaScript is an object-based Scripting language.
# JavaScript works independent of the platform.
# JavaScript supports, events.
40
Advantages of JavaScript* Supports enhanced user interactivity.* Supports Client-side validations.
Supports browser identification.
Supports plug-in detection
Supports simplification of programs.
-> JavaScript also supports Client-side Scripting
and Server-side scripting. The client-side
JavaScript(CSJS) is used to manipulate web
documents and browsers and to facilitate data
processing on the client Computer.
The execution of CSJS code is triggered by events
on the client Computer.
->JavaScript also supports server-side Scripting.
The server-side Scripting is used to facilitate the
data processing on the server and for customizing
server-based applications. Server-Side
JavaScript(SSJS) also provides various databases
and objects for web application development.
Syntax.
<SCRIPT LANGUAGE=” JavaScript”>
------------------ ----------------
</SCRIPT>
41
42
ORACLE
Oracle is the most popular RDBMS among the IT organizations due to the features offered. The current
version of Oracle 8i this is web enabled. More than 50% of Web applications use Oracle as their Database Server.
Oracle 8i also supports Java.
Introduction to Oracle and Its Tools: The Oracle product is primarily divided into
* Oracle Server tools* Oracle Client tools
OracleServer: Oracle is a company that produces the most widely used, Multi user RDBMS. The Oracle Server is a program installed on the Server’s hard disk drive. This program must be loaded in RAM so that it can process user requests.This Oracle Server product is either called Oracle Workgroup Server or Oracle Enterprise Server The functionality of both these products is identical. However, the Oracle Workgroup Server restricts the number of concurrent users who can query the Server. Oracle Enterprise Server has no such restrictions. Either product must be loaded on a multi user operating system.
43
The Oracle Server takes care of the following:
Updating the database.
Retrieving information from the database.
Accepting query language statements.
Enforcing data integrity specifications.
Managing data sharing.
Oracle Client Side Tools:
Oracle for Windows 95 :
SQL*PLUS: The SQL *Plus tool is made up of two distinct parts. These are * Interactive SQL * PL/SQL Interactive SQL is designed to create, access and maintain all data structures like tables, indexes etc. It can also be used for interactive, data manipulation.Programmers can use PL/SQL to create programs for validation and manipulation of table data. PL/SQL adds to the power of interactive SQL and provides the user with all the facilities of a standard, modern day(4GL) programming environment. Via PL/SQL the user can not only manipulate data but also can use procedural techniques such as writing loops or branching to another block of code.
44
45
0 Level (Context Level) DFD
Transaction Master
DisplayMessage
Valid User's Interacts Banker
GeneratesReports
A/C Master
46
1 Level DFD
Login-id Users Authentication
Login Password
A/C Creation Report Generates Reports
Generation
Transaction
A/C Master Transaction Master
Authorization
Authorized Transaction
47
2 Level DFD (Transaction & Authorization Module)
Enters Valid Users Verification A/c
Master A/C No.
Verified
Valid A/c No.
Deposit WithdrawalTransfer
Receipt Payment Transfer
Unauthorized Transaction
TransactionAuthorization
Cancelled Authorizes
Cancelled Transaction Trans Master
48
49
SOFTWARE ENGINEERING PARADIGM
A system consists of components, which have components of their own; indeed a system is a hierarchy of components. The highest-level component corresponds to the total system. To design such hierarchies there are two possible approaches: top-down and bottom-up. The Top- down approach starts from the highest-level component of the hierarchy and proceeds through to lower levels.
A top-down design approach starts by identifying the major components of the system, decomposing them into their lower-level components and iterating until the desired level of details is achieved. Top-down design methods often result in some form of stepwise refinement.
A bottom-up design approach starts with designing the most basic primitive components and proceeds to higher-level components that use these lower-level components. Bottom-up methods work with layers of abstraction.
Our Project, “BANKER” follows bottom-up approach. Because it works with layers of abstraction. We have started with simple A/Crime Branch opening & transaction and finished the project on interest calculation. (a significantly complex procedure.)
50
51
Database table structure
SQL> desc bank_login Name Null? Type ------------------------------- -------- ------ LOGIN_ID NOT NULL VARCHAR2(10) PASSWORD VARCHAR2(10) NAME VARCHAR2(30) ADDRESS_1 VARCHAR2(20) ADDRESS_2 VARCHAR2(20) CITY VARCHAR2(15) PHONE VARCHAR2(11) EMAIL VARCHAR2(30) USER_TYPE VARCHAR2(10)
SQL> desc account_master Name Null? Type ------------------------------- -------- ------ ACCOUNT_NO NOT NULL NUMBER(8) AC_TYPE VARCHAR2(2) AC_HOLDER_NAME VARCHAR2(30) ADDRESS1 VARCHAR2(30) ADDRESS2 VARCHAR2(20) PHONE VARCHAR2(11) MINOR VARCHAR2(2) CHEQUE_ISSUED VARCHAR2(2) OP_MODE NUMBER(2) CL_BAL NUMBER(12,2) AC_BAL NUMBER(12,2) OPEN_DATE DATE VERIFIED_BY VARCHAR2(20) STATUS VARCHAR2(2) INTRO_TYPE VARCHAR2(15)
SQL> desc transaction_master Name Null? Type ------------------------------- -------- ------- TRANS_ID NOT NULL NUMBER(7) USER_ID VARCHAR2(10)
52
ACCOUNT_NO NUMBER(8) TOKEN NUMBER(4) TRANS_TYPE VARCHAR2(3) TRANS_DATE DATE TRANS_DB_AMT NUMBER(12,2) TRANS_CR_AMT NUMBER(12,2) TRANS_BAL NUMBER(12,2) TRANS_MODE VARCHAR2(10) CHEQUE_NO VARCHAR2(8)
SQL> desc temp_transaction Name Null? Type ------------------------------- -------- ------- TRANS_ID NUMBER(7) USER_ID VARCHAR2(10) FROM_ACCOUNT NUMBER(8) TO_ACCOUNT NUMBER(8) TRANS_MODE VARCHAR2(10) CHEQUE_NO VARCHAR2(8) TR_DATE DATE CREDIT_AMT NUMBER(12,2) DEBIT_AMT NUMBER(12,2) TRANS_TYPE VARCHAR2(3)
53
SQL> desc bank_admin Name Null? Type ------------------------------- -------- ------- ADMIN_LOGIN VARCHAR2(15) ADMIN_PASS VARCHAR2(10)
SQL> desc cheque_book Name Null? Type ------------------------------- -------- ------- ACCOUNT_NO NUMBER(8) CHQ_ISSUE_DATE DATE ST_CHQ_NO VARCHAR2(8) END_CHQ_NO VARCHAR2(8)
SQL> desc dd_master Name Null? Type ------------------------------- -------- ------- DD_NUMBER NUMBER(7) DD_DATE DATE IN_FAVOUR_OF VARCHAR2(30) PAYABLE_AT VARCHAR2(20) AMOUNT NUMBER(8) PAY_MODE VARCHAR2(10) APPL_NAME VARCHAR2(30) APPL_ADDRESS VARCHAR2(30) APPL_AC_NO NUMBER(8) EXCHANGE_AMT NUMBER(4) ISSUED_BY VARCHAR2(10)
54
SQL> desc nominee Name Null? Type ------------------------------- -------- ------ ACCOUNT_NO NUMBER(8) NAME1 VARCHAR2(30) ADDRESS1 VARCHAR2(20) CITY1 VARCHAR2(20) PHONE VARCHAR2(15) NAME2 VARCHAR2(30) ADDRESS2 VARCHAR2(30) CITY2 VARCHAR2(20) PHONE2 VARCHAR2(15)
SQL> desc minor Name Null? Type ------------------------------- -------- ------ AC_ID NUMBER(8) DOB DATE G_NAME VARCHAR2(30) G_ADDRESS VARCHAR2(30) G_CITY VARCHAR2(15) G_PHONE VARCHAR2(11)
SQL> desc account_holder Name Null? Type ------------------------------- -------- ------ AC_ID NUMBER(8) AC_HOLD1 VARCHAR2(30) ADDRESS1 VARCHAR2(30) CITY1 VARCHAR2(15) PHONE1 VARCHAR2(11) AC_HOLD2 VARCHAR2(30) ADDRESS2 VARCHAR2(30) CITY2 VARCHAR2(15) PHONE2 VARCHAR2(11)
SQL> desc ac_introducer Name Null? Type ------------------------------- -------- ------- ACCOUNT_NO NUMBER(8)
55
INTRO_TYPE VARCHAR2(15) NAME VARCHAR2(30) AC_TYPE VARCHAR2(4) INTRO_AC_NO NUMBER(8)
SQL> desc fixed_deposit Name Null? Type ------------------------------- -------- ------ ACCOUNT_NO NUMBER(8) FIXED_AMT NUMBER(12,2) OPEN_DATE DATE MATURITY_DATE DATE MATURITY_AMT NUMBER(14,2)
56
57
VALIDATION CHECKS
1. User’s login-name is Unique.2. Validation of user login and password is done to
authenticate a legitimate user.3. Only Administrator can add, modify or delete
login-Ids and ordinary user & manager can’t.4. A/c no. is unique.5. Transaction can be done from operative
account only. And the A/c should have sufficient clear balance.
6. Only Manager can authorize or cancel transactions.
7. Minimum balance for A/C having cheque facility should be Rs. 1000/- and for A/c having without cheque facility should be Rs. 500/-.(Applicable to only saving & current accounts only)
8. Interest should be applied only once for a given period. If further attempt is made to calculate interest, Bank Man simply refers to do so.
58
59
SYSTEM SECURITY
A good software must have good security system. Any unauthorized access must not be permitted. My project has triple security system. First security for the Administrator and second security for the manager and third and lower level is User. An ordinary user cannot have an access in the supervisory or managerial mode but an administrator can have an access in the clerical and managerial mode. An administrator can give the authorization to accessing the system to the any user. A user who is authorized by the administrator is only has access right for this software. Administrator can delete an authorized user. One user is not permitted to access another user login. Administrator can change his password for well-proofed security. An entry comprise of user-ID, access mode, date and time of login. The logout time of the system is recorded when the user logged out from the system.
60
61
GANTT CHART
A conceptually simple and effective scheduling technique is the Gantt chart, which uses a calendar-chart to represent the project schedule. Each activity is represented as a bar in the calendar, starting from the starting date of the activity become milestones for project.
For each activities a colour bar can be drawn specifying when the activity started and ended, i.e., when these two milestones were actually achieved.
62
Gantt chart
System HLD LLD Designijg Front Back Preparation Integration Acceptence Do- Requirement end end for test of testing tesing -cum- & analysis coding coding cases and -entat- Test data -ation
63
64
FUTURE SCOPE
I have tried to give more and more facilities in a given limited time, but many things are untouched which can be added in future. In the following section some of the facilities of Banking System which is untouched by me is given –
1. In future we can take on-line Banking (Through Internet)
2. In Future ATM facility would be provided by the Bank.
3. Facility of clearing of cheques both local and out station would be provided by the Bank.
4. Loaning would be started by the Bank for various purposes.
5. Some complex report would be generated by Bank using the core concept of financial accounting.
65
66
CONCLUSIONS
On working with this project I have got to interest with many more ideas to make it more advanced & perfect. This Project will provide will provide a better management for only some modules of Banks through the computer, which runs through many of transactions every day. These transactions may be either receipts, payments, transfers, loan and so on.
This project can be automatically introduces us to the vast areas of computers. This project inspires me to the ideas of developing organization-oriented software for an organization.
I have got to learn more new things through these Projects. I hope that this project in conjunction with other modules will be extremely helpful to any bank.
67
68
BIBLIOGRAPHY
The complete Reference JAVE -2 Herbert Schildt Patrick Naughton
Java database Programming with Pratik Patel
JDBC Karl Moss
Mastering Java 2 John Zukowski
Professional JSP J2EE 1.3 Subrahmanyam,Allamaraju, &Cedric Buest
SOL,PL/SOL(ORACLE) IVAN BAYROSS
Sites:
http.www.java.sun.com http.www.oracle.com
69
70
INTRODUCTION
About the Project :
Banks facilitate financial transactions and hence are
an integral part of the commercial world. Banking
services has grown by leaps and bounds. Today a Bank
that offers its Customer's the widest spread of Services
mapped to their business (and personal) needs is the
bank that is successful.
The Project entitled "BANKER" (A project to
Automate Banking System) is an effort towards designing
an Information System that would provide most of the
requirements of a Bank.
The project has been designed using the Oracle 8. It
uses the relational data model. In this application we
have used the concept of the relations to stored and
manipulate the data of the Information System Physically
these relations have been stored in form of the tables.
In the design of "BANKER" we have exploited
the rich facilities (tools) of the JAVA. JAVA for Rapid
Application Development (RAD). It is easy to use, efficient
71
and flexible. I prefer this language because one can build
a windows program quicker and with less effort with
JAVA than with any other programming language.
OBJECTIVE
The main objective of the project entitled
'BANKER" is to facilitate reliable, fast and easy
transaction and provide information on single keystroke.
An attempt is made to computerized the Banking System,
which would reduce the manual workload on employees
of Bank. This in turn would increase the efficiency of the
bank.
CATEGORY
RDBMS :
The project falls in to category of RDBMS, as I have
used oracle 8 as back end to keep the record of banks and
JAVA as front end to generate all the screens.
72
0 Level Context Level) DFD
Transaction Master
DisplayMessage
Valid User's Interacts Banker
Generates
Reports
A/C Master
73
1 Level DFD
Login-id Users Authentication
Login Password
A/C Creation Report Generates Reports
Generation
74
Transaction
A/C Master Transaction Master
Authorization
Authorized Transaction
2 Level DFD (Transaction & Authorization Module)
Enters Valid Users Verification A/c
Master A/C No.
Verified
Valid A/c No.
75
Deposit WithdrawlTransfer
Receipt Payment Transfer
Unauthorized Transaction
TransactionAuthorization
CancelledAuthorizes
Cancelled Transaction Trans Master
76
PROCESS LOGIC MODULES WISE
The Project entitled "BANKER" contains following
modules:
1. Authentication :
Authentication is an important procedure which must
be performed before any user have an access the system
with different access modes. There are three types of users
namely.
(i) User
(ii) Manager
(iii) Administrator
and there are three access modes clerical, managerial
and supervisory. Managers and Administrator can also work
on the system in clerical mode to perform common. Clerical
tasks but user cannot work in the managerial or supervisory
mode.
2. Account Creation :
The Bank provides facility to open new account for
their new customers. The accounts can be following nature. 77
(i) Current Account (CA)
(ii) Saving Account (SB)
(iii) Fixed Deposit (FS)
3. Transactions :
There are mainly three types of transaction :
(i) Receipts
(ii) Payments
(iii) Transfers
All the above types are transactions are applicable to
only Saving A/c, Current A/c and Cash Credit A/c.
4. Authorization :
Authorization is the most important module of the
project. All the transaction must be authorize in order to
update various tables. No payments will be possible on
unauthorized accounts. However receipts will be available
to those accounts, Authorization is performed in only
'Managerial' mode.
78
5. DD and Cheque Module :
Demand Draft and cheque are important instrument
which will be managed by the project efficiently. Demand
Draft will be issued to both account holders and non-
account holders.
Cheque can be issued to either at account opening
time or later at any time. There is a restriction of
Rs. 1000.00 should be maintain as minimum balance to
account having cheque facility.
6. Tools :
There are various tools available for various
administrative tasks such as User-ID maintenance, interest
calculation etc. User-ID maintenance include user-ID
creation, user-ID modification and user-ID deletion. Interest
calculation is describe below.
7. Interest Calculation :
Different interest rates will be offered by bank on
different account types which is reviewed by RBI (Reserve
79
Bank of India) over period to period. No interest will be paid
to Current account but some surcharge is charged to those
accounts. Cash Credit accounts will be charged by bank on
the negative balance.
8. Reports :
Reports are essential to have a view and print for
retrieving various details related to transaction made to
accounts and for sending details to head-office. Various
reports includes Account Statement, Account listing for any
particular account type, list of all transactions made
between a given period of time etc.
80
Database Structure for Login
S.No.
Field Name Data Type Size
1. Login_ID Character 10 (Primary Key)
2. Password " 10
3. Name " 30
4. Address 1 " 20
5. Address 2 " 20
6. City " 15
7. Phone " 11
8. E_Mail " 30
9. Times Small Int 2
10. D_L_L Small Date Time
4
11. User_Type Character 10
Database Structure for Login Info
S.No.
Field Name Data Type Size
1. Login_ID Character 10
2. Mode " 10
3. Login Time Date Time 8
4. Logout Time " 8
81
Database Structure for AC_Mast
S.No.
Field Name Data Type Size
1. AC_Mast int 4 (Primary Key)
2. AC_Type Character 2
3. AC_Holder Name
" 30
4. Add1 " 30
5. Add2 " 30
6. City " 20
7. Phone " 11
8. Minor Bit 1
9. Cheque_Issued
" 1
10. OP_Mode Small Int 2
11. Cl_Bal Money 8
12. Act_Bal " 8
13. Open_Date Small Date Time
4
14. Verified_By Character 30
15. Status " 1
Database Structure for Introducer
S.N Field Name Data Type Size
82
o.
1. AC_Mast Integer 4 (Primary Key)
2. Intro_Type Small Int 2
3. Intro_AC No. Int 4
4. Name Character 30
5. AC Type_Dsg " 20
Database Structure for AC Holder
S.No.
Field Name Data Type Size
1. AC_Mast Integer 4 (Primary Key)
2. AC_Holder2 Character 30
3. Add1 " 30
4. City2 " 20
5. Phone2 " 11
6. AC_Holder 3 " 30
7. Add 3 " 30
8. City 3 " 20
9. Phone 3 " 11
Database Structure for Minor
S.No.
Field Name Data Type Size
1. AC_Mast Integer 4 (Primary Key)
2. DOB Small Date Time
4
83
3. G Name Character 30
4. G Add " 30
5. G City " 20
6. G Phone " 11
Database Structure for Trans_Mast
S.No.
Field Name Data Type Size
1. Trans ID Int 4 (Primary Key)
2. User ID Character 10
3. AC_No. Int 4
4. Scroll No. " 4
5. Token No. " 4
6. Trans_Type Character 1
7. Trans_Date Small Date Time
2
8. Trans_Dr Amt
Money 8
9. Trans_Cr Amt
" 8
10. Trans_Bal " 8
84
11. Trans_Mode Character 6
12. Authorize Bit 1
Database Structure for Cheque Book
S.No.
Field Name Data Type Size
1. AC_No Integer 4
2. ChqIsuue Date
Small Date Time
4
3. St_Chq No Int 4
4. End_Chq No Int 4
Database Structure for Nominee
S.No.
Field Name Data Type Size
1. AC_No Int 4
2. N Name 1 Character 30
3. N Add 1 " 30
4. N City 1 " 20
5. N Phone 1 " 11
6. N Name 2 " 30
85
7. N Add 2 " 30
8. N City 2 " 20
9. N Phone 2 " 11
Database Structure for Term Dep.
S.No.
Field Name Data Type Size
1. AC_No Int 4
2. AC_Type Character 2
3. Open Date Small Date Time
4
4. Maturity Date
" 8
5. Period Small Int 2
6. Int Rate " 2
7. Ins Amt Small Money 4
8. Maturity Amt Money 8
Database Structure for CC_Details
S.No.
Field Name Data Type Size
1. AC_No Int 4
2. CC_Limit Money 8
86
Database Structure for DD_Mast
S.No.
Field Name Data Type Size
1. DD_No Int 4
2. Date Date Time 8
3. In Favour of Character 30
4. Payable At " 20
5. Amt Money 8
6. Pymt Mode Character 10
7. Appl Name " 30
8. Appl Add " 40
9. Appl AC No Int 4
10. Exchg Amt Small Money 8
11. Issued by Character 10
Database Structure for Interest
S.No.
Field Name Data Type Size
1. AC_Type Int 4
2. DOI Small Date Time
4
3. Period Small Int 2
4. Year " 2
5. User Character 10
87
5. Reports :
The Report menu provide facility to generate and print various reports. Various suboptions include under this menu are :-
5.1 Daily Reports : This includes those reports which are
list daily transaction details, daily cash receipts, daily
cash payments and so on. Daily reports are printed at
the end of every day.
5.2 Monthly Reports : This includes those reports which
are printed at the end of every month. This include
monthly receipt and payment report. It also includes
the total DD issued. FD issued etc. every month.
5.3 Yearly Reports : This option generates and prints
reports which are required to list the yearly details of
receipts and payments. These reports includes the
total interest payed and total interest received, total
expenditure etc. These reports are generally sends to
head-offices.
5.4 Account Statement : Account statements are the
most generally and important report which will be
88
given to account holders for have a complete view of
the transactions performed on their accounts. This
option asks the account number and prints the account
statement for that account.
5.5 Account List : This option is used to generate and
print the list of all accounts of particulars account type
with their account holder name and Balance. This is
another important report which is used to have a
complete view of all accounts.
VALIDATION CHECKS
1) Users Login-name is Unique.
2) Validation of User login and password is done to
authenticate a legitimate user.
3) Only Administrator can add, modify or delete login-
IDs and ordinary user & manager can't.
4) A/c No. is unique.
5) Transactions can be done from operative account
only and the A/c should have sufficient clear
balance. 89
6) Only Manager can authorize or cancel transactions.
7) Minimum balance for A/c having cheque facility
should be Rs. 100/- and for A/c having without
cheque facility should be Rs. 500/-.
(Applicable to only saving & current accounts only)
8) Negative balance would be allowed in cash credit
A/c but it must be with CC limit.
9) Interest should be applied only once for a given
period. If further attempt is made to calculate
interest. Bank Manager simply refers to do so.
FUTURE SCOPE AND FURTHER ENHANCEMENT OF THE PROJECT
I have tried to give more and more facilities in a given
limited time, but many things are untouched which can be
added in future. In the following section some of the
facilities of Banking System which is untouched by me is
given -
1) In future we can take on-line Banking (through
Internet).
90
2) In future ATM facility would be provided by the
Bank.
3) Facility of clearing of cheques both Local and Out
Station would be provided by the bank.
4) Loaning would be started by the Bank for various
purposes.
5) Some complex report would be generated by bank
using the core-concept of financial accounting.
HARDWARE & SOFTWARE REQURIEMENTS
Hardware Requirement : (Recommended)
1. Pentium III (566 MHz)
2. RAM 64 MB
3. 20 GB
Software Requirements :
Language : JAVA
Backend : ORACLE-8
Platform : Windows 98 (SE)
91
Minimum Hardware Requirement :
1. Pentium I (133 MHz)
2. RAM 32 MB
3. H.D.D. 5 GB
92