Read in English · Leer en español · Auf Deutsch lesen
Section 11.2 sur 11.8 · Avancé · 26 min de lecture
Revues légères et risk-storming
Leçon vidéo
5 min · narré en anglais, avec sous-titresÉcouter seulement (audio)
Lire la transcription
Toutes les décisions n’ont pas besoin d’une évaluation formelle. Dans cette leçon, vous allez découvrir des revues courtes et pratiques qui trouvent les risques tant qu’ils coûtent encore peu à corriger.
Avant une longue randonnée, un groupe avisé étale la carte sur la table. Chacun, en silence et de son côté, marque les endroits qui l’inquiètent : le passage de la rivière, la pente raide, le tronçon sans réseau téléphonique. Puis ils comparent. Les endroits marqués par beaucoup de personnes reçoivent un plan. Un endroit marqué par une seule personne reçoit une question, car cette personne sait peut-être quelque chose que les autres ignorent. Les revues d’architecture légères fonctionnent exactement ainsi.
De nombreuses organisations ont recours à un comité de revue : des architectes seniors qui se réunissent chaque mois et approuvent ou rejettent des conceptions. L’intention est bonne, mais les résultats sont souvent médiocres, pour des raisons structurelles. Le calendrier. Le comité voit généralement une conception trop tard, après un prototype, un fournisseur et une date promise ; il approuve donc avec des conditions que personne ne suit. Le contexte. Des relecteurs qui découvrent le système posent des questions génériques et manquent des risques que les membres de l’équipe pourraient citer en quelques minutes. Les incitations. Quand une revue est un examen, les équipes présentent la conception qu’elles veulent faire approuver, pas les doutes qu’elles ont. Et l’attente. Des semaines d’attente poussent les équipes à qualifier leurs décisions de mineures, pour éviter le comité. La revue fonctionne mieux quand elle est fréquente, précoce, collaborative et centrée sur les risques.
Le risk-storming a été créé par Simon Brown, l’auteur du modèle C4. D’abord, affichez des diagrammes de ce que vous prévoyez de construire, en général un diagramme de contexte système et un diagramme de conteneurs. Ensuite, chacun écrit des risques en silence, un par note adhésive, pendant une dizaine de minutes. Le silence empêche la première personne qui parle, ou la plus haut placée, d’ancrer tous les autres. Troisièmement, chacun place ses notes sur la partie du diagramme que chaque risque concerne. Des grappes apparaissent aussitôt, et le diagramme devient une carte de chaleur. Quatrièmement, l’examen. Discutez des grappes, puis examinez de près les risques soulevés par une seule personne, et ceux auxquels différentes personnes ont donné des priorités très différentes. Chaque risque est noté comme la probabilité multipliée par l’impact, chacun étant coté de un à trois ; les scores vont donc de un à neuf. Six ou neuf, c’est élevé.
Voici le diagramme de conteneurs de la plateforme de livraison de repas après le rassemblement, avec les scores obtenus en additionnant les notes. Neuf sur le prestataire de paiement externe, et six sur le service des commandes qui l’appelle de façon synchrone. Six sur l’API gateway partagée, par laquelle passent les trois apps. Et six sur le service de notifications, qui joint les restaurants par un service push externe. Ce sont ces points chauds qu’il faut discuter en premier.
Six personnes, dont l’exploitation, la sécurité et un ingénieur du support, ont passé soixante-quinze minutes sur ce diagramme. Après dix minutes de silence, trente et une notes ont été affichées, qui se sont regroupées en huit risques distincts. Le prestataire de paiement a obtenu neuf, soulevé par quatre personnes. Son action : un enregistrement de décision sur l’autorisation asynchrone, confié à l’architecte, à rendre dans deux semaines. Les notifications aux restaurants sans accusé de réception n’ont été soulevées que par l’ingénieur du support, qui voit chaque vendredi des réclamations pour commandes manquées. C’était le constat le plus précieux, venu de la personne la moins susceptible de parler en premier. Les compétences Kafka ont été notées neuf par une personne et deux par les autres. Le seul ingénieur qui avait déjà exploité Kafka a expliqué les problèmes, et le groupe s’est accordé sur quatre. C’est la connaissance qui a tranché, pas la moyenne. La perte de données du stockage des positions au redémarrage a été jugée ne pas être un risque, car les positions se rafraîchissent toutes les quatre secondes. Cela aussi a été consigné, avec son hypothèse. Chaque risque retenu a quitté la salle avec un responsable et une action, et le registre des risques a été publié le jour même.
Le risk-storming examine une structure. Un pre-mortem, décrit par Gary Klein en 2007, examine un plan. Chacun imagine que le projet a déjà échoué, gravement, et écrit pourquoi. Il fait émerger des doutes sur les compétences, les calendriers et les fournisseurs que les revues de diagrammes manquent. Les katas d’architecture, créés par Ted Neward, sont des énoncés d’entraînement pour de petites équipes. Ils développent la capacité à expliquer une conception face aux questions, et à poser de bonnes questions sur celle de quelqu’un d’autre. La Tiny Architectural Review Approach, ou TARA, examine un système qui fonctionne déjà. Elle combine le jugement d’experts et l’analyse automatisée du code et des données d’exécution. Et pour une revue de conception écrite, énoncez la décision recherchée et une date limite pour les commentaires, nommez les relecteurs obligatoires, et demandez que chaque commentaire soit étiqueté comme question, suggestion ou objection bloquante.
La section complète propose un format de revue de quatre-vingt-dix minutes, un guide pour choisir une technique et une liste de contrôle de questions. Ensuite, dans la section onze point trois, nous transformerons les revues en vérifications continues grâce aux fonctions d’aptitude. À très vite.
Ce qu’il faut savoir
- Les comités de revue qui se réunissent à des étapes fixes ont tendance à voir les conceptions trop tard, manquent de contexte, suscitent des présentations défensives et ajoutent un délai d’attente ; une revue indépendante fonctionne mieux lorsqu’elle est fréquente, précoce, collaborative et centrée sur les risques.
- Le risk-storming (Simon Brown) comporte quatre étapes : dessiner des diagrammes, identifier les risques individuellement et en silence, les rassembler sur les diagrammes, puis les examiner et les résumer, en notant la probabilité multipliée par l’impact de 1 à 9.
- Un pre-mortem (Gary Klein, Harvard Business Review, 2007) demande aux participants d’imaginer que le projet a déjà échoué et d’écrire pourquoi, ce qui fait émerger des doutes sur les plans, les compétences et les calendriers que les revues de diagrammes manquent.
- Les katas d’architecture (Ted Neward) développent les compétences de conception et de revue, tandis que TARA (Eoin Woods) examine les systèmes existants en combinant le jugement d’experts et l’analyse automatisée du code et des données d’exécution.
- Les revues écrites de conception et de RFC fonctionnent mieux avec une décision énoncée, une date limite pour les commentaires, des relecteurs obligatoires et des commentaires étiquetés comme questions, suggestions ou objections bloquantes.
- Une bonne revue produit un registre des risques avec des responsables, des dates, les risques acceptés et les non-risques avec leurs hypothèses, publié en quelques jours et suivi dans le backlog habituel.
Pourquoi les comités de revue lourds échouent souvent
De nombreuses organisations gouvernent l’architecture au moyen d’un comité de revue d’architecture : un groupe d’architectes seniors qui se réunit chaque mois, reçoit une présentation ou un long document, et approuve ou rejette des conceptions. L’intention est bonne : un regard indépendant et expérimenté sur les décisions importantes. Les résultats sont souvent médiocres, pour des raisons structurelles plutôt que personnelles.
Le calendrier est le premier problème. Un comité qui se réunit à des étapes fixes voit une conception soit trop tôt (rien n’est encore décidé), soit, bien plus souvent, trop tard, quand l’équipe a déjà construit un prototype, s’est engagée auprès d’un fournisseur et a promis une date. Un rejet coûte alors si cher que le comité approuve avec des conditions que personne ne suit. Le contexte est le deuxième : des relecteurs qui passent une heure sur un système qu’ils n’ont jamais vu posent des questions génériques et manquent les risques précis que les développeurs, les équipes d’exploitation et les ingénieurs sécurité de l’équipe pourraient citer en quelques minutes. Les incitations sont le troisième : quand une revue est un examen, les équipes présentent la conception qu’elles veulent faire approuver, pas les doutes qu’elles ont, et le comité apprend peu. L’attente est le quatrième : une réunion mensuelle à l’ordre du jour chargé ajoute des semaines d’attente à chaque décision importante, ce qui pousse les équipes à éviter le comité en qualifiant leurs décisions de mineures.
Rien de tout cela ne signifie qu’une revue indépendante est inutile. Les secteurs réglementés (banque, santé, aviation) exigent souvent une validation documentée, et certaines décisions ont réellement besoin de l’autorité d’un groupe de haut niveau. La leçon est que la revue doit être fréquente, précoce, collaborative et centrée sur les risques, l’approbation formelle étant réservée aux rares décisions qui l’exigent vraiment. La section 11.4 revient sur la façon dont la gouvernance peut fonctionner sans points de validation lents.
Ce qu’apporte une bonne revue légère
Une revue légère est une séance courte et structurée, en général d’une heure ou deux, pendant laquelle les personnes qui connaissent le mieux une conception et quelques personnes qui la découvrent cherchent ensemble les risques. Elle vise quatre choses : découvrir les risques tant qu’ils coûtent peu à traiter, construire une compréhension partagée de la conception dans l’équipe, offrir une remise en question indépendante des hypothèses de l’architecte, et laisser une trace des risques acceptés, atténués ou écartés. Son résultat est une liste de risques priorisée avec des responsables, pas un verdict.
Plusieurs techniques correspondent à cette description. Elles diffèrent par ce qu’elles examinent (un diagramme, un plan, un document ou un système en fonctionnement) et par ce qu’elles font le mieux, et elles se combinent bien.
Les techniques de revue légère comparées
| Technique | Examine | Idéal pour | Durée habituelle |
|---|---|---|---|
| Risk-storming (Simon Brown) | Diagrammes d’architecture | Trouver rapidement les risques techniques avec toute l’équipe | 45 à 90 minutes |
| Pre-mortem (Gary Klein) | Un plan ou une décision | Faire émerger les doutes sur l’ensemble de l’entreprise, y compris les personnes et le calendrier | 30 à 60 minutes |
| Kata d’architecture (Ted Neward) | Un énoncé court, inventé ou réel | Développer les compétences de conception et explorer des alternatives | 1 à 3 heures |
| TARA (Eoin Woods) | Un système existant : personnes, documents, code et données d’exécution | Évaluer la dérive et les risques d’un système en fonctionnement | Quelques jours de travail d’experts |
| Revue de conception ou de RFC | Une proposition écrite | Des commentaires asynchrones et ouverts à tous avant la construction | Une période de commentaires de quelques jours, plus une courte réunion |
| Revue par liste de contrôle | Toute conception | S’assurer que les angles morts habituels ont été examinés | Intégrée à l’une des techniques ci-dessus |
Risk-storming
Le risk-storming est une technique visuelle et collaborative créée par Simon Brown, l’auteur du modèle C4 (section 4.3). Il repose sur une observation simple : des personnes différentes voient des risques différents, et le meilleur moyen de les recueillir est de placer tout le monde devant les mêmes diagrammes et de demander à chacun de les examiner seul avant d’en discuter. Il comporte quatre étapes.
1. Dessiner l’architecture. Affichez des diagrammes de ce que vous prévoyez de construire ou de modifier, idéalement à plus d’un niveau : un diagramme de contexte système et un diagramme de conteneurs suffisent en général, avec un diagramme de composants pour le conteneur le plus risqué. 2. Identifier les risques individuellement. Chaque participant écrit en silence un risque par note adhésive, avec une courte description et une priorité, pendant une dizaine de minutes. Le silence compte : il empêche la première personne qui parle, ou la plus haut placée, d’ancrer tous les autres, ce qui est la principale façon dont les discussions de groupe perdent de l’information. 3. Rassembler les risques sur les diagrammes. Chacun place ses notes sur la partie du diagramme que le risque concerne. Des grappes apparaissent immédiatement, et le diagramme devient une carte de chaleur. 4. Examiner et résumer. Le groupe discute des grappes, puis accorde une attention particulière à deux types de notes : les risques soulevés par une seule personne (souvent quelqu’un qui possède un savoir que les autres n’ont pas, comme l’ingénieur du support) et les risques auxquels différentes personnes ont donné des priorités très différentes (signe d’un malentendu). Les risques retenus entrent dans un registre des risques avec des responsables ; les éléments dont on a convenu qu’ils ne sont pas des risques sont consignés aussi.
La priorité se note en général comme la probabilité multipliée par l’impact, chacun étant coté faible (1), moyen (2) ou élevé (3), ce qui donne des scores de 1 à 9. Les recommandations de Brown les répartissent en élevé (6 ou 9), moyen (3 ou 4) et faible (1 ou 2), représentés par convention avec des notes roses ou rouges, jaunes ou orangées, et vertes. Une liste de rappel aide chacun à penser au-delà de sa propre spécialité : scalabilité, disponibilité, performances, sécurité, cohérence des données, dépendances envers des tiers, coût, maturité des technologies, compétences de l’équipe, et livraison et exploitation.
Une carte de chaleur de risk-storming sur un diagramme de conteneurs
Exemple commenté
Exemple commenté : un risk-storming du diagramme de conteneurs de la plateforme de livraison de repas
Six personnes (l’architecte, deux développeurs, un ingénieur d’exploitation, un ingénieur sécurité et un ingénieur du support qui traite les réclamations des restaurants) ont passé 75 minutes sur le diagramme de conteneurs ci-dessus, avec le diagramme de contexte système à côté. Chacun a écrit des risques en silence pendant dix minutes ; 31 notes ont été affichées, qui se sont regroupées en 8 risques distincts.
| Prestataire de paiement sur le chemin synchrone de la commande (9) | Soulevé par quatre personnes. Les ralentissements du prestataire au pic bloquent la prise de commande. Action : enregistrement de décision sur l’autorisation asynchrone avec un état de commande en attente ; responsable : l’architecte ; échéance dans deux semaines |
|---|---|
| Notifications aux restaurants sans accusé de réception (6) | Soulevé uniquement par l’ingénieur du support, qui voit chaque vendredi des réclamations pour commandes manquées. Personne d’autre n’était au courant. Action : livraison avec accusé de réception, renvoi et alerte quand une tablette cesse d’accuser réception ; responsable : l’équipe des notifications |
| Configuration partagée de la gateway (6) | Un seul changement de route défectueux peut faire tomber les trois apps à la fois. Action : configuration de la gateway par app et déploiement canary des changements de gateway |
| Basculement de la base de données des commandes jamais testé (6) | Le réplica existe, mais sa promotion n’a jamais été répétée. Action : exercice de basculement trimestriel, mesuré par rapport au scénario de reprise |
| Compétences Kafka (notées 9 par une personne, 2 par les autres) | Le seul ingénieur qui avait déjà exploité Kafka a expliqué le rééquilibrage des partitions pendant les déploiements, le retard des consommateurs et les erreurs de rétention. Après discussion, le groupe s’est accordé sur 4 : réel mais gérable. Action : service Kafka managé et un runbook |
| Trafic de position des livreurs passant par la gateway (4) | Environ 2250 mises à jour par seconde partagent la gateway avec le trafic des commandes. Action : mesurer lors du prochain test de charge ; endpoint d’ingestion séparé si la latence des commandes en pâtit |
| Retard du consommateur de l’affectation au pic (4) | Action : alerte sur le retard des consommateurs ; ajouter une fonction d’aptitude au test de charge |
| Le stockage des positions perd ses données au redémarrage (2) | Convenu que ce n’est pas un risque : les positions se rafraîchissent toutes les 4 secondes. Consigné comme tel, avec l’hypothèse |
Le constat le plus précieux (les notifications aux restaurants) est venu de la personne la moins susceptible de prendre la parole en premier dans une discussion ouverte : c’est tout l’intérêt de l’identification individuelle et silencieuse.
Le désaccord sur Kafka a été résolu par la connaissance, pas en faisant la moyenne des scores.
Chaque risque retenu a quitté la salle avec un responsable et une action ; le registre a été publié le jour même.
Les pre-mortems
Le risk-storming examine une structure. Un pre-mortem examine un plan. Gary Klein l’a décrit dans la Harvard Business Review en septembre 2007. Une autopsie (post-mortem) explique pourquoi un patient est mort, ce qui aide tout le monde sauf le patient ; un pre-mortem a lieu avant le début du projet, quand les réponses peuvent encore en changer le cours.
La procédure est courte. L’animateur présente au groupe le plan ou la décision, puis annonce que l’on se trouve quelques mois plus tard et que le projet a échoué, gravement. Chaque personne passe quelques minutes à écrire, seule, toutes les raisons de l’échec qui lui viennent à l’esprit. L’animateur fait ensuite le tour de la salle en recueillant une raison à la fois jusqu’à épuisement des listes, et le responsable du plan les examine pour trouver des moyens de le renforcer. Klein cite des travaux de Deborah Mitchell, Jay Russo et Nancy Pennington (1989) montrant qu’imaginer qu’un événement s’est déjà produit (le recul prospectif) augmente d’environ 30 % la capacité des personnes à trouver les raisons de résultats futurs. Ce cadrage change aussi la dynamique sociale : la question n’est plus de savoir si le plan pourrait échouer, ce qui paraît déloyal, mais pourquoi il a échoué, ce qui invite à la créativité.
En architecture, les pre-mortems sont particulièrement utiles avant les gros engagements : adopter un style piloté par les événements, migrer vers un nouveau cloud, remplacer un système hérité (section 11.6) ou introduire une plateforme. Parmi les résultats typiques qu’une revue fondée sur les diagrammes manquerait : l’équipe qui manque de compétences dans la nouvelle technologie, la migration qui s’enlise à mi-chemin avec deux systèmes à exploiter, un fournisseur clé qui change ses tarifs, et le métier qui perd patience avant que les bénéfices apparaissent.
Les katas d’architecture
Les katas d’architecture ont été créés par Ted Neward, en s’inspirant des katas de code de Dave Thomas, comme exercices d’entraînement pour les architectes. Un kata est un court énoncé décrivant un système fictif (quelques paragraphes d’exigences, d’utilisateurs et de contraintes, volontairement incomplets). De petites équipes de trois à cinq personnes y travaillent pendant un temps fixé, en interrogeant un modérateur qui joue le client pour découvrir les exigences manquantes, puis esquissent une architecture et la présentent aux autres équipes, qui la contestent durement mais loyalement avant que la salle ne vote. Neal Ford tient à jour une collection publique de katas, et O’Reilly a organisé des compétitions de katas d’architecture.
Les katas ne sont pas des revues d’une conception réelle, mais ils contribuent à la culture de la revue de deux façons. Ils développent la capacité à expliquer et à défendre une conception face aux questions, et à poser de bonnes questions sur celle de quelqu’un d’autre, ce dont les revues légères ont justement besoin. Et un kata interne sur un vrai problème à venir, avec deux ou trois équipes qui conçoivent chacune de leur côté, est un moyen peu coûteux d’explorer l’espace des options avant de s’engager : quand trois équipes produisent trois conceptions différentes, les différences montrent où se trouvent les vrais compromis.
TARA et revues fondées sur des listes de contrôle
Les revues de systèmes qui existent déjà font face à un autre problème : l’architecture telle que construite peut différer de l’architecture telle que décrite, et les éléments de preuve sont dispersés entre les personnes, les documents, le code et les données de production. Eoin Woods, coauteur de Software Systems Architecture, a décrit en 2011 la Tiny Architectural Review Approach (TARA) comme une alternative industrielle, volontairement légère, aux méthodes très centrées sur les scénarios. Un petit nombre de relecteurs recueillent les exigences clés et le contexte du système, établissent sa structure réelle, évaluent sa mise en œuvre à l’aide d’une analyse automatisée (dépendances entre modules, taille, métriques de code, couverture de tests) ainsi que d’informations d’exécution comme les journaux, s’appuient sur leur jugement d’experts pour relier ce qu’ils trouvent aux exigences, et présentent leurs constats et recommandations sous une forme prédéfinie. Sa force est la rapidité et les preuves ; sa faiblesse, que Woods a reconnue, est sa dépendance à l’expertise des relecteurs.
Les listes de contrôle complètent toutes les techniques. Une liste de contrôle ne trouve pas de risques par elle-même, mais elle évite qu’une revue oublie toute une catégorie (restauration des sauvegardes, secrets, coût à grande échelle) simplement parce que personne dans la salle n’y a pensé. Gardez des listes de contrôle courtes, propres à l’historique d’incidents de votre organisation, et formulées sous forme de questions qui exigent des éléments de preuve plutôt qu’un oui ou un non.
Documents de conception et revues de RFC
La section 4.8 a présenté les documents de conception et les RFC comme un moyen de proposer un changement par écrit avant de le construire. Bien les relire est une compétence à part entière. Une revue écrite présente de réels avantages sur une réunion : les relecteurs commentent quand ils ont le temps de réfléchir, les collègues à distance ou plus discrets contribuent à égalité, et les commentaires constituent une trace. Ses échecs typiques sont des documents que personne ne lit, des fils de commentaires qui ne se referment jamais et des revues qui deviennent un point de validation officieux.
La bonne pratique consiste à indiquer en tête la décision recherchée et la date limite des commentaires, à nommer les relecteurs dont l’avis est requis (sécurité, exploitation, responsables des services concernés) et à inviter toute autre personne ; à demander aux relecteurs d’étiqueter chaque commentaire comme question, suggestion ou objection bloquante, pour que l’auteur sache lesquels doivent être résolus ; à relire au regard des scénarios de qualité et de la liste de contrôle ci-dessous, et non des goûts personnels ; à conclure par une courte réunion uniquement pour les objections non résolues ; et à consigner les décisions importantes sous forme d’ADR. Dans les organisations qui utilisent le processus de consultation (section 11.4), la RFC est le moyen de solliciter des conseils, et la décision reste à son auteur.
Animer une revue d’architecture de 90 minutes, pas à pas
- Avant : préparer (quelques jours à l’avance)L’architecte fait circuler un résumé d’une page, les diagrammes de contexte et de conteneurs, les trois à cinq principaux scénarios de qualité chiffrés et les questions ouvertes. Invitez cinq à huit personnes : l’équipe, l’exploitation, la sécurité, une personne de chaque équipe voisine et une personne extérieure expérimentée. Choisissez un animateur qui ne soit pas l’architecte.
- 0 à 10 minutes : objectifs et règlesL’animateur énonce le but (trouver des risques, non approuver ou rejeter), la durée impartie et le résultat attendu. Un représentant du métier ou le responsable produit rappelle les facteurs métier en deux minutes.
- 10 à 25 minutes : dérouler l’architecture à travers des scénariosL’architecte déroule deux ou trois des scénarios les plus importants à travers les diagrammes, par exemple une commande au pic et une panne du prestataire de paiement. Questions de clarification uniquement.
- 25 à 35 minutes : identification silencieuse des risquesChacun écrit des risques sur des notes, un par note, avec une probabilité et un impact. Pas de discussion.
- 35 à 50 minutes : rassembler et regrouperLes notes vont sur les diagrammes. L’animateur fusionne les doublons à voix haute et met en évidence les grappes, les notes isolées et les désaccords de priorité.
- 50 à 75 minutes : discuter des principaux risquesPrenez d’abord les grappes aux scores les plus élevés. Pour chacune, convenez de ce qu’est vraiment le risque, de son score et de sa nature : un risque, un non-risque avec une hypothèse, ou une question qui demande un spike.
- 75 à 85 minutes : actions et responsablesChaque risque élevé ou moyen retenu reçoit une atténuation, un responsable et une date. Les décisions à consigner sous forme d’ADR sont listées.
- 85 à 90 minutes : clôtureRelisez les risques, les risques acceptés et les non-risques avec leurs hypothèses. Convenez du moment où la conception sera réexaminée.
- Après : publier sous deux joursPubliez le registre des risques, des photos des diagrammes annotés et la liste des actions là où l’équipe conserve sa documentation d’architecture, et suivez les actions dans le backlog habituel.
Guide de décision
Guide de décision : quel type de revue ?
Commencez en haut ; les techniques peuvent se combiner.
- Un engagement coûteux et difficile à défaire est-il imminent, comme un contrat pluriannuel, l’achat d’une plateforme ou une étape de financement, avec de nombreuses parties prenantes ?OuiUtilisez une ATAM ou une ATAM réduite avec des évaluateurs indépendants (section 11.1), et ajoutez un pre-mortem sur le plan.NonContinuez.
- Existe-t-il une proposition écrite pour un changement important ?OuiMenez une revue écrite de conception ou de RFC avec une date limite pour les commentaires, puis une courte réunion pour les objections bloquantes.NonContinuez.
- Existe-t-il des diagrammes de l’architecture proposée ou existante ?OuiFaites un risk-storming sur ces diagrammes, en suivant le format de 90 minutes.NonDessinez d’abord un diagramme de contexte et un diagramme de conteneurs ; les dessiner suffit souvent à révéler des risques.
- La principale inquiétude porte-t-elle sur la réussite de l’ensemble du projet (compétences, calendrier, migration, adoption) plutôt que sur la structure ?OuiAjoutez un pre-mortem.NonContinuez.
- Le système fonctionne-t-il déjà, avec une dérive soupçonnée ou une dette croissante ?OuiUtilisez une revue de type TARA qui combine des entretiens et une analyse automatisée du code et de l’exécution, et transformez les constats en fonctions d’aptitude.NonAppuyez-vous sur les fonctions d’aptitude entre les revues, et refaites une revue à la prochaine décision importante.
Liste de contrôle : questions pour toute revue d’architecture légère
Demandez des preuves, pas des assurances. Adaptez la liste à l’historique d’incidents de votre organisation.
- Quels sont les trois à cinq scénarios de qualité qui comptent le plus, et quels sont leurs chiffres ?Sans facteurs mesurables, la revue ne peut pas classer les risques (section 2.3).
- Qu’y a-t-il sur le chemin synchrone du parcours le plus important ?Comptez les sauts, listez les délais d’expiration et les nouvelles tentatives, et identifiez chaque tiers présent sur le chemin.
- Que se passe-t-il quand chaque dépendance est lente ou en panne ?Lent est généralement pire qu’en panne ; posez la question pour les deux cas, ainsi que sur la façon dont les utilisateurs sont informés.
- Qui est propriétaire de chaque donnée importante, et une restauration a-t-elle été testée ?Écrivain unique, attentes de cohérence, conservation, et preuve d’une restauration récente réussie (chapitre 7).
- Où sont les frontières de confiance, les identités et les secrets ?Cherchez un modèle de menaces à jour et des secrets dans le code ou la configuration (chapitre 8).
- Qu’est-ce qui casse en premier à deux fois le pic attendu ?Demandez le modèle de capacité ou les résultats des tests de charge, pas l’intuition.
- Comment le système est-il observé, déployé et ramené en arrière ?Tableaux de bord, alertes liées aux SLO, stratégie de déploiement et durée d’un retour arrière.
- Qu’est-ce qui changera probablement dans l’année à venir, et qu’est-ce que ce changement toucherait ?Vérifiez que les changements probables restent à l’intérieur d’un seul module ou service.
- Combien coûtera l’exploitation au volume attendu ?Un coût par commande, par utilisateur ou par transaction, avec ses principaux facteurs.
- Les décisions importantes sont-elles consignées avec leurs alternatives et leurs conséquences ?Des ADR ou un document de conception, y compris les compromis acceptés.
- La structure des équipes correspond-elle à la conception ?Chaque partie a une équipe propriétaire qui a les compétences pour l’exploiter (section 3.7 et section 11.5).
Vérifiez votre compréhension
Pourquoi le risk-storming demande-t-il aux participants d’identifier les risques en silence avant toute discussion ?
Pour empêcher la première personne qui parle, ou la plus haut placée, d’ancrer le groupe, afin que les connaissances propres à chacun arrivent jusqu’au diagramme.
Dans le risk-storming, quels sont les deux types de notes qui méritent une attention particulière lors de l’étape d’examen ?
Les risques soulevés par une seule personne, qui sait peut-être quelque chose que les autres ignorent, et les risques auxquels on a donné des priorités très différentes, signe d’un malentendu.
Qu’examine un pre-mortem qu’une séance de risk-storming sur un diagramme de conteneurs n’examine généralement pas ?
Le plan et son contexte dans leur ensemble : compétences, calendrier, migration, fournisseurs et patience de l’organisation, plutôt que la structure technique.
Citez deux raisons structurelles pour lesquelles les comités mensuels de revue d’architecture échouent souvent.
Deux parmi les suivantes : ils voient les conceptions trop tard, les relecteurs manquent de contexte, les équipes présentent sur la défensive, et l’attente ajoute des semaines de délai qui incitent à les contourner.
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 : « Notre comité de revue d’architecture se réunit une fois par mois et les équipes essaient de l’éviter. Comment pourrions-nous le remplacer par des revues légères sans perdre la remise en question indépendante ? »