Project: SportSync

SportSync is a desktop address book application used for coaching student athletes. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java.

Given below are my contributions to the project.

New Features

Sort function #29

Added the ability to sort the contact list.

  • What it does: Calling sort will automatically sort the list of contacts in alphabetical order.
  • Justification: This feature gives convenience to the user by letting them know where a specific contact can be found in relation to others.
  • Highlights: Implementing this feature involved understanding the complex code flow and the relationship between many classes.

Undo/Redo function #50

Added the ability to undo and redo previously entered commands.

  • What it does: Calling undo will undo the last user-entered command while calling redo will redo the last user-entered command.
  • Justification: This feature saves the user’s time when they accidentally make mistakes while typing.
  • Highlights: Implementing this feature involved rigorous understanding of class instances and the pass-by-reference concept.
  • Credits: The previous team that worked on AddressBook 3, as I used their proposed implementation for this.

Code contributed

RepoSense link

Project management

  • Helped with debugging and testing the app to ensure correct functionality.
  • Delegated tasks amongst team members and reminded them of upcoming deliverables.
  • Regularly reviewed team pull requests and merged them once done.
  • Organised project meetings with the team to discuss future enhancements.

Enhancements to existing features

New GUI Colour Scheme #47

  • Updated aesthetics of GUI with curated colour scheme and custom app icon.

Improved Session Panel UI #95

  • Adjusted session panel UI layout to lessen text truncation and focus pie chart.

Documentation

User Guide & Developer Guide #5 #46 #68 #148 #156 #160

  • Regularly updated User and Developer Guides to add/modify documentation of new functionality.
  • Improved consistency by removing erroneous or incorrect descriptions of functions.
  • Updated pictures within User Guide to reflect UI changes and ensure user understanding.
  • Standardised command error messages to prevent user confusion.
  • Added additional user test cases to Developer Guide for future project additions.

Community

  • PRs reviewed (with non-trivial review comments): #1, #2