Project: SeniorLove

SeniorLove is a contact management desktop app which aims to facilitate community workers’ visits to the elderly. It is optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, Senior Love can get your contact management tasks done faster than traditional GUI apps.

Given below are my contributions to the project.

  • New Feature: Added the ability to add and edit visits for elderly.
    • What it does: Allows the user to add a visit to an elderly with the elderly’s index. Using this command with an elderly that already has a next visit will overwrite the current visit.
    • Justification: This feature is crucial to SeniorLove as it is the main way through which the user can add visits to an elderly. Visits are what we want to manage in SeniorLove, hence it is important to have such a feature.
    • Highlights: This feature is central to many of the other features present in SeniorLove. It affects existing commands and commands to be added in the future. It required an in-depth analysis of design alternatives. The implementation was challenging because it entailed many changes to existing functionality.
  • New Feature: Added the ability to download existing elderly data into a CSV file.
    • What it does: Allows the user to download existing elderly data from data\addressbook.json into a CSV file on their local machines.
    • Justification: Existing elderly data can be difficult to look through quickly because the information is displayed in GUI to be presentable and is not as compact. The ability to download existing elderly data into a CSV file makes it more convenient to access this data without having to launch SeniorLove again.
    • Highlights: The implementation was challenging because I had never dealt with JSON to CSV conversions before, and took some time to understand the documentation and write the code.
  • Code contributed: RepoSense link

  • Project management:
    • Managed releases v1.2 - v1.4 (4 releases) on GitHub
  • Enhancements to existing features:
    • Update help command to reflect SeniorLove documentation (Pull request #56)
    • Enhance add command with functionality to add a new visit with the elderly (Pull request #65)
    • Enhance find command to search through all elderly attributes (Pull requests #76, #83)
    • Enhance edit command to allow editing and removal of LAST VISIT (Pull request #117)
  • Documentation:
    • User Guide:
      • Added documentation for the features edit, find, visit, download and help (Pull requests #74, #83, #117, #119)
      • Added glossary and resolved bugs in User Guide: (Pull requests #172, #180)
    • Developer Guide:
      • Added implementation details of the visit, find and download features (Pull requests #98, #106, #196)
      • Added instructions for manual testing (Pull request #206)
      • Added use case for edit command (Pull request #210)
  • Community:
    • PRs reviewed (with non-trivial review comments): #54, #72, #88, #96, #120, #186
    • Reported bugs and suggestions for other teams in the class (examples: 1, 2, 3)