C4 Model

Le C4 Model, c'est une façon de dessiner l'architecture d'un système informatique avec 4 niveaux de zoom, un peu comme Google Maps : tu commences très large, puis tu zoomes progressivement.

1. Context (le plus large)
Une seule boîte pour ton système, entourée des utilisateurs et des autres systèmes avec lesquels il parle. Ça répond à : "à quoi sert ce système et avec qui interagit-il ?"

2. Container (on zoome un peu)
On ouvre la boîte du système et on voit ses grosses briques techniques : l'appli web, la base de données, l'API, le service de paiement, etc. Un "container" ici ne veut pas dire Docker — c'est juste un élément déployable/exécutable.

3. Component (on zoome encore)
On ouvre un container et on voit les composants qui le composent en interne : par exemple dans l'API, on verra le contrôleur d'authentification, le service de facturation, etc.

4. Code (le plus zoomé)
Le niveau des classes, du code source — généralement généré automatiquement par l'IDE (diagramme UML de classes), et souvent optionnel dans la pratique. Ce niveau est rarement utilisé hors contexte très technique/legacy

L'idée clé : plutôt qu'un seul schéma fourre-tout illisible, tu as une série de diagrammes à différents niveaux de détail, chacun pour une audience différente — le niveau 1 pour un manager, le niveau 3 pour un dev qui doit modifier le composant.

C4 et les autres frameworks

Le C4 Model n'est pas un concurrent de méthodes comme TOGAF, mais un outil complémentaire : TOGAF couvre l'ensemble Business/Data/Application/Technology Architecture à l'échelle de l'entreprise, tandis que C4 se concentre sur la couche Solution/Software Architecture — il vient documenter visuellement ce que TOGAF structure en processus et en artefacts.

C'est aussi un bon outil pour représenter des échanges complexes, par exemple dans une architecture Data Mesh : chaque domaine de données peut être son propre Software System au niveau Context, avec un niveau Container pour détailler ses produits de données — on garde ainsi plusieurs niveaux d'abstraction sans perdre en lisibilité. C4 Charts - Diagrammes complémentaires

Voir aussi C4 Charts - Diagrammes complémentaires