Language selection

Rechercher

Portail

Alerte COVID a été mis hors service. Pour en savoir davantage, visitez la page d’accueil d’Alerte COVID du gouvernement du Canada.

Le portail Alerte COVID est une application basée sur le Web permettant aux professionnel·le·s de santé de générer des clés à usage unique. Il est conçu comme une solution simple et flexible que les autorités sanitaires peuvent adopter et que les professionnel·le·s de santé peuvent intégrer à leurs flux de travail.

Articles de blogue connexes :

Recherche

Comment la clé à usage unique peut être perçue durant une période de stress

Nous avons compris que les autorités de santé publique étaient les mieux placées pour distribuer les clés à usage unique en raison de leur contact direct avec les cas positifs (ce qui limiterait les fausses notifications et réduirait les points de contact pour les utilisateur·rice·s). Pour comprendre les conséquences de ce système, nous avons d’abord mené une recherche secondaire sur la réception de mauvaises nouvelles par les patient·e·s. Nous nous sommes également reportés à d’autres recherches en conception sur les applications GAEN, le cas échéant.

Méthodologie :

  • Entrevues par téléphone
  • Recherche axée la découverte
  • Recherche secondaire

Quand : en juillet 2020

Conclusions :

  • Les patient·e·s sont susceptibles d’être stressé·e·s et de ne pas pouvoir gérer l’information. Il leur faudra donc du temps pour traiter l’annonce de leur diagnostic positif et de la clé à usage unique.
  • En plus d’être stressante pour les utilisateur·rice·s de l’application, elle crée des conversations difficiles pour les enquêteur·trice·s de cas.
  • Le jardon utilisé dans l’application pourrait contribuer à amplifier la confusion.
  • L’utilisation de l’alphabet phonétique a été utile pour l’application GAEN des Pays-Bas.

Réception de la clé à usage unique

La distribution de la clé à usage unique est une partie importante du service, car en cas d’erreur, toute la conception du service s’effondre. Pour apprendre comment la distribution de clés à usage unique peut être vécue par les professionnel·le·s de santé et par les utilisateur·rice·s de l’application, nous avons demandé à une personne du SNC de jouer le rôle de professionnel·le de santé durant les séances auprès des utilisateur·rice·s de l’application. Durant l’étude suivante (distribution de la clé à usage unique), nous avons demandé à un acteur de jouer le rôle d’un utilisateur de l’application durant les sessions auprès des professionnel·le·s de santé.

Méthodologie : Tests d’utilisabilité

Participant·e·s : 9 participant·e·s (utilisateur·rice·s de l’application ayant tôt adopté la technologie)

Quand : août 2020

Conclusions :

  • Des problèmes logistiques se posaient quant à la réception de l’appel du ou de la professionnel·le de santé (comme la méfiance vis-à-vis des appels intempestifs ou d’arnaque et les problèmes de connexion).
  • Les gens devaient mettre l’appel sur haut-parleur pour pouvoir écrire la clé.
  • Les utilisateur·rice·s devaient lire les écrans sur l’application tout en écoutant le ou la professionnel·le de santé.
  • Certaines personnes avaient besoin de directives supplémentaires de la part du ou de la professionnel·le de santé pour passer de l’appel à l’application, savoir où cliquer pour saisir la clé, savoir si la clé était en majuscules ou en minuscules.
  • Les participant·e·s s’inquiétaient de leur état émotionnel et de leur capacité à se souvenir d’informations s’ils ou elles recevaient un véritable appel téléphonique au sujet de leurs résultats de tests. Une personne a suggéré de fournir des instructions de suivi.

Distribution de la clé à usage unique

Cette étude avait des objectifs similaires à celle sur la réception de la clé à usage unique, mais du point de vue des professionnel·le·s de santé. Une personne membre du SNC a joué le rôle de l’utilisateur·rice de l’application durant les sessions avec les professionnel·le·s de santé.

Méthodologie : Tests d’utilisabilité, sessions individuelles

Participant·e·s :

  • 9 participant·e·s
  • Des utilisateur·rice·s du portail, dont certain·e·s avaient reçu une formation sur Alerte COVID et d’autres non

Quand : en octobre 2020

Conclusions :

  • L’application est complexe et il est difficile d’expliquer son fonctionnement aux gens par téléphone. Les enquêteur·trice·s de cas avec lesquel·le·s ne se disaient pas très portés sur la technologie. Il leur était pourtant demandé d’expliquer aux gens quelque chose de très technique par téléphone.
  • Les professionnel·le·s de santé ont déjà fait face à de nombreux changements dans leur travail. Le système Alerte COVID demande un apprentissage conséquent. Les enquêteur·trice·s doivent apprendre les tenants et les aboutissants d’un produit très compliqué pour pouvoir parler de la clé à usage unique à un petit pourcentage de leurs cas.

Mesures de performance de la clé à usage unique

La clé à usage unique peut être distribuée de différentes façons et par le biais de différents canaux. Cet examen des mesures de performance vise à comparer les différents canaux en matière de taux de distribution et de « conversion » (nombre de personnes ayant reçu un diagnostic positif qui saisissent leur clé à usage unique dans l’application).

Méthodologie : examen des mesures de performance

Quand : octobre-novembre 2020

Conclusions :

  • Pour chaque nouveau cas, c’était par le biais du site Web que le plus de clés à usage unique étaient générées. Mais étonnamment, parmi les utilisateur·rice·s de l’application ayant reçu leur clé à usage unique sur le site Web, le taux de saisie de cette clé dans l’application était faible.
  • Pour chaque nouveau cas, le modèle québécois (selon lequel les utilisateur·rice·s de l’application appellent au lieu de recevoir l’appel) était celui qui générait le moins de clés à usage unique. En revanche, il s’agissait du modèle présentant le plus grand nombre de clés à usage unique soumises dans l’application. Cela était probablement dû au fait que les personnes étaient disposées à saisir une clé à usage unique (d’un point de vue temporel et spatial).
  • Le cas de l’appel d’un·e infirmier·ère à un·e utilisateur·rice présentait le plus faible taux de saisie d’une clé à usage unique (un taux proche de celui du site Web). Ce canal de distribution présentait également un faible taux de génération de clés à usage unique.

Flux d’invitation et d’inscription au portail

Avec quelques personnes utilisant le proxy, nous en avons appris davantage sur le flux d’invitation et d’inscription sur le portail. Nous voulions veiller à ce que le flux d’invitation et d’inscription soit aussi fluide que possible, surtout compte tenu du travail intense et mouvementé des professionnel·le·s de santé.

Méthodologie : Tests d’utilisabilité

Participant·e·s :

  • 2 participant·e·s
  • Les professionnel·le·s de santé utilisant le proxy ne donnaient pas de résultats de tests à la COVID-19.

Quand : septembre 2020

Conclusions :

  • Le courriel d’invitation n’indique pas clairement ce qu’il se passerait si l’invitation venait à expirer. Nous pourrions aussi nous demander ce que les gens feraient s’ils avaient entamé le processus, mais ne l’avaient pas terminé sous 24 heures.
  • Pour répondre au courriel d’invitation, les personnes invitées pourraient avoir besoin de se voir rappeler ce que sont l’application et le portail et la raison pour laquelle elles doivent se créer un compte.
  • Le terme « Nom d’utilisateur·rice » sur l’écran d’accueil implique qu’il pourrait exister un nom d’utilisateur·rice distinct de leur adresse courriel.

Conception

Nous avons conçu le portail Alerte COVID de façon axée sur l’humain, en tenant compte du fait que certain·e·s utilisateur·rice·s seraient des professionnel·le·s de santé qui géreraient déjà des défis liés à la COVID-19 comme une charge de travail accrue.
Cette section met l’accent sur les lignes et principes directeurs que nous avons suivis pour concevoir le portail et les artefacts liés à cette conception.

Lignes directrices

Conception de contenu

  • Utiliser « code de connexion » au lieu de « code de sécurité », puisque ça évoque davantage l’action de se connecter au portail.
  • Utiliser le générique « employés » pour parler des utilisateurs du portail; dans la plupart des provinces et territoires, ce sont des professionnels de la santé, mais au Québec, ce sont des agents de liaison.
  • Utiliser « téléphone mobile » au lieu de « téléphone », « cellulaire » ou « téléphone intelligent »; ce terme permet d’une part d’être spécifique, car l’utilisateur doit pouvoir recevoir des textos, et il permet d’autre part de tirer avantage du champ lexical possible avec « mobile » (application, numéro, etc.).
  • Si le contexte le demande, utiliser « application mobile » au long pour éviter toute ambiguïté avec « application », parfois compris sous le sens de candidature.
  • Dans le menu de navigation supérieur, utiliser des verbes à l’infinitif (p. ex., générer des clés); ils servent d’appel à l’action pour chacune des actions possibles. Dans le menu de navigation latéral de la section « Le portail », utiliser des nominalisations (p. ex., génération de clés); les utilisateurs ne peuvent pas y accomplir d’actions, seulement obtenir des informations sur les actions possibles.
  • Utiliser « administrateur » dans sa forme longue, pas « admin ».
  • Ponctuer les instructions en rouge pour faciliter la lecture à l’aide d’un lecteur immersif.
  • Utiliser l’infinitif pour les boutons.

Conception d’interactions

  • Viser la simplicité et l’automatisme → La délivrance de clés à usage unique ne requiert aucune saisie manuelle. Le ou la professionnel·le de santé peut passer d’un patient à l’autre sur le portail en trois étapes simples.
  • Réduire les risques d’erreur → Confirmation encouragée. Accompagnement à chaque étape. Les étapes pouvaient être lues comme un script de façon à simplifier la charge cognitive liée à l’utilisation du portail comme interface entre le ou la professionnel·le de santé et le ou la patient·e.
  • Se limiter à une étape par page → Nous appliquons généralement cette règle aux pages de formulaires, car cela divise la charge cognitive en petites étapes plus digestes. Il est possible d’utiliser le même principe pour diviser les interactions entre le ou la professionnel·le de santé, le ou la patient·e ayant reçu le diagnostic et le portail. Chaque page comprend une quantité d’instructions limitée que le ou la professionnel·le de santé lit au ou à la patient·e, comme un script.
  • Garder le même rythme que l’application → Ce point était important pour éviter la confusion des utilisateur·rice·s. Il était également important de synchroniser les mises à jour de l’application et du portail si le flux de délivrance des clés à usage unique changeait pour l’application.

Alphabet radio

Pour aider les gens lors de la réception de leur clé à usage unique par téléphone, nous avons développé un nouvel alphabet radio plus accessible pour les différent·e·s membres de la communauté. Cet alphabet est destiné à être employé par les utilisateur·rice·s du portail afin de communiquer clairement les lettres incluses dans la clé à usage unique, laquelle se compose de 10 caractères alphanumériques. L’objectif était de réduire le risque de clés à usage unique incorrectes.

Nous avons choisi les mots de notre alphabet radio selon les critères suivants :

  • similitude anglais-français;
  • usage courant dans diverses cultures;
  • longueur d’au moins 2 syllabes;
  • sons évocateurs;
  • absence de connotations négatives.

Article de blogue connexe : La clé, c’est la communication : un alphabet radio pour Alerte COVID

Artéfacts de conception

Première utilisation du portail

Ce flux d’intégration représente le parcours d’une personne utilisant le portail Alerte COVID pour la première fois.

L’utilisateur·rice reçoit une invitation à une formation. Si cela est possible, il ou elle participe à cette formation pour en apprendre davantage sur l’application Alerte COVID, le portail de santé et les clés à usage unique, et reçoit de la documentation de formation. Si cela n’est pas possible, il ou elle reçoit simplement de la documentation de formation.

Il ou elle reçoit ensuite un courriel l’invitant à utiliser le portail. Il ou elle clique sur le lien contenu dans le courriel. Si le lien a expiré, des instructions permettent de recevoir une nouvelle invitation. Si le lien est valide, l’utilisateur·rice peut commencer à créer son compte en saisissant ses renseignements personnels. Si l’utilisateur·rice possède un téléphone mobile, il ou elle reçoit un code d’authentification à 2 facteurs par message texte. Dans le cas contraire, il ou elle reçoit 10 codes à usage unique.

L’utilisateur·rice procède ensuite à l’authentification à l’aide du code. Si le code est erroné, l’utilisateur·rice peut demander l’envoi d’un nouveau code par message texte ou saisir à nouveau le code. Si le code est correct, l’utilisateur·rice accède à la page de bienvenue. Il ou elle clique sur « Continuer » et accède à une page permettant de générer une clé. En cliquant sur « Générer une clé », il ou elle accède à une page affichant une clé à usage unique.

Architecture de l’information du portail

Ce diagramme représente l’architecture d’information du portail Alerte COVID.

Lorsqu’un ou une utilisateur·rice n’est pas authentifié·e, il ou elle peut créer un compte ou se connecter sur la page d’accueil. Il ou elle peut également voir la section « À propos » et la page d’assistance dans le menu de navigation supérieur. Dans la section « À propos », il ou elle peut obtenir des informations sur : Alerte COVID en général, la génération de clés à usage unique et la gestion d’équipes. Dans le pied de page, il ou elle peut accéder aux pages « Contact », « Confidentialité » et « Conditions d’utilisation ».

Lorsqu’un ou une utilisateur·rice est authentifié·e, il ou elle dispose des accès nécessaires pour générer des clés à usage unique. Les étapes nécessaires pour cette fonctionnalité sont détaillées. Il ou elle a également accès à la gestion de son compte, qui lui permet de gérer ses renseignements personnels. Les administrateur·trice·s ont accès à « Gérer l’équipe », qui leur permet de visualiser et de gérer les membres de l’équipe, d’ajouter de nouveaux comptes et de gérer les invitations au portail.

Description technique

Le portail Alerte COVID permet aux professionnel·le·s de santé de générer des clés à usage unique pour les donner aux patient·e·s ayant reçu un diagnostic positif à la COVID-19. Les clés sont valides pendant 24 heures et chaque compte peut générer 100 clés sur une période de 24 heures.

Les principaux objectifs du service sont de simplifier la distribution de codes aux patient·e·s par les professionnel·le·s de santé et de rendre extrêmement difficile l’accès à l’application pour les acteur·trice·s et utilisateur·rice·s non autorisé·e·s. Le portail complète l’application Alerte COVID.

Informations sur le code source et référentiel

Le portail Alerte COVID est une application Django : elle peut être exécutée comme processus Python ou à l’aide de docker-compose.

  • L’exécution locale du portail Alerte COVID comme processus Python nécessite python3 et une base de données. Une base de données SQL sera créée si aucune chaîne de connexion n’existe.
  • Pour utiliser docker-compose, il faut d’abord installer Docker.

Le référentiel GitHub portal repo contient l’ensemble du code lié au portail Alerte COVID.

Le code est organisé en différentes applications. L’application principale est le portail, mais nous avons  spécialement créé d’autres applications de soutien dans le cadre du projet : about, announcements, covid_key, invitations, contact, backup_codes, profiles, register et outbreaks. Dans le dossier principal (covid-alert-portal), le fichier .env contient tous les paramètres pour l’ensemble des clés API, les clés et informations en matière d’autorisation, les URL de la base de données et toute autre information de configuration ne se trouvant pas dans le fichier settings.py.

Structure du référentiel

DossierObjectif
/.github/workflowspipelines CI/CD /workflows
/aboutÀ propos de l’application
/announcementsApplication annonces
/backup_codesApplication de codes de secours
/configInfrastructure AWS et configuration Terraform
/contactApplication Contact
/covid_keyApplication Clé COVID
/google_analyticsCode et configuration de Google Analytics
/locale/fr/LC_MESSAGESTraductions en français et paramètres de langue
/outbreaksApplication Éclosions
/portalApplication principale
/profilesApplication Profils
/protoc-3.15.4-linux-x86_64Version binaire du compilateur de tampon de protocole (protoc)
/registerApplication d’Inscription (Code QR)
/staticfilesAccueil de tous les fichiers statiques générés

Veuillez lire le fichier LISEZ-MOI du portail pour en savoir plus sur :

  • la façon de créer et d’exécuter l’application;
  • le développement continu et le développement de fonctionnalités;
  • les tests automatisés;
  • la gestion des versions de l’application

Pile technologique

Outils tiers utilisés :

Nous utilisons des services tiers pour améliorer le flux de développement et assurer une sécurité continue.

  • GitHub est un service infonuagique qui conserve notre code source, surveille les changements qui y sont apportés et simplifie son examen.
  • GitHub Actions est un service d’intégration et de déploiement continus (IC/DC) qui nous permet de tester et de déployer notre code depuis GitHub.
    • Ces services sont légion, mais nous avons choisi GitHub Actions pour sa facilité d’installation et pour sa configuration basée sur le yml permettant de s’en détacher facilement.
  • Heroku est un outil de type plateforme en tant que service entièrement géré. Nous utilisons les applications de révision de Heroku pour créer des applications temporaires pour chaque notification de retrait, ce qui simplifie la révision de code.
  • Docker est un outil de type plateforme en tant que service utilisant la virtualisation au niveau du système d’exploitation pour livrer des logiciels en conteneurs. Les conteneurs regroupent une application, son code et tous les fichiers de configuration, bibliothèques et dépendances connexes nécessaires au fonctionnement de ladite application. Le portail peut fonctionner comme une application sur un conteneur Docker.
  • Terraform est un outil d’infrastructure en tant que code (IaC) permettant de créer et de modifier une infrastructure ainsi que de la décliner en plusieurs versions. Le portail utilise des scripts Terraform pour son déploiement AWS.
  • Snyk est un produit de type SaaS qui examine nos dépendances pour les paquets présentant des problèmes connus. Il nous signale lorsqu’une version de ce paquet que nous utilisons présente du code malveillant exploitant une faille de sécurité.
  • LGTM est un produit de type SaaS qui permet des analyses de sécurité en continu. Il analyse chaque demande de tirage à la recherche de problèmes de sécurité potentiels.
  • Flake8 est un linter avancé qui analyse le code Python.
  • Black est un formateur de code Python.

Sécurité et confidentialité

Les fonctionnalités de sécurité suivantes ont été mises en œuvre sur le portail Alerte COVID :

Accessibilité

En matière d’accessibilité, nous avons suivi des lignes directrices basées sur  le guide d’accessibilité du SNC.

Date de modification :