Paramètres d'affichage

Choisissez un thème pour personnaliser l'apparence du site.

Startup : Startup fictive pour l'audit

Tapez le nom d'un outil non mutualisé et appuyez sur Entrée ou cliquez sur &quo;Ajouter&quo;

Produit : Produit fictif pour l'audit

Produit fictif pour jouer avec l'outil d'audit

Prod - Dev actif

Métier

Monolithe

Languages:

Typescript

Dépendances:

PostgreSQL

Redis

Hébergement:

Scalingo

Frontend:

NextJS

Backend:

NestJS

Authentification:

ProConnect

Chargement des consommations...

Chargement des recommandations...

Si vous constatez des erreurs dans ces informations, merci de nous les remonter.

Audit technique du produit Produit fictif pour l'audit

Comité d'investissement prévu pour le 14/09/2024

Ce questionnaire vise à recueillir des informations techniques sur le produit. Une réponse positive (Oui) est généralement attendue, mais une réponse négative (Non) peut être tout à fait appropriée en fonction du contexte. Dans ce cas, merci de préciser les raisons dans les commentaires.

Important : Le formulaire ne prend pas encore en charge l'édition simultanée. Si plusieurs personnes travaillent dessus en même temps, cela risque d'écraser les réponses des autres.

Merci pour votre contribution.

L'application est-elle déployée chez un hébergeur souverain ?Entreprise et serveurs en Union Européenne https://www.numerique.gouv.fr/services/cloud/doctrine/ https://www.numerique.gouv.fr/services/cloud/regles-doctrine/#contenu

Répondue

L'application est-elle déployée en haute disponibilité ?Cela implique d'avoir plusieurs instances pouvant répondre aux requêtes avec un load balancer. Ainsi, en cas de crash d'une instance les requêtes peuvent toujours être servies aux autres instances.

Répondue

Les bases de données sont-elles déployées en haute disponibilité ?Redondance avec master/slave. "Business" chez scalingoi

Répondue

Votre infrastructure est-elle gérée "As Code" ?L'Infrastructure as Code (IaC) vous permet de documenter les changements d'infra et de remonter vos applications suite à un désastre. Par exemple Terraform ou son équivalent open source "OpenTOFU"

Répondue

Votre application a-t-elle un nom de domaine en .anct.gouv.fr ?

Répondue

Monitorez-vous votre infrastructure ? Si oui, avec quels outils ?Par exemple avec des outils type Grafana, Metrics scalingo, ... (CPU, RAM, Disque, ...)

Répondue

Pour le monitoring de votre application, utilisez-vous l'instance Sentry proposée par l'Incubateur des territoires ?Sur https://sentry.incubateur.anct.gouv.fr . Si c'est https://sentry.incubateur.net il s'agit du Sentry de la DINUM.

Répondue

