Advanced Automated Teller Machine System (AATMS) is a System program that simulates an ATM machine. On top of the basic functionalities of an ATM machine, AATMS also provides additional features such as deposit interest, loan system, and account management. This only serves as an interface between the ATM machine and the user. And do not have access to the input devices of the ATM machine such as the card reader and the keypad.
- Deposit Interest System: Our Advanced ATM System will provide customers with the advantage of earning interest on their deposits. This feature encourages savings and financial growth for individuals, fostering a culture of financial responsibility.
- Withdraw and Deposit System: Customers can easily access their funds or add to their account balance without the need for a physical branch visit. This convenience saves time and effort for users while reducing congestion in bank branches.
- Loan System: Our Advanced ATM System will incorporate a loan system that enables customers to apply for loans directly through the machine. The program will calculate and display the applicable interest rate, providing users with transparency and facilitating informed decision-making.
- Loan Tracking System: Customers can monitor their loan balances, track repayment schedules, and receive notifications about upcoming payments. This functionality helps users stay on top of their financial commitments and avoid unnecessary penalties.
- Create, Remove, and Edit Account: The Advanced ATM System will provide users with the ability to create new accounts, remove existing accounts, and make account modifications such as updating contact information or linking additional services. This flexibility empowers customers to manage their accounts conveniently without having the need to go to bank branches and adapt them to their needs.
- Check Balance: Users can easily check their account balance at any time through the Advanced ATM System. This feature provides quick access to financial information, enabling customers to make informed financial decisions without the need for additional consultations or online access.
- Log-in System: To ensure security and privacy, our program will implement a robust log-in system, requiring customers to authenticate their identities through PINs or other media that can hold these PINs such as credit cards or mobile managers.
- Designed for Scalability and Performance: Our Advanced ATM System's architecture will support a large number of concurrent users, ensuring smooth and efficient operation even during peak usage periods. This design approach enhances customer satisfaction and minimizes service disruptions.
Install the following dependencies before proceeding with the setup.
The following instructions are for Windows with Visual Studio Code and CMake Tools extension. Other IDEs and platforms may require different steps.
- Clone the following repositories to your local machine
git clone https://github.com/Jed556/AATMS.git
git clone https://github.com/Microsoft/vcpkg.git
- Open the
vcpkg
folder in Visual Studio Code and install the extensionsms-vscode.cpptools
,twxs.cmake
, andms-vscode.cmake-tools
. - In the
vcpkg
folder, run the following command to build vcpkg.
.\bootstrap-vcpkg.bat
- In the
vcpkg
folder, run the following command to install the required packages.
./vcpkg install sqlite3:x64-windows sdl2:x64-windows sdl2-image:x64-windows sdl2-ttf:x64-windows
Note
Please refer to the vcpkg documentation for more information on how to setup vcpkg and install packages.
- Open the
AATMS
folder in Visual Studio Code. - Allow the CMake Tools extension to configure the project. CMake Tools will automatically include the required dependencies through vcpkg.
- Select the CMake: Build command from the command palette. With the target
PackU
selected, this will build the project and pack the program insidebuild/package
.