Project: MyCRM

MyCRM is a desktop application for managing client contacts, repair job statuses, and product information that has been optimised for use via a Command Line Interface (CLI) while maintaining the benefits of a Graphical User Interface (GUI). If you type quickly, MyCRM can complete customer relationship management tasks faster than traditional GUI applications.

Given below are my contributions to the project.

  • New Features: Added a history command that allows the user to navigate to previous commands using up/down keys and list out all previous commands using history command.

  • New Features: Added a printReport command to generate a report of all jobs within current month.
    • What it does: Allows user to review all the jobs in current month by showing the jobs completed within current month , the jobs received within current month, the three most popular products received within current month, and a bar graph showing the last four months revenue in this year and last year in a new window.
    • Justification: This feature improves MyCRM significantly because a user can review monthly job records and statistics so that user can learn about the month’s performance and analyse how to improve.
  • New Features: Added a exportReport command to export a report of all jobs within current month.
    • What it does: Allows user to export the monthly job report generated by printReport command as a PDF format.
    • Justification: This feature improves MyCRM significantly because a user can either save the job report locally or print it out.

  • Documentation:
    • User Guide:
      • Added documentation for the feature history
    • Development Guide:
      • Added use cases of feature history, printReport, and exportReport
      • Added implementation details for printReport

  • Code contributed: RepoSense link

  • Enhancements to existing features:
    • Aligned the Ui theme of report window with main window (Pull requests #176).
  • Community:
    • Reported bugs and suggestions for other teams. e.g. 79, 80