Project: GuestBook

GuestBook is a desktop app for managing guests in a hotel, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you are a hotel manager who can type fast, GuestBook can get your guest management tasks done faster than traditional GUI apps. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 13 kLoC. This project is based off AddressBook - Level 3.

Given below are my contributions to the project.

  • New Feature: Added NumberOfGuests field.

  • Code contributed: [RepoSense link]

  • Enhancements to existing features: Enhanced find command to allow for the searching all fields.
    • This feature increases the convenience for hotel managers to search for their guests by allow the search of other fields (eg. Room, date of stay).
  • Enhancements to existing features: Improved the user interface (UI).
    • Added icons to each field to be more concise yet remain clear.
    • Categorised fields by columns based on type of information.
    • Updated application icon.
    • Updated isRoomClean to a green/red icon signifying yes/no respectively.
    • Enabled text wrapping.
    • Allow Ui to be resizable.
  • Documentation:
    • User Guide:
      • Added “Components of the UI” section.
      • Added UiComponentsLabels.png.
      • Added component use table.
      • Added GuestBook icon.
      • Updated “FAQ” list.
      • Updated help message.
    • Developer Guide:
      • Refactored Ui section.
      • Updated diagram under Ui section.
      • Added implementation of add and edit commands.
      • Added activity diagrams of add and edit commands.
      • Added acknowledgements for icons.
  • Contributions to team-based tasks:
    • Released v1.3.
    • Refactored test cases.
    • Updated README.md.
    • Updated Ui.png.
    • Improved code coverage.
    • Maintained issue trackers.
    • Fixed bugs after practical examination dry run pull request #162, #168, #182, #186.
  • Project management:
    • Added GitHub tags, milestones, assignee.
    • Used GitHub issue tracker.
    • Followed the forking workflow.
    • Contributed to meetings by sharing screen and facilitating discussions.
  • Review/mentoring contributions:
    • Team members’ PR reviews (with non-trivial review comments): pull request #225, #214, #211, #207, #199, #135, #133, #130, #129, #122, #112, #111, #110, #104, #102, #95, #79, #74, #70, #68, #58, #57, #55.
    • Reported bugs for other teams (ped).
  • Contributions to Project Management and Organisation:
    • Team Lead - In-charge of assigning tasks and ensuring that they are done on time.
    • Managed team deliverables and deadlines for submissions.