Overview

checkUp is a desktop patient medical record management system. 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.

I was the designated team lead for this project group. Given below are my contributions to checkUp.

Code contributed

RepoSense: link
Commit History: link
Pull Requests: link
Issues: link

Features implemented
  • Obtaining count of all patients and medication: count
    • What it does: Returns count of all patients in the application, along with prescription counts for long-term medication.
    • Justification: Allows medical staff to easily keep track of total patient count.
  • Appointments feature
    • Created the main classes that encapsulate the appointments feature, including both past and upcoming appointments.
    • Creating past appointments for patients: appt
      • What it does: Creates a record of a past appointment for a patient in the application, with details such as the date of the appointment, the doctor’s diagnosis and the medication prescribed during the appointment.
      • Justification: Significant feature for the application as it allows storing a history of patient visits that can later be accessed by date or by patient. This improves the medical record system by integrating patient history.
      • Highlights: This was a major feature added to the application during the project, as it laid the basis for future enhancements. Adding this impacted many currently existing commands, such as add and side effects caused by the edit command. This was a challenging addition that required editing of over 20 files simultaneously.
    • Creating upcoming appointments for patients: edit ua/
      • What it does: Schedules a future appointment for a patient.
      • Justification: Allows medical staff to keep track of when a patient is next due for a visit.
Other code contributions
  • UI changes to PersonViewPanel to beautify it from a rudimentary text layout.
  • Added unit tests for CountCommand and Appointment-based classes, increasing coverage by 3% across over 600 lines of JUnit test code.
Contributions to the UG
  • Documented count, appt, view, delappt commands.
  • Updated documentation for edit and add commands to reflect changes made to them.
  • Updated command summary.
  • Rewrote introduction and added a section on the purpose of the application.
  • Created UG banner image.
  • Refactored parameters for commands into tables for better readability.
  • Defined +, - and * symbols to indicate the type of command parameter.
  • Added relevant user stories for the Appointment and CountCommand features.
Contributions to the DG
  • Added “Patient Administrator/Staff” to glossary.
  • Added documentation for the Appointment feature as a whole, including:
    • A description of the feature.
    • Class and object diagrams for the feature’s implementation.
    • A sequence diagram of the use case with method calls shown.
  • Added documentation for the CountCommand feature, including:
    • A description of the feature.
    • A sequence diagram of the use case with method calls shown.
  • Updated documentation for Model component, including creating new class diagrams.
  • Added use cases for count, appt and edit ua/ commands.
  • Created and added class diagram for the Person class.
Contributions to team-based tasks
  • Set up project workspace and team repository with member management.
  • Set up code coverage, CI, CD on team repository.
  • Set up CD for pull requests on team repository using Netlify.
  • Created priority and type tags in team repository.
  • Organised regular team meetings to discuss progress and issues, and to establish the direction of the project.
  • Scheduled tasks for team members and ensured they were completed on time.
  • Ensured team was on schedule with frequent reminders on deadlines and pending tasks.
  • Checked for code quality and adherence to coding standards.
  • Created application logo.
  • Defined and added non-functional requirements.
  • Created and managed milestones v1.1, v1.2, v1.2b, v1.3, v1.3b, v1.4 progress in the team.
  • Reviewed bug tester contributions through the quality of bugs reported (after PE-D).
Review/mentoring contributions
  • Reviewed 47 pull requests across the different SDLC versions.
  • Planned Appointment feature and its integration with the other features in the application.
Contributions beyond project team