Project: EzManage

EzManage - EzManage is a desktop application used for the management of a tuition centre’s sessions, students and tutors. 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 the ability to add a session. #27)
    • What it does: Allows the user to add a new session to EzManage.
    • Justification: This feature improves the product significantly because a person may drop out of a session at any time and the app should give the user a convenient way to update the session assignment to reflect this.
    • Highlights: This enhancement modified the structure of the original AddressBook to be a solution for the problem domain tackled by EzManage. It affects commands to be added in future and required an in-depth analysis of design alternatives. It also required writing of additional tests to ensure the sessions feature worked before passing the product on to other members.
    • Credits: AddressBook Level 3
  • New Feature: Added the ability to unassign a person from a session. (Pull Request #67)
    • What it does: Allows the user to unassign a person from a session in EzManage.
    • Justification: This feature improves the product significantly because a person may drop out of a session at any time and the app should give the user a convenient way to update the session assignment to reflect this.
    • Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives.
    • Credits: AddressBook Level 3
  • Code contributed: RepoSense link

  • Project management:
    • Managed releases v1.1 - v1.4 (4 releases) on GitHub
  • Enhancements to existing features:
    • Added more checks and defensive coding for the assign feature (Pull Request #67)
    • Changed product name and icon (Pull Request #197)
  • Documentation:
    • User Guide:
      • Added documentation for the features add_session and unassign (Pull Request #77)
    • Developer Guide:
      • Added implementation details of the add_session and unassign features. (Pull Request #80)
  • Community:
    • Reported bugs and suggestions for other teams in the PE Dry Run.