Wang Jun Hao's Project Portfolio Page
Project: MediBook
MediBook is a desktop medical records software targeting doctors and administrative staffs in clinics or hospitals to help manage patient details. It is optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI), implemented using JavaFX.
Main highlights of MediBook include:
- Ability to keep track of patients’ administrative and medical details
- Ability to store medical consultation notes for each patient
- Displaying of health metric charts such as
BMI
- Login accounts for doctors for a more streamlined experience (e.g. auto-fill name and medical IC)
Given below are my contributions to the project.
-
Code contributed: RepoSense link
- New Feature: Added the ability to create/edit/delete medical notes for each patient
- What it does: Allows users to create, edit and delete medical consultation notes belonging to a patient, when logged in as a doctor and viewing a patient profile page. Autofills doctor’s and patient’s information.
- Justification: This is a fundamental feature of a medical records software. By only allowing these commands when logged in and viewing a patient profile page, the commands themselves can be streamlined as certain information are automatically retrieved.
- Highlights: This enhancement took significant effort and required the implementation of many underlying classes, such as
Doctor
andMedicalNoteList
, and established a connection between these classes andPatient
. It required an in-depth design analysis to reduce coupling and avoid cyclic dependency. The auto-filling feature required the implementation ofModelContext
.
- New Feature: Doctor verification when editing or deleting medical notes
- What it does: Restricts editing and deleting of medical notes to the doctor who authored them.
- Justification: Medical notes are important sensitive information that affect treatment decisions. The integrity of medical notes should be protected. This feature prevents tampering of medical notes by other doctors.
- Highlights: This feature interacts with login and model context features to check for account match.
-
New Feature: Display of medical notes in reverse chronological order
- New Feature: Added support for
BMI
for patients- What it does: Auto computation and storing of a patient’s
BMI
fromHeight
andWeight
fields if present.
- What it does: Auto computation and storing of a patient’s
- Enhancements to existing features:
- Implemented new
Weight
field foradd
feature (Pull requests #26)
- Implemented new
- Documentation:
- User Guide:
- Added documentation for the features
addnote
,editnote
anddeletenote
(Pull requests #154) - Added elaboration to introduction of UG (Pull requests #154)
- Tweaked layout and re-ordered features so that related features are back-to-back (Pull requests #154)
- Added elaboration on
login
andedit
feature (Pull requests #121, #174)
- Added documentation for the features
- Developer Guide:
- User Guide:
- Project management:
- Managed releases
v1.2.1
-v1.4
(3 releases) on GitHub - Managed milestones
v1.1
-v1.4
on GitHub - Managed branches on team repo for integration
- Managed releases
- Contributions to team-based tasks
- Community: