Yeoh Hsin Ying Candice's Project Portfolio Page
Project: PocketEstate
PocketEstate enables easy organisation of mass clientele property information through sorting of information by price, location and housing type, that may otherwise be difficult to manage.
Given below are my contributions to the project.
Code contributed: RepoSense link
New Features & Enhancements
- Enhancement: Graphical User Interface (GUI)
- What it does: Simultaneously displays both property and appointment lists side by side
- Justification: This feature improves the product significantly because it enables integration of commands on both property and appointment lists, yet enables the user to conduct distinct commands on both lists and view its effects simultaneously without having to call
list property
orlist appointment
prior to each operation - Highlights: Greying out of properties and appointments with expired deadlines in the GUI, a newly designed Light theme colour scheme with a organised, minimalist design that highlights important details. The implementation was challenging due to limited experience and precise nature of fxml.
- Enhancement: Maintains unique
Property
andAppointment
lists, and all their attributes.- What it does: Supports other commands like
add
,edit
,sort
,filter
as all property and appointment data are maintained in a list. The unique property and appointment lists prevents addition/ edit ofProperty
/Appointment
that results in duplicateProperty
/Appointment
listings. - Justification: The core functionality of our application is heavily reliant on both of these lists, as
Property
andAppointment
lists are necessary to maintainProperty
andAppointment
data PocketEstate manages. - Highlights: Prevents addition of duplicate
Property
andAppointment
to minimise redundant data.
- What it does: Supports other commands like
- Enhancement: Implemented storage support for both
Property
,Appointment
and their attributes.- What it does: Performs accurate parsing of
Property
andAppointment
data from the respectiveProperty
andAppointment
lists to data forms that are reader friendly for display to the user, which is then stored in separate json files. - Justification: Proper parsing and storage of
Property
andAppointment
data ensures data integrity and reliability of PocketEstate that aims to manage significant property and appointment data. - Highlights: Maintains 2 separate json files with reader friendly data (Eg. Parsing of date from 01-12-2021 to Dec 12, 2021, time from 1500 to 3:00pm) to be presented to the user in GUI
- What it does: Performs accurate parsing of
- Enhancement: Added the ability to list properties and appointments through the three different
list
commands -list all
,list property
,list appointment
.- What it does: Allows the user to list a property, list an appointment or list both properties and appointments to the application.
- Justification: These basic core commands are required for users to view information in the application.
- Highlights: Allows users to retrieve appointments or properties, separately or together after a sort or filter command.
- Additional Enhancements:
Documentation
- User Guide:
- Developer Guide:
Community
- PRs reviewed (with non-trivial review comments): (#162, #126, #298, #111)
- Provided tips through forum discussions (examples: Configuring IntelliJ to follow module coding standards for switch statements)
- Provided help through forum discussions (examples: #23)
- Reported a bug in the original AB3 Storage class diagram (issue: #273)