Goh Jun Yi's Project Portfolio Page
Project: LoyaltyLift
LoyaltyLift is a desktop application designed for small business owners to manage their customers and orders efficiently, allowing you to improve customer relations and increase customer loyalty.
Given below are my contributions to the project.
-
Code contributed: RepoSense Link
- New Feature: Added
viewc
andviewo
commands (#28, #92)- What it does: When the user uses
viewc
/viewo
command or clicks on the customer / order in the list, the information panel will display the customer or order’s information. - Justification: As there are many details to a customer or an order, a bigger view allows proper display of information for the user to read the information easily.
- Highlights: This allows for additional information to be shown such as an order history of a customer. This also sets up for other commands (e.g.
edito
,markc
), to also display the customer or order in the information panel automatically.
- What it does: When the user uses
- New Feature: Added the ability to assign a customer as an individual or enterprise (#33)
- What it does: Adds an attribute to
Customer
to allow the user to set that aCustomer
is an individual or enterprise withaddc
andeditc
. - Justification: As the user may have customers that are organisations instead of just people, this helps users to categorise them correctly.
- What it does: Adds an attribute to
- New Feature: Added storage for
Order
(#50, #56)- What it does: Whenever an
Order
is created, updated or deleted, the application automatically saves order list into the local storage. - Justification: Similar to how
Customer
data are saved,Order
data is saved as well so the data is not lost on application close.
- What it does: Whenever an
- New Feature: Added Status / Progress History for
Order
(#75)- What it does: Allows the user to view how an
Order
has progressed as the status changed. - Justification: As an order progresses from Pending, Paid and onwards, this allows the user to refer to the history of an order. My changes provide the
Model
andStorage
implementation for commands such asadvo
,revo
andcancelo
to work with. - Highlights: This required analysis of different design alternatives. Among the alternatives, the implementation used was chosen for extensibility, in the future, we expect that the user may want to more information such as notes to each progress update or revert.
- What it does: Allows the user to view how an
- Enhancements to existing features:
- Added UI to view orders that belong to a customer in the information panel for a customer
- Revamped the default view of the UI
- Include a tab to switch between customer and order list and an information panel to display a customer or order’s information
- Styling with CSS with a defined color scheme to enhance the aesthetics for the UI
- Project management:
- Managed releases v1.1 - v1.4 (4 releases) on GitHub
- Updated README.md and site-wide settings
- Documentation:
- User Guide:
- Developer Guide:
- Updated details in
Logic
component #160 - Added implementation details for
markc
andunmarkc
#160 - Added implementation details for an
Order
’s status attribute #82 - Added planned enhancements for feature flaw where customers with the same names cannot be added #160
- Added manual testing instructions for order commands #185
- Updated user stories #160
- Updated details in
- Review/mentoring contributions:
- Community: