Shawn Kok's Project Portfolio Page
Project: Coydir
Coydir is a desktop application used by Human Resource Executives to streamline processes in managing their staffing. The user interacts with it using a CLI, and it has a GUI created with JavaFX. Given below are my contributions to the project.
Summary of Contributions
Code Contributed
Enhancements Implemented
- New Features
- Implemented
Rating
class- Created the
Rating
class, one of the key components we are tracking with Coydir. - Use Case: Building blocks to track Employee Performance over time.
- Justification: Tracking performance (talent development) is one important component of HRM.
- Created the
- Implemented
rate
feature- Created a
RateCommand
class to handle the logic (Refer to code here) andRateCommandParser
class to handle the parsing of the user input (Refer to code here). - Use Case: User can add ratings for employees.
- Justification: Rate the employee performance (1-5 integer rating scale).
- Highlights: Multiple considerations such as ensuring that ratings are always sorted by the local date format (user modifies the JSON database).
- Created a
- Implemented
Performance history graph
feature- Created a
performanceHistory
Arraylist within thePerson
class to store all the past ratings of a particular employee (Refer to code here) - Created a
Performance history graph
line chart within thePersoninfo
class to chart the performance rating values of employees against time (Refer to code here) - Use Case: User can view the performance history of employees.
- Justification: Observe the overall trend of employee performance and make talent development decisions.
- Highlights: Display individual rating values beside each node, prevent multiple ratings per day, sort ratings by date.
- Created a
- Implemented
- Existing Features
- Made improvements to the
Add
class - variable arguments for non-compulsory fields. - Fixed multiple bugs (Refer to #84, #200, #227, #242).
- Made improvements to the
Contributions to the UG
- Added documentation for following parts:
- Product Overview and Description
add
commandrate
command- Employee Performance History section
- Overall aesthetics of UG
Contributions to the DG
- Added implementation details for:
add
functionrate
function- Wrote Use Cases
Contributions to the team-based tasks
- Helped to create and distribute issues.
- Contributed to manual testing of application to find bugs.
- Influenced the overall aesthetic of the project through mockups and design direction
- Was in-charge of testing and Integration