Kelvin Neo - Project Portfolio Page
Overview
TermiNUS is a CLI (command line interface) program for NUS students who wish to consolidate their NUS academic needs such as schedules, questions and notes for the modules that they are taking. With TermiNUS, it aims to aid students and improve their learning experiences while studying in NUS.
Summary of Contributions
- New Feature: Added
questionwhich is the ability to add, delete, list and test the user with questions.- What it does: It provides the user a way of storing and managing their questions, as well as running an Active Recall session to test themselves on their own knowledge.
- Justifications:
questionwas built to allow users to test themselves using the techniques of Active Recall, which aims to improve their knowledge and memory of the subject. - Highlights: The
testfeature includes a timer that indicates how long the user took to answer each question. The Active Recall portion will also tweak the frequency of the questions appearing based on the feedback the user gives. For example, if the user deems the question as hard, the question would appear more often, and if the user deems the question easy, the question would appear less often.
- New Feature: Added
TerminusLogger- What it does:
TerminusLoggerwraps aroundjava.util.logging.Loggerand provides helper methods that calls the internalLoggermethods. - Justifications: To provide a unified and simpler logging experience for the entire application,
TerminusLoggerwas created to prevent duplicate Logger initialization code. It also disables logging to terminal, and logs only to a file by default. - Highlights: It provides a wrapper function that can print the stack trace into the logger for
WARNINGandSEVEREcases.
- What it does:
- New Feature: Added
helpandexitcommand.- What it does:
helpandexitcommands are basic commands to enable the user to view the commands in the current workspace and exit the program respectively. - Justifications:
helpmust print the commands that exist within the specific workspace to prevent the user from being confused and running the commands in the wrong places. Theexitcommand is placed at every workspace to allow the user to quit any time, regardless of which workspace they are in.
- What it does:
- New Feature: Added
TerminusandUi- What it does:
Terminusis the main class that runs the main loop of the entire application.Uiclass handles all input and output from the user.
- What it does:
-
Code Contributed: RepoSense Link
- Documentation:
- README.md:
- User Guide:
- Developer Guide:
- Team-based Tasks:
- Beyond Project Team Tasks:
- Reported bugs for another team in PE-D: PE-D Issues
- Reviewed other teams’ User Guide and Developer Guide.
- Tools: