Be Software Architecture Wise
Be Wise Apps

Read in English · Leer en español · Auf Deutsch lesen

Section 11.4 sur 11.8 · Avancé · 28 min de lecture

Gouvernance de l’architecture dans les organisations agiles

Leçon vidéo

5 min · narré en anglais, avec sous-titres
Écouter seulement (audio)
Lire la transcription

Comment une organisation composée de nombreuses équipes autonomes garde-t-elle une architecture cohérente, sans faire attendre tout le monde pour une approbation ? Cette leçon montre comment la gouvernance peut fonctionner si bien que les équipes la remarquent à peine.

Une ville ne peut pas demander au maire d’approuver chaque nouvelle cuisine. Elle fixe plutôt quelques principes, comme garder les rues praticables à pied. Elle a des règles de construction que des inspecteurs vérifient d’office. Et elle garde un comité pour les quelques décisions qui en ont vraiment besoin, comme un nouveau pont. Les habitants font la plupart des choses eux-mêmes, mais pour tout ce qui touche leurs voisins, on attend d’eux qu’ils consultent d’abord ces voisins. La gouvernance de l’architecture dans les organisations agiles fonctionne de la même façon.

La gouvernance veille à ce que les décisions significatives soient bien prises, cohérentes avec les objectifs de l’organisation, et réellement suivies. Elle utilise quatre types d’instruments. Un principe donne une direction durable et laisse place au jugement. Par exemple, chaque donnée métier a exactement un service propriétaire. Une norme est un choix précis et obligatoire, comme le fait que chaque service émette des traces et des journaux structurés de la même façon. Un garde-fou maintient les équipes dans des limites sûres pendant qu’elles travaillent, généralement de façon automatique. Par exemple, le pipeline rejette les images de conteneur provenant de registres non approuvés, sans aucune file d’attente. Un point de validation arrête le travail jusqu’à ce que quelqu’un l’approuve, comme une validation par la sécurité avant le traitement d’une nouvelle catégorie de données à caractère personnel. Préférez les garde-fous partout où une règle est objective, et gardez des points de validation précoces et peu nombreux.

Voici la différence en pratique. Avec un point de validation, une équipe conçoit, puis attend des semaines dans la file d’un comité de revue. Si la conception est refusée, elle est reprise, et attend de nouveau. Avec des garde-fous, l’équipe décide, et le pipeline vérifie automatiquement les règles objectives, grâce à la politique en tant que code et aux fonctions d’aptitude. Le changement peut arriver en production en quelques minutes. En dessous, une paved road faite de modèles et d’une plateforme fait de la voie prise en charge la voie la plus facile, si bien que la plupart des équipes se conforment sans qu’on le leur dise.

TOGAF, le cadre d’architecture d’entreprise de l’Open Group, donne à chaque principe quatre parties. D’abord, un nom court et facile à retenir, comme ce principe de la plateforme : un propriétaire pour chaque fait. Puis un énoncé : la règle en une ou deux phrases sans ambiguïté. Une justification explique le bénéfice pour l’entreprise, et les implications disent ce que le principe exige en pratique, y compris ce qu’il coûte. Deux tests repèrent les principes faibles. Une organisation raisonnable pourrait-elle choisir l’inverse ? « Les systèmes doivent être sécurisés » échoue, parce que personne ne choisit l’insécurité. « Préférer l’achat au développement pour les capacités génériques » réussit. Et le principe tranche-t-il une décision réelle ? Si personne ne peut citer un choix qu’il trancherait, c’est un slogan.

Si aucun comité ne décide, qui le fait ? Dans le processus de consultation, décrit par Andrew Harmel-Law en 2021, n’importe qui peut prendre une décision architecturale. Mais il faut d’abord solliciter l’avis de toutes les personnes sensiblement concernées, de personnes ayant une expertise pertinente, et souvent d’un forum consultatif ouvert qui se réunit chaque semaine. Le forum donne des avis ; il ne décide pas. La personne qui décide doit entendre les avis, mais n’est pas tenue de les suivre. Le but est de recueillir des contributions larges, pas d’obtenir un consensus, et la responsabilité reste à la personne qui décide. La décision et les avis reçus sont consignés ensemble, dans un enregistrement de décision d’architecture, ou ADR. Et des principes partagés et un radar technologique éclairent chaque décision.

