Project: WedLog
WedLog is a desktop application created for partners getting married that helps them manage the guests and vendors involved in the wedding. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC. This project is based on AddressBook - Level 3.
Given below are my contributions to the project.
Features
New Feature: Added the ability to parse inputs for all parameters in guest and vendor commands.
- What it does: Parses the user inputs and returns command to be executed.
- Justification: This feature improves the product significantly because guest and vendor command inputs can be parsed and commands can be executed accordingly.
- Highlights: The implementation was challenging because each command had a respective parser class which accepted different types of inputs respectively. This required careful consideration of possible user inputs.
New Feature: Added the ability to display lists of guests and vendors.
- What it does: allows the user to view all guests and vendors in a list format.
- Justification: This feature improves the product significantly because a user may want to have an overarching view of all their guests that will be attending the wedding and the vendors they have in contact.
New Feature: Added the ability to filter guests and vendors.
- What it does: allows the user to filter guest and vendor lists by all non-tag parameters.
- Justification: This feature improves the product significantly because a user can now filter the guest and vendor list by more parameters, giving them a more customised filter feature.
- Highlights: The implementation was challenging because each parameter had a respective predicate class which accepted different types of inputs respectively. This required careful consideration of possible user inputs.
- Also employed defensive programming practices in implementation and applied test heuristics in test case design (observed in Predicate classes e.g.
NamePredicate
and NamePredicateTest
).
New Feature: Modified the guest class to take in Dietary requirement field (initial implementation).
- What it does: allows the user to add a dietary requirement to guests.
- Justification: This feature improves the product significantly because a user can now keep track of dietary requirements for guests.
Code Contributed
RepoSense link
Documentation
- User Guide:
- Added documentation for the features
guest list
and vendor list
: #40 - Added documentation for the features
guest filter
and vendor filter
: #121 - Added documentation for dietary requirements field: #98
- Vetted UG before PED: #174, #175
- Updated Appendix: #267
- Handled conversion to PDF
- Developer Guide:
- Added use case section: #38
- Added implementation details for the feature
filter
: #145 - Handled conversion to PDF
Project Management
- Managed release
v1.3
on GitHub. - Contributed to Issue tracker and PR reviews