Development of an automated atm machine using java

Assignment Help JAVA Programming
Reference no: EM13753523 , Length:

Development of an Automated ATM Machine using Java

System Structures
For development and testing phase:
1. A personal computer or laptop machine with Microsoft Windows XP sp3 / Windows 7.0 or above installed
2. Java 2 Development Kit 5.0 update 7 or above
3. Oracle database 10g or above
4. NetBean IDE 5.0 or above
5. Tomcat 5.5.27
6. Internet availability
For deployment phase:

1. The ATM application stack shall be loaded to a fully-equipped ATM machine with complete CPU power, chip card reader, secure crypto-processor, display monitor, function keys, in-built printer and sensors.
Functions
The basic functions expected from the ATM application are listed as below:
1. Paying utility bills e.g. electricity, telephone, social security etc.
2. Withdrawing money
3. Depositing cash
4. Updating passbooks
5. Printing account statements
6. Cash advances
7. Cheque processing
8. Credit card handling
The software can also be enhanced to provide the following additional requirements:
1. Purchasing train tickets, movie tickets, lottery tickets etc.
2. Donating to charitable institutions
3. Buying postal stamps
4. Video-conference with bank human cashiers
5. Mobile phone recharging

Detailed description

This new application would make use of a non-distributed multitier architecture. The diagram depicts partioning of the application tiers as well as technologies chosen for each tiers. It also serves as a sample application's deployment diagram. As a collocated architecture, business logic, presentation as well s integration tiers are located in the same exact web container. Also, well defined interfaces will be able to isolate each tiers responsibility. Collocated architecture is also responsible for making application simple as well as scalable.

System Architecture

Presentation tier i.e., JSF and MVC

JSF fits well in together with the MVC based presentation tier architecture. It offers a simple and clean separation between behavior and presentation. It leverages familiar UI component as well as web tier concepts. It does this without being limited to particular scripting technology or markup language. JSF backing beans are the model layer. JSF also contain the actions. These actions are extension to controller layer and they are responsible for delegating user request to the business logic tier.

Business logic tier i.e., the spring framework

Business objects as well as business services exist in the business logic tier. The business object contains not only data but also the logic to associate to specific object. Three business objects that have been identified in the sample application are product, category and the user. The business services interact with business objects and together they provide a high level business logic. The formal business interface layer needs to be define which would contain service interfaces that the client will making use of directly. With help of the spring framework, the POJO would implement business logic tier. Spring is based on the concept of IOC or the inversion of control. Spring features that are used in sample application includes following:

- Bean management with application contexts: In this case, spring is able to organize middle tier objects and is also able to handle most of plumbing. Spring is also able to eliminate proliferation of singletons as well as facilitate some good object oriented programming. For instance programming to interfaces.

- Declarative transaction management: Spring in this case uses the aspect oriented programing in order to deliver the DTM without having to use EJB container. This way, transaction management could also be applied to POJO. The spring transaction management is not tied to the JTA and could actually work with the different transection strategies that one might have. This DTM is used in tandem with hibernate transaction in sample application.

- Hibernate integration: Spring does not force one to use strong JDBC abstraction. This is because, it is able to integrate with the O/R mapping frameworks especially the Hibernate. Spring also offers an efficient as well as safe handling of all Hibernate sessions and at the same time handles configuration of hibernate session factories. It also handles the JDBC data sources in these application context while at the same time making applications easier to test.

Integration tier (Hibernate)

Hibernate is open source o/r mapping framework which that is able to relieve need to use JDBC API. The hibernate supports all major SQL DBMS. The hibernate query language is developed as a minimal object oriented extension to SQL. It is able to provide a simple bridge among the object and relational worlds. Hibernate also offers facility for quick data retrieval as well as updating, declarative queries, transaction management, database connection pooling, entity relationship management and programmatic queries. Hibernate is less invasive than other o/r mapping frameworks. Reflection and runtime bytecode generation could be used as well as SQL generation occurs at system startup. This allows one to develop persistent objects which follows common java idiom including association, inheritance, polymorphism, java collection framework as well as composition. Business objects in the sample application are based on the POJO and it does not require need to implement the hibernate specific interface.