Thoughtworks publie son Technology Radar deux fois par an depuis 2010. Il place les technologies dans des anneaux, chacune avec une courte raison écrite. De nombreuses organisations construisent le leur. Adopt signifie éprouvé et recommandé. Trial signifie digne d’être poursuivi sur un projet capable d’assumer le risque. Assess signifie digne d’être exploré, pour en comprendre l’effet. Et Hold, appelé Caution dans les éditions les plus récentes, signifie avancer avec prudence. Sur un radar interne, Hold dit en douceur « pas de nouveaux usages », sans interdire ce qui existe déjà.

Voici comment tout cela s’articule. L’équipe Commandes veut remplacer son relais d’outbox par interrogation par une capture des données modifiées, à l’aide d’un outil appelé Debezium, qu’aucune équipe n’a encore utilisé. Elle rédige une ébauche d’enregistrement de décision et la présente au forum consultatif. Les équipes plateforme, données et sécurité font leurs commentaires, et le forum suggère d’envisager l’option managée du fournisseur de cloud. L’équipe accepte la plupart des avis, mais rejette l’option managée en raison de son principe de portabilité, et consigne pourquoi. Elle ajoute des garde-fous : une fonction d’aptitude qui maintient le délai des événements sous deux secondes au quatre-vingt-dix-neuvième percentile, et une alerte sur le retard du slot de réplication. Debezium entre dans le radar en Trial, limité aux commandes, et les relais par interrogation passent en Hold. Au bout d’un trimestre, le groupe du radar examine l’expérience. Si elle est positive, Debezium passe en Adopt. Rien n’a attendu dans une file : la décision a pris environ une semaine.

La section complète présente trois principes commentés, la politique en tant que code et un guide de qui décide quoi. Ensuite, dans la section onze point cinq, nous verrons Team Topologies. À très vite.

Ce qu’il faut savoir

À quoi sert la gouvernance de l’architecture

La gouvernance de l’architecture est l’ensemble des pratiques par lesquelles une organisation s’assure que ses décisions techniques significatives sont bien prises, cohérentes avec ses objectifs et réellement suivies. Elle répond à quatre questions : qui peut prendre quelles décisions, comment les prendre, quelle direction suivre, et comment savoir si le résultat est conforme.

Ses finalités sont pratiques. La gouvernance aligne la technologie sur la stratégie, afin que cinquante équipes ne choisissent pas cinquante façons de stocker les données clients. Elle gère le risque et la conformité : la protection des données, la sécurité, l’accessibilité et la réglementation sectorielle exigent toutes des preuves que les règles sont respectées. Elle limite la diversité inutile, car chaque base de données, langage ou produit de messagerie supplémentaire exige des compétences, des correctifs et une astreinte. Elle protège les qualités dont aucune équipe n’est seule propriétaire, comme la latence de bout en bout, la sécurité et le coût. Et elle diffuse les enseignements, afin qu’une leçon payée par une équipe ne soit pas payée à nouveau par la suivante.

Les organisations agiles ressentent ici une tension. Le principe du Manifeste agile selon lequel les meilleures architectures émergent d’équipes auto-organisées (section 1.8) tire vers l’autonomie ; l’échelle, la réglementation et l’infrastructure partagée tirent vers l’alignement. Les descriptions de la culture d’ingénierie de Spotify par Henrik Kniberg ont popularisé l’expression autonomie alignée (aligned autonomy) pour désigner l’objectif : des équipes libres de décider du comment, dans une compréhension partagée du quoi et du pourquoi. La gouvernance est la mécanique qui rend cela possible. Mal faite, elle devient le lent processus d’approbation de la section 11.2 ; bien faite, les équipes la remarquent à peine, parce que la bonne façon de faire est aussi la plus facile.

Principes, normes, garde-fous et points de validation

La gouvernance utilise quatre types d’instruments, qui diffèrent par leur degré de contrainte et par le moment où ils agissent. Les principes d’architecture expriment une direction durable et laissent place au jugement. Les normes sont des choix précis et obligatoires (tous les services exposent des traces OpenTelemetry ; toutes les API publiques sont décrites en OpenAPI). Les garde-fous (guardrails) maintiennent les équipes dans des limites sûres pendant qu’elles travaillent, généralement de façon automatique et continue. Les points de validation (gates) arrêtent le travail jusqu’à ce que quelqu’un l’approuve.

Les instruments de la gouvernance

InstrumentExempleForceRisque
PrincipeChaque donnée métier a exactement un service propriétaireGuide de nombreuses décisions, y compris imprévuesTrop vague pour agir, ou ignoré en pratique
NormeTous les services émettent des traces OpenTelemetry et des journaux JSON structurésCohérence, outillage partagé, intégration facile des nouveaux arrivantsDevient obsolète ; bloque de meilleures options ; les exceptions s’accumulent
Garde-fou (guardrail)Le pipeline rejette les images de conteneur provenant de registres non approuvésContinu, rapide, objectif, sans file d’attenteNe fonctionne que pour les règles qu’une machine peut vérifier ; peut être contourné si personne n’en est responsable
Point de validationValidation par la sécurité avant le traitement d’une nouvelle catégorie de données à caractère personnelUn jugement humain responsable pour les décisions irréversibles à fort enjeuRetards, retour tardif, contournement et approbation de pure forme

Points de validation ou garde-fous

Avec des points de validation, l’équipe attend un comité de revue avant de construire ; avec des garde-fous, les équipes décident et le pipeline vérifie les règles automatiquement, avec l’appui d’une paved road, du processus de consultation et de principes partagésPar points de validationÉquipeconçoitFile du comitédes semainesApprouvé ?BuildMise prodrefusé : reprise et nouvelle attentePar garde-fousÉquipedécidePipeline avec garde-fouspolicy as code, fonctions d’aptitudeminutesMise prodConsultationdécisions significativesPrincipes et radardirection communePaved roadmodèles, plateforme
Un point de validation fait attendre l’approbation à chaque conception significative ; les garde-fous vérifient en continu les règles objectives et laissent les personnes libres pour les décisions qui demandent du jugement.

Le consensus moderne, sans être universel, consiste à préférer les garde-fous aux points de validation partout où une règle peut être énoncée objectivement, à réserver les points de validation aux quelques décisions qui exigent réellement un jugement humain responsable, et à les tenir tôt et dans un temps limité. Une paved road (chemin balisé) (terme de Netflix ; Spotify parle de golden path) complète les deux : quand la façon prise en charge de construire un service inclut déjà les images approuvées, la journalisation, l’analyse de sécurité et le déploiement, la plupart des équipes se conforment sans qu’on le leur dise, et l’effort de gouvernance peut se concentrer sur les écarts délibérés. La section 10.7 présente les plateformes qui fournissent de tels chemins.

Rédiger des principes d’architecture

TOGAF, le cadre d’architecture d’entreprise de l’Open Group (le TOGAF Standard, 10th Edition, 2022), fournit un modèle de principes largement utilisé, en quatre parties. Le nom est court et facile à retenir. L’énoncé exprime la règle en une ou deux phrases sans ambiguïté. La justification explique le bénéfice pour l’entreprise, en des termes qu’un commanditaire non technique pourrait accepter. Les implications disent ce que le principe exige en pratique : ce qui doit être fait, ce qu’il coûte et ce qu’il exclut. TOGAF énumère aussi les critères d’un bon ensemble de principes : compréhensible, robuste (assez précis pour trancher les cas difficiles), complet, cohérent et stable.

Deux tests repèrent la plupart des principes faibles. D’abord, une organisation raisonnable pourrait-elle choisir l’inverse ? « Les systèmes doivent être sécurisés » échoue ; personne ne choisirait l’insécurité. « Préférer l’achat au développement pour les capacités génériques » réussit, car certaines organisations préfèrent à juste titre développer. Ensuite, le principe change-t-il une décision réelle ? Si personne ne peut citer un choix qu’il trancherait, c’est un slogan. Andrew Harmel-Law demande un ensemble ni trop petit pour couvrir les besoins essentiels ni trop grand pour que les équipes s’en souviennent, issu des équipes elles-mêmes et lié à la stratégie de l’entreprise, plutôt que des maximes générales de programmation ou des pratiques. Des principes moins nombreux et plus tranchants sont retenus et utilisés ; les longues listes ne le sont pas.

Exemple commenté

Exemple commenté : trois principes pour la plateforme de livraison de repas

Rédigés par les architectes avec les responsables d’équipe, discutés au forum consultatif et publiés avec le radar. Chacun suit la structure TOGAF.

Nom de P1Un propriétaire pour chaque fait
ÉnoncéChaque type de donnée métier (commandes, cartes, positions des livreurs, paiements) a exactement un service propriétaire, qui est seul à l’écrire ; les autres utilisent son API ou ses événements.
JustificationDes données partagées modifiables couplent les mises en production des équipes et rendent les erreurs intraçables (section 7.1). Une propriété claire permet aux équipes de modifier leurs schémas et de déployer indépendamment, et c’est ainsi que l’entreprise livre chaque semaine.
ImplicationsAucun service ne lit ni n’écrit les tables d’un autre. Le reporting utilise les événements publiés ou un entrepôt de données. Toute nouvelle donnée doit avoir un propriétaire nommé avant d’être stockée. Une fonction d’aptitude vérifie les identifiants de base de données de chaque service.
Nom de P2Asynchrone entre domaines
ÉnoncéLes domaines s’intègrent par défaut au moyen d’événements publiés ; les appels synchrones entre domaines ne sont utilisés que lorsque l’utilisateur attend la réponse.
JustificationLes chaînes synchrones multiplient l’indisponibilité et ajoutent de la latence (section 6.1) ; le pic du vendredi et les pannes des partenaires sont les plus grands risques opérationnels de l’entreprise.
ImplicationsLes équipes conçoivent pour la cohérence à terme et des consommateurs idempotents. Chaque appel synchrone entre domaines a un délai d’expiration, une solution de repli et un budget de latence. Davantage d’investissement opérationnel dans le courtier et le traçage.
Nom de P3Acheter le générique, développer le cœur, rester portable
ÉnoncéLes capacités génériques (identité, paiements, e-mail, supervision) sont achetées ou utilisées comme services managés ; les capacités différenciantes (optimisation de l’affectation, outils pour les restaurants) sont développées. La logique métier reste derrière des ports, et non à l’intérieur des services propriétaires d’un fournisseur.
JustificationLe temps d’ingénierie est la ressource la plus rare et doit aller là où l’entreprise affronte la concurrence (sous-domaines cœurs, section 5.7), tout en évitant une dépendance au fournisseur qui affaiblirait le pouvoir de négociation (section 10.8).
ImplicationsLa question acheter ou développer est posée explicitement dans chaque ADR concerné. Les services managés sont accessibles via des adaptateurs. Certaines fonctionnalités managées qui créent une forte dépendance au fournisseur sont refusées, même quand elles sont pratiques.

Chaque principe tranche des choix réels et récurrents, et une organisation raisonnable pourrait choisir autrement.

Les implications comprennent des coûts, pas seulement des avantages.

P1 et P2 peuvent en partie être appliqués sous forme de garde-fous ; P3 exige un jugement humain, il est donc appliqué au moyen du processus de consultation.

Prise de décision décentralisée : le processus de consultation

