Raja Sudalaimuthu Mukund's Project Portfolio Page
Introduction
This page serves to document my contributions to the project ezFoodie under NUS module CS2103T in AY21/22 semester 1.
Project: ezFoodie
ezFoodie is a desktop application that helps restaurants keep track of their ever-growing list of members. Restaurant managers and staffs can easily view and update member status (e.g. personal information, tier, reservation, transaction, etc.) to manage and analyze members. Restaurant managers and staffs interact with ezFoodie using a Command Line Interface (CLI), and has a Graphical User Interface (GUI) created with JavaFX.
It is written in Java, and has about 35 kLoC, of which I contributed about 1 kLoC.
Given below are my contributions to the project.
-
Code contributed: RepoSense link
- New Model: Created the
Reservation
model to support adding reservation details for each member. #94- What it does: stores the details of each reservation under each
member
. - Justification: This model is essential as it is one of the core features of ezFoodie.
- Highlights: This enhancement requires understanding on how
hash
works. The implementation was challenging as theAccount
information need to be hashed when it is storing in the file for the purpose of high security.
- What it does: stores the details of each reservation under each
- New Feature: Added the ability to
add
Reservation
to a member. #94- What it does: adds a new reservation to the reservation list of a
member
. - Justification: This feature is essential as it is one of the core features of ezFoodie.
- Highlights: This enhancement requires understanding on how polymorphism works and implement it so that the application will use Object-oriented programming (OOP) sufficiently. The implementation was challenging as the
AddCommand
need to be abstracted, and inheritAddCommand
byAddCommandPrefixParser
, and further inheritAddCommandPrefixParser
byAddReservationCommand
. Similarly, theAddCommandParser
also need to be abstracted, and inherit it withAddReservationCommandParser
.
- What it does: adds a new reservation to the reservation list of a
- Enhancements to existing features:
- Updated the help window UI to suit the needs of ezFoodie #56
- Project management:
- Maintained the milestones
- Documentation:
- Community: