Chen Guanzhou's Project Portfolio Page
Project: idENTify
Overview
IdENTify is a desktop app made for Ear, Nose and Throat (ENT) administrative staff to manage patients’ contact details and appointments, 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, idENTify can get your patients/appointments’ management tasks done faster than traditional GUI apps.
Summary of Contributions
Given below are my contributions to the project.
Code contributed: RepoSense link Enhancements implemented:
delete
command enhancement: Allows deletion of patients in a range, and not just a single deletion at an index.Singleton
pattern: Made use of singleton pattern to keep track of the current predicate shown in the UI (there should only be 1 “global” predicate)cancel
command: Allows removal of a person’s appointment from the appointment list.hide patients
command: Allows the model to hide patients based on conditions specified e.g hide by patient names or tags, makes use of the singleton.hide appts
command: Allows the model to hide appointments based on conditions specified e.g hide by appointment tags, status or reason, makes use of the singleton.unhide patients
command: Allows the mode to unhide previously hidden patients based on conditions specified e.g unhide by tags.unhide appts
command: Allows the model to unhide previously hidden appointments based on conditions specified e.g unhide by marked status. The global predicate to show/hide which appointments and patients was difficult to implement, because hide/unhide has to work with other commands such as find and edit, and a global predicate for the model must be maintained at all times. e.g hide/find/edit/unhide commands work on the current shown list instead of the full list of appointments and patients, and so the predicate has to be constantly combined, leading to many bugs.
Contributions to the UG:
- Added
delete
,cancel
,hide patients
,hide appts
,unhide patients
,unhide appts
feature description and examples. - Updated screenshot for
help
command. - Updated command summary.
- Added glossary of terms to define.
Contributions to the DG:
- Added explanations and UML diagrams for
cancel
command. - Added explanations and UML diagram for
hide
commands. - Added glossary of terms to define.
Contributions to team-based tasks:
- Created and set up the organisation and repository in the initial stages of the project.
- Released v1.2 and v1.3 jar files
Review/mentoring contributions:
Contributions beyond the project team: