Read in English · Leer en español · Auf Deutsch lesen
Section 4.8 sur 4.8 · Intermédiaire · 22 min de lecture
Communiquer l’architecture à différents publics
Leçon vidéo
5 min · narré en anglais, avec sous-titresÉcouter seulement (audio)
Lire la transcription
Une architecture que seul son architecte comprend a échoué, si bonne soit-elle. Dans cette dernière leçon du chapitre, vous allez apprendre à expliquer l’architecture aux différentes personnes qui construisent, exploitent, financent et auditent un système.
Un guide fait visiter la même cathédrale différemment à des écoliers, à des architectes et à des pèlerins. Des faits différents, des mots différents, des parcours différents à travers l’édifice. Les architectes logiciels doivent faire de même. Une bonne communication commence donc par deux questions. Qui écoute ? Et que vont décider ou faire différemment ces personnes ensuite ? Montrez-leur ensuite exactement cela, clairement et honnêtement, inconvénients compris.
Les dirigeants et les sponsors ont besoin d’une page : la recommandation, son impact métier et son coût, les principaux risques, et la décision que vous attendez d’eux. Évitez les noms de technologies sans signification métier. Les développeurs ont besoin de savoir comment construire dans le cadre de l’architecture : diagrammes de conteneurs et de séquence, enregistrements de décision, et pourquoi les choses sont comme elles sont. Les équipes d’exploitation ont besoin des diagrammes de déploiement et des scénarios de défaillance, pas seulement du chemin nominal. Les équipes de sécurité ont besoin de voir où circulent les données personnelles et de paiement, et les auditeurs ont besoin de preuves : des documents versionnés, avec des responsables et des dates de revue.
L’essentiel de la communication architecturale consiste à expliquer un compromis. Ici, l’architecte a cinq minutes avec l’équipe de direction, et commence par la réponse : changer la façon dont circulent les commandes, pour qu’une défaillance des notifications ou de l’affectation ne puisse pas empêcher les clients de commander, pour environ six semaines de travail d’une équipe et quelques centaines de livres par mois. Puis, pourquoi maintenant. Une panne a bloqué toutes les commandes pendant vingt-trois minutes, en plein pic du vendredi. Cela représente à peu près cinquante-cinq mille commandes qui n’ont pas pu être passées. Puis les options, dans leurs termes. L’option A est peu coûteuse, mais un service lent ralentit encore chaque commande. L’option C est rapide, mais rend chaque modification future plus risquée. Puis, honnêtement, ce à quoi l’on renonce : les restaurants voient les nouvelles commandes une ou deux secondes plus tard, et il y a un service de plus à exploiter. Et enfin, la décision attendue. Remarquez qu’aucune technologie n’est nommée. Le courtier et l’outbox restent dans l’enregistrement de décision.
On retient mieux les histoires que les structures. Pour expliquer n’importe quel système, suivez donc une requête. Ici, une commande traverse la plateforme, avec des étapes numérotées que vous pouvez montrer du doigt. Aux étapes un à trois, l’app client appelle la passerelle, qui appelle le service Commandes, qui appelle le prestataire de paiement. À l’étape quatre, la commande est écrite dans la base de données. C’est le moment de dire ce qui compte : les étapes un à quatre sont synchrones, donc le client attend, environ une seconde. Les étapes cinq à huit sont asynchrones. L’événement de commande atteint la fidélité, l’affectation et les notifications, et rien ici ne peut bloquer la commande. Pour les développeurs, vous raconteriez ensuite l’histoire avec une défaillance : maintenant, le prestataire de paiement dépasse son délai.
Les diagrammes communiquent avant que quiconque ait lu un mot. À gauche, cinq boîtes dans quatre styles aléatoires, des abréviations, et des lignes qui se croisent, sans libellés, sans titre et sans légende. À droite, les mêmes cinq éléments : un titre, des boîtes cohérentes, un flux de gauche à droite, des flèches libellées et une légende. Utilisez deux ou trois couleurs au maximum, chacune avec une signification, et ne comptez jamais sur la couleur seule.
Tout système gagne à avoir un résumé d’architecture en une page, que chacun peut lire en cinq minutes. Si les idées principales ne tiennent pas sur une page, elles ne sont probablement pas claires non plus pour l’équipe. Pour proposer une modification importante, de nombreuses organisations utilisent un document de conception, souvent appelé appel à commentaires. Une fois qu’il est approuvé, ses décisions importantes deviennent des enregistrements de décision. Le document de conception pour réfléchir et convaincre, l’enregistrement de décision pour se souvenir. Lors d’une revue d’architecture, envoyez le matériel au moins deux jours à l’avance, et dites ce que vous attendez : une approbation, une liste de risques ou un choix. Présentez les facteurs avant la conception, car les relecteurs ne peuvent pas juger une conception sans savoir quelles qualités elle doit atteindre. Et listez les risques que vous connaissez : cela crée la confiance.
Les désaccords sur l’architecture sont normaux. Ils signifient généralement que les gens voient des risques différents. D’abord, distinguez les intérêts des positions. « Nous devons utiliser Kafka » est une position. « Je crains que nous perdions des événements pendant les déploiements » est un intérêt, et il peut souvent être satisfait de plusieurs façons. Convenez des critères avant de comparer les options. La plupart des discussions animées portent en réalité sur ce qui compte. Levez l’incertitude par des preuves. Un spike de deux jours ou un test de charge tranche bien des débats que les réunions ne peuvent pas régler. Et visez le consentement, pas l’unanimité. Demandez : y a-t-il quelqu’un qui ne peut pas vivre avec cela, et pourquoi ? Quand le consensus n’est pas possible, quelqu’un doit décider, et chacun peut exprimer ouvertement son désaccord, puis s’engager pleinement. Consignez le désaccord dans l’enregistrement de décision.
Ainsi s’achève le chapitre 4. Quand vous le souhaitez, passez le test du chapitre, facultatif : vingt questions à choix multiples et deux réponses rédigées, avec une note de réussite de quatre-vingts pour cent. Puis passez au chapitre 5, où nous commençons le catalogue des styles architecturaux avec les monolithes et les conceptions modulaires. À très vite.
Ce qu’il faut savoir
- Communiquer l’architecture est une tâche architecturale essentielle ; commencez chaque explication en nommant le public et ce qu’il doit décider ou faire ensuite.
- Les dirigeants ont besoin de la recommandation, du coût, du risque et de la décision attendue ; les développeurs ont besoin de la structure, des interfaces et des raisons ; l’exploitation, la sécurité et les auditeurs ont chacun besoin de vues sur les défaillances, les frontières de confiance et les preuves.
- Expliquez les compromis sous forme d’options, de critères, de recommandation et de conséquences, en commençant par la réponse et en disant clairement ce à quoi l’on renonce.
- Un résumé d’architecture en une page et un récit numéroté qui suit une requête rendent n’importe quel système compréhensible ; libellez chaque boîte et chaque ligne quand vous dessinez, et consignez les conclusions après la séance au tableau blanc.
- Les documents de conception et les RFC proposent une modification par écrit, pour commentaires, avant qu’elle soit construite ; les ADR consignent ensuite les décisions de façon permanente.
- Des diagrammes clairs ont un titre, une légende, une notation cohérente, peu de couleurs mais porteuses de sens, un seul sens de lecture et des flèches libellées ; les désaccords se règlent en convenant des critères, en réunissant des preuves, en recherchant un consensus approximatif et en consignant les avis divergents.
Communiquer, c’est le métier
Une architecture que seul son architecte comprend a échoué, si bonne soit-elle. Les décisions façonnent ce que des dizaines de personnes construisent, exploitent, financent et auditent, et elles ne fonctionnent que si ces personnes les comprennent assez bien pour agir en conséquence et pour remarquer quand la réalité s’en écarte. C’est pourquoi le programme de l’iSAQB compte la communication de l’architecture parmi les tâches essentielles de l’architecte, et pourquoi le rôle de l’architecte décrit au chapitre 1 repose autant sur les compétences relationnelles.
Les sections précédentes de ce chapitre ont fourni la matière : vues, diagrammes C4 et UML, ADR, structure arc42 et un pipeline qui les tient à jour. Cette section porte sur l’usage de cette matière avec des personnes. La compétence centrale est la même dans toutes les situations : déterminer qui est le public, déterminer ce qu’il doit faire après vous avoir entendu, et lui donner exactement ce que cela exige, sous une forme qu’il peut assimiler. L’image de l’ascenseur de l’architecte (architect elevator) de Gregor Hohpe (The Software Architect Elevator, 2020) résume cette amplitude : l’architecte circule entre la salle du conseil, où la stratégie se définit en termes métier, et la salle des machines, où les systèmes sont construits, et doit être compris à chaque étage.
S’adapter au public
Chaque public a ses propres préoccupations, exactement au sens des parties prenantes et préoccupations, ainsi que son propre vocabulaire et sa propre capacité d’attention. Le tableau est un point de départ ; la vraie compétence consiste à se demander, avant de préparer quoi que ce soit : que va décider ou faire différemment cette personne après cette conversation ?
Ce dont les différents publics ont besoin
| Public | Ce qui l’intéresse | Ce qu’il faut montrer | Ce qu’il faut éviter |
|---|---|---|---|
| Dirigeants et sponsors | Coût, risque, délai de mise sur le marché, options stratégiques, ce qu’ils doivent décider | Une page : la recommandation, l’impact métier, le coût, les principaux risques et la décision que vous attendez d’eux ; tout au plus un diagramme de contexte système | Des noms de technologies sans signification métier ; des diagrammes de composants ; un tour des options avant la réponse |
| Product managers | Ce qui devient possible ou plus difficile, les dates de livraison, le comportement visible par les utilisateurs | Les capacités et les contraintes en termes de produit ; l’effet de l’architecture sur la feuille de route ; le récit d’exécution d’un parcours utilisateur | La structure interne pour elle-même |
| Développeurs | Comment construire dans le cadre de l’architecture : frontières, interfaces, conventions, pourquoi les choses sont comme elles sont | Diagrammes C4 de conteneurs et de composants, diagrammes de séquence, ADR, exemples de code, journal des décisions | Des principes vagues sans exemples ; des diagrammes qui ne correspondent pas au code |
| Exploitation et SRE | Déploiement, modes de défaillance, supervision, capacité, reprise | Diagrammes de déploiement, scénarios de défaillance à l’exécution, SLO, runbooks, cartes des dépendances | Des flux limités au chemin nominal |
| Sécurité | Frontières de confiance, flux de données, identités, surface d’attaque | Diagrammes de flux de données avec les frontières de confiance indiquées, flux d’authentification et d’autorisation, modèle de menaces | Des diagrammes qui cachent où vont les données personnelles ou de paiement |
| Auditeurs et régulateurs | La preuve que les contrôles existent et sont appliqués ; la traçabilité | Documents versionnés avec responsables et dates de revue, ADR, correspondance entre exigences et contrôles | Des croquis informels sans date, ni responsable, ni version |
Deux habitudes aident avec tous les publics. Commencez par la réponse. Les lecteurs pressés doivent connaître la conclusion dès la première phrase, puis les raisons qui l’étayent, puis le détail ; c’est la structure que Barbara Minto enseignait aux consultants sous le nom de Pyramid Principle (principe de la pyramide), et c’est la même idée que la pyramide inversée de Fowler pour les ADR. Employez leurs mots. Pour une directrice financière, cohérence à terme
n’est que du bruit ; le restaurant voit une nouvelle commande jusqu’à deux secondes après le client, et rien n’est perdu
est un fait qu’elle peut évaluer.
Expliquer les compromis
L’essentiel de la communication architecturale consiste, au fond, à expliquer un compromis. Les non-spécialistes se méfient des recommandations qui semblent n’avoir aucun inconvénient, et ils ont raison. Une structure claire, employée de façon constante, rend les compromis faciles à suivre : les options (y compris ne rien faire), les critères qui comptent pour ce public, la façon dont chaque option s’en sort, la recommandation et ses conséquences, y compris ce à quoi vous renoncez. C’est l’anatomie d’une décision vue au chapitre 1 et le contenu d’un ADR, remodelés pour un auditoire.
Exemple commenté
Exemple commenté : expliquer un compromis à l’équipe de direction
La plateforme de livraison de repas a subi deux pannes un vendredi soir, causées par un service de notification lent. L’architecte dispose de cinq minutes en réunion de direction pour faire approuver l’ADR-0012 (événements de commande asynchrones).
| Commencer par la réponse | « Je recommande de changer la façon dont les commandes circulent entre nos systèmes, afin qu’une défaillance des notifications ou de l’affectation des livreurs ne puisse plus empêcher les clients de commander. Cela coûte environ six semaines de travail d’une équipe et quelques centaines de livres par mois. » |
|---|---|
| Pourquoi maintenant | « Le vendredi 21 août, une panne des notifications a bloqué toutes les commandes pendant 23 minutes, en plein pic du vendredi. À environ 40 commandes par seconde, cela représente à peu près 55 000 commandes qui n’ont pas pu être passées, suivies de remboursements et de réclamations. » |
| Les options, dans leurs termes | « Nous pourrions (A) garder la conception actuelle et ajouter des limites de sécurité, ce qui est peu coûteux mais laisse encore un service lent ralentir chaque commande ; (B) adopter le changement recommandé ; ou (C) laisser d’autres systèmes lire directement nos données de commande, ce qui est rapide mais rend chaque modification future plus risquée. » |
| Ce à quoi nous renonçons | « Les restaurants verront les nouvelles commandes une ou deux secondes après la confirmation reçue par le client, et nous aurons un service managé de plus à exploiter. Nous jugeons ces deux points acceptables ; l’exploitation est d’accord. » |
| La décision attendue | « J’ai besoin de votre accord pour consacrer ce trimestre six semaines de travail d’une équipe, ce qui retarde de deux semaines la fonctionnalité de fidélité. » |
Aucune technologie n’est nommée : « courtier de messages » et « outbox transactionnelle » restent dans l’ADR. Le chiffre des commandes (40 commandes par seconde pendant 23 minutes) est vérifié sur des données réelles avant la réunion.
Le coût de la recommandation et les alternatives sont exposés clairement, afin que les dirigeants puissent être en désaccord sur le fond plutôt que sur la confiance.
Le résumé d’architecture en une page
Tout système gagne à avoir un résumé d’architecture en une page : une page unique qu’une nouvelle recrue, un dirigeant ou un relecteur d’une autre équipe peut lire en cinq minutes. Il ne remplace pas la documentation complète, il en est la porte d’entrée. Une structure utile est la suivante : ce que fait le système et pour qui (deux phrases) ; les trois principaux objectifs de qualité ; un diagramme de contexte système ; un diagramme de conteneurs ou une liste des principaux blocs de construction ; les cinq décisions environ qui façonnent tout le reste (une ligne chacune, avec un lien vers les ADR) ; les principaux risques ; et où en savoir plus. La page arc42 allégée de arc42 et modèles est un tel résumé.
L’exercice qui consiste à faire tenir l’architecture sur une page est précieux en soi. Si les idées principales ne peuvent pas être exposées en une page, elles ne sont probablement pas claires non plus pour l’équipe.
Raconter : suivre une requête
On retient mieux les histoires que les structures. Une technique efficace pour expliquer n’importe quel système consiste à suivre une requête : choisissez un seul événement, concret et important, comme un client qui passe commande, et parcourez pas à pas ce qui lui arrive à travers l’architecture. Un diagramme statique de boîtes montre ce qui existe ; le récit montre pourquoi cela existe et comment les parties coopèrent. Il fait aussi apparaître naturellement les moments intéressants : où le client attend, où les données franchissent une frontière de confiance, ce qui se passe si le prestataire de paiement est lent.
Choisissez le récit en fonction du public. Pour les développeurs, le chemin nominal, puis une défaillance (maintenant, le prestataire de paiement dépasse son délai
). Pour l’exploitation, la défaillance et la reprise. Pour les dirigeants, l’expérience du client, avec seulement les moments qui comptent pour l’activité. Numérotez les étapes sur le diagramme pour pouvoir les montrer du doigt, et gardez le même diagramme à l’écran pendant que vous parlez plutôt que de passer d’une diapositive à l’autre.
Suivre une commande à travers la plateforme
Bien utiliser le tableau blanc et le croquis
Une grande partie de la communication architecturale se fait en direct, devant un tableau blanc ou sur un canevas partagé en ligne, et quelques habitudes rendent les croquis bien plus utiles. Dites ce que vous dessinez avant de le dessiner (ceci est le niveau conteneurs : les éléments que nous déployons séparément
), afin que le public connaisse le niveau d’abstraction. Commencez par le contexte : les utilisateurs et les systèmes externes sur les bords, puis l’intérieur. Libellez chaque boîte et chaque ligne au fur et à mesure, y compris le sens et ce qui circule ; une flèche sans libellé sera lue de trois façons différentes par trois personnes. Dessinez une petite légende dans un coin quand vous utilisez plus d’un type de ligne ou de boîte. Laissez de la place, car les meilleures idées arrivent en pleine discussion et ont besoin d’un endroit où aller.
Les croquis sont des outils de réflexion, faits pour être jetés, mais pas les conclusions. Photographiez le tableau et, dans la journée, transformez tout ce qui comptera en vrai diagramme, en ADR ou en modification de la documentation. Simon Brown, créateur du modèle C4, a observé que les diagrammes au tableau blanc de nombreuses équipes sont des boîtes et des traits ambigus précisément parce qu’il leur manque un ensemble d’abstractions convenu ; utiliser les niveaux C4 au tableau blanc est l’un des moyens les plus simples d’y remédier.
Documents de conception et RFC
De nombreuses organisations d’ingénierie utilisent un document de conception écrit, souvent appelé RFC (request for comments, appel à commentaires), pour proposer une modification importante avant de la construire. Le nom fait écho à la série des RFC d’Internet, qui a commencé avec la RFC 1 de Steve Crocker en avril 1969. L’auteur expose le problème, le contexte, les objectifs et les non-objectifs, la conception proposée, les alternatives envisagées et les préoccupations transversales comme la sécurité, la confidentialité et l’observabilité ; le document est diffusé aux personnes concernées, qui le commentent par écrit ; puis il est approuvé ou révisé. La description très lue des design docs chez Google par Malte Ubl (2020) énumère exactement ces sections et suggère dix à vingt pages pour les grands projets, et une à trois pages pour les petits mini design docs
. Gergely Orosz a décrit comment Uber a utilisé un processus de RFC dès ses premières années pour diffuser les connaissances et détecter les problèmes tôt (2018).
Amazon pousse l’écrit plus loin : sa lettre aux actionnaires de 2017 explique que l’entreprise n’utilise pas de présentations à base de diapositives en réunion, mais des mémos de six pages à structure narrative
, que les participants lisent en silence au début. L’avantage commun à toutes ces pratiques est qu’écrire oblige à penser clairement, que les commentaires écrits permettent aux collègues plus discrets ou à distance de contribuer, et que le document devient une trace. Les risques sont eux aussi communs : de longs documents que personne ne finit, des processus de relecture qui deviennent des barrières bureaucratiques, et des documents de conception jamais mis à jour après la mise en œuvre.
Documents de conception et ADR se complètent. Un document de conception explore un problème et propose une conception complète, couvrant souvent plusieurs décisions ; une fois qu’il est approuvé, les décisions importantes qu’il contient sont consignées sous forme d’ADR, plus courts, permanents et indexés. Une règle raisonnable : le document de conception pour réfléchir et convaincre, l’ADR pour se souvenir.
Présenter lors d’une revue d’architecture
Une revue d’architecture est une réunion au cours de laquelle d’autres personnes expérimentées examinent une conception pour en trouver les risques avant qu’ils ne deviennent coûteux. Les méthodes structurées comme l’ATAM et les revues plus légères sont traitées au chapitre 11 : revues légères ; il s’agit ici de bien présenter. Envoyez le matériel au moins deux jours à l’avance : le résumé en une page, les diagrammes clés, les ADR pertinents et les scénarios de qualité. Dites dès le début ce que vous attendez de la revue : une approbation, une liste de risques ou un choix entre deux options. Présentez les facteurs avant la conception, car un relecteur ne peut pas juger une conception sans savoir quelles qualités elle doit atteindre. Déroulez un ou deux scénarios avec la technique qui consiste à suivre une requête, y compris une défaillance. Montrez les compromis que vous avez faits et les risques que vous connaissez ; un relecteur qui trouve un risque que vous avez déjà listé vous fait davantage confiance, pas moins. Consignez chaque point soulevé, avec un responsable, et envoyez la liste ensuite.
Règles de conception visuelle des diagrammes
Les diagrammes communiquent avant que quiconque ait lu un mot, leur conception visuelle compte donc. Les règles ci-dessous s’inspirent des recommandations de notation C4 présentées dans le modèle C4 et de la conception de l’information en général. Le diagramme avant/après les applique aux mêmes cinq éléments.
Le même diagramme, avant et après
Règles pour des diagrammes d’architecture clairs
- Donnez un titre à chaque diagrammeIndiquez le type et le périmètre, par exemple
Conteneurs : plateforme de livraison de repas
, pour que le lecteur connaisse le niveau d’abstraction. - Utilisez une seule notation, de façon cohérenteLa même forme pour le même type d’élément dans tous les diagrammes ; ne mélangez pas les symboles C4 et UML sur un même diagramme sans le dire.
- Ajoutez une légendeExpliquez chaque forme, couleur, style de ligne et pointe de flèche qui porte un sens. Si vous ne pouvez pas l’expliquer, supprimez-le.
- Limitez les couleurs et donnez-leur un sensDeux ou trois couleurs, chacune avec une signification (externe, nouveau, à risque). Ne comptez jamais sur la couleur seule : les diagrammes sont imprimés en noir et blanc et de nombreux lecteurs ont un trouble de la vision des couleurs.
- Orientez le flux de gauche à droite ou de haut en basSuivez le sens de lecture de votre public, avec des requêtes qui circulent dans un seul sens, pour que l’œil suive le récit.
- Libellez chaque élément et chaque flècheDes noms sans abréviations inexpliquées ; des flèches à sens unique, avec ce qui circule et, entre conteneurs, le protocole.
- Évitez autant que possible les croisements de lignesRéorganisez d’abord les boîtes ; s’il reste des croisements, divisez le diagramme. Un diagramme avec de nombreux croisements essaie généralement d’en montrer trop.
- Tenez sur un seul écranUne à deux douzaines d’éléments au maximum, à peu près. Les vues plus larges relèvent d’un niveau inférieur ou de plusieurs diagrammes.
Gérer les désaccords et construire un consensus
Les désaccords sur l’architecture sont normaux et sains : ils signifient généralement que les gens voient des risques différents. Le but n’est pas de gagner, mais d’aboutir à une décision que les personnes qui devront vivre avec comprennent et soutiendront. Plusieurs pratiques aident.
Distinguez les intérêts des positions. Nous devons utiliser Kafka
est une position ; je crains que nous perdions des événements pendant les déploiements
est un intérêt, et un intérêt peut souvent être satisfait de plusieurs façons. Convenez des critères avant de comparer les options, comme dans une matrice de décision pondérée ; la plupart des discussions animées sont en réalité des désaccords sur ce qui compte, et elles s’apaisent dès que c’est explicite. Levez l’incertitude par des preuves : un spike (investigation limitée dans le temps) de deux jours ou un test de charge tranche bien des débats que les réunions ne peuvent pas régler. Mettez-le par écrit : un ADR proposé ou un document de conception permet à chacun de commenter à son rythme et donne la parole aux collègues plus discrets.
Visez le consentement plutôt que l’unanimité. La RFC 7282 de l’IETF (Pete Resnick, 2014) décrit le consensus approximatif : une décision est atteinte quand chaque objection a été traitée, c’est-à-dire examinée et a reçu une réponse, sans forcément avoir été prise en compte. Demander y a-t-il quelqu’un qui ne peut pas vivre avec cela, et pourquoi ?
fait apparaître les points bloquants plus vite que de demander si tout le monde est d’accord. Quand le consensus n’est pas possible, quelqu’un doit décider, et il faut savoir à l’avance qui. La lettre aux actionnaires de Jeff Bezos de 2016 a popularisé le disagree and commit (exprimer son désaccord, puis s’engager) : chacun exprime ouvertement son désaccord, puis s’engage pleinement dans la décision une fois qu’elle est prise. Consignez le désaccord et ses raisons dans l’ADR ; si ceux qui n’étaient pas d’accord ont raison, l’enregistrement indique ce qu’il faut réexaminer et pourquoi.
Deux dérives méritent une mise en garde. L’architecte qui gagne chaque discussion par ancienneté n’entend plus parler des problèmes. L’équipe qui ne peut pas décider sans unanimité laisse des décisions importantes se prendre par défaut, ce qui est l’inverse du dernier moment responsable.
Liste de contrôle : une présentation d’architecture
Utilisez-la avant toute présentation d’architecture, du point de cinq minutes avec la direction jusqu’à la revue formelle.
- Public et résultat attendu nommésVous pouvez dire en une phrase qui sera dans la salle et ce que ces personnes devront décider ou faire ensuite.
- Commencer par la réponseLa recommandation ou le message principal figure sur la première diapositive ou dans le premier paragraphe.
- Les facteurs avant la conceptionLes objectifs métier, les objectifs de qualité et les contraintes sont présentés avant la solution.
- Niveau d’abstraction adapté au publicNiveau contexte pour les dirigeants, niveaux conteneurs et composants pour les ingénieurs ; pas plus de deux niveaux par séance.
- Une histoire racontée de bout en boutUn parcours qui suit une requête, avec une défaillance pour les publics techniques.
- Compromis et risques montrés honnêtementLes options, ce que coûte chacune et ce à quoi vous renoncez ; les risques connus listés avant que quelqu’un d’autre ne les trouve.
- Chaque diagramme a un titre, une légende et des libellésUne notation cohérente, peu de couleurs mais porteuses de sens, lisible depuis le fond de la salle.
- Matériel envoyé à l’avancePour les revues et les décisions, le résumé et les ADR partent au moins deux jours avant, afin que la réunion serve à la discussion.
- La demande est expliciteUne approbation, des risques, un choix entre options ou simplement une information ; dites lequel, et pour quand.
- Suites consignéesQuestions, objections et actions consignées avec des responsables ; décisions transformées en ADR ; documentation mise à jour.
Vérifiez votre compréhension
À quelle question devez-vous répondre avant de préparer toute explication d’architecture ?
Qui est le public, et ce qu’il doit décider ou faire différemment ensuite ; le contenu, le niveau d’abstraction et le vocabulaire en découlent.
Pourquoi raconter un récit qui suit une requête plutôt que de montrer seulement un diagramme de boîtes ?
Un diagramme de boîtes montre ce qui existe ; le récit montre comment les parties coopèrent et pourquoi, et fait apparaître naturellement les attentes, les frontières de confiance et les points de défaillance qu’une image statique cache.
En quoi un document de conception et un ADR diffèrent-ils dans leur objectif ?
Un document de conception explore un problème et propose une conception complète, pour commentaires, avant la construction ; un ADR est un enregistrement court et permanent d’une seule décision. Un document de conception approuvé produit généralement plusieurs ADR.
Que signifie le consensus approximatif dans la RFC 7282 ?
Chaque objection a été examinée et a reçu une réponse, sans forcément avoir été prise en compte ; ce n’est ni l’unanimité ni un vote à la majorité.
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 : « J’ai dix minutes avec notre directeur financier pour justifier une migration de plateforme de six mois. Comment structurer la conversation, et que dois-je laisser de côté ? »