Jeux de contrôles

Description métier

Un contrôle permet de qualifier une partie de vos données dans votre offre.

Un jeu de contrôles se définit au sein d’un groupe de travail ou un espace de travail. Il est composé :

  • d'une liste de contrôles séquencés (les contrôles seront exécutées dans l’ordre que vous avez défini)

  • de contextes pouvant contenir eux même une liste de contrôles

Un contexte permet de filtrer les données à qualifier.

Votre jeu de contrôles va se représenter de la manière suivante :

Jeu de contrôles.png
Jeu de contrôles

 

Chaque contrôle est disponible dans une bibliothèque Jeux de contrôles | Bibliothèque de contrôles qui va s'enrichir au fur et à mesure des évolutions du produit . Celui-ci est généralement paramétrable pour correspondre à votre contexte et vos objectifs.

De la même manière, un contexte sera disponible dans la bibliothèque Jeux de contrôles | Bibliothèque de contextes

Consulter les Jeux de contrôles

Vous pouvez consulter la liste des jeux de contrôles créés par votre organisation dans “Espace de travail → Jeux de contrôles.

image-20240618-171500.png

Pour chaque jeu de contrôles, sont affichés :

  • Le nom

  • Les commentaires

  • Si le jeu de contrôle est partagé avec le groupe de travail

  • La date de la dernière édition

La roue dentée propose les actions suivantes :

  • Afficher ce jeu de contrôle

  • Éditer ce jeu de contrôle

  • Exécuter ce jeu de contrôle

  • Supprimer ce jeu de contrôle

Créer un jeu de contrôle

En cliquant sur le bouton “Créer un jeu de contrôles”, vous accédez à la fiche d'édition d’un nouveau jeu de contrôles.

Pour commencer, il faut attribuer un nom à votre jeu de contrôles. Vous pouvez ajouter un commentaire et décider que ce contrôle soit partagé, ou non, avec le groupe de travail.

Dans le cas ou le jeu de contrôles est partagé avec le groupe de travail, les autres organisations appartenant à votre groupe de travail pourront utiliser ce jeu de contrôles.

Dans la section “Contrôles” du formulaire, l’utilisateur peut ajouter différents contrôles pour chaque règle qu’il veut contrôler.

Vous pouvez utiliser les contrôles avec ou sans contexte. Un contexte permet de filtrer les données à contrôler. Si aucun contexte est choisi le contrôle ajouté va s’appliquer sur l’ensemble des données de la cible.

Il y a trois contextes mis à votre disposition (Voir Jeux de contrôles | Contextes ) :

Pour ajouter un contrôle avec un contexte à votre jeu de contrôle, il faut cliquer sur le premier champs et sélectionner un contexte dans la liste proposée, par exemple “Mode de transport”.

Ensuite, il faut cliquer sur le bouton “Ajouter un nouveau contexte”.

Une liste de différents modes de transport apparait.

Vous sélectionnez un mode de transport pour ce contexte, puis vous choisissez un contrôle de la liste proposée, par exemple “Fournisseur attendu”, et vous cliquez sur le bouton “Ajouter un contrôle”.

Dans une nouvelle forme qui s’ouvre, il faut préciser les paramètres voulus pour ce contrôle. Selon le contrôle que vous choisissez, vous devez remplir des champs obligatoires indiqués par un *.

Il vous sera toujours proposé d’ajouter une description de l’objectif du contrôle, d’ajouter un commentaire et de choisir la criticité du contrôle.

Une fois les paramètres choisis, vous pouvez cliquer sur le bouton “Valider”.

La page du nouveau jeu contrôles est affichée. Il peut désormais être utilisé et ne s’exécutera que sur les objets ayant le mode de transport sélectionné. Les objets ayant d'autres modes de transports seront ignorés.

Vous pouvez ajouter plusieurs contrôles au même contexte.

Si vous voulez utiliser un contrôle sans contexte, il suffit de laisser le champs de contexte vide et ouvrir directement la liste de contrôles, sélectionner un contrôle, puis appuyer sur le bouton “Ajouter un nouveau contrôle”.

Le formulaire s’ouvre, proposant les champs avec des différents paramètres selon le contrôle choisi.

Vous pouvez ajouter ainsi autant de contrôles que vous voulez, puis cliquer sur le bouton “Valider” pour terminer la création de votre jeu de contrôle.

Éditer un jeu de contrôle

A tout moment, vous pouvez modifier votre jeu de contrôle en cliquant sur le bouton “Éditer ce jeu de contrôle”.

Si votre jeu de contrôle contient plusieurs contrôles, la roue dentée vous permet d’organiser l’ordre de vos contrôles. Ainsi les contrôles en première position seront exécutés en premier, et ainsi de suite : 

Bibliothèque de contextes

Vous pouvez utiliser les contrôles avec ou sans contexte. Un contexte permet de filtrer les données à contrôler. Si aucun contexte est choisi le contrôle ajouté va s’appliquer sur l’ensemble des données de la cible.

Mode de transport

Dans ce contexte les contrôles ne s’exécuteront que sur les lignes avec le mode de transport sélectionné.

Lignes

Dans ce contexte les contrôles ne s’exécuteront que sur les lignes sélectionnées.

Prochains jours de fonctionnement

Dans ce contexte les contrôles ne s’exécuteront que sur les objets opérant les n prochains jours.

Bibliothèque de contrôles

Présence d’un attribut

Avec le contrôle “Présence d’un attribut”, l’utilisateur peut contrôler qu’un attribut spécifique est renseigné sur le modèle sélectionné.

L’utilisateur peut contrôler tous les attributs non obligatoires des cibles suivantes :

  • lignes

  • arrêts

  • missions

  • courses

  • transporteurs

Par exemple, l’utilisateur peut contrôler la présence de l’attribut “Page web associée” dans le modèle cible ligne :

Présence d’un code

Avec le contrôle “Présence d’un code”, l’utilisateur peut contrôler qu’un code spécifique est renseigné sur le modèle sélectionné.

L’utilisateur peut sélectionner n’importe quel espace de code qui est défini dans le Groupe de travail. (voir Espaces de Code )

Les modèles ciblés sont les suivants :

  • lignes

  • arrêts

  • courses

Par exemple, l’utilisateur peut contrôler la présence du code “billettique” dans le modèle cible arrêt :

Présence d’un champ personnalisé

Si l’un de vos référentiels contient des champs personnalisés définis, vous pouvez contrôler leur présence avec le contrôle “Présence d’un champ personnalisé”.

Les modèles cibles de votre contrôle sont les suivants :

  • lignes

  • arrêts

  • transporteurs

  • missions

  • courses

Format d’un code

L’utilisateur peut contrôler qu’un code est renseigné avec un format spécifique. Ce contrôle peut être exécuté sur les modèles suivant :

  • Arrêts

  • Lignes

  • Missions

Les modèles n’ayant pas de code sont ignorés. Seuls les modèles ayant la présence du code sélectionné sont contrôlés.

Le format attendu du code doit être spécifié avec une expression régulière.

Plus d’explications et d’exemples sont disponibles sur https://en.wikipedia.org/wiki/Regular_expression

Vous pourrez trouver ci-dessous quelques exemples type d’expressions régulières :

  • commence par un mot : ^word

  • termine par un mot : word$

  • contient un mot : (word1|word2|word3)

Format d’un attribut

L’utilisateur peut contrôler qu’un attribut dans un modèle est renseigné avec un format spécifique. Ce contrôle peut être exécuté sur les modèles suivant :

  • Arrêts

  • Lignes

  • Missions

  • Courses

  • Transporteurs

Vous devez sélectionner un attribut cible, qui sera soumis au contrôle, présent dans le modèle choisi.

Le format attendu de l’attribut doit être spécifié en une expression régulière.

Plus d’explications et d’exemples sont disponibles sur https://en.wikipedia.org/wiki/Regular_expression

Vous pourrez trouver ci-dessous quelques exemples type d’expressions régulières :

  • commence par un mot : ^word

  • termine par un mot : word$

  • contient un mot : (word1|word2|word3)

Tendance du nombre de services

L'utilisateur peut contrôler que chaque ligne a chaque jour un nombre de services similaire aux semaines précédentes et suivantes. Le nombre de services quotidiens est comparé au nombre de services du même jour de la semaine (lundi avec les lundis précédents et suivants).

L’utilisateur peut définir :

  • le nombre N de semaines précédant le jour analysé

  • le nombre M de semaines suivant le jour analysé

  • la différence maximale P de nombre de services (en pourcentage)

  • le niveau de criticité remontée par le contrôle (erreur ou avertissement)

Lors de l’exécution du contrôle, une moyenne est calculée en incluant le même jour de la semaine sur N semaines avant et M semaines après. Si le nombre de services s'écarte de la moyenne de plus de P %, un avertissement ou une erreur sera remontée par le contrôle.

Vitesse au sein des Missions

L’utilisateur peut contrôler les vitesses au sein des missions. Chouette utilise les distances des missions à vol d'oiseau si elles ne sont pas reinseignées. Vous pouvez utiliser l’instruction pour définir les distances de missions pour completer ces informations.

Dans le formulaire du contrôle, il faut définir une vitesse minimale, maximale et une distance minimale dans son contrôle.

Une erreur ou un avertissement sera remonté, si une valeur au-delà de celles définies est détectée par le contrôle.

Présence de modèles associés

L’utilisateur peut contrôler la présence de modèles associés à un modèle cible. Pour chaque modèle, il est possible d’indiquer un nombre minimal ou maximal.

Une erreur ou un avertissement sera remonté, si une valeur au-delà de celles définies est détectée par le contrôle.

État d’un modèle

L’utilisateur peut contrôler l'état d’un modèle. Ainsi, un avertissement ou une erreur sera remontée si l'état (désactivé/activé) du modèle cible n’est pas conforme à l'état attendu par le contrôle.

Grâce à ce contrôle, vous pouvez détecter des arrêts ou lignes désactivés dans votre offre courante.

Inclusion dans une zone géographique

L’utilisateur peut contrôler qu’un modèle est inclus dans une zone géographique donnée. Ainsi, un avertissement ou une erreur sera remontée si le modèle contrôlé n’est pas présent dans la zone définit.

 

Pour chaque modèle, il faut indiquer les coordonnées du coin supérieur gauche et du coin inférieur droit. Ces deux points sont utilisés pour définir un rectangle formant le périmètre de la zone géographique à contrôler.

Fournisseur attendu

L’utilisateur peut contrôler que le fournisseur d’un modèle appartient bien à son Espace de Travail.

Si le fournisseur n’appartient pas à l’Espace de Travail de l’utilisateur, une erreur ou un avertissement sera remontée par le contrôle.

Horaire inclus dans une période

L’utilisateur peut contrôler que les horaires de son offre sont compris dans une tranche horaire.

Il est possible de contrôler :

  • tous les horaires

  • seuls les premiers horaires de chaque mission

  • seuls les derniers horaires de chaque mission

Il est possible de configurer une période horaire avec un décalage de jour :

Par exemple, l’utilisateur peut configurer une tranche horaire de 5h jusqu'à 2h du matin le lendemain.

Unicité d’un code

L’utilisateur peut contrôler que la valeur d’un code dans un espace de code cible est unique selon un périmètre donné.

La portée d’unicité du code peut être par Groupe de Travail, Espace de travail ou par Fournisseur :

 

Les modèles pouvant être contrôlés sont :

  • Itinéraire (dans un jeu de données)

  • Mission (dans un jeu de données)

  • Courses (dans un jeu de données)

  • Calendrier (dans un jeu de données)

  • Arrêts

  • Lignes

  • Point d’accès

  • Point d’intérêt

  • Transporteur

  • Course

  • Document

Nombre de service dans un intervalle

Un utilisateur peut contrôler un nombre de service minimal et maximal sur un jeu de données. Cela peut être utiliser pour détecter un service insuffisant ou excessif pour une période et donc une erreur dans les données d’offre.

Pré-requis : pour lancer ce jeu de contrôles il faut que les statistiques de nombre services soient présents sur le jeu de données à contrôler. Pour calculer les statistiques de nombre de services, consultez la page : Jeux d'instructions | Calculer le nombre de services

 

 

Service en période de validité

Le contrôle de service en période de validité permet de vérifier qu’une ligne dans un jeu de données ne contient aucun service en dehors de sa période de validité. Si le contrôle détecte des courses qui circulent sur des dates qui sont en dehors de la période de validité de la ligne, un avertissement ou une erreur sera remontée.

Absence d’un attribut

Avec le contrôle “Absence d’un attribut”, l’utilisateur peut contrôler qu’un attribut spécifique est bien absent sur le modèle sélectionné.

L’utilisateur peut contrôler tous les attributs non obligatoires des cibles suivantes :

  • lignes

  • arrêts

  • points d’accès

  • point d’intérêt

  • itinéraire

  • mission

  • courses

  • transporteurs

  • document

  • correspondance

Par exemple, l’utilisateur peut contrôler que l’attribut “Référent” est bien absent dans le modèle arrêt:

 

Lancer un contrôle manuellement

Après avoir créé votre jeu de contrôles, vous pouvez l’exécuter. Il faut aller dans la liste des jeux de contrôles, sélectionner sur la roue dentée “Exécuter un Jeu de contrôles” :

Vous êtes redirigé vers la page d’exécution de votre jeu de contrôles. Vous devez y renseigner un nom et un jeu de données cible si nécessaire :

Après validation, le jeu de contrôles se lance et vous êtes redirigé vers un rapport de jeu de contrôles.

Rapport de Jeu de contrôles

Vous pouvez consulter la liste des rapports de jeux de contrôles créés par votre organisation dans “Espace de travail → Rapports de jeux de contrôles.

Dans un rapport de jeu de contrôles vous trouverez les informations sur le traitement et le jeu de contrôles lancé :

  • le nom donné au rapport de jeu de contrôles le nom du jeu de contrôles

  • le référentiel ciblé, s’il y en a un

  • le statut du jeu de contrôles (terminé ou en cours)

Dans le bloc Rapports de contrôles, vous trouverez un message et un lien pour chaque ressource ciblé par le contrôle :

Pour un utilisateur responsable du Groupe de Travail, il est possible de consulter les rapports de jeux de contrôles exécutés dans tous les Espaces de Travail.