Tan Choon Kai Glenn - Project Portfolio Page
Overview
CCA Manager is a simple and easy to use command-line based application aimed to assist you, a CCA manager, to easily add, delete or alter information about your CCA members. Moreover, CCA Manager also allows you to perform its functions on any training-related activities you may have in order to help you organise your CCA’s timetable.
Summary of Contributions
Features Implemented
- Set up
training
package- Implemented
TrainingSchedule
classTrainingSchedule
is a class that storesTrainingName
,TrainingVenue
andTrainingTime
, used to identify a specific trainingTrainingSchedules
have uniqueTrainingName
, multipleTrainingSchedule
entries cannot have the same name- Implemented getters and setters for
TrainingName
,TrainingVenue
andTrainingTime
- Implemented constructor for
TrainingSchedule
- Formatted
toString()
to be more readable - Continued updating class throughout implementation to keep it up-to-date
- Implemented
TrainingList
class- Contains an ArrayList of
TrainingSchedules
- Stores all recorded
TrainingSchedules
input by user - Implemented method to get a specific
TrainingSchedule
from ArrayList - Implemented method to delete a specific
TrainingSchedule
from ArrayList via index - Implemented method to find for
TrainingSchedule
using a Stringname
keyword - Implemented method to update index of
TrainingList
. Called whenever aTrainingSchedule
is deleted
- Contains an ArrayList of
- Implemented
AddTraining
command; allows users to add aTrainingSchedule
toTrainingList
- Checks if entry to be added has a
TrainingName
that already exists. If it does, the command will not succeed - Checks that all fields are filled
- Checks if entry to be added has a
- Implemented
EditTraining
command; allows users to edit an existingTrainingSchedule
- If user is editing
TrainingName
, check if the name to edit to already exists. If it does, the command will not succeed
- If user is editing
- Implemented
DeleteTraining
command; allows users to delete an existingTrainingSchedule
- Implemented
FindTraining
command; allows users to filter and displayTrainingSchedules
based onTrainingName
- Handled exceptions for the above commands
- Set up file read/write operations, training schedule details are stored in
CCATrainings.csv
- Implemented
- Set up test cases for
Training
related inTrainingListTest
UG Contributions
- Due to last minute changes to User Guide, most of my team member’s code might be attributed to me in the above link. This leads to inaccuracy, and you should view my team members’ Project Portfolio Pages to get a better overview of everyones’ contribution to the User Guide and Developer Guide
- Set up Table of Contents for User Guide
- Set up
Training
section of User Guide - Set up
Pre-requisites
section of User Guide - Set up
FAQ
section of User Guide - Set up
Command Summary
section of User Guide- This section was then meticulously updated by other team members whenever changes were made
DG Contributions
- Set up Table of Contents for DeveloperGuide.md
- Set up skeletal framework for DeveloperGuide.md
- Set up
Architecture
section of DeveloperGuide.md- Designed architecture diagrams and architecture sequence diagrams for DeveloperGuide.md
- Set up
Training Component
section of DeveloperGuide.md - Set up
Non-Functional Requirements
section - Set up
Manual Testing
section