Skip to content

Latest commit

 

History

History
104 lines (71 loc) · 4.96 KB

woodnsuns.adoc

File metadata and controls

104 lines (71 loc) · 4.96 KB

LIN XU - Project Portfolio

PROJECT: Student Schedule Planner


Overview

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.

Summary of contributions

  • 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:

      • Morphed AddressBook application to Schedule Planner: #39, #25, #15, #12

    • 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:

      • Documentation: Reformatted and edited existing User Guide: #56, #69, #73

    • Community:

      • Reported bugs and suggestions for other teams in the class: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12

    • Tools:

      • Integrated Codacy to the team repo

Contributions to the User Guide

Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users.

Contributions to the Developer Guide

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.