Aller au contenu

Craftsmanship

Travail à distance

Architecture Decision Records : la mémoire de votre équipe de développement distribuée

01 Avr 2020

par

Cedric Pontet

Agile@Home

Il est toujours bon pour une équipe de garder une trace des décisions qui sont prises en son sein. Cela facilite l'intégration de nouveaux membres d'équipe et évite de se poser la même question six mois après qu'une décision a été prise. Ce qui est une bonne pratique pour une équipe colocalisée, devient une pratique indispensable pour une équipe distribuée.

Pour une équipe agile, il est d\'usage de documenter de telles décisions d\'une façon simple, généralement grâce à un wiki ou des outils similaires. Cela est particulièrement vrai pour les conventions d\'équipe et la façon de collaborer. Mais qu\'en est-il des décisions techniques ?

Avec la pratique des Architectural Decision Records (ADR), une équipe peut suivre tout choix important de conception logicielle qui répond à une exigence fonctionnelle ou non fonctionnelle. Mais au lieu de conserver ces informations dans un wiki, qui n\'est pas nécessairement l\'outil préféré des développeurs, pourquoi ne pas utiliser MADR, un modèle Markdown spécialement conçu pour cette tâche ? Le package npm MADR fournit un modèle pour documenter vos décisions et un outil appelé adr-log qui vous permettra de générer un fichier d\'index pour toutes vos décisions. Alternativement, vous pouvez décider d\'installer adr-tools qui vous rendra la vie encore plus facile.

Le principal avantage de cette approche est que toutes vos décisions architecturales sont directement suivies dans votre base de code, dans votre repository Git. Par conséquent, vous n\'avez jamais besoin de vous poser la terrible question Où est-ce que ce truc est documenté déjà ? Toutes vos décisions sont là, et sont automatiquement versionnées grâce à votre système de gestion de sources.

Depuis novembre 2017, Lightweight Architecture Decision Records est dans le cercle Adopt du Technology Radar de Thoughtworks. Cela prouve que cette pratique se généralise. Une fois de plus, rappelons que cette pratique est encore plus censée pour une équipe distribuée, où une grande discipline est nécessaire pour garder une trace de toute décision prise afin de garder une architecture cohérente.

Alors mettez toutes les chances de votre côté et commencez avec les ADR dès le début pour votre nouveau projet. Si vous travaillez sur un projet existant, il n'est pas trop tard non plus. Il suffit de commencer à enregistrer vos ADR maintenant et documenter petit à petit toutes les décisions qui ont déjà été prises à chaque fois que vous vous souvenez d\'une d'entre elles.

formationTYpage

Vous avez un projet de développement logiciel ? Vous avez besoin d\'aide pour améliorer votre agilité ?