GradTrak is an application that was morphed from the codebase of Address Book - Level 4. It was conceptualised and designed in mind to assist students of NUS to track their graduation progress and plan modules they want to take in the future.
I was involved in designing the functionality for users to track their course requirement. In the sections that follow, I will showcase my contributions to the project and also some of the section that I have written in the User and Developer’s Guides.
-
Major feature: added the functionality for users to track their graduation requirements
-
What it does: This feature allows the user to check against a list of modules they have taken or plan to take and informs them whether they have fulfilled the requirements. The feature also allows the users to know approximately, the extent of completion of these graduation requirements.
-
Why this feature: This feature is one of the core functionalities of GradTrak. This greatly enhances quality of life of students in NUS as it would allow them to find out their graduation requirements as well as how far are they away from fulfilling them.
-
Highlights: It is difficult to implement this feature because course requirements can vary greatly. As a course requirement can be composed of simpler course requirements, another technical difficulty that I faced was designing an interface that treats simple and more complex course requirements uniformly. To tackle this hurdle, I had to do some research on design patterns to understand how to come up with such design to suit the need of my project.
-
-
Minor enhancement:
-
created user editable files for users to store different courses and course requirements
-
added some sample courses into the application namely: Computer Science Algorithms, Artificial Intelligence and Software Engineering.
-
created utility for to load json file formats after exporting jar file. #94
-
-
Code contributed: [Project Code Dashboard]
-
Other contributions:
-
Project Management
-
Set up milestones, issue tracker (examples)
-
Added user stories (examples)
-
Reviewed and assigned issues to teammates in previous round of product testing (examples)
-
Managing release, v1.4 which should be up in a couple of days
-
-
Refactored Code and changed documentation from AddressBook - Level 4 code base
-
Renamed significant amount of variables, classes in Address Book - Level 4 code base #66
-
Changed some visuals for the User Guide, Developer Guide #90
-
Changed some of the prose of the User Guide, Developer Guide (see above Pull Request)
-
Modified irrelevant sections of User Guide, Developer Guide (see above Pull Request)
-
-
In this section, I will highlight some of my contributions to the user guide namely,
the displayreq
and study
commands in GradTrak
.
In this section, I will highlight some of my contributions to the developer guide.
This is an experimental assignment from CS5330 - Randomised Algorithm. The aim was to investigate various effects of different Cuckoo Hash schemes. More information on assignment here and more on the codes of the implementation here