Вы находитесь на странице: 1из 40

1.

INTRODUCTION
1.1 Introduction to the project
Meta Critics Banking Ltd. is a Banking organization in the Eastern Africa, with extended branches in different cities and sub areas of the continent. The bank has a proposal to establish its services at the reach of its customers and also has a proposed to make its Inter Branch and banking operations smoother, and move towards a larger customer base, in turn increasing the profits of the organization. As a first step towards its goals the bank has proposed a system study for conducting on the standards on the database storage design, through which the internal manual process can be automated through a computerized mechanism, and as the next step has proposed plans to reach nearer to its customer through the establishment of Automated Teller Machines at different parts of the country. The system while concentrating on the Backend development at the operational areas specifies the need for developing a testing and simulated application to have the feel and look of the Automated Teller Machine, which can get the test of the application before it can be generated upon the actual platform, saving the cost of the platform, before the huge investment upon the machinery can be applied.

1.2 Purpose of the System


The generated application is considered to the version upon the system, which is proposed to be built with the content and touch of the oracle as the centralized database with oracle9i as the base. The overall system is planned to be is the format of distributed architecture as the homogeneous database platform. The proposals are planned to keep entire interface to be browser specific.

The major objects of the overall system are to keep the following component intact.

System Consistency System Integrity Overall security for the data Data Reliability and Accuracy User Friendliness both at administrator and User levels Considering the fact of generality and clarity To check that the system overcome the hurdles of the version specific standards.

2. SYSTEM ANALYSIS
2.1 Product functions
The major functions that the product executes are specified here. The details of all these functions as overall summary are provided in the later sections. The major functions are divided into two categories Administrative functions User interface functions

Administrative Function
These are the functions that are taken care of at the bank side and reflect all such actions that are governed only at the banks Administrative Areas. They are such functions, which dictate the existence of the actual information, which can be used by the users of the underlying staff for their operational processes consistency. The Basic Functions Are Specified As Below Managing the information of all the banks, and branches uniquely. Managing the information of the registered customers along with these unique account number and the type of account held by them Information regarding the entire customer who have availed the ATM cards their type and description. Managing the information related to the unique ATM machines and their nearest branch connection, along with the services that are provided by each ATM machine Information regarding the money management with respect to each ATM machine.

Managing the details of all the bank employees and their respective designations.

Managing the information related to the errors and login standards for security purpose.

User Interface Function


These are the functions that have been designed to take care of the user level information accessibility. They are mainly user interface screens that practically standardize the user with only such tasks, which he is authenticated to perform. The screens will provide a layout of security for the illegal operations that the user may perform. The functions of the user are specified as below: The user Login Screen, which acts as an entry into the system after proper authentication of the users data. The user Transactional Screen, which identifies the users requirement to execute the required transactions. The users Withdrawal and Deposit Transactions Screen, which make the authenticated users to execute the specific transactions. The user Fund Transfer Screen, which allows the user to transfer the funds in between their accounts from one branch to other branch.

2.2 Software & Hardware Requirements Hardware Requirements


Pentium IV Processor 128MB RAM 20GB Hard Disk Ethernet Card for Network Connectivity

Software Requirements
Windows 2000 XP Java Virtual Machine Internet Explorer or Netscape Navigator Oracle 9i Java Database Connectivity

3. REQUIREMENTNT SPECIFICATION
My requirement analysis founded a base on the new Information System that is to be implemented and provided me the guidelines to move further on developing my project. The answers that I get from the analysis are as described below.

3.1 Scope
The main purpose of the Premier Bank Credit Card division and information service is to provide the customers financial flexibility, worldwide acceptance and round-the-clock convenience. Premier Bank issues only VISA Credit Cards, the renowned Credit Card brand. Cardholders can purchase goods/services up to the credit limit and can reuse the credit facility upon repayment.

3.2 Functional Requirements


The functional requirements are organized in two sections; Requirements of the ATM and Requirements of the bank computer.

Requirements of the ATM authorization process transaction (withdrawal process) Requirements of the bank computer authorization process (bank code and password transaction

3.3 Non-functional Requirements


The non-functional requirement is bellowed.

The ATM network has to be available 24 hours a day. Each bank may be processing transactions from several ATMs at the same time.

The ATM must be able to use several data formats according to the data formats that are provided by the database of different banks.
6

4. SOFTWARE TECHNOLOGIES

4.1 SERVLETS
The Java web server is Java Soft's own web Server. The Java web server is just a part of a larger framework, intended to provide you not just with a web server, but also with tools. To build customized network servers for any Internet or Intranet client/server system. Servlets are to a web server, how applets are to the browser Servlets provide a Java-based solution used to address the problems currently associated with doing server-side programming, including

inextensible scripting solutions, platform-specific APIs, and incomplete interfaces.

Attractiveness of Servlets
There are many features of Servlets that make them easy and attractive to use. These include: Easily configured using the GUI-based Admin tool Can be loaded and invoked from a local disk or remotely across the network. Can be linked together, or chained, so that one Servlets can call another Servlets or several Servlets in sequence. Can be called dynamically from within HTML pages, using server-side include tags. Are secure - even when downloading across the network, the Servlets security model and Servlets sandbox protect your system from unfriendly behavior.

Advantages of the Servlet API


One of the great advantages of the Servlet API is protocol independence. It assumes nothing about: The protocol being used to transmit on the net How it is loaded
7

The server environment it will be running in These qualities are important, because it allows the Servlet API to be embedded in many different kinds of servers. There are other advantages to the Servlet API as well. These include:

Its extensible - you can inherit all your functionality from the base classes made available to you. it's simple, small, and easy to use.

Features of Servlets
Servlets are persistent. Servlet are loaded only by the web server and can maintain services between requests. Servlets are fast. Since Servlets only need to be loaded once, they offer much better performance over their CGI counterparts. Servlets are platform independent. Servlets are extensible. Java is a robust, object-oriented programming language, which easily can be extended to suit your needs Servlets are secure. Servlets can be used with a variety of clients.

4.2 JSP
Java server Pages is a simple, yet powerful technology for creating and maintaining dynamic-content web pages. Based on the Java programming language, Java Server Pages offers proven portability, open standards, and mature re-usable component model .The Java Server Pages architecture enables the separation of content generation from content presentation.

Features of JSP
Portability: Java Server Pages files can be run on any web server or webenabled application server that provides support for them. Dubbed the JSP engine, this support involves recognition, translation, and management of the Java Server Page lifecycle and its interaction components.
8

Components: It was mentioned earlier that the Java Server Pages


architecture can include reusable Java components. The architecture also allows for the embedding of a scripting language directly into the Java Server Pages file. The components current supported include Java Beans, and Servlets.

Processing: A Java Server Pages file is essentially an HTML document with


JSP scripting or tags. The Java Server Pages file has a JSP extension to the server as a Java Server Pages file. Before the page is served, the Java Server Pages syntax is parsed and processed into a Servlet on the server side. The Servlet that is generated outputs real content in straight HTML for responding to the client.

4.3 HTML
Hypertext Markup Language (HTML), the languages of the World Wide Web (WWW), allows users to produces Web pages that include text, graphics and pointer to other Web pages (Hyperlinks). HTML can be used to display any type of document on the host computer, which can be geographically at a different location. It is a versatile language and can be used on any platform or desktop. HTML provides tags (special codes) to make the document look attractive. HTML tags are not case-sensitive. Using graphics, fonts, different sizes, color, etc., can enhance the presentation of the document. Anything that is not a tag is part of the document itself.

Basic HTML Tags


<! ---> Specifies comments Creates hypertext links Formats text as bold Formats text in large font.

<A>.</A> <B>.</B> <BIG>.</BIG>

<BODY></BODY> Contains all tags and text the HTMLdocument


9

<CENTER>...</CENTER> <DD></DD> <DL>...</DL> <FONT></FONT> <FORM>...</FORM> <FRAME>...</FRAME> <H#></H#> <HEAD>.</HEAD> <HR>...</HR> <HTML></HTML> <META>.....</META> <SCRIPT></SCRIPT> <TABLE></TABLE> <TD></TD> <TR></TR> <TH></TH>

Creates text Definition of a term Creates definition list Formats text with a particular font Encloses a fill-out form Defines a particular frame in a set of frames Creates headings of different levels

Contains that specify information aboutdocument Creates a horizontal rule Contains all other HTML tags Provides meta-information about a document Contains client-side or server-side script Creates a table Indicates table data in a table Designates a table row Creates a heading in a table

Advantages
A HTML document is small and hence easy to send over the net. It is small because it does not include formatted information. HTML is platform independent. HTML tags are not case-sensitive.

10

4.4 JDBC
JDBC is a Java API for executing SQL statements. (As a point of interest, JDBC is a trademarked name and is not an acronym; nevertheless, JDBC is often thought of as standing for Java Database Connectivity. It consists of a set of classes and interfaces written in the Java programming language. JDBC provides a standard API for tool/database developers and makes it possible to write database applications using a pure Java API. Using JDBC, it is easy to send SQL statements to virtually any relational database. One can write a single program using the JDBC API, and the program will be able to send SQL statements to the appropriate database. The combinations of Java and JDBC lets a programmer write it once and run it anywhere. JDBC makes it possible to do three things: Establish a connection with a database Send SQL statements Process the results.

JDBC Driver Types


JDBC drivers that we are aware of at this time fit into one of four categories: JDBC-ODBC bridge plus ODBC driver Native-API partly-Java driver JDBC-Net pure Java driver Native-protocol pure Java driver

The JDBC-ODBC Bridge is a JDBC driver, which implements JDBC operations by translating them into ODBC operations. To ODBC it appears as a normal application program. The Bridge implements JDBC for any database for which an ODBC driver is available. The Bridge is implemented as the Sun.jdbc.odbc Java package and contains a native library used to access ODBC. The Bridge is a joint development of Intersolv and JavaSoft.
11

5. FEASIBILITY REPORT

After the requirement analysis the feasibility study determines whether a proposed system is feasible or achievable, given the organizations resources and constraints. That is why feasibility studies are must for any new and expanding project. This study takes a brief look at the major factor that will influence the ability of the system. It is independent of my initial research, analysis or overall review of any new venture. The three major area of this study is technical feasibility, economical feasibility, and operational feasibility. According to the requirements of the designing of ATM system, it is clear that a large amount of data is to be handled.

5.1 Technical Feasibility


In this part, it is ensured whether the existing technical resources hardware, software etc. It will support the design of the proposed system. During the component analysis it was found that the Premier Bank uses computers. These computers work under a Local Area Network (LAN) based system. Therefore, it can be concluded that the proposed system is technically feasible.

5.2 Economic Feasibility


After analyzing the technical feasibility, the economic feasibility has to be considered. It is very important to take under consideration the cost effect of the system.

5.3 Operational Feasibility


In this part, the existing managerial and organizational framework was studied. It was done in order to see whether the proposed system would change the working environment or not. The system, which was going to be implemented, obviously will change the working environment but that must not be drastic and the users must feel comfortable handling and coping with the solution.

12

6. SYSTEM DESIGN
6.1 UML DIAGRAMS Class Diagrams

Customer Master Cust-ID

Account type Master AcctypID

Bank Branches

Account Status

BranchID

Status ID

Customer Account
Master

Bank Employee EmpID

Cust_ID AccTypID
BranchID StatusID
EmpID

1) Customer Account Collaboration

13

2) Bank Employee Collaboration


Bank Branches BranchID Designation Master DesignationID

Bank Employee Master


BranchID DesignationID

3) ATM Operational Collaboration


Operational Error Master ErrTypID

ATM Customer Card Master

ATM Machine Master

ATM Card No.

ATM ID

ATM Operational Error Master

ATM Card No ATM ID


ErrTypeID

14

4) Other Transactional Collaboration

ATM Cust. Card


Master

ATM Machine Master

ATM Service Master

Card No

ATM ID

Ser.Typ.ID

Other Transactional Master Card No


ATM ID
Ser.TypeID

15

Sequence Diagrams Card and PIN Authentication Sequence


Customer Inserts
ATM CARDS

Card Verification

PIN Authentication

Check for

If

verified

If not authorized Display Menu

If not verified
Generate errors

Withdrawal Sequence Diagram

Select withdrawal
CHOICE

Enter Amount

Check for paper Balance

Update Balance

Accept choice() Accept give name () Verify Balance ()

Issue cash

16

6.2 ER DIAGRAMS
ER Diagram for Bank Module

Bank Branches Master

Has

Bank Master

17

ER Diagram for Customer Module

Customer Master

Account Type Master

Has

Is Used

Customer Account Master

Can Have

Account Status Master

Can Have

ATM Customer Card Master

Is Used

ATM Card Master

18

ER Diagram for ATM Machine Module

ATM Machine Master

Can Have

ATM Machine Services Master

Can Have

ATM Service Master

19

ER Diagram for Bank Employee Module

Bank Emp Master

Have

Bank Designation Master

20

ER Diagram for Bank Transactions Module

Other Transactional Master

Can Execute

ATM Customer Card Master Withdr awals

Customer Withdrawals Master

21

ER Diagram for Error Management Module

ATM Operational Error Master

Operati onal Error

Operational Error Master

22

7. OUTPUT SCREENS

7(a) Login to Admin Zone

23

7(b) Admin Zone Information

24

7(c) Entering into Bank details

25

7(d) Bank information

26

7(e) Entering into ATM Details

27

7(f) ATM Information

28

7(g) Employee Login Information

29

7(h) Login to Staff Zone

30

7(i) Staff Zone Information

31

7(j) Login to Customer Zone

32

7(k) Customer Information

33

7(l) Change Password

34

35

8. TESTING

Testing is a process, which reveals errors in the

program. It is the

major quality measure employed during software development. During software development. During testing, the program is executed with a set of test cases and the output of the program for the test cases is evaluated to determine if the program is performing as it is expected to perform. In order to make sure that the system does not have errors, the different levels of testing strategies that are applied at differing phases of software development are:

1. Unit Testing
Unit Testing is done on individual modules as they are completed and become executable. It is confined only to the designer's requirements. Each module can be tested using the following two strategies:

A) Black Box Testing


In this strategy some test cases are generated as input conditions that full execute all functional requirements for the program. This testing has been uses to find errors in the following categories: Incorrect or missing functions Interface errors Errors in data structure or external database access Performance errors Initialization and termination errors. In this testing only the output is checked for correctness. The logical flow of the data is not checked.

36

B) White Box testing


In this the test cases are generated on the logic of each module by drawing flow graphs of that module and logical decisions are tested on all the cases. It has been uses to generate the test cases in the following cases: Guarantee that all independent paths have been executed. Execute all logical decisions on their true and false sides. Execute all loops at their boundaries and within their operational bounds. Execute internal data structures to ensure their validity.

2. Integrating Testing
Integration testing ensures that software and subsystems work together as a whole. It tests the interface of all the modules to make sure that the modules behave properly when integrated together.

3. System Testing
Involves in-house testing of the entire system before delivery to the user. Its aim is to satisfy the user the system meets all requirements of the client's specifications.

4. Acceptance Testing
It is a pre-delivery testing in which entire system is tested at client's site on real world data to find errors.

Validation:
The system has been tested and implemented successfully and thus ensured that all the requirements as listed in the software requirements specification are completely fulfilled. In case of erroneous input corresponding error messages are displayed.

37

9. CONCLUSION

The main complaint heard about ATM machines is that while they are convenient, they are expensive to use. However, if we look at it from a banking perspective, business is business. In addition to pulling money out, the ATM machine also makes it convenient to deposit money, transfer money, and check balances. Best of all, to use an ATM machine, we do not have to go to the bank. We will find ATM machines at other banks, grocery stores, shopping malls, along the roadside, Buckingham Palace, airports, in casinos, and even on the South Rim of the Grand Canyon. For this reason, ATM machines are extremely helpful!

38

BIBLIOGRAPHY
References for the Project Development Were Taken from the following Books and Web Sites .

Oracle
PL/SQL Programming by Scott Urman SQL complete reference by Livion

JAVA Technologies
JAVA Complete Reference Java Script Programming by Yehuda Shiran Mastering JAVA Security JAVA2 Networking by Pistoria JAVA Security by Scotl oaks Head First EJB Sierra Bates J2EE Professional by Shadab siddiqui JAVA server pages by Larne Pekowsley JAVA Server pages by Nick Todd

HTML
HTML Black Book by Holzner

JDBC
Java Database Programming with JDBC by Patel moss. Software Engineering by Roger Pressman

39

40

Вам также может понравиться