Travaux antérieurs

Projet client

Système de gestion des patients

Un cabinet médical, avec une équipe pluridisciplinaire

Un logiciel qui permet aux médecins de gérer leurs patients et leurs dossiers médicaux, construit en équipe. J'ai travaillé sur le front end et sur le contrat d'API, avec un contrôle d'accès par rôle qui décide qui voit quoi.

Réalisé avec
Angular côté interface, Node.js derrière, MongoDB pour le stockage, et l'API documentée avec Swagger.
Ce qui a été testé
Contrôle d'accès par rôle sur les dossiers patients, avec l'API documentée dans Swagger pour que l'équipe puisse travailler sur un contrat commun.

Comment tout s'articule

  1. Médecins et personnel navigateur
  2. Interface Angular
  3. Contrat d'API Node.js, Swagger
  4. Contrôle du rôle appliqué sur le serveur
  5. Dossiers MongoDB

Le problème

Un cabinet avait besoin de l’enregistrement des patients et des dossiers médicaux dans un seul système, avec une règle stricte : tous ceux qui peuvent se connecter ne doivent pas tout voir. Avec des dossiers médicaux, le contrôle d’accès est la première exigence, pas une amélioration pour plus tard.

Ce que j’ai construit

J’ai travaillé dans une équipe pluridisciplinaire sur l’interface et sur la forme de l’API. Les patients, les pathologies et les dossiers se gèrent dans un front end Angular responsive ; l’accès dépend du rôle, si bien que ce qu’un utilisateur peut récupérer est décidé par le serveur, pas simplement masqué par l’interface.

Documenter l’API dans Swagger a permis à l’équipe de travailler en parallèle sans valider chaque champ en réunion.

Choix difficiles

Un contrôle d’accès appliqué côté serveur. La solution rapide consiste à cacher les boutons qu’un utilisateur ne devrait pas avoir et à s’arrêter là. Pour des dossiers médicaux, ce n’est pas un contrôle d’accès, c’est un déguisement, et le travail supplémentaire pour l’appliquer là où se trouvent les données en valait la peine.

Ce que je ferais ensuite

Un journal d’audit. Savoir qui a consulté quel dossier, et quand, c’est ce qu’on finira par demander au cabinet, et c’est impossible à reconstituer après coup.