Lim Choong Kai Joshua - Project Portfolio Page
Overview
Welcome to 🪙NUScents🪙, the tailor-made financial tracker for SOC students at NUS. It is optimized for use via a
Command Line Interface (CLI) to offer a clutter-free solution for our users to manage and monitor their financial
activities.
It is written in Java and has about 3kLoC.
Summary of Contributions
Code Contributed
View my code contributions here: Reposense
Enhancements implemented
- Feature: Added the ability to add expenses
- Creation of Transaction, Expense classes
- Created methods in Parser to validate user input for adding expenses
- Created methods in Storage to load expenses from data file
- Created TransactionList to store and manipulate transactions
- Feature: Added the ability to add allowances
- Creation of Transaction, Allowance classes
- Created methods in Parser to validate user input for adding allowances
- Created methods in Storage to load allowances from data file
- Created TransactionList to store and manipulate transactions
- Feature: Added the ability to categorise allowances
- Created AllowanceCategory
- Modified Parser to parse valid allowance categories
- Modified Ui to print allowance category in relevant outputs
- Bugfix: Log to file instead of console: #44
- Bugfix: Allow modification of storage file and handle improper file input.
Github issues:
#63,#92,
#99,#104
- Explored using HMAC to verify integrity of storage file #64
- Eventually removed to align with tP constraints of human-editable file
Contributions to the UG
- Created the format for commands in the Features section
- Ideated the example outputs given
- FAQ
Contributions to the DG
- Acknowledgements
- Interaction Flow simplified class diagram
- UI Component
- Command Component
- Parser Component
- Storage Component
- Implementation:
list
Transactions Feature
- Instructions for manual testing
Contributions to team-based tasks
- Set up the team repository
- Heavily refactored code from original Spaceman Task Manager
in the initial phase of the project (when developing the basic adding allowance/expense feature)
- Reviewed non-trivial PRs #24, #74
- Assisted team members with help if needed (e.g. edit command feature syntax and implementation)
- Developed JUnit tests for the methods used in Parser when adding transactions
Contributions beyond the project team
Reported 7 bugs in the PE-D on GitHub