Project Portfolio Page for Julio

Project: ModuleMateFinder

ModuleMateFinder (MMF) is a desktop application for managing contacts and finding ModuleMates. You can easily keep track of what modules your friends are/will be taking, so you can contact them to form groups. If you can type fast, you can get your contact management tasks done fast, but even if you are not a slow typist – fret not, you can still use it!

Given below are my contributions to the project.

  • New Feature: Added the ability to undo/redo previous commands.
    • What it does: Allows the user to undo all previous commands one at a time. Preceding undo commands can be reversed by using the redo command.
    • Justification: This feature enhances the application significantly because a user might make mistakes in what command he or she keys in. It should not be needed by the user to do different commands to rectify each mistake. Hence, this feature provides a convenient way to rectify those errors.
    • Consideration: This feature required numerous design and usability considerations due to how familiar most users are with this feature. In addition, the implementation as well required an in-depth analysis of design alternatives to determine the most optimal solution for this project.
    • Credits: zhixianggg - I reused and adapted some of his code to implement the UndoRedoStack.
  • Code contributed: RepoSense link

  • Enhancements to existing features:
    • Fixed Bugs relating to undo and redo feature (Pull requests #197)
  • Documentation:
    • User Guide:
      • Added documentation for the features undo and redo #106
    • Developer Guide:
      • Added implementation details of the undo and redo feature (PR #218).
  • Community:
    • PRs reviewed (with non-trivial review comments): #205, #216
    • Reported bugs and suggestions for other teams in the class (examples: #111, #195, #112)
  • Tools:
    • Integrated a third party library (Natty) to the project (#42)
    • Integrated a new Github plugin (CircleCI) to the team repo