Skip to content

Assignment examination for IDATA1002 - Software Engineering, Spring 2023

Notifications You must be signed in to change notification settings

VegardMytting/Budget-Friend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Budget Friend - a budget application project

Introduction

Budget Friend is made to demonstrate a budget handling application, where you can get a better control of your economy. The application aids budgeting as well as accounting.

Screen dump This is a screen dump of the main page of the application.

The main menu includes the 4 functions: budget calculator, budget handler, receipt gallery and an overview over an average norwegian budget.

The application is a standalone Java application, desktop application. To install and download Budget Friend, follow the installation manual. The application is also able to keep persistent data in local files.

Release notes

Version Description
v0.1 Created a Minimum Viable Product (MVP), using Java. This means only the bare minimum that is needed for the product to be usable.
v0.2 Further development and make the functionality relatively free of bugs. Present to product owner, user tests and documentation.
v0.3 Finishing the application, and all attachment and documentation as well.

Description of the project

The project is a tool to help private individuals or small businesses'. This means by getting an overview of income and expenses to help the user to improve their economy. The application made in this project, Budget Friend, is able to display an overview of their economy, help with economic related choices, budgets and accounting.

The project is written with Java, CSS for styling and the view is generated by JavaFX.

JavaFX concepts demonstrated in the project

The project does not make use of JavaFXML or SceneBuilder, but builds the GUI from within the Java code.

  • General JavaFX structure: Stage, Scene, SceneGraph, Nodes etc.
  • Event handling, using Lambda
  • Buttons with unique functionalities
  • File handling: import/export to a .txt-file with the budget-format, to keep persistent data in local files.

Challenges and further improvements

Changing scenes

The application had a few challenges when changing scenes. This included the window size went back to default when changing scenes. A solution was achieved by creating a method to store the size of the scene, before changing the window.

Saving recipes

For further development and improvements, the application will include a method to keep persistent data from the recipes gallery in local file as well. By implement this function, the added recipes will not be lost when closing the application.

Installation and running the project

Make sure you already have JRE (Java Runtime Environment) already downloaded.

  1. Get a link to the installation by one project participant or the Installation manual found in the GitLab Wiki page. Click here to go to the Wiki and a more detailed installation manual.
  2. Go to your file explorer and double-click on the newly downloaded "Budget_Friend.exe" program.
  3. If a pop-up dialog requires a JDE, even if you already installed it, go to step 4.
  4. Open your "terminal" program, and type these following codes: first type cd downloads, and then java -jar .\Budget_Friend.exe.

How to use the application

When you open the application, you will see the Main Page with the Main Menu. This is where you can access all the main features of the application. The four buttons will take you to the different pages that this application contains. You can return to the Main Menu at any time by clicking on the “Main Menu” button on the different pages. To exit the application, you can click on the “Exit” button.

To get a more detailed user manual click here and select the user manual from the menu.

Credits

Product owner: Radino Dizza Mahendra.

Project participants: Birgitte Louise Vik, Julia Vik Remøy, Lars Mikael Barstad Løvold, Vegard Arnesen Mytting, Veronika Lynnes Rød.

Releases

No releases published

Packages

No packages published