Li Haoyang - Project Portfolio Page

Overview

FastScheduler (FS) is a desktop app for restaurant managers to schedule employees for work, optimised for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast and prefer typing, FS can help you manage the schedules of employees and shifts faster than traditional GUI apps.

Summary of Contributions


Given below are details of my contributions to the project.

Contributions to coding


Implemented most features under the employee package as shown below:

Justification: This Employee Class is essential because our entire APP is about managing an employee’s schedules and shifts. Hence, each employee must be defined clearly through his/her own attributes. Also, the addSchedule, dropSchedule, isScheduleValid methods are needed to define the internal behaviours of the class, such as what is the format of a valid schedule.


Justification: EmployeeController aims to make our code more OOP by handling the logic between an user and his interaction with an employee


Implemented the Ui class and all its methods

Justification: Ui aims to make our code more OOP by taking the responsibility to hold important messages to be displayed to an user.


Built the overall structure of the AppController class, and contributed to its final implementation.

Below are the structures/ideas that I came up with for AppController:

Justification: This feature aims to make the code more OOP by serving as a platform that interacts with an user, identifies his commands and passes responsibility to other relevant parts of the program


Contributions to documentation

User Guide

Features I wrote in the final version:

Other joint contributions to our google doc (outdated version):


Contributions to DG


Contributions to team-based tasks