Glossaire de l'architecture logicielle

Des définitions concises du modèle C4, des métriques DORA, des ADR, de la dérive d'architecture, de la clean architecture et d'autres termes que toute équipe…

  • Modèle C4 — Une approche légère de visualisation de l'architecture qui décrit les systèmes logiciels à travers quatre niveaux : Contexte système, Conteneur, Composant et Code.
  • Diagramme de contexte système — Diagramme de niveau 1 du C4 montrant un système logiciel et ses interactions avec les utilisateurs et les autres systèmes externes.
  • Diagramme de conteneurs — Diagramme de niveau 2 du C4 montrant les unités déployables/exécutables (applications, services, bases de données) qui composent un système logiciel.
  • Diagramme de composants — Diagramme de niveau 3 du C4 décomposant un conteneur en groupes de fonctionnalités liées (composants) et leurs collaborations.
  • Diagramme de code — Diagramme de niveau 4 du C4 montrant les détails au niveau de l'implémentation (classes, interfaces, fonctions) d'un composant.
  • Architecture Decision Record (ADR) — Un court document capturant une décision architecturalement significative, son contexte et ses conséquences.
  • Dérive d'architecture — L'écart qui se creuse entre l'architecture documentée et le système qui tourne réellement en production.
  • Règle de conformité — Une contrainte vérifiable par la machine qui valide le code par rapport à l'intention architecturale.
  • Architecture as Code — Décrire l'architecture d'un système dans un format texte versionné afin de pouvoir la relire, la comparer et la valider comme du code source.
  • Technology Radar — Un catalogue sélectionné de technologies réparties en anneaux (adopter / essayer / évaluer / suspendre) qui oriente les choix d'ingénierie.
  • Métriques DORA — Quatre métriques de performance d'ingénierie largement utilisées : Fréquence de déploiement, Délai de mise en œuvre des changements, Taux d'échec des changements et Temps moyen de rétablissement.
  • Fréquence de déploiement — La fréquence à laquelle une équipe livre du code en production avec succès. L'une des quatre métriques DORA.
  • Délai de mise en œuvre des changements — Le temps écoulé entre le commit d'un changement de code et son exécution en production.
  • Taux d'échec des changements — Le pourcentage de déploiements qui provoquent une dégradation en production et nécessitent une remédiation.
  • Temps moyen de rétablissement (MTTR) — Le temps moyen nécessaire pour rétablir le service après un incident de production.
  • Domain-Driven Design (DDD) — Une approche de conception logicielle qui place au centre le modèle et le langage du domaine métier.
  • Architecture hexagonale — Un style d'architecture en couches qui isole la logique du domaine de l'infrastructure via des ports et des adaptateurs.
  • Clean Architecture — Une architecture en couches où les dépendances pointent vers l'intérieur, vers le domaine, popularisée par Robert C. Martin.
  • Event Storming — Un atelier de modélisation collaboratif qui utilise des post-it représentant des événements de domaine pour cartographier un processus métier.
  • Microservices — Un style d'architecture qui structure une application comme un ensemble de petits services déployables indépendamment, organisés autour des capacités métier.
  • Service Mesh — Une couche d'infrastructure dédiée à la gestion de la communication de service à service, généralement via des proxys sidecar.
  • Contrat d'API — Une spécification formelle d'une API (OpenAPI, proto gRPC, schéma GraphQL) que producteurs et consommateurs s'engagent à respecter.
  • Canal d'événements — Un flux d'événements nommé et typé (souvent un topic Kafka ou équivalent) à travers lequel les services publient et s'abonnent de manière asynchrone.
  • Carte de propriété — Une mise en correspondance entre les éléments du système (services, modules, pipelines) et l'équipe ou la personne qui en est responsable.
  • Documentation vivante — Une documentation générée ou validée à partir du système en fonctionnement, afin qu'elle reste exacte à mesure que le système évolue.
  • Serveur MCP — Un serveur implémentant le Model Context Protocol afin que les assistants de code IA puissent interroger le contexte d'un projet via une interface d'outils standardisée.
  • Diagramme dynamique — Un diagramme C4 complémentaire qui montre comment les éléments d'un modèle C4 interagissent à l'exécution pour un scénario, à l'aide d'interactions numérotées.
  • arc42 — Un template gratuit et open source de documentation d'architecture logicielle, organisé en douze sections, des objectifs et du contexte jusqu'aux risques et au glossaire.