Tan Jia Rong's Project Portfolio Page
Project: Plannit
Plannit is an all-in-one application that streamlines the execution of module deliverables by empowering NUS students with the ability to manage tasks, links and module-mates (i.e., students in the same module) to increase their productivity.
Given below are my contributions to the project.
Navigation (#64)
New Features: Added goto
and home
commands
- What it does:
Allow users to navigate to specific modules and home page to have an overview of details stored in Plannit. - Justification:
Our application aims to streamline the execution of module deliverables, thegoto
command is implemented to allow users to view precise information relevant to a particular module such as the tasks, links and person which are tied to that module, which is critical for our value proposition. - Highlights
The navigation function introduces a new concept of home page and module page which is previously not found in AB3. Hence, deliberate considerations have to be put into designing the behaviour to maximise user experience.
Additionally, The implementation of the navigation system involves constant updating ofUniqueModuleList
,UniquePersonList
andisHome
status. Hence, it is not trivial as stringent checks are required to ensure the proper integration betweenLogic
,Model
andUi
to ensure what is executed matches what is seen by the user and thatisHome
status is set to the correct state as an incorrect state would jeopardize a user’s experience.
Search (#81)
Enhancements to existing features: find
and list
commands
To ensure that the search functionality complements the navigation functionality, much thought
has been put into its design.
- Implemented the follow search commands:
find-module
,find-person
,list-module
andlist-person
. - Modified existing AB3’s predicate to allow users to search by module and person name prefixes to better suit our project needs.
- Added constraints that users can only use the search commands at the home page for better user experience.
Code contributed: RepoSense link
Documentation:
- User Guide:
- Developer Guide (#87):
- Added implementation details for
home
,goto
,find-module
andlist-module
command.
- Added implementation details for
Contribution to team-based-tasks:
- Facilitated team discussions and weekly meetings by setting up a Discord channel.
- Created first draft of
README.md
to match Plannit (#32) - Implemented initial model framework for Link, Task and Module (#59)
Review contributions:
- List of PRs reviewed can be found here.
- PRs reviewed (with non-trivial review messages): #83, #89, #114, #160, #164, #167.
Contributions beyond project team: