Project: ConnectUS

ConnectUS is the ultimate contact management system for your everyday needs. If you’re an NUS School of Computing (SoC) student, this app is for you. With ConnectUS, you can easily connect with people without the anxiety of remembering who you met where holding you back from socialising.

We’re focused on:

  • Efficiency: Optimized for use via a Command Line Interface (CLI), you can easily view and edit your contacts at your fingertips with ConnectUS.
  • User-friendliness: With the benefits of having a Graphical User Interface (GUI), easily navigate through your contact information to find exactly what you need to connect with others.

Contribution

Given below are my contributions to the project.

Major Refactoring: Refactored AB3 into ConnectUS.

  • What it does: Removes all occurrences of AB3.
  • Justification: Essential in creating a product that serves as the foundation for future enhancements.
  • Highlights:
    • All commands and tests of AB3 were modified to create ConnectUS.
  • Related pull requests: #92

New Feature: Added the user interface for new tag types.

  • What it does: Creates tags in the UI in different colors based on the tag type (i.e. module, CCA, major, remark).
  • Justification: This feature allows the user to differentiate between different tag types more easily.
  • Related pull requests: #119

Enhancements to existing features:

  • Enhanced the help command to provide help for individual commands specified by the user, rather than a generic message.
    • Justification: A CLI-based optimization for users so they will not have visit a separate window to search for command usage formats.
    • Related pull requests: #112
  • Enhanced the information fields to be optional rather than compulsory.
    • Justification: Some users may not know all information about a contact. This enhancement makes the creation of a contact more customizable.
    • Pull requests:
  • Enhanced the user interface to look more beautiful and colorful.
    • Justification: Users will be more inclined to use an application with a nicer looking UI.
  • Added JUnit tests for new and existing features.

Project Management:

  • Overall team lead in charge of deciding on direction of product.
  • Set up the GitHub team organization and repository.
  • Created the following milestones: V1.1, V1.2, V1.2b, V1.3, V1.3b, V1.4
    • These milestones were essential in ensuring the group kept on track throughout our assigned tasks.

Documentation:

  • User Guide:
    • Added target audience, value proposition of ConnectUS in the User Guide.
    • Added documentation for all commands, inclusive of command usage formats, overview, examples, and images.
    • Added Quick Start Guide into User Guide.
    • Added FAQ into User Guide.
    • Added Command Summary Table into User Guide.
    • Added Prefix Summary Table into User Guide.
    • Added Glossary into User Guide.
    • Updated table of contents, sections and fixed bugs in User Guide.
    • Related pull requests: #137
  • Developer Guide:
    • Refactored AB3’s Developer Guide into ConnectUS Developer Guide.
    • Added implementation details of the add command, the edit command, and the help command into Developer Guide.
    • Added activity diagram for upcoming-b command.
    • Added Planned Enhancements into Developer Guide.
    • Added some User Stories into Developer Guide.
    • Added some Use Cases into Developer Guide.
    • Added Glossary into Developer Guide.
    • Added Non-Functional Requirements into Developer Guide.
    • Related pull requests: #214

Code contributed:

As of 8th April 2023, I have contributed ~5.5k LoC. For the most recent update, refer to this RepoSense link.

Community:

  • PRs reviewed: As of 8th April 2023, I have reviewed 30 PRs. For the most recent update, refer to this GitHub link.
  • Reported bugs and suggestions for other teams during PE dry run: 15 reports posted as issues.

Other PRs:

The link to the full list of my PRs can be found here.