Project: MATHUTORING

MATHUTORING is a centralised desktop application targeted to private Math tuition teachers, helps them manage student contact details and performance by keeping student contact details, tasks, and scores.

Given below are my contributions to the project.

  • New Feature:
    1. Add a score to a student #75
      • What it does: With this new feature, user can add a score to a student.
      • Justification: This feature is important as users can keep track of the student’s performance by adding their exam scores.
      • Highlights: User can add new scores at any time. After adding a new score, it will be automatically saved in the student’s unique score list. When scores are checked by ‘check’ command, they will be automatically displayed with sorted order that nearest score shown at front.
    2. Delete a score to a student #75
      • What it does: With this new feature, user can delete a score from a student.
      • Justification: This feature is important as a use may add a wrong score and want to delete or edit it.
      • Highlights: User can delete an existing scores at any time. After deleting an existing score, it will be automatically updated in the student’s unique score list.
    3. Score list chart and table statistic summary of recent five scores #101 #106
      • What it does: With ths new feature, user can view student’s performance easily.
      • Justification: The chart and the table statistic summary can easily show the student’s recent performance, hence the user can plan their future sessions easily to suit the student’s needs.
      • Highlights: There are three colours to represent the different level of exam scores, e.g. red colour in percentage table column represents the decreasing grades.
  • Code contributed: RepoSense link

  • Project management:
  • Individual
    • Completed weekly requirements on time
    • Created several GitHub branches for different increments
  • Group
    • Met the milestone deadlines
    • Used GitHub for progress tracking
  • Enhancements to existing features:
    • Refactor the whole AB3 to suit our project #119
    • Fixed some bugs on existing AB3 codes #119
    • Wrote some tests to increase the coverage #186
    • Bug fixing received from PE-D
  • Documentation:
    • User Guide:
      • Updated user guide with ‘Managing score list of student’ part
      • Updated ‘Command summary’ part
    • Developer Guide:
      • Updated the target user profile, value proposition and user stories
      • Updated the table of contents
      • Updated most UML diagrams with puml files except task model diagram
      • Added UniqueScoreList model in the Design Model section
      • Added use cases that are related to score such as ‘Add a score’ and ‘Delete a score’
      • Added ‘Instructions for manual testing’ that are related to score such as ‘Adding a score for a student’ and ‘Deleting a score for a student’
      • Added ‘Challenges faced’ inside ‘Effort’ section
      • Contributed in Planned Enhancements, such as ‘Edit the tags will overwrite the whole list of tags’
    • Update Other Documentations: AboutUs.md, README.md and documentations are inside tutorial folder
  • Contributions to team-based tasks:
    • Added several GitHub issues and helped manage the issues through adding labels and milestones
    • Contributed to conceptualize the Score List Chart panel design
  • Community:
    • Reviewed PRs of peers (with non-trivial review comments) and helped to merge to the master
    • Contributed to forum discussions (examples: #320 #296 #291)
    • Contributed to help with smoke testing (examples:#236)
    • Reported bugs and suggestions for other teams in the class (examples: PE-D)
  • Tools:
    • Java 11, JavaFX, CSS