Closed tamuri closed 1 month ago
I suggest writing the JobRole & Criteria information in TOML format. There is a package for working with TOML files in standard library of Python 3.11+.
For example:
# job_role.toml
title = "Research Software Engineer"
description = "Collaborate with research colleagues from across UCL to construct, improve, and maintain codes used for modelling, analysis, synthesis, simulation and more."
criterion = [
{ name="PhD", description="PhD or equivalent experience", scores=[0,1,2,3] },
{ name="Best practice", description="Knowledge of testing, version control, documentation", scores=[0,1,2,3] },
{ name="Team", description="Has worked as member of a team", scores=[0,1,2,3] }
]
Class diagram:
---
title: Shortlisting model
---
classDiagram
class Shortlist {
+Role role
+List[Applicant] applicants
}
class Role {
+String job_title
+String job_id
+List[Criterion] criteria
}
class Criterion {
+String name
+String description
+List[String] scoring
}
class Applicant {
+String name
+String cv_path
Dict[Criteria, String] scores
}
Shortlist *-- Role
Role *-- Criterion
Shortlist *-- Applicant
Definition of Done / Acceptance Criteria
A model that satisfactorily captures, holds and processes the information required for shortlisting a applicants for a job role.
Comments
The following classes serve as a start: