Project: CCACommander Ultra Promax Xtra 9000PLUS

Overview

CCACommander Ultra Promax Xtra 9000PLUS is a one-stop application for CCA Heads to manage CCA members and events, optimised for CCA Heads who prefer to use command line interface. My team and I adapted the product from an existing Java application called Address Book (Level 3) over a span of 1.5 months.

Given below is a summary of my contributions to the project. All of my code contributions can be found in this RepoSense link.

Features Implemented:

  • Command History #175
    • Feature details: Allows users to quickly navigate through commands previously entered through arrow keys.
    • Justification: Gives the user the ability to edit their previous command quickly without retyping the whole command in cases where a attriubte is inputted wrongly or where there is a need to repeat the same command for multiple members / events.
    • Credits: Implementation is inspired by Tutor’s Pet
  • Create Event, Location, EventDate, UniqueEventList classes #99:
    • Feature details: The fundamental class to encapsulate the event class.
    • Justification: Establishes the core structure to track events and it’s attributes: location and eventDate, supporting all event-related commands like createEvent, deleteEvent and more.

Relevant tests were added for above features.


Enhancements to existing features:

  • Capitalise Name in createMember #121
    • Feature details: Capitalises name input in any case automatically .
    • Justification: Users will no longer make a mistake of creating the same member with names of different capitalisation e.g. John Doe and john doe.
  • Delete Event/Member deletes relevant enrolment #191
    • Feature details: deleteEvent and deleteMember will also delete associated Enrolment objects.
    • Justification: Enrolments were still stored meaning when a new event/member of the same name is created, they will have the previous enrolments associated.

Project management:

  • Edit GitHub Actions workflow to remove duplicate smoke test on pull requests.
  • Add GitHub pull request template to speed up pull request documentation.
  • Released Releases v1.2 and v1.3 trial

Documentation:

  • User Guide
    • Added command details for: createEvent, deleteEvent, editEvent.
    • Added feature details for Command History.
    • Added FAQ
  • Developer Guide
    • Added Acknowledgements
    • Added implementation details for command history feature (including diagrams).
    • Added user stories.
    • Added 2 use cases:
      • UC06: Create an event
      • UC07: Delete an event
    • Added Appendix C: Effort

Community:

  • This is the full list of 65+ pull requests which I have reviewed.
  • A non-exhaustive list of pull requests I reviewed with non-trivial review comments: #181, #179, #178, #144
  • Bugs Found: #282, #190, #151