Project: Unisave

Unisave is a desktop finance planner app, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI).

Given below are my contributions to the project.

  • Code Contributed:
    • RepoSense Link
    • Contributed large amount of code to transform the address book code base, including basic model, logic and Ui, to a working expense book code base. #69
    • Implemented the addDes function which allows users to add a description to an existing expense
    • Implemented the deleteDes function which allows users to add a description to an existing expense
    • Implement expense book storage to not just store the expense list but other useful fields such as budget and currency.
    • Implemented the clear function which clear the expense list.
    • Overload date class with input date format.
  • Enhancements implemented:
    • Functional Code:
      • For storage functions, I created more fields to store currency and budget. 123, 146, 151
      • For UI, I added keyboard control to our pop-up windows. 259
    • Documentation:
      • Incorporated most of the navigation link in Developer Guide to make it easier for users to jump to the section they want to refer. 282
      • Added the implementation for quite a few features. 275
    • Test Code: Wrote additional tests for existing features to increase coverage. 157
  • Documentation:
    • User Guide:
      • Add the overview and glossary section to the UG. 160
      • Added documentation for the features Add description, Delete description, Clear, Saving the data 278
    • Developer Guide:
      • Added implementation details of the Add Expense, Edit Expense, View Expense and Add description to expense feature 275
      • Added use cases for add description, delete description and view category feature 28
      • Update UML diagram for Storage, Expense class, AddDescriptionActivityDiagram, AddDescriptionSequenceDiagram, AddExpenseActivityDiagram, AddExpenseSequenceDiagram, EditExpenseActivityDiagram, EditExpenseSequenceDiagram 275 282
  • Contribution to team base tasks:
    • Publish jars.Releases
    • Modified the user guideā€™s bugs identified during the PE-dry. 242
    • Added the tests to common files. 157
  • Review/mentoring contributions:
    • Help to review and approve the pull requests. 142 147 154 166
  • Contributions beyond the project team:
    • Evidence of helping others:
      • Report the bugs I found during PE-dry run issues