Project: HustleBook

HustleBook is a desktop app specially catered towards financial advisors for managing client details and scheduling meetings efficiently without the need to lift their hands off the keyboard. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 15 kLoC.

This project is built on top of the AB3 application that is used for teaching Software Engineering principles.

Given below are my contributions to the project.

  • New Feature: Added the ability for users to specify the specific client they wish to perform an action on in the case of their HustleBook containing clients with similar names.
    • What it does: If a client has 2 clients, named David Li and David Tan, the command edit David will firstly show both those Davids, and will ask the user again to clarify which “David” they refer to
    • Justification: This feature enhances existing features as users do not have to type the full name of the clients they wish to perform actions on.
    • Highlights: This enhancement currently affects edit, delete, find and meet. It will affect other features that use name to identify clients in the future
  • New Feature: Added the ability for users to see their previous commands by pressing the “up arrow” when their cursor is in the textbox.
    • What it does: A client can see their previously inputted command by pressing the “up arrow”.
    • Justification: Some commands can be very long, and it is easier for users if we kept track of previous commands and displayed it for them.
    • Highlights: This enhancement affects all commands that the user inputs.
  • Code contributed: RepoSense link
  • Project management:
    • Managed releases v1.2 - v1.3 (2 releases) on GitHub
  • Enhancements to existing features:
    • Improved the way HustleBook searches for users with a given search string.
    • Added Number Parser to assist in situations with users with similar names
    • Wrote additional tests for existing features to increase coverage from 60.11% to 64.50% (Pull request #254)
  • Documentation:
    • User Guide:
      • Added documentation for the features edit and delete#257
      • Did cosmetic tweaks to existing documentation of features edit, delete: #130
    • Developer Guide:
      • Added implementation details of the way HustleBook searches for clients by name
  • Community:
    • Reported bugs and suggestions for other teams in the class (examples: 1, 2, 3)