Weiming's Project Portfolio Page
Project: BookCoin
BookCoin is a CLI facility management system which allows users to manage bookings through a CLI interface and presents users a structured and detailed information on facility availability.
Given below are my contributions to the project.
-
Code contributed: RepoSense link
- New Feature: Implemented
add_venue
command and refactored it during iterations to include new fields and features.- What it does: allows the user to add venues one at a time into the system through a multi step command with optional fields such as capacity, description, tags.
- Justification: implementation of
add_venue
as a multi-step command enhances usability and makes it more convenient for users to input a new venue because of the number of fields needed, which can be tedious to type in one go and also difficult to remember.
- New Feature: Implemented and managed storage function for Venue class
- What it does: automatically updates and saves changes upon addition, edit and deletion of a venue
- Project management:
- Tested release
v1.3
to ensure that it works as intended
- Tested release
- Enhancements to existing features:
- Wrote additional tests for existing features to increase coverage from various Venue, Parser, Tag, Booking and Storage classes (e.g. #48, #238)
- Made initial modifications to layout of Storage class for BookCoin classes
- Managed modifications in implementing tag class to better suit BookCoin’s purposes
- Refactored other Venue commands when modifications are added into Venue class (e.g. #133)
- Conducted active bug fixing for Venue class (e.g. #252)
- Documentation:
- User Guide: formatted and polished user guide for better readability, added app constraints and design justifications, wrote and revised commands listed in user guide alongside testing of the app.
- Code documentation: refactored existing AB3 documentation, added, checked and edited existing documentation by other members.
- Developer Guide: created sequence and activity diagrams, wrote instructions for manual testing, added notable implementation features, edited appendix and added new section on effort.
- Others:
- Designed UI mockup
- Conducted active bug testing and fixed bugs for implementation by other team members
- Community:
- Reported bugs during PE dry run