layout | title |
---|---|
page |
Shivang Gupta's Project Portfolio Page |
Expense Expert is a desktop expense tracking application used for tracking one's personal expenses. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about ~10 kLoC. Given below are my contributions to the project.
-
New Feature:
- Added a new
Person
object to the application with the following attributes:PersonName
PersonAmount
- Added a new
-
New Feature:
-
Add a new person to the list of people who owe you money
- What it does: A new list was created to keep track of the people who owe the user money. This feature allows the user to add people to it with the amount they owe them.
- This was a new dimension to the application, which extended the capabilities of our app from just being an expense tracker to a financial manager.
- This is done by the
person
command, and the parsing as well as testing was handled. - New classes were created accordingly.
-
-
New Feature:
-
Removing a person from the list of people who had paid back the owed money
- What it does: From the list of people who owed the user money, this feature enables the removal of people who have paid the said money and hence, are to be removed
- This was done by the "paid" command, and its parsing and testing were handled as well.
- New classes were created accordingly.
-
-
Code contributed: RepoSense link
-
Project management:
- Managed the deliverables and timely completion of the project expectations.
- Found bugs for the application.
-
Enhancements to existing features:
- Added/refined testing to the following classes for better performance and exception handling :
PersonOwesCommand
PersonOwesCommandParser
HelpCommand
- Significantly revamped the
help
command to handle multiple implementations. - Changed the UI of the help window to fit to the user needs better.
- Added a new Person List to the UI for the better and more complete functioning of the application.
- Upgraded the UI of the whole application significantly for a better user experience.
- Added/refined testing to the following classes for better performance and exception handling :
-
Documentation:
- User Guide:
- Developer Guide:
- Added the following implementation to the guide:
- Getting help feature
- Adding a person to the person list feature
- Added a fair share of user stories
- Added a fair share of use cases.
- Added the following implementation to the guide:
-
Community: