Tan Ying Ting's Project Portfolio Page
Project: CLInkedIn
CLInkedIn is a desktop application made for recruiters to manage candidates. CLInkedIn operates mainly using a Command Line Interface (CLI), but still has a Graphical User Interface (GUI) made with JavaFX for improved user experience.
Given below are my contributions to the project.
- Add Status attribute of a Person
- Added ability to indicate which stage of application the candidate is at.
- Purpose: As an applicant tracking system, a crucial feature is to enable recruiters to view the application stage of each candidate at a glance.
- It is a compulsory attribute of a candidate, as every candidate has an application status.
- Implementation specifications:
- Status is internally implemented as a String.
- Status is implemented as a compulsory attribute under a
Person
object. Thus, aStatus
object class is created and added toPerson
as a field.
- Add Rating attribute of a Person
- Added ability to indicate a numerical representation of desirability (ie Rating) of candidates.
- Purpose: There are some candidates that are more preferable than others. Thus, the Rating feature is added as part of efforts to implement a numerical system to compare between candidates to decide who should progress to the next stage.
- Rating is an integer between 1 and 10 inclusive.
- It is a non-compulsory attribute of a candidate, as the recruiter might not have enough information to rate the candidate at the point of application.
- Implementation specifications:
- Rating is internally implemented as an Integer.
- Rating is implemented as a non-compulsory attribute under a
Person
object. Thus, aRating
object class is created and added toPerson
as a field. - For candidates with no rating, it is internally represented as having a
Rating
of0
. However, it is not shown in the external interface.
- Add Sorting feature
- Allows ordering of all candidates from the highest rating to the lowest rating.
- Purpose: Recruiters can view all candidates in order of desirability.
- The candidates with no rating will be placed at the bottom, as there is not enough information to compare them with the rest of the applicant pool.
- Implementation specifications:
- A
Comparator<Person>
is created to compareRating
between 2 candidates. - All candidates go through the comparator, and a sorted list is obtained.
- A
-
Code contributed: RepoSense link
- Project management:
- Documentation:
- Readme:
- Added the project description and the user guide and developer guide link.
- Added explanation of the target user profile and value proposition.
- Added example usages.
- Developers Guide:
- Added Glossary
- Added Non-functional requirements
- Added Rating feature
- Added Sort feature
- User Guide:
- Created Introduction section with summary table
- Added Rating feature
- Added Sort feature
- Readme:
- Community:
- Tools: