Wei Jie’s Project Portfolio Page
Project: BudgetBuddy
BudgetBuddy is a product for users who wish to handle and track any current/future expenses on a singular platform.
BudgetBuddy provides a faster and more efficient way to track and calculate expenses and provides the ability
to deal with finances on a singular platform with ease as long as you can type fast.
Given below are my contributions to the project.
New Features
Listing Saving/Expense Feature
- What it does: Displays a list of all savings/expenses inputted by the user. Allows the user to view expenses/savings spent/earned so far based on his/her inputs. Also allows user to view remaining amount left in savings after deducting expenses.
- Justification: This is a basic essential feature surrounding the core functionality of our product.
- Highlights: The in-built calculation of remaining savings provides easy accessibility to information without the need for external calculation devices.
Currency Converter Feature
- What it does: Converts currently listed and future expenses/savings into another currency of choice listed in the User Guide. This feature ties in with my Listing feature to view the currency changes.
- Justification: This feature is greatly beneficial for users who travel frequently and often stay in foreign countries for a period of time. It allows them to track their expenses/savings regardless of their location. Additionally, one can also check how much their savings are worth if they plan to travel to another country in the future.
- Highlights: The user is able to convert interchangeably between the countries listed, providing greater convenience.
Code Contributed
RepoSense link.
Project Management
- Managed Issue Tracker Assignment from PE-D for v2.1 on GitHub.
Enhancements to Existing Features
- Implemented Loading/Saving for Currency Codes to remain persistent. (Pull Requests : #107).
- Implemented JUnit tests for existing features to improve test coverage. (Pull Requests : #43, #62).
- Implemented Logging/Assertions for improved error handling. (Pull Requests : #43, #62).
- Refactor features to use more OOP. (Pull Requests : #89, #107).
Documentation
User Guide
- Added documentation for the features
Listing Savings
, Listing Expenses
and Changing Currencies
. (Pull Requests : #107).
Developer Guide
- Added implementation details of the
Listing Savings
, Listing Expenses
and Currency Converter
feature. (Pull Requests : #107).
- Added design details of the
Expense
, Saving
, ExpenseList
, SavingList
, DefaultCurrency
and CurrencyConverter
classes. (Pull Requests : #107).
- Added user stories for my respective features. (Pull Requests : #107).
- Added Sequence Diagrams for
Listing Savings
, Listing Expenses
and Currency Converter
features. (Pull Requests : #107).
- Organised the structure and added miscellaneous details. (Pull Requests : #213).
- Added use cases and instructions for manual testing for my respective features. (Pull Requests : #213).
Reported Bugs and Suggestions for Other Teams
- Provided 4 DG Peer Review Comments for another team. (Team #1).
- Reported 13 Bugs for another team during PE-D. (Team #1).
- Usage of Draw.io for my Sequence Diagrams. (Draw.io).