Project: ForgetfulNUS

ForgetfulNUS is a flashcard application designed to assist students in learning the German Language, specifically those undertaking the NUS modules LAG1201 and LAG2201, as a memory aid for vocabulary.

Given below are my contributions to the project.

  • New Feature: Predefined tags.
    • What it does: Allows the user to add in predefined tags, difficulty and gender tags, for each flashcard.
    • Justification: This allows the users to categorize words specifically according to the German language. The gender tags are also a significant part of the flashcard app as the German language may differ significantly from English in this aspect. This aids the users in understanding and learning the German vocabulary.
    • Highlights: This allowed a new form of sorting and grouping when integrated with my teammate’s sorting feature.
  • Code contributed: RepoSense link

  • Project management:
    • Managed releases v1.2, v1.2.1, v1.3, v1.4 (4 releases) on GitHub
    • Took charge of the demo for v1.2 and v1.3 (v1.2, v1.3).
  • Enhancements to existing features:
    • Refactor code to enhance readability from existing code, AddressBook - Level 3 (Pull requests #78).
    • Refactor Add command to match ForgetfulNUS (Pull requests #78, #80).
    • Enhance Add command and Edit command to only take in one value for relevant prefixes (Pull requests #233).
    • Enhance difficulty tags and gender tags such they extend from a Predefined tag class for a more OOP solution (Pull requests #131).
  • Documentation:
    • User Guide:
      • Ensured that User Guide was cohesive throughout the project.
      • Add documentation for the features add, edit, and find (Pull requests #135, #229).
      • Update existing documentation of Command summary (Pull requests #137).
    • Developer Guide:
      • Ensure that the developer Guide was cohesive throughout the project.
      • Add implementation details of the PredefinedTags feature (Pull requests #128).
      • Update sequence diagram within the Logic component for the Add command (Pull requests #124).
      • Update class diagram within the Model component to reflect the additional predefined tags. (Pull requests #239).
      • Add use cases for ForgetfulNUS (Pull requests #71).
    • README:
      • Update README terminology to match our product (Pull requests #83).
  • Community:
    • Reported bugs and suggestions for other teams in the class (examples with higher severity: 1, 2, 3, 4)
  • Credits:
    • This project is based on the AddressBook-Level3 project created by the SE-EDU initiative.