Architecture Decision Record

Active theme: Light

← documents

Qui peut créer un ADR ?

Envisagez des aspects comme des personnes précises, des rôles précis, des équipes précises ou des services précis ; envisagez aussi s’il existe des personnes, rôles, équipes ou services pouvant commander un ADR, c’est-à-dire en demander un qu’une autre personne rédigera.

Exemple de réponse : toute personne de notre organisation ayant lu la page README sur l’enregistrement de décision d’architecture peut proposer un ADR, c’est-à-dire qu’elle peut commencer à le rédiger et le partager avec l’équipe.

Qu’est-ce qui justifie de lancer un ADR ?

Envisagez des aspects comme les méthodes de travail des équipes de votre organisation, la structure de votre système logiciel, la coordination entre équipes, la maintenabilité à long terme, les interfaces externes, les personnes que vous voulez faire bénéficier, etc.

Exemple de réponse : nous voulons créer un ADR lorsque nous voulons que les futurs développeurs comprennent le « pourquoi » de ce que nous faisons.

Qu’est-ce qui justifie de ne pas lancer d’ADR ?

Envisagez des aspects comme les décisions qui ne concernent pas l’architecture, ou qui sont minimes, par exemple à risque minimal, autonomes ou limitées à un seul développeur, ou qui sont déjà entièrement couvertes ailleurs, par exemple par des normes, des politiques ou de la documentation, ou qui sont temporaires, comme des solutions de contournement, des preuves de concept ou des expériences.

Exemple de réponse : nous voulons nous passer d’ADR lorsqu’une décision est limitée en portée, en durée, en risque et en coût, ou est déjà couverte ailleurs.

Quel est le cycle de vie d’un ADR ?

Envisagez des aspects comme le processus de création, le processus de recherche, le processus de décision, le processus de mise en œuvre et le processus de retrait. Envisagez comment suivre le cycle de vie de l’ADR dans le temps, par exemple comment faire passer l’ADR d’un état au suivant, et comment le communiquer aux parties prenantes.

Exemple de réponse : nous voulons qu’un ADR ait cinq étapes de cycle de vie : Initiation → Recherche → Évaluation → Mise en œuvre → Maintenance → Retrait.

Quels sont les critères des étapes du cycle de vie d’un ADR ?

Envisagez des aspects comme les critères d’acceptation d’un ADR, c’est-à-dire : comment savez-vous qu’il est assez bon pour passer d’une étape du cycle de vie à la suivante ? Le problème est-il clairement formulé ? Les alternatives ont-elles été examinées ? Les compromis (trade-offs) sont-ils suffisamment compris et documentés ? Tout le contexte pertinent est-il en place ? Toutes les parties prenantes concernées sont-elles impliquées ? Tous les retours ont-ils été pris en compte ?

Exemple de réponse : nous voulons qu’un ADR soit soumis au vote des parties prenantes lorsque l’équipe active a 1) terminé sa recherche, 2) terminé son évaluation, 3) publié la proposition d’ADR aux parties prenantes avec une demande de commentaires et un délai d’une semaine, 4) intégré et traité tous les commentaires des parties prenantes.

Quels rôles et responsabilités interviennent dans un ADR ?

Envisagez des rôles tels que proposant, chercheur, évaluateur, relecteur, approbateur, mainteneur, etc. Envisagez des responsabilités telles que la communication avec les parties prenantes, la garantie que les attentes sont satisfaites, le partage sur le site web ou l’intranet, et la revue périodique du travail, en particulier lorsque des changements pertinents surviennent.

Exemple de réponse : nous voulons que chaque ADR ait toujours une personne de contact principale, une personne de contact secondaire et une équipe responsable ; ceux-ci sont responsables des communications, des publications, de la maintenance, de la revue périodique au moins une fois par an et, le cas échéant, du retrait final.

Comment la gouvernance intervient-elle dans un ADR ?

Envisagez des aspects comme les méthodes de travail de votre organisation, d’éventuels besoins spéciaux de conformité, par exemple sur le plan juridique ou des ressources humaines, et la manière dont vous voulez gérer consensus, conflit et escalade. Existe-t-il des domaines, des personnes ou des équipes qui peuvent avoir plus d’influence que d’autres sur un ADR, par exemple en pouvant l’approuver, voter dessus ou y opposer leur veto ?

Exemple de réponse : la gouvernance d’un ADR suit cet ordre de priorité : le PDG, le directeur technique (CTO), le directeur juridique (CLO), l’équipe qui met en œuvre un ADR, les experts de l’équipe les plus compétents sur l’ADD. Personne d’autre n’a de pouvoir de gouvernance, sauf mention contraire dans l’ADR.

Quels principes interviennent dans un ADR ?

Envisagez des aspects comme les méthodes de travail de votre organisation, notamment avancer vite ou lentement, consensus ou conflit sur les décisions, préférences en matière de risque ou de sécurité, discussion publique ou privée, etc.

Exemple de réponse : nous appliquons les principes de leadership que sont le biais pour l’action, le désaccord suivi d’engagement (disagree-and-commit), des estimations à 70 % suffisamment bonnes pour les décisions facilement réversibles et facilement isolables, et des méthodes de travail publiques, à l’exception des informations confidentielles telles que décrites dans l’accord de confidentialité de notre organisation.