The proposed application would be divided into 5 different projects which includes: Service, Presentation, Model, Common and Persistence.The service package will contain services that in turn contains business logic. it will interact with DAO objects.The Presentation page will contain the controller which will be aligned with elements and events on the pages.The Model package will contain the entity class of customer, transaction details, search results, persistent entity, security model, login, password model, category and criterias.The Common model will include services and utilities that are used by major projects.The persistence package holds classes of DAO object i.e., it interacts with the database via the hibernate. It contains implementation class of the corresponding DAO objects.

Following resources are being used in the code development:

- UIComponent - It is used for image rendering of customer on the main page of the ATM application.

- Converters - This class is use for converting the credit card information.

- Bean - It is used for initializing the data and bean.

- Exception classes - For instance: NumberNotFoundException and OrderException.

- Listeners - All the listeners of JSF are binded with the listener. The listeners are used to cater the events occuring on the page and then taking the appropriate actions accoeding to them.

- Renderers

- Resource bundle for localized messages.

Reference no: EM13753523

Questions Cloud

Write a speech about anything special in chicano society : Write a speech about anything special in Chicano and latino society or history. Did the speaker gain the attention and interest of the audience?
Describe the overall transportation objectives of company : Describe the overall transportation objectives of the company and Describe and evaluate the modes of transportation that they use to move products from factory to customers
Linearity in a set of data : In regression forecasting, what do we mean when we say that there is linearity in a set of data? As a healthcare manager, why is it important for you to test for linearity of data, and how would you go about this task?
Alert-based decision support management accountability : Debate the differences between an alert-based decision support management accountability budgeting, monitoring, and reporting system and a standard reporting system that does not provide instant management information to the decision makers.
Development of an automated atm machine using java : Development of an Automated ATM Machine using Java - The ATM application stack shall be loaded to a fully-equipped ATM machine with complete CPU power, chip card reader, secure crypto-processor, display monitor, function keys, in-built printer and ..
Explain wireless technologies and mobile technologies : Define wireless technologies and mobile technologies. Next, determine at least three (3) ways which companies or organizations utilize such technologies to improve business efficiency
Specific identification-fifo-lifo : Specific Identification, FIFO, LIFO, and Weighted-Average Swing Company's beginning inventory and purchases during the fiscal year ended September 30, 20-2, were as follows:
Qualities change based on different situations : What are poor qualities of a manager? Do the qualities change based on different situations (social environment, work environment, or home environment)? Do you agree with the results of your management quiz? Discuss. Format your essay consistent w..
Different software development methods : Compare and contrast at least three (3) different software development methods. Explain why the testing of software products is of great importance

Reviews

Write a Review

JAVA Programming Questions & Answers

  Implements the queue interface

Element from an ArrayList is slow because of all the shifting. For this question, you should modify the poll()method so that it runs in constant time - implementations as well as correct/fast implementations. In the former case, your functions may..

  Create a project in eclipse

Create a new project

  Create a program named schoolsdemo

Create a program named SchoolsDemo that allows a user to enter data about five school objects and then displays the school objects in order of enrollment size from smalles to largest.

  Part a -code comprehensionusing the uncommented sample code

part a -code comprehensionusing the uncommented sample code has been provided in moodleanswer the following questions1.

  How would you categorize this kind of script what resources

write a 200- to 300-word short-answer response to the following bull how would you classify this type of script? bull

  Define java implementation to implement the requirements

Produce a Java implementation to implement the requirements of Question 1, that is, to perform the 32-bits two complement and 32-bit floating-point conversion of a given number.

  Create a bar chart that illustrates sales.

Hal's Used Cars has four salespeople named Pam, Leo, Kim, and Bob. Accept values for the number of cars sold by each salesperson in a month, and create a bar chart that illustrates sales. Save the file as BarGraph.java.

  What are the steps necessary to create a jar file

What are the steps necessary to create a JAR file where the main entry point is identified?

  Implement a shopping cart class with user interface

project will be to implement a shopping cart class with user interface (UI) that contains main() in Net Beans. The UI class will be used to perform user input/output and to invoke the appropriate methods of shopping cart class. When your program star..

  Your technical leader has submitted additional requirements

a - your technical leader has submitted additional requirements for your application. you have been asked to enhance

  Write a program that assigns seats on an airplane

Prepare a program that teaches arithmetic to a young child. The program tests subtraction and addition. Write a program that assigns seats on an airplane.

  Reads in up to 1000 non-negative integers

Write a program that reads in up to 1000 non-negative integers and displays distinct numbers (i.e., if a number appears multiple times, it is displayed only once). (Hint: Read each number and store it in an array if it is new. If the number is alread..

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd