Gu Yichen's Project Portfolio Page
Project: TutorsPet
TutorsPet is a desktop app designed for private tutors in Singapore to manage students’ information evolved from AddressBook - Level 3. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has altered around 10 kLoC from the original AB3.
Given below are my contributions to the project.
Code contributed: RepoSense link
Enhancements implemented
- Add School, Guardian’s name and Guardian’s phone for a Student #41
- Justification: The school and guardian’s contacts are essential information for our target users.
- Highlights: This enhancement affects the formatting of Person’s list, and existing Add, Edit command. It requires an in-depth analysis of storage design, as well as the command and command parser structures and checks.
- Add a Subject field for a Student #118
- Justification: The subject field restrict the input content that can be tagged on students stored in TutorsPet The Tag in AB3 shares a similar design with Subject, but has no content restriction. It did not address any needs of our target users.
- Highlights: This enhancement affects the existing Add, Edit and Search command. It requires an in-depth analysis of the command structures and checks.
- Make some personal details of a Student optional #99
- Justification: When a user first added in a student’s contact, some details may not be available. Thus, TutorsPet allows all fields except name and phone being empty initially, and being added in later with Edit command.
- Highlights: This enhancement affects the constructor of a Student and Student List for storage. It requires an in-depth analysis of storage design, as well as the command parsers.
- Enhancements to existing features:
- Allow students with duplicate name to be added, while make the phone number a unique identifier of a Student #219
- Updated error messages displayed in the message box
Project management:
- Managed releases
v1.3
-v1.4
(2 releases) on GitHub - Set milestones
v1.1
,v1.2
,mid-v1.2
,1.3
on GitHub
Documentation:
- User Guide:
- Added Introduction of TutorsPet and How to Navigate User Guide
- Added documentations for the features
add
andedit
- Did cosmetic tweaks to existing documentation of features
- Added section Coming soon to introduce the features we plan to implement in the next version
- Developer Guide:
- Added implementation details and manual testing instructions of the
add
feature andedit
feature.
- Added implementation details and manual testing instructions of the
Community: