Project: gitGud

gitGud is a desktop application for storing and managing your friends’ gaming information and schedules. It is dedicated to gamers like you and provides a gamer-themed experience with a focus on increasing your efficiency through its typing-based interface.

Given below are my contributions to the project.

  • Code contributed: RepoSense link

  • Features:
    1. Added the ability to add friends in PR#48.
      • What it does: allows the user to add a friend to gitGud by adding the friend’s unique FRIEND_ID and optionally, FRIEND_NAME. Refactor - Enhancement
      • Justification: This feature improves the product significantly, as it is a core feature, which allows the user to add the friend to gitGud to start planning their gaming schedule with that friend.
    2. Added the ability to delete friends and games.
      • What it does: allows the user to delete a friend from gitGud using the friend’s unique FRIEND_ID. Refactor - Enhancement
      • Justification: This feature improves the product significantly because a user can now delete a friend and games from gitGud in the event that they made a mistake in the details or simply wishes to remove a friend or game.
    3. Restructured and styled the UI for v1.2, v1.3 and v1.4 to be in its current state with 2 lists, the friend list and the game list, as well as a main card in the middle to display the requested information by the user in PR#145.
      • What it does: allows the user to see details about a friend or a game when the user runs the friend --get or game --get command.New Feature
      • Justification: This feature improves the product significantly, as one of the purposes of gitGud is to be able to store and view your friends’ data easily, such as their in-game usernames as well as their skill levels, as well as the friend’s availabilities, to make it easy for the user to choose who to play what game at what time.
  • Testing
    1. Adapted the previous tests for our implementation of AddFriendCommand and DeleteFriendCommand in PR#48.
    2. Added unit/integration tests for DeleteGameCommand and DeleteGameCommandParser in PR#68
    3. Added unit/integration tests for LinkFriendCommand and UnlinkFriendCommand, and linking methods in other classes in PR#184.
    4. Conducted extensive manual testing for UI.
  • Documentation:
    • User Guide:
      • Added documentation and examples (eg. feature description) for the friend --add, friend --delete, game --add game --delete and friend --link features in PR#38.
      • Updated screenshots for the User Guide for gitGud v1.3b in PR#124.
      • Updated screenshots for the User Guide for gitGud v1.4 in PR#234.
    • Developer Guide:
      • Added user stories for gitGud in PR#38 and PR#255
      • Added use cases for features in PR#38
      • Added extensive implementation details for delete features including sequence diagrams in PR#184.
      • Added instructions for manual testing in Appendix in PR#76
      • Added value proposition in PR#38.
      • Fixed bugs after extensive review and standardise format in DG in PR#255
    • README:
      • Added acknowledgements section and acknowledgements for project.
      • Updated UI screenshot for gitGud v1.4.

Review/mentoring contributions (with non-trivial comments):

  1. Discovery of hidden bug in the friend --add functionality
  2. Extensive review of DG Use Cases PR

Contributions beyond project team: