Project: Baymax

Baymax is a desktop patient management application used for managing patients and appointments in clinics. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 15 kLoC.

Given below are my contributions to the project.

  • New Package: Added the relevant classes for appointments.
    • What it does: Sets up basis for features to be added regarding appointment management.
    • Justification: The foundation for appointments allowed for one of the main features of our application, the management of patient appointments.
    • Credits: AB3 (Similar implementation to how AB3 implements management of people and addresses)
  • Test: Covered tests for model.appointment and util.datetime packages
    • What it does: Ensures that appointments and datetime related functions work properly.
    • Justification: Being vital to the operations of our application, it was important to heavily test the classes within appointment and datetime packages to ensure proper functionality.
  • Bug Fix: Prevented multiple command parameters from being accepted.
    • What it does: As mentioned in Issue #247, the bug allowed for multiple parameters (e.g. name/) to be entered, with the application running on the last one entered. Fixing this allowed the app to alert users when a parameter was used more than once (except tag/, since multiple tags are allowed).
    • Justification: As a Healthcare related application, it is natural for there to be large amounts of information attached to each patient. As such, we should anticipate for mistakes in the entering of fields as much as possible, including typing the same parameter multiple times by accident, or even typing the wrong parameter name.
  • Code contributed: RepoSense link

  • Documentation:
    • User Guide:
      • Managed tone of UG #158
      • Added documentation for the modified/added features such as remark and cancel #185
      • Did cosmetic tweaks to existing documentation of many features (adding of relevant pictures) #185
    • Developer Guide:
      • Removed references linking to AB3 and replaced to links to our own repository #298
      • Added UML class diagrams for Storage and Model, and a sequence diagram for a sample command #139
      • Added and updated Glossary #75 and
      • Updated Design details of Model with Kaitlyn #297
      • Updated Implementation details of Appointment Management (Design Considerations) #297
  • Community:
    • PRs reviewed (with non-trivial review comments): #256, #299
    • Reported bugs and suggestions for other teams in the class (examples: 1, 2, 3)