Si les décisions ne passent plus par un comité, qui les prend ? L’article d’Andrew Harmel-Law Scaling the Practice of Architecture, Conversationally (martinfowler.com, décembre 2021) a proposé une réponse empruntée aux organisations autogérées : le processus de consultation (advice process). Sa règle unique est que n’importe qui peut prendre une décision architecturale, à condition de solliciter, avant de décider, l’avis de toutes les personnes qui seront sensiblement concernées et de personnes ayant une expertise pertinente. La personne qui décide doit entendre et consigner les avis, mais n’est pas tenue de les suivre ; le but est de recueillir des contributions larges, pas d’obtenir un consensus. La responsabilité reste à la personne ou à l’équipe qui décide, et c’est ce qui fait fonctionner la règle : les personnes qui savent qu’elles assument les conséquences sollicitent sérieusement des avis.

Harmel-Law décrit quatre éléments d’appui. Les enregistrements de décision (ADR, section 4.5) sont l’outil de réflexion et de consignation, et incluent les avis reçus, de qui et quand. Un forum consultatif d’architecture, généralement hebdomadaire, d’environ une heure et ouvert à tous, donne de la visibilité aux nouveaux spikes, aux décisions proposées et à celles qui sont réexaminées ; point crucial, il donne des avis mais ne décide pas. Des principes d’architecture issus des équipes donnent une direction commune. Et un radar technologique interne montre le paysage technologique actuel de l’organisation et sa position à son égard.

Le processus de consultation

Dans le processus de consultation, la personne qui décide sollicite l’avis des équipes concernées, d’experts et du forum consultatif, puis décide et consigne la décision et les avis dans un ADR, guidée par les principes et le radar technologiqueDécisionnairemembre d’équipeÉquipes touchéesExpertssécu., données, opsForum consult.hebdo., ouvertdemande l’avisDécidesans être tenupar les avisADRdécision etavis consignésPrincipes et radar technoguident
Les avis viennent des personnes concernées et des experts ; la décision et les avis sont consignés ensemble, et la responsabilité reste à la personne qui décide.

Le processus de consultation a des modes de défaillance qu’il vaut la peine de connaître. Les décisionnaires peuvent ne consulter que les personnes susceptibles d’être d’accord ; une liste publiée de qui doit être consulté pour quels types de décisions (la sécurité pour tout ce qui touche aux données à caractère personnel, l’équipe plateforme pour toute nouvelle infrastructure) y remédie. Les avis peuvent être sollicités trop tard, une fois le code écrit ; faire de l’ADR proposé le début du travail, et non sa fin, y remédie. Et certaines personnes trouvent d’abord inconfortable que le forum ne décide pas. Dans les environnements réglementés, le processus peut coexister avec un petit nombre de points de validation formels, appliqués uniquement là où la loi ou l’appétence au risque de l’organisation l’exige.

Radars technologiques

Thoughtworks publie son Technology Radar deux fois par an depuis 2010. Chaque édition place une centaine de blips (techniques, outils, plateformes, ainsi que langages et frameworks : les quatre quadrants) dans des anneaux qui expriment une recommandation. Adopt signifie éprouvé et recommandé ; Trial, digne d’être poursuivi sur un projet capable d’assumer le risque ; Assess, digne d’être exploré pour en comprendre l’effet ; et l’anneau le plus extérieur, appelé Hold pendant la majeure partie de l’histoire du radar et Caution dans ses éditions les plus récentes, signifie avancer avec prudence. Chaque blip est accompagné d’une courte justification écrite, qui en est la partie la plus précieuse.

De nombreuses organisations construisent leur propre radar, pour elles-mêmes plutôt que pour l’industrie. Thoughtworks fournit un outil open source, Build Your Own Radar, qui génère un radar à partir d’une feuille de calcul ou d’un fichier CSV avec les colonnes name, ring, quadrant, isNew et description. La valeur tient moins à l’image qu’au processus : les équipes proposent des blips, un petit groupe réunissant des représentants de nombreuses équipes en discute, les anneaux sont attribués avec une raison écrite, et le radar est actualisé chaque trimestre ou chaque semestre. Un anneau Hold est un outil de gouvernance doux mais efficace : il dit « pas de nouveaux usages » sans interdire ce qui existe déjà. Un radar diffère d’une liste de technologies approuvées en ce qu’il est explicitement provisoire et argumenté, et qu’il consigne ce que l’organisation a appris, y compris ses erreurs.

Exemple commenté

Exemple commenté : une entrée du radar et l’enregistrement de décision qui la sous-tend

L’équipe Commandes veut remplacer son relais d’outbox par interrogation (polling) (section 6.7) par une capture des données modifiées (CDC) avec Debezium, qui lit le journal d’écriture anticipée (write-ahead log) de la base de données et publie les changements dans Kafka. Aucune équipe n’a encore utilisé Debezium, si bien que la décision concerne l’équipe plateforme, qui exploite Kafka Connect, et l’équipe données, responsable de l’exploitation des bases de données.

1. ÉbaucheL’équipe rédige l’ADR-0031 avec le statut Proposé et le présente au forum consultatif hebdomadaire
2. Solliciter des avisLes équipes plateforme, données et sécurité commentent la pull request ; le forum suggère d’envisager la CDC managée du fournisseur de cloud
3. DéciderL’équipe Commandes accepte la plupart des avis, rejette l’option managée en raison du principe P3 (portabilité) et consigne pourquoi
4. ProtégerUne fonction d’aptitude sur le délai des événements (p99 inférieur à 2 s) et une alerte sur le retard du slot de réplication sont ajoutées
5. RadarDebezium entre dans le radar en Trial, limité aux commandes ; les relais par interrogation passent en Hold
6. RevueAu bout d’un trimestre, le groupe du radar examine l’expérience ; si elle est positive, Debezium passe en Adopt et la note de revue de l’ADR est close

L’entrée du radar est le court résumé public ; l’ADR contient le raisonnement et les avis. Chacun renvoie à l’autre.

L’anneau Trial est limité dans sa portée, ce qui garde la décision réversible pendant que l’organisation apprend.

Rien n’a attendu dans une file : la décision a pris environ une semaine, consacrée pour l’essentiel à recueillir des avis réellement utiles.

name,ring,quadrant,isNew,description
Debezium for outbox relay,Trial,Tools,TRUE,"Change data capture from the order database's write-ahead log to Kafka, replacing polling relays. Trial in ordering only; see ADR-0031. Owner: ordering team. Review: Q3."
Polling outbox relay,Hold,Techniques,FALSE,"Adds load and latency at peak; no new uses. Existing relays move when Debezium leaves Trial."
Les entrées du radar au format CSV de Build Your Own Radar (name, ring, quadrant, isNew, description).
# ADR-0031: Use Debezium change data capture for the ordering outbox relay

Status: Accepted (2026-05-14)   Decision-taker: Priya N., ordering team
Context: The polling relay queries the outbox table every 500 ms. At 100 orders/s
it adds measurable database load and up to 1 s of event delay to dispatch.
Options: (1) tune polling; (2) Debezium CDC on the write-ahead log; (3) managed CDC
from the cloud provider.
Decision: Option 2, for the ordering service only, as a Trial on the radar.
Advice received:
- Platform team (2026-05-06): supports; will run Kafka Connect, needs runbook.
- Data team (2026-05-07): concern about replication slot growth if Connect stops;
  asks for an alert on slot lag. Accepted.
- Security (2026-05-08): CDC user must have replication rights only. Accepted.
- Advisory forum (2026-05-09): suggested option 3; rejected for portability (P3).
Consequences: lower load and delay; a new component to operate; slot-lag alert
and a fitness function on event delay (p99 under 2 s) added.
Review: after one quarter, or before any second service adopts it.
L’ADR-0031 dans un format compact à la Nygard, avec les avis consignés comme l’exige le processus de consultation.

Le rôle de l’architecture d’entreprise aujourd’hui

