Loading...

Messages

Proposals

Stuck in your homework and missing deadline?

Get Urgent Help In Your Essays, Assignments, Homeworks, Dissertation, Thesis Or Coursework Writing

100% Plagiarism Free Writing - Free Turnitin Report - Professional And Experienced Writers - 24/7 Online Support

Report on ATM software and it use

Category: Computer Sciences Paper Type: Report Writing Reference: APA Words: 4750

Abstract of ATM software

The proposed architecture is a part of ATM software which is to be developed in Python. It is an engineering project which is going to be designed for the Meccano Bank. The main aim behind providing with this architecture for the ATM software is to get rid of the issues which are existing in the current system. This project is if implemented then it will provide the bank with the opportunity to enhance the existing activities of the banking system. This software will help to provide the services to control the ATMs. It is the case when the financial transactions will take place. It is the case of money withdrawal.

The current software is designed with the intentions to serve both the customers and the banking officials in a better and efficient way. Once this software is designed it will help to resolve various existing issues along with bringing the operational efficiency. At present, there has been a significant advancement to the operations and the activities of the firms. So as is the case with the banking sector. The bank which does not tend to adopt the advanced and the latest trends has to bear the cost for less competitive advantage in the market place.

The software architecture for the ATM needs to be so smooth that it provides quick and efficient services to the customers. Also, the banker's queries are required to be processed so smoothly and efficiently. The blockchain technology regarding the usage of ATMs is an emerging concept. It will make the bank to provide the Bitcoin ATM services by making use of the Coin source. 

Table of Contents

Background. 4

Introduction. 5

Objectives. 5

Proposed Architecture for ATM software. 6

Conclusion. 7

Recommendations. 13

 Background of ATM software

The current report is based on a scenario in the perspective of the advanced and latest technology. Online banking is a complex business application handling multiple transactions with high complexity in a very short space of time. Based on its functionality that it offers and the kind of error-prone scenarios or error-checks that it has to perform, it can be seen that how complex is the functionality behind the software that runs online banking. The existing software for online banking used by Meccano Bank has been in operation for twenty years now, long before all this snazzy new architecture stuff came along (Egyed & Schaefer, 2015).

The current software is written in some very old programming languages with old architectures (and some parts in even assembly code) and is showing the signs of deterioration. In fact, in the past twelve months, the whole online application has had to be taken down multiple times because of some faults in application design and the way new features have patched up to the ageing software. Even their ATMs have troubles in offering the service and breaks down frequently due to the use of outdated technologies and protocols. Therefore, the top management team of the Meccano Bank has taken a bold decision to develop a new application that serves online banking, mobile banking and also including the new software application for their ATMs.

The top management has allocated significant funds for the development of the new application and they want to develop their new banking with latest technologies and architectures so that their new software application can serve their needs at least for next 20-30 years. My role is to serve as a software architect, for this project, for the Meccano Bank. I have to write a report related to the proposed architecture for the ATM software. The main reason behind writing this report is that the Managing Director (MD) of the Meccano Bank is a real fanatic of proper architectural design. He wants a new system written from scratch in a high-level language like Java, C#, etc. And with the latest architectures.

I am required to present to MD the architecture for a new system giving information about the specific combination of possible styles of architecture therein for this new system and the relevant decisions. For the said purpose, a fair amount of design information is also required.

Also, I have the responsibility to provide the higher authorities with the skill sets which are desirable in order to code and design the ATM software for the bank. These individuals are the ones who are to practically design and implement the software. It will better help the firm to get the firm functionality out of the software and its components. The people who are required to work for designing the software need to highly skilled and professional. They are required to have the experience of almost 10 years in the same domain. This thing will confirm that these professionals have a better understanding of the programming languages which are required to design the software.

Introduction of ATM software

This is the era of technological advancements and innovations. For everything, there is a need to equip things with technological advancements. This can better be done either by making the use of the technological methods or the concepts which are existing behind the technological advancements. The closer the things are equipped with the latest and the advanced technology the better there are the chances to get the innovations to the specified products/ projects. So as is the case with the ATM software which is required to have the unique and the innovative architectural designs and the concepts behind. This thing will help the firm to provide the customers with the quality products and the long-lasting benefits to the firm itself. This is how the firm can achieve a competitive advantage in the market place.

Objectives

The main agenda behind writing this report includes as given:

·         To provide with the architectural options for the ATM software.

·         To determine the assumptions for the users of the ATM software and other stakeholders.

·         To provide with the possible diagrams which better support the architecture of the ATM software.

·         To discuss the overall architecture of the ATM software.

·         To discuss the details related to the architecture for the backend systems.

·         To include the communication of the said system with online, mobile and ATM applications.

·          To include the communication of the said system with the enterprise systems and the regulatory authorities.

·         To discuss the online application, mobile application and ATM application.

·         To take into consideration the blockchain sustainability for the ATM software.

·         To make the decisions for choosing the best architecture out of many available for the ATM software.

Proposed Architecture for ATM software

By making use of the ATM machines, the financial transactions become quick, efficient and easy. The customers have the facility to withdraw their money from any place where there exists an ATM. It tends to make the possible reductions to the risk of losing the money along with the robbery etc. This is how the use of the ATM, software provides with the facility to have the secure, safe and more reliable banking transactions. The use of the latest and the advanced software will make the bank to have the reduced count of the regular customers making frequent visits to the bank for small transactions. By making use of this software both the workload and the costs incurred on the banking employees can be reduced. It can be said that this project will provide the bank with the economic benefits related to the financial activities of the bank (Marc, 2017).

The current ATM software will be designed by making use of the Python language. The significant modules of the ATM software are related to the admin and the user. The admin module is related to the bank which has provided with the ATM software project. The users are those who have the authenticated cards to make use of the ATM services (Gorton, 2011). The sub modules for the admin module include as given:


Adding a new ATM card: This sub-module is to provide with the services for creating new ATM user in the perspective of banking personnel. The important details required for the said sub-module include the account name, the account number, phone number, address along with the two step verification method.

Viewing the status of ATM machines: This sub-module will help view the status and the details of the ATM machine. By making use of this sub-module the admin will better be able to have the view related to address of the ATM machine, last date when the ATM machine has been refilled, the prospective date for the next time refill, the inquiry for the minimum limit of balance along with the option for the current balance (Nicola & Hennicker, 2015).

Updating ATM card: The re-validation of the expired card will take place by making use of this sub-module. The process for the update of the ATM card requires the number of ATM card. The further sub-modules which are the part of this module include as given:

·         Blocking the ATM card: There may exist various reasons due to which the bank may desire to block the ATM card. For the said purpose, this sub-module better serves the purpose. The reasons for blocking an ATM card may include the lost or the stolen ATM card. By making use of this feature, any claimed ATM card can be blocked and submitted.

·         Activation of the ATM card: In case the ATM card has been approved by the bank officials, this sub-module of the ATM software helps to activate the ATM card.

·         Reset the PIN: It is the case when the user has just forgotten the PIN of the ATM card and approaches the bank for just resetting the PIN. Also, the client may require the bank to change the PIN of the ATM card. This sub-module better serves the purpose.

·         Reset phone: In case the client is desirous to reset his phone number this sub-module of the ATM software helps to reset the phone number of the user.

·         Viewing the history: The history for the transaction of the money can better be viewed by the admin through this sub-module (Egyed & Schaefer, 2015).

·         Updating the date of expiry: In order to update the date of expiry of the ATM card, the admin can make use of the sub-module. It will help to update the date of expiry (code with, 2019).

User module of ATM software

There are two major modules of ATM project that are admin module and user module. Modules of the ATM system include branch accounting system, account database, branch counter system, maintenance system, security system and user database. 

Module 1 – Branch Accounting system

The first module is the branch accounting system that consists of sub-branches of information. For instance, the number of users is another consideration because when the user swipes the ATM card the software system will refer them to the system and then the process will become continued.

Module 2 – Account Database

The account database of the users consists of different accounts of users and they are from different branches. This information in the account database that will contain information of account status of the user and how it can be referred during the transactions (Groups. umd. umich. edu, 2019).

Module 3 – Branch counter system   

The system of branch counter keep the count of branches and it will accommodate any kind of changes. The changes in the counter system are made for the users and branches (Fujita & Papadopoulos, 2016).

Module 4 – maintenance system

The maintenance system will work to maintain the cash fed in the ATM machines. For instance, if the machine goes out of cash a prompt response will be delivered to the system software. The response will be delivered to the user about no balance in the ATM machine. The response will be further forwarded to the main database and here it will be transferred to the manager of ATM machines.

Module 5 – Security system

The security system will find for the ATM theft and it will immediately transfer the information to the main database regarding the situation. In case if the user will enter the wrong pin code in this situation the system will interrupt the process of transaction and information will be further transferred to the user regarding the same issue and situation (Egyed & Schaefer, 2015).

Module 6 – Usage Database

The record of all users will be kept in the database. The record will consider the information of ATM and it will send the report to the whole cycle and main database. The database will be further used as the reference database of the system (Csacsenavet. Blogspot. com, 2007).

Blockchain (Bitcoin) sustainability for ATM software

Virtual Crypto technologies ltd dedicated a company that will make the cryptocurrencies accessible to the public. The ATM operators will be provided with the software that enables the users to sell and buy bitcoins at the regular ATM. In order to provide bitcoins at the ATM, it is important to instance netobit trader software remotely. This software will provide a chance to handle bitcoins like a regular money (Nicola & Hennicker, 2015). The software will also make it possible to convert the bitcoin into the standard cash at the regular ATM. In order to sell the bitcoin by the software, the user will be required to scan the QR code that will appear on the ATM screen. The code will represent the series of variables related to the transaction of bitcoins. Shortly after that, the user will receive the money from the ATM machine. The use of ATM machine and the software will convert the bitcoin into cash at the best exchange rate and it will have the lowest commission offered in the market. Virtual Crypto's proprietary algorithms will locate the transaction time and the user can easily and securely purchase the bitcoin on the regular ATMs. Virtual Crypto's net bit Trader software will be installed on ATM for both sales of bitcoin and purchase of bitcoin (Egyed & Schaefer, 2015). The verification algorithm will be used to predict the high degree of precision and the speed of cryptocurrency transaction will be further authorized. After implementation, the software will verify the cryptocurrency transaction in the seconds instead of taking the time of 24 hours. The current process of buying and selling cryptocurrency from ATM will consist of six authorizations. The software will break the first and main barrier and make bitcoins available for the general public. In the current situation, a bitcoin transaction is carried out by special ATMs and these systems are not widely using the time consideration. According to the coin radar system the Bitcoin ATM worldwide are connected and these services are provided by fewer than 3500 bitcoin ATMs. When compared to the limited deployment, in 2017, the ATM industry association estimated that there will be more than three million regular ATMs worldwide and the global ATM market will grow increasingly (Nicola & Hennicker, 2015). The ATM market will grow between 2017 and 2025 increasingly and the annual rate increased 8%. Virtual Crypto is developing proprietary software to enable real-time crypto transactions. Recent reports represented by cybersecurity team observed attacking of organizations cloud due to cryptocurrency mining. The reports describe details of Malware campaign, cryptocurrency trading companies’ efforts, bugs in blockchain and cryptocurrency platforms, and confidential information. Most often attackers are using Cardinal RAT malware to target the companies from different areas.  According to the press releases the suspected accomplished the aim of conversion of Bitcoin, they withdraw the cash from the Bitcoin ATMs and then cancelled the Bitcoin transaction before anyway Bitcoin was transferred to the ATM provider. It is important to develop software that maintains all the procedures of Bitcoin transaction and cash transfer from the ATM machines (Egyed & Schaefer, 2015).

Explain the diagrams of ATM software

Architectural Diagram of ATM system

 The functions of an ATM will be further classified as functional and nonfunctional properties. The functional properties include the display, cash dispenser, providing a bank statement, transfer transaction, providing deposit invalid deposit, and mobile phone prepared card refills. On the contrary, the nonfunctional properties include security and config nationality. The system will display a user-friendly menu and allow the users to access any option such as cash withdrawal, balance enquiry, and check and deposit (Nicola & Hennicker, 2015). The cash dispenser will allow the user to withdraw the money from the bank account. The bank statement will be printed with the 11-transaction made by the user and it will provide information on the remaining Bank amount. The transfer transaction will enable to identify the effects that induce impact on that transfer account. Some other considerations are saving and current account. The system will provide the user with the deposit envelope and the user must perform cash or cheque deposits in his account (Fujita & Papadopoulos, 2016). The system will also allow the user to deposit cheques and cash in the system to increase or decrease the amount saved in the bank account. Some postpaid and prepaid accounts will be accessible by mobile phones. The nonfunctional properties of the secure accessory system will depend upon pin code which is a confidential security key. If the pin code is wrongly provided to the ATM constructively for the three times the ATM card could be restricted by the system automatically. In order to prevent the withdrawal of large amount video records of all transactions will be kept safe. In any situation, these video records can be used as evidence of fraud. If the pin code of user is known by the third party, it is important to change the pin code. All transactions are carried out in a confidential system (Csacsenavet. Blogspot. com, 2007). The system described in the figure mentioned below for the banking system database is mainly addressing the use of ATM card, Mastercard, Visa Card, and Bitcoin database. As mentioned in the figure the ATM card will be used by the user to access the ATM system. The card will store the pin code and bank details of the user. The ATM terminal will consider the entered pin-code if it is correct or not. If the pin code is correct the ATM terminal will grant access to the user. The video system will be used to record all the videos of the user accessing the system. The telephone system will be provided to the user for having a prepaid mobile phone card facility. The system will be connected further to the whole World bank system database in which ATM terminal can be used to retrieve information of the customer (Nicola & Hennicker, 2015).

 

 

Figure: Architectural Diagram of ATM system`

Activity Diagram for ATM software

The activity diagram for the overall ATM is mentioned in Figure 2 below. The main purpose of the diagrams is to illustrate the whole process from inserting the card to taking out the card back with the money from the ATM. The first step is to insert the card in the ATM. ATM will detect the card and the further process will depend upon entering the correct password or pin code (Fujita & Papadopoulos, 2016). The display of the ATM will mention the requirement of password and the user will enter the pin code at this point. If the pin code is not accepted the machine will retrieve back to the initial position and it will be required to enter correct a pin code again. If the pin code is correct the ATM will display the second step of selecting the type of transaction. Different types of transaction will include cash transaction and transfer of money online through the ATMs from one account to another account (Csacsenavet. Blogspot. com, 2007). For instance, the user selects the option of cash amount as a type of transaction the machine display will show the requirement of the amount. The user of the ATM at this point will enter the amount of money required according to his needs. After entering the amount, the machine will perform the transaction. The display will provide information regarding more transaction. On completion of the transaction, the machine will pop up ATM card. A slip of transaction will also come out with details regarding bank account, amount transaction, cash payment, and amount remained back in the bank account of the user (Nicola & Hennicker, 2015).


Figure: Activity Diagram for ATM software

Use case Diagram for ATM software

Figure 3 shows the use case diagram for the ATM software. According to the figure, the bank client and ATM user will enter the information through checking transaction. The bank ATM transaction can be accessed by the user for multi-purposes such as getting information about the saving transaction history, withdrawal amount, and deposit amount (Egyed & Schaefer, 2015). All the information is kept by the management software of ATMs that are further connected with the ATM database. To get these three types of information, the user will be required to go through the approval process. The approval process is initially described in Figure 2. Where the user enters pin code information to access the services of ATMs.  If the correct and accurate pin code is inserted in ATMs it will allow the user to get information. The user will insert pin code and all successful logins are dependent upon the accuracy of pin code.  In case of invalid pin code, the ATM will retrieve back to one step named as approval process (Nicola & Hennicker, 2015).


Figure: Use case Diagram for ATM software

Component Diagram for ATM software

Figure 4 describes the diagram related to components of the ATM. In this diagram, the uses objects and other procedures of ATMs are demonstrated. The focus of the main diagram is towards the roles of the objects in the ATM and how they interact to realize the functions of the system (Egyed & Schaefer, 2015). The directional links are used to indicate the relation between each component. Furthermore, these links are labelled with the appropriate messages related to the operation of ATM cards and ATMs. The sequence numbers are mentioned to define the function of the system and its time used to address a system. The integrated system for ATM hardware is dependent upon the functionality of the device. The object-oriented design of ATMs is analyzed to how the devices are performing their duties. A system of ATM is a set of components that interact with each other to provide services (Fujita & Papadopoulos, 2016). The ATM system is designed according to user interface and it contains software that executes financial transaction after interacting with the database of the bank account. The system structure described objects and interrelationship of these objects. The behaviour of the system describes how the system changes after interacting with all the objects and components of the system (Finextra. com, 2018). There are several distinct behaviours and structures. The diagram is used to model the system along with characteristics structure and behaviour. The activity diagram provides workflow information while performing the actions.  These diagrams show the ATM must obtain a balance of user account and display to the user. The process also demonstrates ATM communicates with the bank account database. In this diagram, the emphasis is on the sequence of steps carried out. All the information about transaction prompt to the user’s screen before withdrawing and dispensing the cash. In this session, additional information is also considered to accumulate with activity diagram. The class diagram is used to model the structure of an ATM system.  The fundamental key attributes are used in the model (Saleh, 2009). The case diagram provides solid information about the structure of a model, operation of each object, and how the sensing of structure can be carried out. In the diagram, the customer console is connected to the card reader, ATM, and web pages. The user can get information about bank account through ATM and card reader. All the three components are further connected with the bank database to get information about the bank account. ATM get information about bank statement through ATM transaction history (Csacsenavet. Blogspot. com, 2007). Webpage further extract information through Bank database similar to this card reader also get information by getting access to bank database.  The bank database contains information about the account. By using web page online transaction can be carried out but it depends upon customer console. In the case of the webpage, information is transferred to the client desktop after having employee console. The client desktop display information about transaction history of the customer. All the information depends upon the pin code associated with a bank card (Groups. umd. umich. Edu, 2019).


Figure: Component Diagram for ATM software

Conclusion of ATM software

There has been significant and the remarkable advancement to the technology and its perspectives. It tends to bring innovations to everything. It thus makes the new methods and techniques more efficient and quick. Also, the efficiency to the business operations and the services are brought through the use of the latest and the advanced techniques. So as is the case with the money transfer processes. The new methods are totally different from the traditional methods i.e., the use of the checks and the tokens etc. At present, people prefer to carry out money transactions by making use of the VISA and MASTER cards. The new and the emerging concept in this regard is the blockchain sustainability for the ATM machines. The concept of Bitcoins better helps to carry out the bank's transactions as per the latest and the advanced techniques. For performing this all the Automatic Teller Machines with the ATM software installed better serve the purpose.

The software architecture for the ATM needs to be so smooth that it provides quick and efficient services to the customers. Also, the banker's queries are also required to be processed so smoothly and efficiently. The blockchain technology regarding the usage of ATM machines is an emerging concept. It will make the bank to provide the Bitcoin ATM services by making use of the Coin source (marketplace, 2019).

Recommendations of ATM software

In order to effectively implement the architectural design of the ATM software, the person hired for the coding and implementation needs to be highly skilled and experienced. It is desirable that the staff must have enough knowledge about the coding language. It will better help to avoid any issues and problems during the designing and the implementation of the ATM software. The budget available for designing the software needs to be compared with the available benefits. In case the benefits are greater than the costs incurred only than it should be implemented. Otherwise, try to adopt other suitable available option. The main motive behind designing this software is to provide the customers with the ease & the efficiency to the operations. The quicker and the efficient the services are, the easier it will be for the bank to achieve a competitive advantage in the market place.

 

References of ATM software

atmmarketplace. (2019). The whys and hows of banks and the blockchain. Retrieved from https://www.atmmarketplace.com/articles/the-whys-and-hows-of-banks-and-the-blockchain/

codewithc. (2019). ATM software Python project. Retrieved from https://www.codewithc.com/atm-software-python-project/

Csacsenavet. blogspot. com. (2007). Assignment 2 - Architectural Diagram of ATM System. Retrieved from csacsenavet.blogspot.com: http://csacsenavet.blogspot.com/2007/10/assignment-2-architectural-diagram-of.html

Egyed, A., & Schaefer, I. (2015). Fundamental Approaches to Software Engineering: 18th International Conference, FASE 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015, Proceedings. Springer.

Finextra. com. (2018). Virtual Crypto launches software to make bitcoins avialable through an ATM. Retrieved from www.finextra.com: https://www.finextra.com/pressarticle/75242/virtual-crypto-launches-software-to-make-bitcoins-avialable-through-an-atm

Fujita, H., & Papadopoulos, G. (2016). New Trends in Software Methodologies, Tools and Techniques: Proceedings of the Fifteenth SoMeT_16. IOS Press.

Gorton, I. (2011). Esseential software architecture (Second ed.).

Groups. umd. umich. edu. (2019). Sample of UML Diagrams for ATM System. Retrieved from groups.umd.umich.edu: http://groups.umd.umich.edu/cis/course.des/cis375/active/class6/UML-ATM.pdf

Marc, L. e. (2017). Entreprise Architecture at work: Modelling, Communication and Analysis (Fourth ed.). The Enterprise Engineering Series.

Nicola, R. D., & Hennicker, R. (2015). Software, Services, and Systems: Essays Dedicated to Martin Wirsing on the Occasion of His Retirement from the Chair of Programming and Software Engineering. Springer.

Saleh, K. A. (2009). Software Engineering. J. Ross Publishing,.

 

 

Our Top Online Essay Writers.

Discuss your homework for free! Start chat

Top Rated Expert

ONLINE

Top Rated Expert

1869 Orders Completed

ECFX Market

ONLINE

Ecfx Market

63 Orders Completed

Assignments Hut

ONLINE

Assignments Hut

1428 Orders Completed