Skip to content

ClearloveZc/BankingSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Banking System for Kids

Kids Bank is an innovative financial platform designed specifically for children, aimed at educating them about money management and financial literacy in a fun and engaging way. This project seeks to empower the younger generation with essential financial skills that will serve them throughout their lives.

Overview

The primary objective of Kids Bank is to provide a comprehensive and interactive platform where children can learn about savings, spending, budgeting, and other financial concepts. By utilizing gamification and age-appropriate educational content, Kids Bank ensures that learning about money is both enjoyable and effective.

Key Features

  1. Account Management

    • Account Creation: Children can create their own virtual bank accounts, choose avatars, and start managing their savings and expenses responsibly.
    • Balance Tracking: Kids can see their current balance in a fun and engaging way, such as visual representations like filling up a piggy bank.
    • Security Features: Allows children to set up a PIN or password to secure their account, teaching them about financial security.
    • Transaction History: Children can review their past transactions to understand their spending and saving habits.
    • Account Deletion: Provides the option to delete accounts, ensuring personal data is not unnecessarily retained.
  2. Money Transactions

    • Deposit Money: Children can deposit virtual money earned from tasks into their accounts, helping them track their earnings.
    • Withdraw Money: Allows children to withdraw money for spending on their savings goals, teaching them about budgeting.
  3. Earning Opportunities

    • Task Setting: Parents can set tasks for their children, rewarding them with virtual money upon completion, teaching the value of earning.
  4. Savings Goals

    • Goal Setting: Children can set savings goals for things they want to buy, learning about planning and saving money.
  5. Safety and Oversight

    • Parental Controls: Parents can oversee their child's account activities to ensure their safety and financial learning.
    • Parent Notifications: Parents receive notifications of their child's account activities, enabling them to monitor progress and provide guidance.
  6. Personalization

    • Custom Avatars: Children can customize their account avatars to make their banking experience more personal.
  7. Social Features

    • Friends List: Children can add friends to their friends list within the app, experiencing financial management in a social context.
  8. Alert System

    • Forget Password: Provides a secure method for password recovery, allowing users to regain access without creating a new account.
    • Account Monitoring Alerts: Parents receive alerts for any unusual account activity, enabling immediate action to secure the account.
  9. Billing

    • Bill Generation: Children can generate a bill of their transactions to track their income and expenses.
    • Bill Statistics: Provides statistical charts of income and expenses to help children visually understand their financial situation.
    • Spending Analysis: An analysis tool categorizes spending to teach children about financial habits and identify areas for savings.
    • Bill Export: Allows children to export bills to PDF or CSV files for further analysis or record-keeping.
  10. Data Management

  • Data Encryption: Ensures all data within the app is encrypted to keep personal information safe, complying with applicable laws and regulations for children's online safety.

Installation

Prerequisites

Before installing Kids Bank, ensure you have the following prerequisites installed:

  • Java Development Kit (JDK) version 8 or higher
  • Apache Maven for managing dependencies
  • Git for cloning the repository

Installation Steps

  1. Clone the repository

    git clone https://github.com/leoCHENG100/group-91.git
    cd group-91
  2. Install dependencies

    Ensure all required JAR files are in the lib and resource directories as shown below:

    lib Directory:

    • beansbinding-doc.zip
    • beansbinding-src.zip
    • beansbinding.jar
    • flatlaf-3.4.1.jar
    • hamcrest-core-1.3-javadoc.jar
    • hamcrest-core-1.3-sources.jar
    • hamcrest-core-1.3.jar
    • jfreechart-1.5.4.jar
    • junit-4.13.1-javadoc.jar
    • junit-4.13.1-sources.jar
    • junit-4.13.1.jar
    • poi-3.8.jar
    • swingx-1.6.1.jar

    resource Directory:

    • commons-io-2.16.1.jar
    • commons-math3-3.6.jar
    • flatlaf-3.4.1.jar
    • jfreechart-1.5.4.jar
    • log4j-api-2.23.1.jar
    • log4j-core-2.23.1.jar
    • poi-3.8.jar
    • swingx-all-1.6.4.jar
  3. Build the project

    Use Maven to build the project:

    mvn clean install

    This command will:

    • clean: Clean up the project by removing previous build outputs.
    • install: Build the project and install the built JAR file into the local Maven repository.
  4. Run the application

    After building the project, you can run the application using:

    User Portal:LoginView.java

    This command will:

    • Use the Java Virtual Machine (JVM) to run the built JAR file.
    • The -jar option specifies the path to the JAR file. In this case, the built JAR file is located in the target directory and named group-91-1.0-SNAPSHOT.jar.

Usage

After installation, you can start using Kids Bank. Refer to the following sections for detailed instructions on how to use various features.

  1. Creating an Account: Navigate to the account creation page and follow the prompts to set up a new account.
  2. Tracking Balance: View your current balance on the dashboard with both numerical and visual representations.
  3. Managing Transactions: Deposit or withdraw virtual money through the transaction page, and review past transactions in the history section.
  4. Setting Goals: Create savings goals and track your progress towards achieving them.
  5. Parental Controls: Parents can set tasks, monitor account activities, and receive notifications about their child's transactions.

For more detailed usage instructions, please refer to the user manual provided with the application.

Contributing

Group 91(listed in no particular order): Yingyi Cheng Zhenchao Chai Peixuan Lan Gengnan Wang Qian Wang Yunzhong Wang

License

Kids Bank is licensed under the MIT License. See the LICENSE file for more details.

Acknowledgements

We would like to thank the following libraries and frameworks used in this project:

Support

If you encounter any issues or have questions, feel free to open an issue on GitHub or contact us at [email protected].

Kids Bank is committed to fostering financial literacy in the next generation, ensuring they are well-prepared for the financial challenges of the future.

About

Group-91 Project for Software Engineering Course

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages