Tan Le Jun - 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. With tools like the storing of modules, listing of modules that can be taken, an academic progression indicator and a CAP calculator, iGraduate will help students check his/her graduation progress, view modules taken based on programme requirements and make informed decisions about future modules.

Summary of Contributions

Enhancements implemented:

Implemented AddCommand class of iGraduate with Ke Wen

The AddCommand class is responsible for executing the add command, and takes in additional parameters, module name, module code, module type, number of MCs and/or prerequisites. The AddCommand class helps the users to add their modules into the module list.

Considerations

The add command is important to iGraduate because we want to give the users freedom to plan what modules to take, instead of giving them a study plan in-built by our team. Therefore, we decided to allow users to add modules on their own as long as the module details are entered correctly and that they have cleared all prerequisites.

Implemented CapCommand class of iGraduate

The CapCommand class is responsible for executing the cap command, which helps to display the user’s current CAP and degree classification.

Considerations

The cap Command is important to iGraduate because our app’s focus is to help user’s easily access their academic records and all details regarding it. Hence, we decided to show both the CAP score and degree classification with the cap command.

Contributions to documentation

User Guide

For the user guide, I made some minor edits to improve grammar, correct spelling and improve the phrasing of the guide to be more audience-centric and beginner-friendly.

Contributions to DG

For the Design and Implementation sections of the DG, I contributed to the command component as well as some diagrams in the DG, namely the AddCommand class diagram and the delete command sequence diagram. I used PlantUML to create the diagrams. For the Product Scope section of the DG, I contributed by writing the target user profile and value proposition component of the section. I also wrote the Non-Functional Requirements section of the and the Instructions for manual testing section of the DG, by giving positive and negative test cases for the commands in iGraduate, as well as the expected output in the application.

Contributions to team-based tasks

I helped to write non-feature specific portions of the UG and DG such as the Product Scope and Instructions for manual testing sections of the DG. I also helped to create some user stories and assign issues to my group mates as well as myself. Lastly helped to fix some bugs and gave inputs to the discussions in the team.

Reviews and PRs

I helped the team with repository maintenance, mostly about git (Pull Requests, Branches, Merge Conflicts etc). Here is a list of pull requests I helped to review and merge:

#51, #54, #72, #75, #79, #80, #96, #102, #108, #109, #116, #117, #119, #127, #133, #157, #160, #164.

Contributions beyond the project team