Calcul du score de conformité
La formule unifiée, les statuts et leur valeur, les poids, les contrôles non applicables et les différents indicateurs affichés.
La formule
Pour une entité et un référentiel, le score est :
score = Σ (poids × valeur du statut) / Σ (poids) × 100
calculé sur les contrôles applicables de ce référentiel dans cette entité, puis arrondi à 2 décimales. C’est la seule formule de score de conformité de la plateforme : le tableau de bord, le rapport de conformité, la Vue Groupe et le Trust Center l’utilisent tous (formule n° 2, voir Historique et tendances).
Valeur de chaque statut
| Statut (interface) | Valeur dans le score | Compté dans le dénominateur |
|---|---|---|
| Implémenté | 1 | oui |
| En cours | 0,5 | oui |
| Non démarré | 0 | oui |
| Non conforme | 0 | oui |
| Non applicable (« N/A ») | — | non |
Il n’existe pas de statut « partiellement implémenté » ni de niveau de maturité : « En cours » compte pour moitié, quel que soit l’avancement réel.
Les poids
Chaque contrôle porte un poids, qui pilote le score. La criticité affichée (Critique, Important, Standard) n’intervient pas directement : elle sert à fixer le poids par défaut.
| Criticité | Poids par défaut |
|---|---|
| Critique | 3 |
| Important | 2 |
| Standard | 1 |
- Pour les contrôles des référentiels maîtres, le poids est fixé par le catalogue publié par Conformitly et ne peut pas être modifié par l’organisation.
- Pour les contrôles personnalisés ajoutés à un référentiel maître, et pour les contrôles des référentiels personnalisés, le poids se saisit entre 1 et 10 ; laissé vide, il est déduit de la criticité. Les premiers ne peuvent être créés, modifiés ou supprimés que par un Administrateur ou un RSSI, car ils s’appliquent à toutes les entités de l’organisation ; les seconds relèvent de l’écriture sur les référentiels (Administrateur, RSSI).
- Modifier le poids d’un contrôle personnalisé d’un référentiel maître recalcule et enregistre aussitôt le score de chaque entité où ce contrôle est actif (voir Historique et tendances). Pour un référentiel personnalisé, les poids se modifient dans une version brouillon : ils s’appliquent à l’acceptation de la mise à jour vers la version publiée, qui enregistre elle aussi le nouveau score.
Contrôles non applicables et non conformes
- Non applicable : réservé aux rôles Administrateur et RSSI de l’entité, avec une justification d’au moins 20 caractères. La justification est affichée dans le détail du contrôle ; son auteur et sa date sont enregistrés (l’API les renvoie). Les trois sont effacés si le contrôle quitte ce statut ; seul le journal d’audit en garde la trace.
- Non conforme : réservé au responsable du contrôle, à un Administrateur ou à un RSSI, avec une justification d’au moins 20 caractères. Mêmes règles de conservation. Le responsable et les RSSI de l’entité sont notifiés. Depuis « Non conforme », seuls « En cours » et, pour un Administrateur ou un RSSI, « Non applicable » sont acceptés.
Exception à connaître : l’application des réponses de l’analyse d’écart aux contrôles (voir plus bas) modifie les statuts sans passer par ces règles.
Cas limites
- Aucun contrôle applicable (ou tous de poids nul) : le score vaut 0, pas 100.
- Arrondi : à 2 décimales, au pair le plus proche en cas d’égalité exacte (arrondi bancaire de .NET).
- Affichage : les scores sont affichés avec une décimale (par exemple 44,4 %), dans l’application comme dans les rapports. Un score inférieur à 100 n’est jamais affiché 100,0 % (mais 99,9 %), et un score supérieur à 0 jamais 0,0 % (mais 0,1 %).
- Contrôles archivés (retirés par une mise à jour de référentiel) : exclus.
Exemple
Une entité, un référentiel, cinq contrôles :
| Contrôle | Criticité | Poids | Statut | Poids × valeur |
|---|---|---|---|---|
| A | Critique | 3 | Implémenté | 3 |
| B | Important | 2 | En cours | 1 |
| C | Standard | 1 | Non démarré | 0 |
| D | Critique | 3 | Non conforme | 0 |
| E | Important | 2 | Non applicable | exclu |
Score = (3 + 1 + 0 + 0) / (3 + 2 + 1 + 3) × 100 = 4 / 9 × 100 = 44,44, affiché 44,4 %.
Ce que montrent les différents écrans
Plusieurs indicateurs coexistent et ne mesurent pas la même chose. Pour l’exemple ci-dessus :
| Où | Indicateur | Calcul | Valeur |
|---|---|---|---|
| Tableau de bord, carte du référentiel | score | formule pondérée | 44,4 % |
| Tableau de bord, carte du référentiel | barre et « x/y contrôles » | implémentés / applicables, non pondéré | 1/4, barre à 25 % |
| Tableau de bord | « Contrôles complétés » | implémentés / applicables, non pondéré | 25,0 % |
| Contrôles, vue « Domaines » | progression par domaine | implémentés / applicables, non pondéré | 25,0 % |
| Rapport de conformité | score et score par domaine | formule pondérée | 44,4 % |
| Vue Groupe, cellule entité × référentiel | score | formule pondérée, calculée en direct | 44,4 % |
| Rapport de conformité (PDF) | carte « Controles », x/y « implementes » (libellés sans accents dans le PDF) | implémentés / tous les contrôles, N/A compris | 1/5 |
Pas de score global
Il n’existe aucun score toutes conformités confondues : NIS2, DORA, le RGPD et l’ISO 27001 sont des obligations distinctes, et un bon score sur l’un ne compense pas un mauvais score sur l’autre. Le tableau de bord, le rapport exécutif et le Trust Center montrent un score par référentiel, chacun avec sa propre évolution, qui n’est donnée qu’entre deux scores de la même formule et de la même version du référentiel (voir Historique et tendances).
Référentiel désactivé
Un référentiel désactivé sur une entité garde ses contrôles et ses instantanés, mais ils ne sont plus lus : ses contrôles sont masqués (page Contrôles, plan d’actions consolidé, rapports, indicateurs du tableau de bord) et ses scores exclus de tous les affichages (tableau de bord, rapports, Trust Center, Vue Groupe). Le rapport de conformité d’un référentiel désactivé est refusé (« Le référentiel … n’est pas actif sur cette entité. »). Une réactivation rétablit le tout.
Entités et groupe
Les scores enregistrés (instantanés, tableau de bord, rapports) sont par entité. Pour un groupe, la Vue Groupe calcule en direct, référentiel par référentiel, une ligne Groupe : la même formule appliquée à tous les contrôles applicables des entités de votre périmètre où le référentiel est actif, chaque contrôle comptant pour son poids (une filiale qui a plus de contrôles pèse donc davantage). Il n’existe pas de score de groupe toutes conformités confondues.
Trust Center
Le Trust Center publie les derniers scores enregistrés de l’entité racine (le siège), pour les référentiels maîtres actifs sur le siège, un par référentiel. Selon le réglage choisi, ils sont affichés à une décimale ou arrondis à la dizaine.
L’analyse d’écart
L’analyse d’écart est un questionnaire (Oui, Partiellement, Non, Je ne sais pas) dont chaque question est reliée à un ou plusieurs contrôles. Elle a son propre score : moyenne non pondérée des questions répondues (Oui = 1, Partiellement = 0,5, Non et Je ne sais pas = 0).
Ses réponses peuvent initialiser les statuts des contrôles :
| Réponse | Statut appliqué aux contrôles liés |
|---|---|
| Oui | Implémenté |
| Partiellement | En cours |
| Non, Je ne sais pas | Non démarré |
Ce report se fait automatiquement lors de l’accueil et de l’activation d’un référentiel maître, puis seulement si l’utilisateur choisit « Enregistrer et appliquer ». Le score est recalculé et enregistré aussitôt après ce report. Quand plusieurs questions visent le même contrôle, la dernière l’emporte. Ce report ne modifie jamais un contrôle « Non applicable » ou « Non conforme » : ces statuts, justifiés et réservés à certains rôles, ne changent que contrôle par contrôle. Avec « Enregistrer et appliquer », les contrôles ainsi laissés inchangés sont listés dans l’aperçu et conservés dans l’entrée gap_analysis.responses_saved du journal d’audit (nombre, code et statut de chacun). Les autres statuts sont remplacés sans justification : lors d’un audit, un statut issu de l’analyse d’écart n’a pas la valeur d’une évaluation contrôle par contrôle.
Mise à jour : 10 octobre 2026. Signaler une inexactitude