Skip to content

Latest commit

 

History

History
110 lines (89 loc) · 6.27 KB

heartofal1on.adoc

File metadata and controls

110 lines (89 loc) · 6.27 KB

Daniel Ng Sze Yao - Project Portfolio

PROJECT: iScheduler Xs Max


Overview

iScheduler Xs Max is a desktop scheduler application morphed from the original Address Book sample application (Level 4). As its name suggests, it is used for scheduling events. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 175 kLoC (Java code comprises 21 kLoC of it).

Summary of contributions

  • Major enhancement: added the ability to have auto-completion of commands

    • What it does: allows the user to have the ability to invoke a particular commands by suggested auto-completion(s).

    • Justification: This feature improves the product significantly because some command names can be a little long and having auto-completion of the command name should provide a convenient way to invoke the command.

    • Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required the knowledge of a method named TextFields.bindAutoCompletion() from an external library called ControlsFX. See FindCommand#COMMAND_WORD.

    • Credits: Goh Cheng Yu (GitHub: @Chengyuuu) and Tan Ying Zi Rebecca (GitHub: @rebstan97) for contributing their ideas as well as teaching me how to one of the ways of how to use auto-completion in Java.

  • Minor enhancement: added command aliases that allows the user to use aliases to invoke commands.

  • Code contributed: My RepoSense Project Code Dashboard

  • Other contributions:

{you can add/remove categories in the list above}

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.