This document showcases my contributions in building desktop application Student Schedule Planner
for software engineering module CS2103T as a member of team T12-3 together with other 4 members.
Student Schedule Planner is a desktop task management application built specially for university students. Our application offers university students more convenience than other todo-list application through a series of features, such as multiple tagging for each tasks, customized task and tag management and so on. This application is built on top of original Address Book Level-4, which is around 6kLoC, written in JAVA OOP fashion. Currently our Student Schedule Planner has approximately 10kLoC.
-
Major enhancement: Major enhancement: Task management, which mainly involves two components: one is archive and another is category.
-
What it does: Archive command allows users to archive completed tasks. Archived tasks are stored in separate list, which can be viewed with command
listarchived
. The tags used on tasks can be managed by customizable categories by adding tags to relevant category. -
Justification: Archive is a necessary command for a task managing application, because users have the need to hide completed tasks, and review them in a separate list.
As for category, our application allows user to attach multiple tags to a task when adding the task. Category gives user further freedom and power to manage the tags according to their needs. Our user can create their own categories and add relevant tags into a category. -
Highlights: Both functions, especially category, required good planning of detailed implementation as well as deep understanding and prediction of user-experience. It required deep analysis of users' demand as well as sophisticated and sustainable design to decide how to let user organize the tags and what to use, and the implementation involved building a whole new set of structure and commands. This enhancement affects the future direction and feature design of schedule planner.
-
-
Code contributed: RepoSense
-
Other contributions:
-
Project management:
-
Enhancements to existing features:
-
Added sorting feature that allows tasks to always be displayed in the order of deadline date and priority.
-
Added automatic deletion feature that deletes archived tasks with deadline date earlier than 2 weeks before current date whenever application launches.
-
-
Documentation:
-
Community:
-
Tools:
-
Integrated Codacy to the team repo
-
-
Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users. |
Given below are sections I contributed to the Developer Guide. They showcase my ability to write technical documentation and the technical depth of my contributions to the project. |