KimIdeas8 - Project Portfolio Page
PROJECT: NUSMaze
Overview
NUSMaze is a Command Line Interface (CLI) based application that aims to simplify NUS Computer Engineering students’ journey from one point to another within the NUS Engineering and Computing buildings. The application allows users to find the shortest route from one block to another, locate the nearest eateries, tag personal notes to the location, add their daily scheduled routes and more. This application was created with the aim of helping NUS Computing and Engineering students reach their lessons in time and to aid in making their journey in NUS quicker and more enjoyable.
Summary of Contributions
Code contribution
Enhancements implemented
- Feature 1: Implemented the ability to add, view and delete notes tagged to a location.
- What it does: allows the user to add notes one at a time to a location of choice, view an existing list of notes by locations, and delete notes at a location of choice one at a time
- Justification: It provides users with way of making quick notes within the campus, and saves users the trouble of adding notes in their own note-taking softwares, especially if the user is rushing for time. Since it helps to naturally organise a person’s notes by locations, the user can easily recall what the note was made for.
- Feature 2: Implemented the ability to save the history of recently searched routes and all notes tagged to locations.
- What it does: allows the user to auto-save all the past data in the app. This does not require any input from the user.
- Justification: The ability to save previous data of the user is useful for the features of the app which requires saving data from previous interactions.
- Highlights: It required an in-depth analysis of design alternatives to minimise the amount of redundancy on our code for the storage classes.
Documentation
- User Guide:
- Added documentation for Section 4.8 ‘Notes’ (under Section 4 ‘Features’)
- Edited documentation for ‘add, view, delete notes’ rows (under Section 6 ‘Command Summary’)
- Developer Guide:
- Added documentation for Section 2.7 ‘Storage Component’ (under Section 2 ‘Design’)
- UML Diagrams added: (1 diagram) Storage Component Diagram
- Added documentation for Section 3.6 ‘Save Feature’ (under Section 3 ‘Implementation’)
- UML Diagrams added: (4 diagrams) 3 close-up Sequence diagrams for Step 1 and 1 close-up Sequence diagram for Step 2
- Added documentation for Section 2.7 ‘Storage Component’ (under Section 2 ‘Design’)
Contribution to Team-based Tasks
- Managed releases
v2.0
(1 release) on GitHub - Enabled assertions for team’s code
Review / Mentoring Contributions
- Reviewed some pull requests for team: Links to PRs reviewed