Bryan Yang's Project Portfolio Page
Project: PayMeLah
PayMeLah is a desktop app for keeping track of and managing the debts your friends owe you. It can also help do simple calculations for you, such as including GST or splitting debts amongst your friends. What’s more, it is optimised for you to do everything from just your keyboard!
Given below are my contributions to the project.
- New Features:
- Mark/Unmark Command #151
- What it does: Allows the user to mark a debt as paid or unpaid.
- Justification: This feature improves the product significantly because a user can easily keep track of which debts are paid and which are not.
- Highlights: This feature allows users to specify more than one index for debts-to-mark, allowing users to mark multiple debts at once.
Implementation of this feature was not too difficult as there was code of similar functionality (
DeleteDebt
) being pushed out at the same time. There was also implementation of automated testing to prevent regressions.
- Statement Command #81
- What it does: Allows the user to view a statement of all the debts owed to them.
- Justification: This feature improves the product because a user can easily get a count of the total amount of a filtered list of debts.
- Highlights: Implementation of this was challenging as it required thorough understanding of Model component as well as Person model to implement methods to getDebts() and then getTotalDebt() to get total debt for 1 person. There was also implementation of automated testing to prevent regressions.
- UI enhancements #191, #206
- What it does: Allows the user to view a more visually appealing and effective UI by having an
Accordion
for list of persons and an innerListView
for debts. - Justification: This feature improves the product significantly because a more visually appealing UI improves the product experience. The UI is more effective as it allows users to view the list of persons as a whole to quickly navigate to the person they want and then open the pane up to view their debts.
- Highlights: Implementation of this was challenging as it required thorough understanding of the UI component and how to implement the changes.
- What it does: Allows the user to view a more visually appealing and effective UI by having an
- Mark/Unmark Command #151
-
Code contributed: RepoSense link
- Project management:
- Documentation:
- User Guide:
- Developer Guide:
- Community:
- Tools:
- Made use of PlantUML to create diagrams for the Developer Guide