In: Computer Science
Scenario: Online banking, web banking or internet banking.
Online banking is an electronic payment system that enables customers of banks to perform transactions online through the bank’s website. The online banking is part of the core banking system operated by a bank. Online banking services offer features such as view account balance, view bank monthly statements, download bank statements, check some recent transactions, pay bills (rent, cell recharge, internet, electricity, gas, etc. ), transfer money to another account. If you want to read more about online banking, you visit the link mentioned in the following reference.
Wikipedia, Online banking, [Available online] https://en.wikipedia.org/wiki/Online_banking [Accessed 12/10/2020].
Online banking and mobile banking is very common today. People do prefer it a lot as the transactions are made very easy and no need to go to bank for the purpose. Also online banking provides many additional features like paying bills recharges. To build such a platform, the most important thing to consider is the security system. We have to select the best available server providers to keep the platform run smooth and protected. Also the database managing system have to be very crutial. The database should be well protected and there should not be any error or faulty operations.
We should opt a perfect architecture to built such a banking application that too run online. An architecture is a pattern and rules that should be followed to complete the develpoment. This goes in a flow like planning, designing, implementing etc. There will structural difference in every different architecture. Therefore we have select the best architecture based on our need.
For a banking application, I strongly reccomend to use a Layered architecture. This architecture let us to design the entire application as classifying as layers like presentation layer, application layer, business logic layer and data access layer. The importants of using a layered architecture in a banking application is, the database is very deep and one have to go through all the layers above to have an access to database. This will increase the security and confidentiality of the data. And the security is obviously the first factor when comsidering an online banking application.
The other architectures are client-server pattern, master-slave pattern etc. These arcitectures can be used for application which dont rely on that security. Here the data can be easily catched if one can either act as a client or slave. Next is pipe and filter architecture. This architecture with using a buffer in between data transfers. Storing the confidential data in between a network is not appreciated. So, considering all the aspects, Layered architecture is the best for building an online banking application.