Joshua Weng Hao’s Project Portfolio Page
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
orCOMPLETED
. - 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.
- What it does: Allows the user to mark a specified schedule as
- 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
oredit-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 newListsPanel
to store bothPersonListPanel
andScheduleListPanel
so that they can be displayed together in theMainWindow
.
- Refactored feature: Refactored the
ListCommand
toListTutorCommand
. (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
toDeleteTutorCommand
. (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 theDeleteTutorCommand
to only delete from the list of tutors, so that the implementation is separated from the schedule list.
- New feature: Added the ability to mark schedules.
(Pull request #144)
- Documentation:
- User Guide
- 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:
- Review/ mentoring contributions: