GithubHelp home page GithubHelp logo

sakardev / studentexpensemanagementsystem Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 84 KB

This program is a console based expense management that simplifies tracking and splitting dormitory roommate expenses.

License: MIT License

Java 100.00%

studentexpensemanagementsystem's Introduction

Student Expense Management System

The given program is a comprehensive console-based expense management system designed specifically for students residing in a dormitory. The purpose of the system is to help students track, manage, and split expenses in a clear, streamlined manner. The data is stored in text files to simplify the learning process, serving as a practical introduction to data handling before advancing to more complex database systems.

Note: This program, is an assignment of the programming module at Koya University's Software Engineering course (2020), tha is a student-friendly system designed to simplify the tracking and splitting of dormitory expenses. Everything is done according to the assignment requirements.

Program Start: Sign Up, Log In, Checkout, or Exit:

  • Sign Up allows new users to create an account with a unique username and password. The username should be between 8 and 22 characters long and the password should be at least 8 characters long. The information is stored securely, with the password being hashed using the MD5 algorithm.
  • Log In lets existing users access their account using their username and password.
  • Checkout initiates the expense splitting process. This option can only be used after logging in.
  • Exit allows users to safely close the program.

After logging in or signing up, users can do the following:

  • Add Item: Add a new expense to their account.
  • Delete Item: Remove an existing expense from their account.
  • View My Bill: See their individual expenses.
  • View All Bills: Access all expense information, providing a complete overview.
  • View Checkout: See the final split of expenses.
  • Return: Go back to the main menu.
  • Checkout List: Review the list of users who have accepted the checkout. The Checkout function is particularly important. When a user opts to checkout, a request is sent to all users in the system. Once all users confirm the checkout, the expenses are finalized, and the total is evenly distributed amongst the users. This allows for easy splitting of shared expenses. The expense information is stored in text files, providing a clear audit trail.

All data manipulations (adding, deleting, viewing items) and user interactions (sign up, log in, and checkout) are handled by dedicated functions to ensure modularity, readability, and ease of debugging. Furthermore, the program takes special care to handle exceptions, ensuring the stability and robustness of the system.

In essence, this is an effective tool for students living together to manage shared expenses. The intuitive interface and automated calculations simplify the often-complicated process of expense splitting, allowing users to focus more on their studies and less on financial logistics.

Some Visual representation:

First view of the app

view all bills

view My Bill

view Checkout

studentexpensemanagementsystem's People

Contributors

sakardev avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.