loader image

Azaber Portfolio

azaber logo

Java Project Management App

Project management app made with Java and OOP (Object Orientated Programming), Java FX library for the GUI and MySQL for the database.

For this project I used the Model View Controller design pattern to make it easy for me to edit and maintain the application.

Tech stack

The Goal

This was my final assignment for my Further Programming class. I had to create an application where a user can login or create an account and organise projects.

They had to be able to:

  • Have multiple projects.
  • Have subtasks in those projects.
  • Micro tasks in those tasks.
  • Action items.
  • Be able to move around, edit and delete things.

My process

Planning

I had to do lots of things here I haven't done before so I started by researching how I would accomplish certain things like connecting my Java app to the MySQL database, how to make Java FX respond to changes in the database (for example if I delete a project how do I make it immediately update the UI).

I then organised all the tasks and budgeted time for each of them.

Develop

I followed my plan and started the development. Here I realised how much easier this task was for me because I had every task organised. There was never a moment where I was confused what to do next, thanks to my plan all I had to focus on was the code.

Testing and fixing

Since I did not have much time for the project because of other subjects whenever I ran out of time for a task I left it for later. After all the core functionality was complete I finished the other features.

To help with development and bug fixing I made Junit tests along the way for each use case.

The Result

Project result


I managed to complete the project on time and have recieved a distinction grade for it.
I still have it saved on my github and plan on building on top of it by polishing it up, adding more features and one day make a web based version, possibly a SaaS.
Celebrate
Learn

What I learnt


This was great practise for my time management skills and also working under pressure, this project was 40% of my grade so I really had to make sure it was as good as possible.
It was also great practise for me with using Java. Before I only used Java Swing so I had to adjust to the Java FX way of doing things.