L’architecture d’entreprise (section 1.2) a eu une réputation difficile dans les organisations agiles : des équipes centrales produisant des cadres, des normes et des processus d’approbation que les équipes de livraison vivaient comme des obstacles. Le rôle évolue. Dans les organisations où il fonctionne bien, les architectes d’entreprise entretiennent les principes et le radar plutôt que de les dicter, tiennent à jour la carte des capacités métier et des systèmes qu’aucune équipe ne peut voir seule, prennent ou facilitent les décisions de type porte à sens unique qui concernent réellement toute l’organisation (identité, données centrales, stratégie cloud, grands fournisseurs), animent le forum consultatif, et façonnent la plateforme et la paved road avec les équipes plateforme.

L’image de Gregor Hohpe, celle de l’architecte qui prend l’ascenseur entre la salle du conseil et la salle des machines (section 11.7), décrit la compétence que cela exige : traduire la stratégie en orientation technique et les contraintes techniques en langage métier. Les praticiens restent en désaccord sur le degré d’autorité centrale qui est sain. Certains soutiennent qu’une fonction centrale forte est indispensable dans les entreprises réglementées, marquées par de nombreuses fusions ou très intégrées ; d’autres, que l’essentiel de sa valeur peut être apporté par des plateformes, des principes et des avis. La réponse dépend de la taille de l’organisation, de sa réglementation et de la part de son paysage de systèmes qui est réellement partagée.

La conformité par l’automatisation

Quel que soit le modèle organisationnel, la conformité la moins coûteuse est automatisée. Les fonctions d’aptitude (section 11.3) vérifient les caractéristiques d’architecture. La politique en tant que code (policy as code) fait de même pour les règles de l’organisation : les règles sont écrites dans un langage lisible par une machine, conservées sous contrôle de version, revues et testées comme du code, et évaluées automatiquement par rapport aux définitions d’infrastructure, aux manifestes de déploiement ou aux requêtes d’API. Open Policy Agent, projet diplômé (graduated) de la Cloud Native Computing Foundation, est un moteur généraliste largement utilisé, doté de son propre langage de politiques, Rego ; Conftest applique des politiques Rego aux fichiers de configuration dans un pipeline, et des contrôleurs d’admission comme OPA Gatekeeper ou Kyverno font appliquer des politiques à l’intérieur des clusters Kubernetes.

L’automatisation de la conformité a un autre avantage que les organisations réglementées apprécient particulièrement : la preuve. Un journal de pipeline montrant que chaque mise en production a passé les mêmes vérifications constitue une preuve bien plus solide pour un auditeur qu’un formulaire signé, et il est produit sans coût supplémentaire.

package main

import rego.v1

# Guardrail: images must come from the organisation's scanned registry
deny contains msg if {
    input.kind == "Deployment"
    some c in input.spec.template.spec.containers
    not startswith(c.image, "registry.fooddelivery.example/")
    msg := sprintf("%s: image %s is not from the approved registry", [input.metadata.name, c.image])
}

# Guardrail: every container declares a memory limit
deny contains msg if {
    input.kind == "Deployment"
    some c in input.spec.template.spec.containers
    not c.resources.limits.memory
    msg := sprintf("%s: container %s has no memory limit", [input.metadata.name, c.name])
}
Deux garde-fous sous forme de politiques Rego, vérifiés sur les manifestes de déploiement Kubernetes avec Conftest (conftest test deploy/) à chaque exécution du pipeline.

Équilibrer autonomie et alignement

La question pratique est de savoir quelles décisions sont gouvernées, et comment. Une règle utile découle de la section 1.6 : plus une décision est réversible et locale, plus elle doit être prise près de l’équipe ; plus elle est irréversible et largement ressentie, plus elle demande d’avis et, parfois, d’approbation. Le tableau présente une répartition typique ; chaque organisation ajuste la sienne.

Qui décide quoi

Type de décisionQui décideMécanismeExemple
Locale et réversibleL’équipeJugement de l’équipe ; ADR si elle est significativeUne bibliothèque au sein d’un service ; la structure interne des modules
Touche d’autres équipes, réversible à un coût modéréL’équipe, après consultationProcessus de consultation, forum consultatif, radarAdopter Debezium ; un nouvel événement publié pour d’autres équipes
À l’échelle de l’organisation ou difficile à inverserUn décisionnaire senior nommé, après une large consultationProcessus de consultation avec les architectes d’entreprise ; modification d’un principe ou du radarChoix du fournisseur d’identité ; fournisseur de cloud principal
Règles objectives et vérifiablesPersonne, au cas par casGarde-fous : politique en tant que code et fonctions d’aptitudeRegistres d’images approuvés ; aucun bucket de stockage public
Réglementée ou à fort enjeuUn approbateur responsablePoint de validation précoce, limité dans le temps, avec preuvesTraitement de données concernant la santé ; fonctions liées à la sûreté

La gouvernance doit elle-même être mesurée. Les signaux utiles sont le temps que prennent les décisions significatives entre la proposition et l’acceptation, le nombre d’exceptions aux normes demandées et accordées, la part des services qui suivent la paved road, le nombre de technologies en Hold qui continuent de se répandre, et le fait que des incidents remontent ou non à des décisions prises sans consultation. Si les décisions sont lentes, la gouvernance est trop lourde ; si des incidents continuent de remonter à des décisions non consultées, elle est trop légère.

Guide de décision

Guide de décision : point de validation, garde-fou ou consultation ?

Utilisez-le pour décider comment une règle ou un type de décision donné doit être gouverné.

  1. La règle peut-elle être énoncée objectivement et vérifiée par une machine ?
    OuiFaites-en un garde-fou : politique en tant que code ou fonction d’aptitude dans le pipeline, avec un responsable et une procédure d’exception.
    NonContinuez.
  2. La décision est-elle locale à une équipe et peu coûteuse à inverser ?
    OuiLaissez l’équipe décider ; consignez un ADR si elle est significative.
    NonContinuez.
  3. La loi, la réglementation ou l’appétence au risque de l’organisation exigent-elles une validation par une personne responsable ?
    OuiUtilisez un point de validation, mais tenez-le tôt, limitez-le dans le temps et rendez explicites les preuves dont il a besoin.
    NonContinuez.
  4. S’agit-il d’une porte à sens unique qui touche de nombreuses équipes ?
    OuiUtilisez le processus de consultation en consultant largement, y compris les architectes d’entreprise, et avec un décisionnaire senior nommé.
    NonUtilisez le processus de consultation : consultez les personnes concernées et les experts, puis décidez et consignez.

Vérifiez votre compréhension

Quelle est la différence entre un garde-fou et un point de validation ?

Un garde-fou maintient le travail dans des limites en continu, généralement au moyen de vérifications automatisées, sans l’arrêter ; un point de validation arrête le travail jusqu’à ce que quelqu’un l’approuve.

Quelles sont les quatre parties d’un principe d’architecture à la manière de TOGAF ?

Nom, énoncé, justification et implications.

Dans le processus de consultation, qui prend la décision, et cette personne doit-elle suivre les avis ?

La personne ou l’équipe qui prend la décision, qui doit solliciter et consigner les avis des personnes concernées et des experts, mais n’est pas tenue de les suivre.

Que signifie généralement, pour les usages existants, le placement d’une technologie dans l’anneau Hold d’un radar ?

Cela signifie qu’aucun nouvel usage ne doit commencer ; les usages existants ne sont pas interdits, même s’ils peuvent être migrés au fil du temps.

Suivant · 11.5Team TopologiesComment concevoir ensemble les équipes et le logiciel : les quatre types d’équipes, les trois modes d’interaction, la charge cognitive, les API d’équipe et les plans de fracture, avec une réorganisation commentée des équipes de la plateforme de livraison de repas.Continuer →

Sources et lectures complémentaires

Une question sur cette section ? ArchitectBot, l’assistant d’étude IA du cours, répond d’abord à partir du cours.

Demander : « Nous avons douze équipes produit et un comité d’architecture dont tout le monde se plaint. Comment introduire le processus de consultation et un radar technologique sans perdre le contrôle des décisions relatives à la sécurité et aux données ? »