Loh Jian Rong's Project Portfolio Page
Project: PropertyMatch
PropertyMatch is a desktop tool for property agents who want to organise their client profiles with their corresponding properties. Property agents can boost their efficiency by seamlessly matching their clients with their desired properties.
Given below are my contributions to the project.
-
Code contributed: RepoSense link
- Enhancements implemented:
- Added
listprop
command and tests (#66, #84)- What it does: Takes in command
listprop
and updates the Property List to show all properties in the database.
- What it does: Takes in command
- Added goodbye message to
exit
command (#58)- What it does: Takes in command
exit
and displays a goodbye message. Delays the exit by 3 seconds to give the user sufficient time to read the message.
- What it does: Takes in command
- Added
editcust
command and tests (#110)- What it does: Takes in command
editcust
. Allows the user to edit an existing customer. However, the user cannot edit the customer such that it has a duplicate phone number.
- What it does: Takes in command
- Added
clear
command and tests (#120)- What it does: Takes in command
clear
and removes all existing data, both customer list and property list, in the application.
- What it does: Takes in command
- Removed traces of AB3 (#61)
- Fix CI/CD pipeline errors (#94)
- Added guardrails for phone numbers, budgets and prices (#187, #188)
- What it does: Ensures that phone numbers, budgets and prices are valid. Phone numbers must start with 6, 8, or 9 and must be 8 digits. Budget and prices must be integers of at least 5 digits and at most 12 digits. It cannot start with a 0.
- Added
- Contributions to the UG:
- Contributions to the DG:
- Added sequence diagram for edit command in #97
- Massive change to DG in v1.4 #229
- Added object diagrams for Customer and Property
- Added activity diagrams for
addcust
andaddprop
commands - Added Appendix B: Instructions for manual testing
- Added some proposed enhancements in Appendix C
- Added Appendix D: Effort
- Project management:
- Led weekly group meetings
- Managed milestones
v1.2
-v1.4
(4 milestones) on GitHub - Managed releases
v1.2
-v1.4
(4 releases) on GitHub
- Contributions to team-based tasks:
- Setting up the GitHub team org and repo
- Maintaining the issue tracker
- Release management
- Updating user guide that are not specific to feature
- Updating developer guide that are not specific to feature
- Set up CI for the team repository
- Enabled assertions in Gradle
- Filmed product demo for v1.2 and v1.3
- Review/mentoring contributions:
- Contributions beyond the project team: