Project: Tutor Connect

This is an address book made for tuition centre managers to easily track, schedule, and notify tutors of their upcoming schedule, optimised for users who prefer a CLI.

Given below are my contributions to the project.

  • Code contributed:
  • Enhancements implemented:
    • New feature: Added the ability to mark schedules. (Pull request #144)
      • What it does: Allows the user to mark a specified schedule as MISSED or COMPLETED.
      • Justification: This feature improves the product by allowing users to create and set the status of a specified schedule.
      • Highlights: Implementing this feature posed some challenges as it required the addition of the status field in the schedule object, in order to set the status of a specified schedule, and implementing tests to ensure that the valid schedule is marked with a valid status.
    • New feature: Added the ability to view both tutor list and schedule list in one panel. (Pull request #212)
      • What it does: Allows the user to view the tutor list and schedule list side by side within the main panel.
      • Justification: This feature improves the product by allowing users to easily refer to the tutor list or schedule list when inputting commands like edit-t or edit-s that requires referring to the index in the list. This greatly enhances the user experience, providing greater convenience for the users.
      • Highlights: Implementing this feature necessitated modifications to the MainWindow.fxml and the creation of a new ListsPanel to store both PersonListPanel and ScheduleListPanel so that they can be displayed together in the MainWindow.
    • Refactored feature: Refactored the ListCommand to ListTutorCommand. (Pull request #86)
      • What it does: Updates the existing list command with the context of the application, tutors.
      • Justification: With the addition of schedules, it is necessary to contextualise the ListTutorCommand to only display the list of tutors so that the implementation is separated from the schedule list.
    • Refactored feature: Refactored the DeleteCommand to DeleteTutorCommand. (Pull request #87)
      • What it does: Updates the existing delete command with the context of the application, tutors.
      • Justification: Same as the ListTutorCommand above, with the addition of schedules, it is necessary to contextualise the DeleteTutorCommand to only delete from the list of tutors, so that the implementation is separated from the schedule list.
  • Documentation:
    • User Guide
      • Added details of list tutor feature #47, #105, #233.
      • Added details of delete tutor feature #48, #53, #105, #233.
      • Added details of mark schedule feature #166, #233.
      • Update known issues section #327.
    • Developer Guide
      • Added implementation details of list tutor feature #320.
      • Added implementation details of delete tutor feature #142, #161.
      • Added implementation details of mark schedule feature #320.
      • Added implementation details for Split MainWindow to display both tutor and schedule list together #320.
      • Added detailed instructions for manual testing of all features #320.
      • Update acknowledgements section #320.
  • Contribution to team-based tasks:
    • Implement schedule structure: update AddressBook to include schedules. (Pull requests #98, #101)
    • Standardising formatting and proofreading UG and DG #233, #355.
  • Review/ mentoring contributions: