Project: Class-ify

Class-ify is a class management application built specially for Singapore Ministry of Education (MOE) teachers to monitor their student’s academic progress easily. Teachers can generate exam statistics for each class, and Class-ify quickly flags out students who require more support for contacting.

It is written in Java and the GUI is build using JavaFX.

Summary of Contributions:

Code contributed:

Enhancements implemented:

  • Class
    • Created a new Class class that represents the class of each student
    • Integrated as another attribute of Student
  • AddStudentCommand
    • Replaced Address Field with Email Field
    • Ensure all fields stored in Class-ify are capitalised and filtering is case-insensitive
    • Changed some compulsory fields of a Student to optional such as the respective parent details
    • Fixed bug where empty flags were allowed when entering the AddStudent Command
  • ViewClassCommand
    • Implemented ViewClassCommand that displays the list of students in a class
    • Created ClassPredicate to handle the class filtering logic
    • Add relevant unit test cases and integration test cases
    • See PR #106 and #172

Contributions to UG:

  • Designed Class-ify Logo
  • Notes on Command Format
    • Added explanation regarding the command format when using Class-ify
  • ViewClassCommand
    • Added implementation details of ViewClassCommand
  • Glossary
    • Added definitions of key terms used in User Guide

Contributions to DG:

  • ViewClassCommand
    • Added implementation details of ViewClassCommand
    • Created Sequence Diagram for ViewClassCommand
  • Product Scope
    • Updated Product Scope to accurately reflect our team’s target audience
  • Non-Functional Requirements
    • Added non-functional requirements to accurately represent our product
    • See PR #195
  • Glossary
    • Added key terms that users of the Developer Guide may be unaware of

Contributions to team-based tasks:

  • Set up Github Issues tracker with relevant labels
  • Created Release for v1.3.1 and v1.3.trial
  • Created weekly agenda and tasks to be completed for team meeting

Review/ Mentoring Contributions:

  • Total Pull Requests reviewed: 37
  • Examples of contribution to reviews:
    • #149: Provided suggestions to viewStats Command implemntation
    • #136: Provided suggestion to better standardise and phrase display message to users
    • #93: Provided suggestion on how to improve code quality
    • #47: Identified a standardisation error in the Command Summary Table

Contributions beyond the project team:

  • #100: Provided assistance to classmate in forum