Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# 0000 - Utiliser MADR (Markdown Architectural Decision Records)


## Contexte et énoncé du problème

Nous souhaitons consigner les décisions architecturales prises dans le cadre de ce projet, qu'elles concernent l'architecture (« fiche de décision architecturale »), le code ou d'autres domaines. Quel format et quelle structure ces fiches doivent-elles respecter ?

## Options considérées

- [MADR 4.0.0](https://adr.github.io/madr/) – The Markdown Architectural Decision Records
- [Michael Nygard's template](http://thinkrelevance.com/blog/2011/11/15/documenting-architecture-decisions) - The first incarnation of the term "ADR"
- [Sustainable Architectural Decisions](https://www.infoq.com/articles/sustainable-architectural-design-decisions) - The Y-Statements
- Other templates listed at https://github.com/joelparkerhenderson/architecture_decision_record
- Formless – No conventions for file format and structure

## Résultat de la décision

Option choisie = "MADR 4.0.0", parce que

* Les hypothèses implicites doivent être explicitées. La documentation de conception est importante pour permettre aux gens de comprendre les décisions prises ultérieurement. Voir aussi ["A rational design process: How and why to fake it"](https://doi.org/10.1109/TSE.1986.6312940).
* MADR permet de consigner de manière structurée toute décision.
* Le format MADR est concis et correspond à notre style de développement.
* La structure MADR est compréhensible et facilite l'utilisation et la maintenance.
* Le projet MADR est très vivant.

### Conséquences

Les nouvelles décisions seront maintenant à tracer dans une fiche.

Sont potentiellement exemptées les décisions temporaires/à durée de vie limitée, les décisions à portée limitée (coût faible/risque faible) ou les décisions qui sont déjà couvertes ailleurs.
11 changes: 11 additions & 0 deletions template/i18n/fr/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
Pour les nouveaux enregistrements de décision d'architecture (ADR = Architecture Decision Record), les templates suivants sont disponibles pour faciliter l'écriture d'un enregistrement :

* [adr-template.md](adr-template.md) possède toutes les sections, avec les explications associées.
* [adr-template-minimal.md](adr-template-minimal.md) contient seulement les sections obligatoires, avec les explications associées.
* [adr-template-bare.md](adr-template-bare.md) possède toutes les sections, sans explications.
* [adr-template-bare-minimal.md](adr-template-bare-minimal.md) contient seulement les sections obligatoires, sans explications.

La documentation de MADR est disponible (en anglais) sur https://adr.github.io/madr/,
tandis que les informations générales à propos des ADR sont disponibles (en anglais) sur https://adr.github.io/.

_Travaux disponibles sous licence _[_MIT_](https://github.com/adr/madr/blob/develop/LICENSE.MIT)_ ou _[_CCO_](https://github.com/adr/madr/blob/develop/LICENSE.CC0-1.0)_._
9 changes: 9 additions & 0 deletions template/i18n/fr/adr-template-bare-minimal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# {titre abrégé, représentatif du problème résolu et de la solution trouvée}

## Contexte et énoncé du problème

## Options considérées

## Résultat de la décision

### Conséquences
42 changes: 42 additions & 0 deletions template/i18n/fr/adr-template-bare.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
statut:
date:
décideurs:
consultés:
informés:
---

# {titre abrégé, représentatif du problème résolu et de la solution trouvée}

## Contexte et énoncé du problème


## Facteurs de décision

*

## Options considérées

*

## Résultat de la décision

Option choisie : "", parce que

### Conséquences

* Bonne, parce que
* Mauvaise, parce que

### Confirmation


## Avantages et inconvénients des options

### {titre de l'option 1}

* Bon, parce que
* Neutre, parce que
* Mauvais, parce que

## Plus d'informations
32 changes: 32 additions & 0 deletions template/i18n/fr/adr-template-minimal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# {titre abrégé, représentatif du problème résolu et de la solution trouvée}

## Contexte et énoncé du problème

{Décrivez le contexte et le problème, par exemple en deux ou trois phrases simples ou sous forme d'un récit. Vous pouvez formuler le problème sous forme de question et ajouter des liens vers des forums de collaboration ou des systèmes de gestion des problèmes.}

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->

## Options considérées

* {titre de l'option 1}
* {titre de l'option 2}
* {titre de l'option 3}
* …

<!--Le nombre d'options peut varier.-->

## Résultat de la décision

Option choisie : "{titre de l'option 1}", parce que {justification. e.g., seule option répondant au critère de décision | qui résout la contrainte {contrainte} | … | sort en tête du comparatif (voir ci-dessous)}.

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->

### Conséquences

* Bonne, parce que {conséquence positive, e.g., amélioration d'une ou plusieurs qualités souhaitées, …}
* Mauvaise, parce que {conséquence négative, e.g., compromission d'une ou plusieurs qualités souhaitées, …}
* …

<!--Le nombre de conséquences peut varier.-->

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->
90 changes: 90 additions & 0 deletions template/i18n/fr/adr-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
---
# Ce sont des éléments de métadonnées facultatifs. N'hésitez pas à en supprimer un ou plusieurs.
statut : "{proposé | rejeté | accepté | obsolète | … | remplacé par ADR-0123}"
date : {DD/MM/YYYY date de la dernière mise à jour de la décision}
décideurs : {Énumérer toutes les personnes impliquées dans la décision}
consultés : {Énumérer toutes les personnes dont l'avis est sollicité (généralement des experts en la matière); et avec qui il existe une communication bidirectionnelle}
informés : {Dressez la liste de toutes les personnes tenues au courant de l'avancement; et avec qui il existe une communication à sens unique}
---

# {titre abrégé, représentatif du problème résolu et de la solution trouvée}

## Contexte et énoncé du problème

{Décrivez le contexte et le problème, par exemple en deux ou trois phrases simples ou sous forme d'un récit. Vous pouvez formuler le problème sous forme de question et ajouter des liens vers des forums de collaboration ou des systèmes de gestion des problèmes.}

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->

## Facteurs de décision

* {facteur de décision 1, par exemple, une force, une préoccupation, …}
* {facteur de décision 2, par exemple, une force, une préoccupation, …}
* …

<!--Le nombre de facteurs peut varier.-->

## Options considérées

* {titre de l'option 1}
* {titre de l'option 2}
* {titre de l'option 3}
* …

<!--Le nombre d'options peut varier.-->

## Résultat de la décision

Option choisie : "{titre de l'option 1}", parce que {justification. e.g., seule option répondant au critère de décision | qui résout la contrainte {contrainte} | … | sort en tête du comparatif (voir ci-dessous)}.

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->

### Conséquences

* Bonne, parce que {conséquence positive, e.g., amélioration d'une ou plusieurs qualités souhaitées, …}
* Mauvaise, parce que {conséquence négative, e.g., compromission d'une ou plusieurs qualités souhaitées, …}
* …

<!--Le nombre de conséquences peut varier.-->

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->

### Confirmation

{Décrivez comment la mise en oeuvre / conformité à l'ADR peut / sera confirmée. Existe-t-il une fonction d'aptitude automatisée ou manuelle ? Si oui, veuillez l'indiquer et expliquer comment c'est appliqué. La conception choisie et sa mise en œuvre sont-elles conformes à la décision ? E.g., Une revue de conception/de code ou un test avec une bibliothèque telle qu'ArchUnit peut aider à valider cela. Notez que même si nous classons cet élément comme facultatif, il est inclus dans de nombreux ADRs.}

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->

## Avantages et inconvénients des options

### {titre de l'option 1}

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->

{exemple | description | lien vers plus d'informations | …}

* Bon, parce que {argument a}
* Bon, parce que {argument b}

<!--use "neutral" if the given argument weights neither for good nor bad-->

* Neutre, parce que {argument c}
* Mauvais, parce que {argument d}
* …

<!--Le nombre d'avantages et inconvénients peut varier.-->

### {titre d'une autre option}

{exemple | description | lien vers plus d'informations | …}

* Bon, parce que {argument a}
* Bon, parce que {argument b}
* Neutre, parce que {argument c}
* Mauvais, parce que {argument d}
* …

<!--Cet élément est facultatif. Vous pouvez le supprimer.-->

## Plus d'informations

{Vous pourriez souhaiter fournir ici des preuves/éléments de confiance supplémentaires concernant le résultat de la décision et/ou documenter l'accord de l'équipe sur la décision et/ou définir quand/comment cette décision devrait être mise en œuvre et si/quand elle devrait être réexaminée. Des liens vers d'autres décisions et ressources pourraient également apparaître ici.}