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

  What is relationship between hashing and digital signatures

The security advantages of using two-factor authentication, such as the integrated fingerprint reader in the more recent iPhone models, particularly to support internet services (such as online banking)

  Distributed systems

Build robust, secure distributed systems using advanced programming techniques

  Update your website to include a simple web form

Update your website to include a simple web form as discussed in your design document. Use JavaScript to validate the form contents and display the results of that validation to the user in a popup window

  Become the leading coffee shop in arlington and to be the

primarily my project involves theestablishing of a javanet cafeacute where customers would enjoy coffee as they connect

  Difference between the two following statements

What exactly is the difference between the two following statements and which is preferred, please provide details: 1) frame.setSize(400, 300); // Set JFrame Size

  The comparedto method

the comparedTo method. This is the course class I do not understand how to do the compared to method. I need to order the course first by department then by the course number.

  Method that receives an array and returns with no duplicate

Write a program that contrains a method that receives an array and returns a new array with no duplicates.

  A remote web-based file storage application

Develop a web-based application. The server-side part of the application must be developed using Java Servlets (possibly including JSP). The development of the client (browser) side will typically be a combination of HTML and Javascript.

  Find what kind of output best shows off the operation

Find what kind of output best shows off the operation of these classes, and write a program that produces that kind of output.

  Presell a limited number of cinema tickets

Write an application to presell a limited number of cinema tickets. each buyer can buy as many as 4 tickets. No more than 100 tickets can be sold. Implement a program called TicketSeller that prompts the user for the desired number of tickets and the..

  Balanced and competitive business practices

The United States has several laws that are intended to further fair, balanced, and competitive business practices. Do you think that such laws are effective? If so, why? If not, why not? Be sure to provide evidence to support your position one way o..

  Digit decimal seconds counter using two 7-segment displays

Write a program that implements a two digit decimal seconds counter using two 7-segment displays.  Make this program using java programming. Make this program in simple way.

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