Law Sean Meng's Project Portfolio Page
Project: Waddle
Waddle is a simple, no-frills travel planning application catered to people who love doing everything on their keyboards.
Given below are my contributions to the project.
- New Feature: Add an edit item command. #49
- What it does: This command allows users to edit an item in their unscheduled item list.
- Justification: This feature improves the product significantly as users can easily edit minor details in the items in their item list without having to delete and re-add the entire item.
- Highlights: Writing the
EditItemDescriptor
class allowed me to learn how to use a defensive copy to prevent the user from making any unwanted changes to the original copy of the item.
- New Feature: Add a multi index class. #76
- What it does: Allows for access of items inside the day list, using a more complex version of an
Index
. - Justification: There is a need for a different indexing of items that are in the day list compared to the unscheduled item list. This is to allow users to easily access items in both lists from the same item-planning page.
- Highlights: It was challenging coming up with a way to represent the different indexing that would satisfy our needs.
- What it does: Allows for access of items inside the day list, using a more complex version of an
- New Feature: Add a plan and unplan command. #85, #87
- What it does: Allows for scheduling and unscheduling of items in the wishlist, to a specific day and time.
- Justification: As a travel planning application, users will need to schedule their activities in order to create a cohesive itinerary using our app.
- Highlights: There was plenty of collaboration and discussion with team members on where to handle each aspect of
the plan and unplan commands, such as shifting the inner workings to the
Itinerary
andDay
classes.
-
Code contributed: RepoSense link
- Project management:
- Managed releases
Waddle v1.4.1
and1.4.2
(2 releases) on GitHub
- Managed releases
- Enhancements to existing features:
- Documentation:
- Team-based tasks:
- Community:
- Assisted other teams in detection and reporting of bugs during the PE dry run.