Recevez-vous une alerte en cas de downtime sur le produit ?par ex: updown.io (proposé par l'Incubateur)

Répondue

Recevez-vous une alerte en cas d'anomalie sur le produit ?Site très lent (alertes Grafana ou alertes Scalingo), utilisation serveurs anormale (disques durs, RAM, CPU), erreurs applicatives (alertes Sentry), etc...

Répondue

Suivez-vous des bonnes pratique de log ? Si oui lesquelles ?Par exemple : format JSON ou Logfmt, contenu des logs (timestamp, IP, requestID, ...)
Monitorez-vous les requetes lentes de votre base de données ?
Publiez-vous un postmortem après un incident de production ? Quel public y a accès ?
Vos medias publics sont-ils diffusés via un bucket s3 public sur un sous-domaine dédié avec HTTPS ?Par exemple https://storage.lesbases.anct.gouv.fr via edge services Pratique pour la gestion des CSP
Vos medias privés sont-ils diffusés via un bucket s3 privé avec des liens signés et générés par votre backend ?C'est bien le S3 qui sert l'asset et pas votre backend, par exemple AEI : https://gitlab.com/incubateur-territoires/startups/agents-intervention/agents-en-intervention/-/blob/dev/src/Service/S3ServiceImpl.php?ref_type=heads#L66-82
Avez-vous testé dans les 6 derniers mois votre procédure de backup et restore de la base de donnée ?

Répondue

Votre base de données est-elle infogérée (managée) ?Managée complètement par Scalingo ou Scaleway

Répondue

Les données sont-elles chiffrées au repos (at rest) ?Cela a pour but d'empêcher l'utilisation des données dans le cas d'une intrusion par exemple.

Répondue

La base de données a-t-elle un schéma homogène (Casse, Langue, ...) ?https://fr.wikipedia.org/wiki/Sensibilit%C3%A9_%C3%A0_la_casse

Répondue

Votre base de données comporte-t-elle des contraintes d'intégrité ?Contraintes de clé primaire, clé étrangère, d'unicité, etc...

Répondue

Avez-vous un processus de migration de schéma automatisé ?Fourni par exemple par Prisma, Doctrine, ...

Répondue

Utilisez-vous un ORM ?ORM : Outil qui traduit les données entre la base de données et les objets du code. Ex : Hibernate, SQLAlchemy, Entity Framework.

Répondue

Un des développeurs a-t-il une connaissance importante des critères RGAA ?Des formations via Beta.gouv sont possibles
Les tests automatiques (lighthouse) sont-ils à 100% sur toutes les pages ?

Répondue

Votre produit inclut-il une déclaration d'accessibilité ?si oui, donnez le lien en commentaire

Répondue

L’équipe réalise-t-elle les 10 easy checks régulièrement ?Par exemple avec l'outil Grist de Manon https://grist.incubateur.anct.gouv.fr/o/docs/3TT8oYijFBwn/Suivi-des-10-easy-Checks/p/14

Répondue

Le produit passe-t-il 100% des 10 easy checks sur toutes ses pages ?S'il y a des blocages, des experts sont dispo à l'incubateur

Répondue

Le produit a-t-il réalisé un pré-audit avec le pôle numérique inclusif (Anne-Sophie) ?

Répondue

Le produit a-t-il réalisé un audit RGAA via un prestataire externe ?
L’équipe (au moins PM & un dev) est elle sensibilisée à l'accessibilité ?Beta propose des formations https://espace-membre.incubateur.net/login?next=/formations

Répondue

Y-a-t-il un readme permettant de contribuer au projet de manière autonome ?Faire tourner le projet en local, pratiques de contribution, ...

Répondue

Existe t-il un DAT (Dossier d'Architecture Technique) ? (si oui, merci de mettre le lien en commentaire)https://gitlab.com/groups/incubateur-territoires/startups/infrastructures-numeriques/-/wikis/Dossier-d'architecture-technique https://github.com/betagouv/rdv-service-public/blob/production/docs/architecture-technique.md
Un Single Sign-On (SSO) est-il implémenté pour vos utilisateurs ?ProConnect / AgentConnect / MonComptePro

Répondue

Votre équipe adhère-t-elle à un pattern d'organisation de code prédéfini et documenté ?Proposé par votre framework ou MVC / DDD / Autre

Répondue

Appliquez-vous des pratiques d’éco-conception ? Saisissez en commentaire le score obtenu sur le site https://www.ecoindex.fr/

Répondue

Documentez-vous vos décisions d'architecture ? Si oui merci de mettre le lien en commentairehttps://blog.octo.com/architecture-decision-record https://github.com/joelparkerhenderson/architecture-decision-record https://en.wikipedia.org/wiki/Architectural_decision#cite_note-15 https://github.com/betagouv/rdv-service-public/tree/production/docs/decisions

Répondue

ProConnect : Stockez vous le sub pro-connect pour réconcilier entre votre base et le retour Proconnect ?Permet de supporter les changements d'email, cf https://partenaires.proconnect.gouv.fr/docs/fournisseur-service/donnees_fournies
Existe t-il un document de traitement des données (politique de confidentialité) ?Si oui, mettre le lien en commentaire https://rdv.anct.gouv.fr/politique_de_confidentialite

Répondue

Publiez-vous le budget de votre startup ?

Répondue

La fiche beta.gouv.fr de la startup est-elle à jour (membres, repo, stats, budget, ...) ?

Répondue

Les indicateurs de votre produit dans Dashlord sont-ils au minimum à la note E et exempts de tout avertissement (warning) ?https://dashlord.incubateur.anct.gouv.fr/

Répondue

Y a t-il dans votre équipe des notes de frais pour l'outillage ?précisez en commentaire les produits concernés
Une page stats est-elle en place pour visualiser vos métriques d'impact ?
Prenez-vous le temps de remettre en question régulièrement vos métriques d'impact ?
Avez-vous intégré une boucle de feedback à votre produit ? (Qualitatif)Si oui, précisez comment est collecté le feedback utilisateur. Par exemple https://jedonnemonavis.numerique.gouv.fr/
Evaluez-vous régulièrement l'utilité perçue de votre service ? (Quantitatif)Par exemple avec le Net Promoter Score (nécessite un minimum de ~100 / 200 réponses pour être statistiquement pertinent)
Le code est-il sur un repo public (GitHub/GitLab) ?

Répondue

Avez-vous un fichier de licence dans le repository ?Aide au choix de la license : https://licence-libre.incubateur.anct.gouv.fr/

Répondue

Existe t-il un fichier de contribution expliquant le workflow de contribution au projet ?https://contributing.md/ https://gitlab.com/incubateur-territoires/startups/espace-sur-demande/application/-/blob/develop/CONTRIBUTING.md

Répondue

Les données du produit sont-elles disponibles sur data.gouv.fr ?

Répondue

Un service externe peut-il s'interfacer avec votre produit en autonomie ?API Publique, documentée, self-service
Contrôlez-vous automatiquement que vos dépendances (librairies) sont à jour ?Par exemple avec Dependabot Secure > security configuration (GitLab)

Répondue

Votre stack technique (langages, runtimes, bases de données, infrastructure) est-elle à jour ?Secure > security configuration (GitLab)

Répondue

Avez-vous un outil d'analyse statique du code en place ?Complexité cyclomatique, ... Par exemple SonarQube, GitLab Code Quality, Github Code QL

Répondue

Exécutez-vous systématiquement les tests automatisés pour chaque Pull Request ?

Répondue

Le code est-il parcouru à 80% par les tests automatisés (code coverage) ?

Répondue

L'acceptation de nouveau code dans la branche principale passe-t-elle par des pull requests ?

Répondue

Un pipeline d’intégration & déploiement continue est-il en place ?

Répondue

Toute l'équipe travaille-t-elle sur un backlog commun dans le meme outil ? Par exemple un board Projets, Trello ou des issues GitLab

Répondue

Un standard de formatage de code et un linter sont-il en place ?

Répondue

Peut-on faire tourner le produit en local en 15 minutes ?C'est vraiment important, on va tester !

Répondue

Votre application est-elle en mono-repo ?On ne promeut pas forcément le mono-repo, on cherche avoir la vision globale sur votre produit.

Répondue

Les PM / PO / Stakeholders testent-ils les développements sur un environnement de test similaire à la prod ?Ces environnements sont parfois appelés feature apps ou review apps.

Répondue

La CI / CD tourne-t-elle sur les PRs en moins de 10 minutes ?
Les améliorations techniques sont-elles faciles à prioriser face aux nouvelles fonctionnalités ?Le travail de développement nécessite de travailler parfois sur des fonctionnalités du produit et d'autres fois de travailler à des sujets purements techniques qui n'apportent pas de nouvelles fonctionnalités. Ces sujets techniques peuvent cependant parfois être critiques pour la fiabilité et la qualité de l'application. Dans ces cas, il est important de pouvoir les prioriser correctement par rapport aux nouvelles fonctionnalités. À votre avis, est-ce que la communication avec les PM permet de correctement prioriser ces sujets ?

Répondue

Appliquez-vous un standard de nommage de commits, type conventional commit ?https://www.conventionalcommits.org/fr/v1.0.0/
Ressentez-vous un climat de confiance qui permet de partager ouvertement les difficultés et les succès durant les retros ?
Votre équipe a-t-elle défini et documenté des critères clairs pour considérer qu'une tâche est "prête à être développée" (Definition of Ready) et "prête à déployée" (Definition of Done)?Avez-vous des difficultées à l'interface dev / produit ?
Les données utilisées sur les environnements de développement ou de test sont-elles anonymisées ?Faker, ETL d'anonymisation, ...
Disposez-vous d'un glossaire expliquant le vocabulaire métier ?

Répondue

Vos utilisateurs ont-il accès à un changelog pour votre projet ?https://keepachangelog.com/fr/1.1.0/

Répondue

Pour l'analyse produit de votre application, utilisez-vous l'instance Matomo proposée par l'Incubateur des territoires ?https://matomo.incubateur.anct.gouv.fr/

Répondue

Adoptez-vous une approche guidée par l'impact pour introduire vos nouvelles fonctionnalités ?Par exemple : Commencer avec la version la plus minimale de la fonctionnalité, mesurer son impact. Décider si il faut continuer ou pas à investir sur cette fonctionnalitée.

Répondue

Utilisez-vous des frameworks pour la conception produit ?Par exemple Shape Up, dual-track agile, lean UX, etc...

Répondue

Faites-vous de la recherche utilisateur ?https://designgouv.notion.site/La-recherche-utilisateur-27f77d6e829a4187817be6f91398a78e

Répondue

Disposez-vous d'une cartographie des parcours utilisateurs (user journey) à jour ?Exemple A+ : https://www.notion.so/incubateurdesterritoires/Parcours-utilisateurs-principaux-1c7744bf03dd80c18685e982782950d6

Répondue

Organisez-vous des rétrospectives au moins une fois tous les deux mois ?

Répondue

Les rétrospectives aboutissent-elles systématiquement à des actions concrètes à mettre en place ?

Répondue

Utilisez-vous un système de CAPTCHA sur votre produit ? Si oui lequel ?

Répondue

Avez-vous une politique de rétention des données définie et appliquée ?GDPR

Répondue

Utilisez-vous les chiffrement pour les données en transit ?Par exemple utilisation de HTTPS entre le client et le serveur, ou TLS entre le serveur et la base de données.

Répondue

Avez-vous en place une détection des secrets dans le code exécuté sur la CI ?Par exemple détection GitLab / GitHub / SonarQube https://docs.gitlab.com/ee/user/application_security/secret_detection/ https://gitleaks.io/

Répondue

Utilisez-vous des MFAs (https://fr.wikipedia.org/wiki/Double_authentification) pour accéder aux interfaces d'administration de vos outils et infras ?Ex. : - dépôt de code (GitLab, GitHub...) - accès à l'interface d'administration de l'hébergeur - sentry - grafana - plus généralement, tous les outils qui concourent au bon fonctionnement du service...

Répondue

Utilisez vous des commits signés ?https://docs.gitlab.com/ee/user/project/repository/signed_commits/ https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits

Répondue

Disposez-vous d'une procédure de réponse aux incidents de sécurité ?Voici celle de l'incubateur : https://www.notion.so/incubateurdesterritoires/Proc-dure-de-R-ponse-et-Signalement-des-Incidents-de-S-curit-PRIS-184744bf03dd80deb69bc0916d6c1bbb#184744bf03dd80deb69bc0916d6c1bbb

Répondue

Utilisez-vous le coffre (Vaultwarden) de l'incubateur pour la génération, le stockage et le partage de secrets au sein de la startup ?https://coffre.incubateur.anct.gouv.fr/

Répondue

Tous les membres de l'équipe utilisent-ils un gestionnaire de mot de passe pour leurs accès nominatifs ?Par exemple le compte de l'hébergeur, le compte GitLab ou GitHub... https://www.notion.so/incubateurdesterritoires/La-boite-outils-tech-41e41e42094e4a85b876520a03cb044c?pvs=4#616778a9ecac45faa06373845ae2dbdb

Répondue

Un lien security.txt est-il mis en place sur votre service ?Permet à un reporter de vous prévenir d'une faille sur votre service https://securitytxt.org/

Répondue

Votre metabase a-t-il accès à des données personnelles sur votre base de données ?Des solutions existent, par exemple PGAnonymizer https://www.notion.so/incubateurdesterritoires/Metabase-on-scalingo-119744bf03dd8006a55ccaffd62a26af
Votre metabase utilise-t-il un utilisateur dédié avec des permissions en lecture seule pour accéder à la base de données ?
Disposez-vous d'une stratégie de déploiement territorial documentée ?
Mesurez-vous le coût d'acquisition de nouveaux utilisateurs ou territoires ?

Répondue

Avez-vous calculé le retour sur investissement (ROI) pour les collectivités qui adoptent votre solution ?
Avez-vous un plan de communication ou marketing pour promouvoir votre solution ?
Avez-vous un suivi des taux de conversion à chaque étape du parcours d'adoption (découverte, essai, adoption régulière) ?
Collaborez-vous ou avez-vous tenté de collaborer avec d'autres startups d'État ou services publics numériques pour créer des synergies ?
Avez-vous documenté votre proposition de valeur afin d'aligner l'équipe autour de celle-ci ?
Votre produit est-il référencé sur le comptoir du libre de l'addulact ?https://comptoir-du-libre.org/fr/softwares Process pour référencer votre produit : https://docs.numerique.gouv.fr/docs/a39920d1-ab80-4b94-b237-f066e35e251e/