This portfolio documents my contributions to the development of application for CS2103T (Software Engineering) project, as part of the team W14-3. My contributions mainly include the addition of several new commands and project management.
HealthBase is a desktop application designed to aid the management of clinics and hospitals. Doctors and nurses can use this application to record patient information such as medical history, medication, dietary requirement and medical appointments, through a command line interface. Besides, receptionists can use this application to register the visitors for each patient. The recorded data can be viewed through a graphical user interface. The application also provides functionality to check out a patient when he/she leaves the hospital, and check in the same patient when he/she returns to the hospital.
-
Major enhancement: added
adddiet
command-
What it does: This command allows the user to enter dietary requirements information for a given patient.
-
Justification: This feature enables the dietary information of a patient to be recorded upon checking in or being registered, and to be reviewed subsequently, so that the nurses can prepare food for patients efficiently.
-
Highlights: This enhancement brings a unique feature for the application, which is not usually included in other hospital management systems. There are three types of dietary requirements included, so the implementation needs to take into consideration how to separate different types of dietary requirements. Also, this feature blocks invalid dietary requirement inputs to ensure data integrity.
-
-
Major enhancement: added
checkout
command-
What it does: This command allows user to check out a patient from the application when the patient leaves the hospital, while still stores his/her information in the system for future usages.
-
Justification: This feature makes the application more suitable for the workflow in hospitals, as patients need to be checked out from the hospital at the end of his/her hospitalization period.
-
Highlights: This enhancement makes the application highly extensible, as the information of the checked out patient are stored, which enables more operations and features to utilize these stored information.
-
-
Major enhancement: added
checkin
command-
What it does: This command allows user to check in a returning patient, and also restores all his/her information (medication, medical history, dietary requirements, appointments etc.) back to the application.
-
Justification: This feature completes the workflow after checking out a patient, by providing a way to admit him/her back to the hospital if he/she is returning to the hospital after a period of time.
-
Highlights: This enhancement makes uses of the information stored by
checkout
command, and restores these information so that other commands can be valid on a given patient. Besides, this command differentiates whether the given patient is already registered or not, and direct the user to theregister
command if the patient is on his/her first visit.
-
-
Minor enhancement: added a view panel that allows the user to inspect the added dietary requirements of a patient.
-
Code contributed: [Functional and Test code]
-
Other contributions:
-
Project management:
-
Managed organisation code repository as administrator.
-
Managed releases
v1.1
-v1.4
(5 releases) on GitHub. -
Managed the project dashboard on Github.
-
-
Enhancements to existing features:
-
Documentation:
-
Updated the UserGuide to include
adddiet
,checkout
andcheckin
command. -
Updated the DeveloperGuide to include implementation details of the
adddiet
command. -
Updated the user interface mockup to be consistent with our proposed product (Pull request #18).
-
-
Community:
-
PRs reviewed (with non-trivial review comments): #20, #22, #29, #82, #95, #110.
-
Reported several issues related to the UserGuide (Issues: #123, #193, #194, #195, #200).
-
Reported bugs and suggestions for other teams in the class (Examples: #118, #128, #130, #138).
-
Assisted teammates during integration of code for each release.
-
-
Tools:
-
Set up Reposense for the organisation repository (Pull request #221).
-
-
Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users. |
Given below are sections I contributed to the Developer Guide. They showcase my ability to write technical documentation and the technical depth of my contributions to the project. |