Performance — administration¶
À quoi ça sert¶
Ce module permet à un administrateur RH de piloter la gestion de la performance : cascade d'objectifs, création de modèles d'évaluation et de cycles d'appraisal, campagnes de feedback à 360°, ainsi que le pilotage des outils d'engagement (enquêtes de satisfaction, pulse surveys, reconnaissance entre pairs).
Prérequis¶
Prérequis
- Modules sous licence :
APPRAISAL - Permissions :
evaluation.create,evaluation.manage,evaluation.objective.approve,evaluation.oneonone.manage,satisfaction.survey.create,satisfaction.survey.distribute,satisfaction.survey.respond,satisfaction.feedback.send - Rôles :
MANAGER,HR_MANAGER,ORG_ADMIN
Comment ça marche¶
1. Créer un modèle d'évaluation (template)¶
- Ouvrez Performance → Modèles (
/dashboard/admin/performance/templates). - Créez un modèle composé de sections pondérées (
SectionType:SELF_ASSESSMENT,MANAGER_REVIEW,SHARED) contenant chacune des questions (QuestionType: notation ou texte libre). - Le poids des sections doit totaliser 100 % ; l'application refuse l'enregistrement sinon.
- Un modèle utilisé par un cycle existant ne peut pas être supprimé (protection d'intégrité).
2. Lancer un cycle d'évaluation (appraisal cycle)¶
- Ouvrez Performance → Cycles (
/dashboard/admin/performance/cycles) et créez un cycle : nom, période, modèle associé. - Le cycle démarre en
DRAFT. Cliquez sur Ouvrir pour le passer enOPEN: ceci génère automatiquement une fiche d'évaluation (Appraisal) pour chaque employé actif, avec des réponses vides pré-remplies pour chaque question du modèle. - Chaque évaluation individuelle progresse ensuite via ses propres statuts :
PENDING→SELF_ASSESSMENT(l'employé répond à ses questions) →MANAGER_REVIEW(le manager répond aux siennes) →PENDING_SIGN_OFF→COMPLETEDune fois signée par les deux parties. - Passez le cycle en
REVIEWINGpuisCLOSEDune fois toutes les évaluations finalisées.
3. Suivre la cascade d'objectifs¶
- Ouvrez Performance → Objectifs (
/dashboard/admin/performance/objectives). - Un objectif est rattaché à un périmètre (
ObjectiveOwnerType:COMPANY,DEPARTMENT,TEAM,INDIVIDUAL) et à un type (ObjectiveType:QUANTITATIVE,QUALITATIVE,DEVELOPMENT,BEHAVIORAL). - Utilisez Cascader pour créer un objectif enfant hérité d'un objectif parent (ex. objectif d'équipe décliné en objectifs individuels) ; l'écran Arborescence (
tree) visualise toute la cascade. - Chaque objectif porte des KPI pondérés (le total des poids doit faire 100 %) et des jalons datés (
ObjectiveMilestone), avec rappels automatiques avant échéance. - Statuts :
DRAFT→PROPOSED→APPROVED→IN_PROGRESS→COMPLETED, ouNOT_ACHIEVED(décision réservée aux détenteurs deevaluation.objective.approve).
4. Organiser une campagne de feedback à 360°¶
- Créez d'abord un questionnaire réutilisable sous Performance → 360° → Questionnaires (
/dashboard/admin/performance/feedback-360/questionnaires) : questions de notation ou texte libre, groupées par catégorie. - Créez une campagne (
/dashboard/admin/performance/feedback-360) liée à ce questionnaire, avec un seuil minimum de répondants pour l'anonymat (minRespondentsForAnonymity). - Tant que la campagne est en
DRAFT, ajoutez des sujets (employés évalués) puis, pour chacun, des évaluateurs (Relationship:SELF,MANAGER,PEER,DIRECT_REPORT,OTHER) — l'écran propose des évaluateurs suggérés automatiquement (le sujet lui-même, son manager, jusqu'à 3 pairs du même département, tous ses subordonnés directs), mais l'ajout reste une action manuelle. - Cliquez sur Lancer : la campagne passe en
ACTIVEet notifie tous les évaluateurs invités. Une campagne ne peut pas être lancée sans au moins un sujet. - À la clôture (Fermer,
CLOSED), le nombre de répondants est calculé par sujet et un rapport est généré et partagé avec l'employé concerné. - Dans le rapport, les retours
SELFetMANAGERsont toujours visibles ; les retoursPEER/DIRECT_REPORT/OTHERne sont révélés (moyenne + commentaires) que si le nombre de répondants distincts atteint le seuil d'anonymat configuré — sinon ils restent masqués pour protéger l'anonymat.
5. Piloter l'engagement (satisfaction)¶
- Enquêtes (
/dashboard/admin/satisfaction/surveys) : créez une enquête (SurveyType:ENGAGEMENT,PULSE,ONBOARDING,EXIT,CUSTOM), définissez ses questions et conditions d'affichage, ciblez une population, puis Activer (SurveyStatusDRAFT→SCHEDULED/ACTIVE→CLOSED). Le taux de réponse et les résultats agrégés sont consultables en cours et après clôture. - Pulse surveys : modèles de mini-sondages récurrents ; consultez la tendance dans le temps (
trend) et le taux de réponse par diffusion. - Reconnaissance entre pairs : gérez la liste des valeurs d'entreprise utilisées pour qualifier les messages de reconnaissance (
FeedbackType:KUDOS,FEEDBACK,APPRECIATION,VALUES_SHOUTOUT) et consultez le tableau d'alignement aux valeurs (values-alignment) pour voir la répartition des messages envoyés dans l'entreprise.
Qui peut faire quoi¶
| Permission requise | Rôles concernés |
|---|---|
evaluation.create |
MANAGER, HR_MANAGER, ORG_ADMIN |
evaluation.manage |
MANAGER, HR_MANAGER, ORG_ADMIN |
evaluation.objective.approve |
MANAGER, HR_MANAGER, ORG_ADMIN |
evaluation.oneonone.manage |
MANAGER, HR_MANAGER, ORG_ADMIN |
satisfaction.survey.create |
MANAGER, HR_MANAGER, ORG_ADMIN |
satisfaction.survey.distribute |
MANAGER, HR_MANAGER, ORG_ADMIN |
satisfaction.survey.respond |
MANAGER, HR_MANAGER, ORG_ADMIN |
satisfaction.feedback.send |
MANAGER, HR_MANAGER, ORG_ADMIN |
| Permission | Donne accès à |
|---|---|
evaluation.create |
Répondre à sa propre auto-évaluation ; consulter/gérer ses objectifs, cycles en lecture (permission également utilisée en écriture pour la création/mise à jour d'objectifs) |
evaluation.manage |
Gérer les modèles, les cycles, valider la revue manager, consulter toutes les évaluations |
evaluation.objective.approve |
Approuver ou classer un objectif comme non atteint |
evaluation.oneonone.manage |
Superviser tous les 1:1 de l'entreprise (au-delà du binôme manager/employé concerné) |
evaluation.feedback360.manage |
Créer/gérer questionnaires et campagnes 360°, consulter tous les rapports |
evaluation.feedback360.respond |
Répondre à une invitation d'évaluation 360°, consulter son propre rapport une fois partagé |
satisfaction.survey.create / .distribute / .respond |
Créer une enquête ou un pulse ; la diffuser/activer/consulter les résultats ; y répondre |
satisfaction.feedback.send |
Envoyer un message de reconnaissance, consulter son fil |
satisfaction.feedback.manage_values |
Gérer la liste des valeurs d'entreprise, consulter le tableau d'alignement |
Permission non pré-assignée
evaluation.feedback360.respond est intentionnellement seedée mais non attribuée à aucun rôle par défaut (voir la migration V220) : chaque tenant doit décider explicitement qui peut répondre à une invitation 360° (généralement tous les employés) et l'ajouter à un rôle personnalisé ou au rôle employé standard.
| Rôle système | Accès |
|---|---|
ORG_ADMIN |
Toutes les actions (permission globale) |
HR_MANAGER |
evaluation.manage (via V221, corrige un défaut initial où seuls les managers de ligne pouvaient boucler la revue) |
MANAGER |
evaluation.manage (revue manager de ses évaluations d'équipe) |
Détails techniques¶
Détails techniques
Entités performance : EvaluationFormTemplate/EvaluationFormSection/EvaluationFormQuestion, AppraisalCycle, Appraisal/AppraisalAnswer, Objective/ObjectiveKpi/ObjectiveMilestone, OneOnOne/OneOnOneAgendaItem/OneOnOneActionItem, FeedbackQuestionnaire/FeedbackCampaign/FeedbackSubject/FeedbackRequest/FeedbackResponse (package app.jigi.hr.appraisal.*).
Entités satisfaction : Survey/SurveyQuestion/SurveyAssignment, PulseTemplate, Feedback/CompanyValue (package app.jigi.hr.satisfaction.*).
Endpoints clés :
/hr/appraisals/templates,/hr/appraisals/cycles[/{id}/open],/hr/appraisals[/{id}/self|review|sign]/hr/appraisals/objectives[/{id}/cascade|progress|tree|not-achieved]/hr/appraisals/one-on-ones[/{id}/complete|cancel|agenda-items|action-items]/hr/appraisals/feedback360/questionnaires,/hr/appraisals/feedback360/campaigns[/{id}/subjects|launch|close|suggested-reviewers],/campaigns/requests/{id}/responses/hr/satisfaction/surveys[/{id}/conditions|targets|activate|close|responses|results],/hr/satisfaction/pulses[/templates|/{code}/trend],/hr/satisfaction/values,/hr/satisfaction/feedback[/feed|received|values-alignment]
Workflow : le sign-off d'une évaluation s'appuie sur PerformanceWorkflowCallback, qui relie l'appraisal au moteur générique de workflow (voir Workflows d'approbation) plutôt que sur une machine à états ad hoc.
Contrôle d'accès fin : au-delà des permissions ci-dessus, les services re-vérifient la relation réelle : pour un 1:1, l'appelant doit être le manager ou l'employé concerné (sauf evaluation.oneonone.manage) ; pour une réponse 360°, l'appelant doit être exactement l'évaluateur invité et la demande doit être PENDING ; pour un rapport 360°, seul evaluation.feedback360.manage ou le sujet lui-même (une fois le rapport partagé) peut le consulter.
Anonymat des rapports 360° : calculé par catégorie de question et par relation ; SELF/MANAGER toujours visibles, les autres relations masquées tant que le nombre de répondants distincts n'atteint pas minRespondentsForAnonymity — aucune fuite partielle de moyenne ou de commentaire en dessous du seuil.
Cas d'erreur et FAQ¶
Pourquoi mon évaluation reste-t-elle bloquée en attente de signature ?
Le statut COMPLETED exige la signature des deux parties (employé et manager) — vérifiez laquelle des deux n'a pas encore signé.
Un employé peut-il voir les commentaires individuels de ses collègues dans son rapport 360° ?
Non, jamais individuellement. Les retours PEER/DIRECT_REPORT/OTHER sont uniquement affichés sous forme de moyenne agrégée, et seulement si le nombre de répondants distincts atteint le seuil d'anonymat configuré sur la campagne.
Comment permettre à tous les employés de répondre aux invitations 360° ?
Attribuez la permission evaluation.feedback360.respond au rôle employé standard (ou à un rôle personnalisé) — elle n'est assignée à aucun rôle par défaut à l'installation.
Peut-on supprimer un modèle d'évaluation déjà utilisé ? Non, tant qu'il est référencé par au moins un cycle d'évaluation, pour ne pas casser l'historique des évaluations déjà réalisées avec ce modèle.
Quelle est la différence entre une enquête (survey) et un pulse ? Une enquête classique est un événement ponctuel (onboarding, sortie, engagement annuel) ; un pulse est un mini-sondage court et récurrent, dont on suit la tendance dans le temps plutôt qu'un résultat isolé.