<Merrick Neo> Project Portfolio Page
Project: HMHero
What should be included
- Code contributed
- Enhancements implemented
- Contributions to the UG (Optional)
- Contributions to the DG (Optional)
- Contributions to team-based tasks
- Review/mentoring contributions
- Contributions beyond the project team
(Overview)
- HMHero helps Hiring Managers track the statuses of candidates’ applications
(Summary of Contributions)
-
Code contributed: RepoSense link
-
Project management:
- Set up Google Drive to help facilitate document sharing within team members
- Set up recurring Zoom meetings to discuss the team’s progress and future plans
(Enhancements implemented)
- Features implemented
- Implemented a
DateTimeParserclass to help check and validate interview dates for applicants.Format:
DD-MM-YYYY HH:MM
- Implemented a
- If the date provided is not in the right format, the error message
Invalid date and time providedwill be presented to the user.
- Implemented
SummaryCommandto provide users with useful statistics on their hiring processes.- Summary statistics provided include:
- Average time to interview
- Percentage of applicants with interviews
- Summary statistics provided include:
- Enhancements to existing features:
- Make error messages presented more specific to the user’s situation.
Example:
Invalid Date and Time Provided. Expected Format: "DD-MM-YYYY HH:MM" -
Enhance
AddCommandto show the original list after eachAddCommand. - Enhance
DeleteCommandto identify anApplicantusing their name and phone number- Original implementation was to identify
Applicantsbased on indexes- However, when there are too many applicants in the list, identifying an applicant this way may be challenging.
- This enhancement then allows for easy deletion of
Applicantsby providing the above-mentioned fields to uniquely identify the unique individual.Example Input:
delete n/John Doe p/(John Doe's number)Output:
Deleted Person: John Doe; Phone: 91234567; Email: johndoe@gmail.com; Address: SoC; Status: REJECTED; Notes: [Python]
- Original implementation was to identify
Test Cases
- Wrote test cases for
DateTimeParserandInterviewDateTime- Test cases provides full path coverage for the classes
- Checks all valid and invalid datetime scenarios provided by the user
- Wrote test cases for
DeleteCommandandDeleteCommandParser- Rewrote test cases to test the new format for a
DeleteCommand - Checked positive cases where both name and phone number was provided
- Checked negative cases where either the name or phone fields were missing and whether the applicant is tracked in HMHero.
- Rewrote test cases to test the new format for a
- Edit test cases for
AddCommand- Rewrote test cases to check if the model rejects a duplicate Applicant.
- Make adjustments to test cases to support the updating of the model to the orignal list after
each
AddCommand.
- Wrote test cases for
InterviewCommand- Check if the output of the command tallies with the expected behaviour.
- Wrote test cases for
SummaryCommand- Check if summary statistics are calculated correctly
- Checked if the correct statistics are output to the user when the ApplicantList is both filled and empty.
-
Documentation:
- User Guide
- Added documentation for the feature
add. - Added documentation on the Quick Start section.
- Added restrictions to the Placeholders for Commands.
- Added documentation for the feature
- Developer Guide
- Added non-functional requirements for the project.
- Added documentation for the design concept for HMHero.
- Added sequence and activity diagrams for the
DeleteCommand,EditCommandandListCommand.
- User Guide
-
Community:
- Reviewed Pull Requests (PRs) made by team members
- Assign issues to members for better tracking of tasks for milestones
-
Tools:
- SourceTree
- Git & Github
- Java