Cette page décrit la manière dont le travail est organisé et ce qui en garantit la qualité. Elle ne remplace pas la proposition : elle répond à la question que posent généralement les ingénieurs du client — en quoi cela diffère-t-il d'une présentation.
La plateforme, c'est ce qui ne connaît aucun service en particulier.
La définition n'est pas descriptive mais vérifiable. Le test s'applique à n'importe quelle ligne de code : s'il faut la modifier pour ajouter un nouveau service, ce code n'appartient pas à la plateforme.
| Plateforme | Hors plateforme |
|---|---|
| Mécanisme de contrôle d'un champ | Règle « la date de naissance ne peut suivre la date d'enregistrement » |
| Mécanisme de demande interadministrative | Demande de l'acte de naissance |
| Moteur d'itinéraire avec suspension des délais | Itinéraire d'un service donné |
| Moteur de gabarits avec code lisible par machine | Texte du formulaire |
Le service, lui, n'est pas un programme. Un service est un enregistrement de données : formulaire, règles, itinéraire, états, délais, demandes de données, créances, gabarits, notifications, niveau d'accès requis. La plateforme l'interprète. D'où ce qui justifie toute l'entreprise : publier un service n'est pas publier une version de la plateforme.
Le modèle reproduit l'architecture d'un système de services publics en exploitation, construit par des membres de notre équipe. Le service y est un ensemble de réglages de blocs, conservé sous forme de spécification lisible par machine dans un dépôt distinct, et non un programme inscrit dans le code de la plateforme.
Pour l'appréciation du risque, la différence est importante. Nous ne validons pas une hypothèse aux dépens du client : l'approche a été éprouvée à l'échelle nationale, et nous savons non seulement qu'elle fonctionne, mais aussi où elle achoppe. Tous les écueils connus figurent parmi les risques, assortis de mesures.
Sur les quatorze éléments que requiert le premier service, aucun n'est codé pour le suivant. Restent la description, l'assemblage et, si l'administration est nouvelle, son raccordement.
coût relatif d'un service ██████████████████████████████████ premier service : étude, assemblage, poste de travail, formation ███████████████████ service d'une nouvelle administration ██████████ service exigeant un nouveau type de données ███ service de la même administration ────────────────────────────────────
La courbe décroît non parce que nous gagnons en expérience, mais parce que le raccordement d'une administration est un travail unique, que les services de cette même administration réutilisent intégralement. D'où la règle de planification : une vague se constitue par administration, et non par popularité des services. Cinq services d'une même administration coûtent environ quatre fois moins que cinq services relevant de cinq administrations.
La troisième carte importe autant que les deux premières. Le raccordement d'une administration est un travail distinct, d'une ampleur comparable à celle de tous les services de cette administration réunis. Nous le disons d'emblée : le client qui l'apprendrait plus tard serait fondé à s'estimer induit en erreur.
La conception forme une chaîne unique, et sa cohérence est vérifiée par un programme, non par relecture. Une rupture dans n'importe quel maillon arrête la vérification.
Le premier passage de la vérification a relevé huit ruptures. Elles ont été traitées sur le fond, et non par ajustement des chiffres : un cas d'usage d'essais avec procès-verbal a été créé pour les exigences non fonctionnelles, le plan de sortie et la conformité des licences ont été rattachés à la réception de la livraison, et un renvoi superflu a été supprimé. Le modèle de calcul n'en a pas été modifié — et il ne devait pas l'être : la vérification détecte les écarts, elle ne les réécrit pas.
Le code source, la documentation et les procédures de déploiement sont remis à chaque livraison, et non à l'issue du programme. La remise conditionne la clôture de la réception : si elle n'est pas confirmée, la livraison n'est pas reçue.
La vérification est simple et littérale : les agents du client déploient un environnement depuis zéro en suivant la documentation, sans notre intervention. Une plateforme que nous seuls savons déployer reste la nôtre, quelle que soit la forme juridique donnée aux droits.
Les catalogues complets des exigences, des cas d'usage, de l'architecture et des plans de réalisation sont remis dans un dossier distinct, sur demande.