Louis' Project Portfolio Page
Project: Ultimate Divoc Tracker
Ultimate Divoc Tracker is a desktop app for managing COVID-19 contacts in school admin, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, Ultimate Divoc Tracker can get your contact management tasks done faster than traditional GUI apps.
School administrators (like teachers) in charge of managing COVID-19 can use UDT to easily track COVID-19 cases amongst the student population with ease and concentrate on what matters most, the education of the students.
Given below are my contributions to the project.
- New Feature:
ClassCodeattribute for Person #38- What it does:
- Adds a
ClassCodeattribute for each person denoting their class number/code - Displays the
ClassCodeattribute on the person’s card in the user interface - Stores the
ClassCodeattribute on a JSON file with the key as “classCode”
- Adds a
- Justification: This attribute provides a way for schools to track COVID-19 in each classroom denoted by
ClassCode - Highlights: This enhancement is used in the batch update status feature.
- Credits: {Jun Hong, Joshua}
- What it does:
- New Feature: Batch update status when a person recovers #76
- What it does:
- When a person recovers (
Statuschanges fromPositivetoNegative) and there is no person in the sameClassCodewhoseStatusisPositive, every person with the sameClassCodeas the recovered person will have their status changed fromClose-ContacttoNegative. - The reverse (
Statuschanges fromNegativetoPositive) is implemented by Joshua and Jun Hong.
- When a person recovers (
- Justification: Automate the tracking of COVID-19 in every
ClassCode. If no more positive cases in aClassCode, persons withClose-Contactstatus having the sameClassCodeas the recovered person should change toNegative. - Highlights: This feature is called every time a person’s
Statusis changed fromPositivetoNegative. It requires a check whether there are still positive cases in theClassCodeof the recovered person.
- What it does:
- New Feature: Batch update status based on the same activities #112
- What it does: Considers those with the same
Activityclose contacts instead of only those with the sameClassCodein the batch update status feature.- When a person becomes COVID-19 positive, those in the same
ClassCodeorActivitywill have their status updated toClose-Contactif they areNegative. - When a person recovers from COVID-19, those in the same
ClassCodeorActivitywill have their status updated toNegativeif they areClose-Contactand they are not related to anyPositiveperson in the sameClassCodeorActivityas them.
- When a person becomes COVID-19 positive, those in the same
- Justification: If a person has the same
Activityas another person, they should be considered as close contacts. Hence, this should also be included in the batch update status feature as one should be labeled asClose-Contactif the other isPositive. - Highlights: One person can have multiple
Activityso the implementation is not the same as theClassCodeonly implementation since one person can only have oneClassCode.
- What it does: Considers those with the same
- JUnit Test:
- Enhancements to existing features:
-
Code contributed: RepoSense link
- Documentation:
- User Guide:
- Developer Guide:
- Added documentation for updated AddCommand and EditCommand following the addition of ClassCode, Status and Activity attributes #98
- Added documentation for updated UI and Storage flow #98
- Added proposed enhancements for UDT #98
- Added a sequence diagram for findstatus command execution #183
- Added a sequence diagram for findclasscode command execution #183
- Added a sequence diagram for findactivity command execution #183
- Updated the documentation for the implementation of batch update with respect to the incorporation of the
activityattribute #183 - Added and edited explanations for the role of batch update in AddCommand, DeleteCommand and EditCommand #183
- Community:
- PRs reviewed (with non-trivial review comments):
- Reported bugs and suggestions for other teams in the class:
- AY2122S2-CS2103T-T09-4:
- Inaccurate command message in results window #1
- Product does not show all items after series of steps #2
- Able to set expiry date to past dates #3
- Category is shown as required field in update product window #4
- Name and category fields can contain only symbols #5
- Invalid remind command #6
- Find command not working #7
- AY2122S2-CS2103T-T09-4: