Modern Information Systems Engineering
Chapitre 5
05-UML : Composants, Déploiement et Packages
05-UML : Composants, Déploiement et Packages
Cours 05 : UML - Composants, Déploiement et Packages
1. Diagramme de Composants
Définition
Le diagramme de Composants montre l'organisation des composants logiciels, leurs interfaces et leurs dépendances. Il représente l'architecture physique du code.
Diagramme en cours de génération...
Éléments
| Élément | Description | Notation |
|---|---|---|
| Composant | Module logiciel | [Composant] |
| Interface fournie | Service offert | (( )) ou cercle |
| Interface requise | Service consommé | demi-cercle |
| Port | Point d'interaction | carré sur le bord |
| Dépendance | Relation d'usage | flèche pointillée |
Exemple : Architecture microservices
Diagramme en cours de génération...
Composants avec interfaces
Diagramme en cours de génération...
2. Diagramme de Déploiement
Définition
Le diagramme de Déploiement montre la topologie physique du système : les nœuds matériels, les logiciels installés et les connexions réseau.
Diagramme en cours de génération...
Éléments
| Élément | Description | Mermaid |
|---|---|---|
| Nœud | Ressource physique/virtuelle | subgraph Noeud[] |
| Artefact | Élément déployé (fichier, script) | [fichier.jar] |
| Manifeste | Association artefact → composant | flèche |
| Communication | Lien réseau | ligne entre nœuds |
Exemple : Déploiement Cloud AWS
Diagramme en cours de génération...
Artefacts et manifestes
Diagramme en cours de génération...
3. Diagramme de Packages
Définition
Le diagramme de Packages organise les éléments UML en groupes logiques.
Diagramme en cours de génération...
Relations entre packages
| Relation | Description | Notation |
|---|---|---|
| Import | Le package utilise des éléments d'un autre | --> |
| Export | Le package rend accessible des éléments | --> stéréotype |
| Merge | Fusion de packages | stéréotype |
4. Diagramme de Profils
Définition
Le diagramme de Profils permet d'étendre UML avec des stéréotypes, tagged values et contraintes spécifiques à un domaine.
Diagramme en cours de génération...
Exemple : Profil Spring Boot
Diagramme en cours de génération...
Tagged values
Les tagged values ajoutent des propriétés aux stéréotypes :
{author = "John Doe"}{version = "2.0.1"}{status = "deprecated"}
5. Architecture physique vs logique
Architecture logique
Organisation conceptuelle des composants (indépendante du déploiement).
Diagramme en cours de génération...
Architecture physique
Topologie réelle du déploiement (serveurs, réseaux, cloud).
Diagramme en cours de génération...
Mapping logique → physique
| Couche logique | Artefact physique | Nœud |
|---|---|---|
| Présentation | index.html, bundle.js | CloudFront + S3 |
| API | app.jar | ECS Fargate |
| Métier | service.jar | ECS Fargate |
| Données | SQL scripts | RDS PostgreSQL |
| Cache | redis.conf | ElastiCache |
6. Exemple complet : Architecture 3-tiers détaillée
Diagramme en cours de génération...
Résumé
Diagramme en cours de génération...
Pour aller plus loin
- "Software Architecture in Practice" - Bass, Clements, Kazman
- "Documenting Software Architectures" - Clements et al.
- Spécification OMG UML 2.5 - Deployment, Components, Packages