Zhi Bin's Project Portfolio Page
Project: ContHACKS
contHACKS is a desktop app for Teaching Assistants (TAs) to manage contacts and lessons. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 12 kLoC.
Given below are my contributions to the project.
New Feature: Add alias for different commands: #49
- What it does: Allow users to use different alias to perform the same command.
- Justification: This provides advanced user with short alias which leads to less typing.
- Credits: The design is inspired by this post on stackoverflow.
New Feature: Add the ability to list lesson: #122
- What it does: Allow the user to see all lesson stored in contHACKS
- Justification: After finding the lesson(s) they want, user might want to view the whole list of lesson again
- Credits: The design structure is inspired from AddressBook Level 3
New Feature: Add the ability to clear lesson: #123
- What it does: Allow the user to clear all lesson stored in contHACKS
- Justification: Saves the user from deleting lesson one by one if there is a lot of lesson stored in contHACKS
- Credits: The design structure is inspired from AddressBook Level 3
New Feature: Add the ability to edit lesson: #137
- What it does: Allow the user to edit a lesson stored in contHACKS with the newly provided details
- Justification: There might be updates in lesson detail
- Credits: The design structure is inspired from AddressBook Level 3
Code contributed: RepoSense link
Enhancements to existing features:
- Added the ability to sort the contact by their name and module code, but was removed because sorting by module isn’t needed anymore, and our team agreed that sorting by name should be done automatically instead of the user having to type a command just to sort. 52
- Add automatic sorting of contact & lesson after any command is executed. #75
Testing:
Documentation:
- User Guide:
- Developer Guide:
Team-Based Tasks:
- Setting up the GitHub team org/repo
- Manged releases
v1.2on GitHub - Updating UG that are not specific to a feature
- Refactor
ModuleLessonto remove the use of aSetto save theModuleCode - Create skeleton files for all
XYZModuleLessonCommandandXYZModuleLessonCommandParser, and refactor allXYZCommandandXYZCommandParsertoXYZPersonCommandandXYZPersonCommandPerson
Community: