Pilotage Qualité SIT46

Documentation

Référentiel d'évaluation de la qualité et méthodologie de calcul des indicateurs

Objet du référentiel

La plateforme centralise le pilotage de la qualité des données touristiques. Elle normalise les offres issues de sources hétérogènes (Tourinsoft, DATAtourisme), mesure leur conformité au moyen d'indicateurs (KPI) définis par dimension de qualité, puis agrège ces résultats en un score global pondéré par l'importance de chaque KPI.

Dimensions de qualité

Complétude

Mesure la présence des valeurs attendues dans une fiche : un champ obligatoire est-il renseigné ? Le nombre d'occurrences est-il suffisant ?

Exactitude / Précision

Évalue la conformité de la donnée à la réalité (sémantique) et au format attendu (syntaxique) : validité d'une URL, d'un e-mail, d'un téléphone, respect d'un format ou d'une plage de valeurs.

Cohérence

Vérifie l'absence de contradiction entre les champs d'une même fiche ou entre fiches (ex. code postal cohérent avec la commune, dates d'une période d'ouverture ordonnées).

Unicité

Garantit qu'un même objet touristique n'apparaît qu'une seule fois. Le dédoublonnage est réalisé à l'import sur l'identifiant source.

Crédibilité

Apprécie la fiabilité et la traçabilité de la source : l'origine de la donnée est-elle identifiée et sa date de mise à jour connue ?

Actualité / Fraîcheur

Mesure l'âge de la donnée par rapport à un seuil de fraîcheur : la fiche a-t-elle été mise à jour récemment (ex. moins de 365 jours) ?

Niveaux d'importance

Chaque KPI se voit un niveau d'importance qui reflète son poids dans le score global. Ce niveau peut être surchargé par type d'offre ou par usage.

Essentiel

80

coefficient de pondération

Recommandé

15

coefficient de pondération

Optionnel

5

coefficient de pondération

Méthodologie des KPI

Un KPI est composé de deux ensembles de règles, chacun combinable par ET (toutes), OU (au moins une), ou ≥ N (au moins N conditions) :

  • Conditions d'application : déterminent si le KPI est pertinent pour la fiche. Si elles ne sont pas réunies, le KPI est non applicable et n'est pas compté.
  • Règles de contrôle : déterminent la conformité de la fiche. Si elles sont satisfaites, le KPI est conforme, sinon non conforme.

Une règle évalue une ou plusieurs occurrences d'un champ selon un contrôle (présence, validité d'URL/e-mail/téléphone, format, plage, date récente, etc.). La règle est validée si au moins une occurrence satisfait le contrôle.

Notation et pondération

Le score d'une fiche pour une dimension de qualité est la moyenne des KPI de cette dimension, pondérée par le coefficient d'importance de chaque KPI.

Exemple — une dimension comporte 3 KPI :

  • • KPI Essentiel (coef. 80) — conforme
  • • KPI Recommandé (coef. 15) — non conforme
  • • KPI Optionnel (coef. 5) — conforme

Score de la dimension = (80 + 5) / (80 + 15 + 5) = 85 / 100.

Le score global de la fiche additionne tous les KPI applicables de toutes les dimensions, en pondérant chacun par son coefficient d'importance. Les KPI non applicables ou en erreur ne sont jamais comptés : seules les offres réellement évaluées pèsent.

Références normatives

ISO/IEC 25012

Modèle international de qualité des données — définit les caractéristiques de qualité intrinsèques (complétude, exactitude, cohérence, crédibilité, actualité).

Eurostat ESS

Cadre de qualité des statistiques européennes (European Statistical System) — structure les composantes de qualité (exactitude, cohérence, actualité).

DAMA-DMBOK

Référentiel de gestion des données (Data Management Body of Knowledge) — décrit les dimensions de qualité : complétude, unicité, cohérence, actualité, validité.

Processus d'actualisation

La plateforme maintient la qualité des données touristiques grâce à un pipeline automatisé en quatre phases. Chaque phase a sa propre fréquence et son propre déclencheur, de l'import nocturne des flux sources jusqu'au snapshot mensuel qui alimente le suivi d'évolution de la qualité.

Phase 1

Import des flux sources

Tous les jours à 22h00 (heure de Paris)

Phase 2

Normalisation des offres

Tous les soirs à 23h30 (heure de Paris)

Phase 3

Calcul des conformités KPI

Incrémental + filet nocturne à 3h00 (heure de Paris)

Phase 4

État mensuel des performances

Le 1er de chaque mois à 02h00 UTC

Phase 1 — Import des flux sources

Tous les jours à 22h00 (heure de Paris)Import quotidien de toutes les sources

Chaque soir, la plateforme télécharge l'intégralité des flux JSON de toutes les sources actives (Tourinsoft, DATAtourisme). Pour chaque source, un job d'import est créé : il récupère le flux, calcule l'empreinte de chaque offre et stocke les enregistrements bruts (RawRecords) en attente de normalisation.

1

Lancement des imports

runScheduledImports crée un job par source active et télécharge le flux complet.

2

Attente 2 min

Laisse les jobs devenir éligibles au traitement (RawRecords en cours de création).

3

Normalisation — passe 1

driveNormalization crée les RawRecords manquants, désactive les objets absents du flux, puis normalise par lots de 50.

4

Attente 5 min

Laisse la normalisation progresser sur les gros volumes.

5

Normalisation — passe 2

driveNormalization finalise les jobs restants et rafraîchit les conformités KPI de la source.

6

Rafraîchissement des zones

Recalcule et persiste le rattachement des zones (OT par objet) pour identifier les nouvelles zones ou zones supprimées du flux du soir.

Phase 2 — Normalisation des offres

Tous les soirs à 23h30 (heure de Paris)Normalisation des imports

Ce workflow nocturne est un filet de sécurité : il reprend automatiquement les jobs d'import interrompus ou incomplets et normalise les objets modifiés non encore traités, après les synchros Tourinsoft du soir (22h). La normalisation à la demande — déclenchée après un import manuel ou une modification de mapping — reste indépendante et immédiate.

1

Détection des jobs bloqués

Identifie les jobs « running » sans activité depuis plus de 90 secondes.

2

Création des RawRecords manquants

Si la création a été interrompue (limite worker), re-fetch le flux et complète les enregistrements.

3

Désactivation des objets absents

Les offres absentes du flux courant sont désactivées (is_active = false), pas supprimées — réactivées si elles réapparaissent.

4

Normalisation par lots

Traite les enregistrements par lots de 50 : extraction, transformation selon les mappings, création/mise à jour des fiches et valeurs de champ.

5

Rafraîchissement des zones

Recalcule et persiste le rattachement des zones (OT par objet) pour identifier les nouvelles zones ou zones supprimées du flux.

6

Finalisation

Marque le job terminé, met à jour le nombre d'offres de la source et rafraîchit les conformités KPI.

Phase 3 — Calcul des conformités KPI

Incrémental + filet nocturne à 3h00 (heure de Paris)Rafraîchir les conformités KPI

Le calcul des conformités KPI est rafraîchi de deux manières : de façon incrémentale à chaque import, normalisation ou édition de KPI (seuls les objets impactés sont recalculés), et par un filet de sécurité nocturne qui recalcule l'ensemble des conformités une fois par nuit à 3h00. Le passage en nocturne réduit la charge de lecture en journée et les erreurs de saturation (429).

1

Rafraîchissement incrémental

Déclenché à la fin de chaque import/normalisation et à chaque modification de KPI — ne recalcule que les objets concernés. Garantit la fraîcheur en journée.

2

Filet de sécurité nocturne (3h00)

refreshKpiConformance recalcule et persiste toutes les conformités KPI, indépendamment des déclenchements incrémentaux. Décalé à 3h pour ne pas collisionner avec la normalisation nocturne (23h30).

3

Persistance

Les statuts (conforme, non-conforme, non-applicable, erreur) sont stockés par offre et par KPI pour un affichage instantané des tableaux de bord.

Phase 4 — État mensuel des performances

Le 1er de chaque mois à 02h00 UTCSnapshot mensuel des conformités KPI

Une fois par mois, la plateforme prend une photographie instantanée de toutes les conformités KPI. Ce snapshot alimente le tableau de bord d'évolution de la qualité : courbes sur 12 points par an, tops progressions et régressions, comparaisons d'un mois à l'autre.

1

Capture du snapshot

Copie l'ensemble des conformités KPI courantes avec le mois de référence (format AAAA-MM).

2

Dénormalisation

Type d'offre et commune sont copiés sur chaque enregistrement pour permettre les ventilations sans jointure.

3

Agrégation

Calcule et stocke les agrégats mensuels par dimension (global, type d'offre, zone) pour l'affichage des courbes.

4

Alimentation du dashboard

Le tableau « Évolution de la qualité » lit les snapshots pour tracer les courbes et calculer les variations.

Synthèse des fréquences

PhaseFréquenceDéclencheur
Import des flux sources
Quotidien — 22h00 ParisPlanifié
Normalisation (filet)
Quotidien — 23h30 ParisPlanifié
Conformités KPI (incrémental)
À chaque import / éditionÉvénement
Conformités KPI (filet)
Quotidien — 3h00 ParisPlanifié
Snapshot mensuel
1er du mois — 02h00 UTCPlanifié

Les horaires planifiés sont exprimés en heure de Paris (Europe/Paris). La normalisation nocturne (23h30) suit les synchros Tourinsoft du soir (22h00) ; le filet des conformités KPI (3h00) est décalé pour ne pas collisionner.

Déclenchements manuels

En complément des automatisations planifiées, chaque phase peut être déclenchée manuellement depuis l'interface. Cela permet de forcer une actualisation immédiate après une modification de mapping, la création d'un nouveau KPI ou l'ajout d'une source.

Importer une source

Sources — Bouton « Importer » sur une source — crée un job et lance la normalisation en direct.

Relancer la normalisation

Détail d'un import — Bouton « Relancer la normalisation » — force la re-normalisation complète avec les mappings à jour.

Normaliser des objets

Objets touristiques — Sélection d'objets → « Normaliser en lot » — recalcule les valeurs de champ d'un sous-ensemble.

Recalculer les conformités

Paramètres — Carte « Recalcul des conformités » — rafraîchit manuellement l'ensemble des conformités KPI.

Recalculer le rattachement des zones

Paramètres — Carte « Rattachement des zones » — recalcule et persiste l'OT de rattachement de chaque offre (normalement rafraîchi automatiquement à l'import).

Forcer un snapshot

Paramètres — Carte « Snapshot mensuel » — déclenche manuellement le snapshot du mois courant.