Oscar Lai - Project Portfolio Page

Overview

iGraduate is a command line application that acts as a centralised hub for NUS students majoring in Information Security to plan their academic journey.

Summary of Contributions

Enhancements implemented:

Implemented methods in Ui class of iGraduate

Considerations:

The initial concern was to think of all the possible features that may require interaction with the user. Fuxi and Ke Wen helped to implement skeleton methods to help me implement the specific methods based on the different command classes I implemented.

Implemented DeleteCommand class of iGraduate

The DeleteCommand class is responsible for executing the delete command, and takes in an additional parameter of the module code. The module is then deleted from the Module List.

Implemented ProgressCommand class of iGraduate

Considerations:

The Progress Command is important to iGraduate because in essence, our app’s main focus is to help users know their progress towards graduation. Hence, the progress command was important so that we can display visually the graduation progress through a progress bar and ratio of MCs completed out of 160.

Implemented ListCommand class of iGraduate with Ke Wen

The ListCommand class is responsible for executing the list command, and allows an additional input parameter for users to choose which list they want to view. all, complete, incomplete , available . The list shows module details including the module type, code, completetion status, name, grade and credits.

Considerations:

List command was very challenging to implement because it required us to isolate the specific detail that the user wants and list them out.

Contributions to documentation

User Guide

For the user guide, I made some minor edits to improve grammar, spelling and improve the phrasing of the guide to audience-centric to our target audience.

Contributions to DG

For the developer guide, my main contributions are the sequence and class diagrams in which I used PlantUML to create the diagrams. e.g. CapCommandSequenceDiagram , UiClassDiagram and ProgressSequenceDiagram. In addition, I wrote about Ui and Exception under Design

Contributions to team-based tasks

Reviews and PRs

I helped the team with repository maintenance. Here is a list of pull requests I helped to review and merge:

#52, #56 , #59 , #60 , #71 , #83 , #110 , #111 , #113 , #120 , #143 , #149 , #155 , #162 , #165 , #170

Contributions beyond the project team