Boon Hai's Project Portfolio Page
Project: HeRon
HeRon is a desktop application for HR managers to assist in managing HR administrative tasks such as tracking leaves and offs, calculating pay and updating payroll information.
HeRon is a project adapted from AddressBook - Level 3.
Given below are my contributions to the project.
-
Code contributed: RepoSense link
- New Feature: Implemented
importfeature. (#71, #82, #97, #186)- What it does: Parses through csv files and import the data into HeRon, and indicates the error locations if issues are present in the file (e.g. Wrong formatting, Invalid/Duplicate/Missing Data).
- Justification: To start out using HeRon, users have to individually add in employees. While HeRon is optimised for CLI users, it still takes a significant amount of time to input all the data. In most organizations not using HR applications, personnel information are commonly stored in Excel, which can be exported into a csv file. The produced csv file can be easily imported into HeRon, reducing the effort required to transition into HeRon.
- Highlights: The implementation was challenging as there was a need to learn and understand a new library. In addition, two of the main challenges during implementation were:
- To specify the exact places were an error has been found to make importing more user-friendly.
- To cater for the validity checks brought about by the updated
addfeature, where duplicate names, emails and phone numbers were not allowed.
- Enhancements to existing features:
- Update
addfeature. (#41, #52, #63, #186)addnow requires new fields, including Role, LeaveBalance, HourlySalary and HoursWorked, as properties of an employee.addchecks for similar names, or duplicate phone numbers and emails. This is to mimic real world context where employees are unlikely to have the same full name, phone numbers or emails.addnow processes the names of employees being added, removing additional whitespace typos and making it title case.- Add new test cases adapted to suit the new functionality of
add.
- Add test cases for
AssignLeaveCommandParserandRemoveLeavesBeforeCommandParser. (#237)
- Update
- Documentation:
- User Guide:
- Developer Guide:
- Community: