Le diagramme de composants explique les relations logiques entre les composants.
Le diagramme de déploiement va plus loin en décrivant la topologie physique du matériel du système et le logiciel exécuté sur cette structure.
Le diagramme de composants, également appelé diagramme de construction, est un modèle utilisé pour représenter les relations entre les composants d'un système et entre les composants et les interfaces. Le diagramme de composants est important dans la modélisation des systèmes basés sur les composants, car il peut aider les utilisateurs à comprendre la structure du système.
Rôle du diagramme de composants :
1. Permettre aux testeurs et aux développeurs du système de comprendre tous les composants physiques du système dans leur ensemble ;
2. Décrire les principales fonctionnalités d'un système du point de vue de l'architecture logicielle ;
3. Faciliter la compréhension de la structure et des fonctionnalités du système par les membres de l'équipe de projet ;
4. Favoriser la réutilisation du logiciel.
Collaboration en temps réel multi-utilisateurs avec liens partageables pour transfert instantané
Génération automatique de graphiques à partir de texte avec amélioration de style
Thèmes prédéfinis avec personnalisation complète
Supporte icônes, images, étiquettes, formules LaTeX, blocs de code, liens, pièces jointes
Exporter : PNG, VISIO, PDF, SVG | Importer : VISIO, Mermaid
Stockage cloud temps réel, synchronisation multi-appareils, historique des versions et sécurité des données
Le diagramme de composants explique les relations logiques entre les composants.
Le diagramme de déploiement va plus loin en décrivant la topologie physique du matériel du système et le logiciel exécuté sur cette structure.
Composant : Un composant est une unité physique remplaçable avec une interface bien définie, généralement un objet physique existant, représenté par un rectangle avec deux petits rectangles en saillie sur le côté gauche.
Interface : Une interface fournie, également appelée interface exportée, est un ensemble de services offerts par le composant ; elle peut être représentée par la relation d'implémentation entre l'interface et le composant. Une interface requise, également appelée interface importée, est l'interface suivie par le composant lors de la demande de services à d'autres composants, représentée par une relation de dépendance.
Relation : Entre composants --> relation de dépendance. Si des classes dans deux composants ont une relation de généralisation ou d'utilisation, une dépendance peut être ajoutée ; entre composant et interface --> dépendance ou implémentation.
Diagramme de composants simple : Organise des classes collaborant ensemble en un composant.
Diagramme de composants imbriqués : Utilise des diagrammes de composants imbriqués pour représenter la structure interne d'un composant.
Les composants sont connectés via des ports, et les ports sont connectés entre eux par des connecteurs, mais ils sont généralement peu utilisés.
Les connecteurs sont divisés en trois types : connecteurs directs, connecteurs d'interface et connecteurs de délégation.
1. Développement collaboratif par plusieurs équipes
2. Architecture de microservices ou modulaire
3. Systèmes avec des contraintes d'interface claires
4. Composants nécessitant un déploiement séparé (comme le front-end, le back-end, la base de données)
1. Mettre l'accent sur la modularité et le découplage, car la principale valeur d'un diagramme de composants est de montrer les couches et les dépendances claires du système ;
2. Utiliser des symboles standards et des annotations d'interface pour améliorer la lisibilité et la cohérence du diagramme ;
3. Utiliser conjointement des diagrammes de classes/déploiement pour fournir une vue complète de la structure, du comportement et du déploiement ;
4. Éviter de transformer un diagramme de composants en un diagramme de classes, car un diagramme de composants exprime la « structure » du système plutôt que les « détails d'implémentation ».
Le diagramme de composants répond à « qui fait quoi, qui dépend de qui », tandis que le diagramme de classes répond à « comment faire ».
1. Une classe est une abstraction d'une entité, tandis qu'un composant est une abstraction d'un élément physique dans un ordinateur.
2. Les composants appartiennent à des modules logiciels, et non à des modules logiques ; ils se situent à des niveaux d'abstraction différents par rapport aux classes.
3. Une classe peut directement avoir des opérations et des attributs, tandis qu'un composant ne possède que des opérations accessibles via son interface.
Les composants sont classifiés en trois types selon leur rôle dans le système :
1. Composants de déploiement : Composants nécessaires pour constituer un système exécutable.
Par exemple, machine virtuelle Java, système de gestion de base de données, fichiers EXE, fichiers DLL.
2. Composants de produit de travail : Produits intermédiaires du processus de développement, ne participant pas directement au système exécutable.
Par exemple, fichiers de code source, fichiers de données.
3. Composants d'exécution : Composants créés au moment de l'exécution.
Par exemple, Servlets instanciés, objets COM+, documents XML.
Composant et composant : relation de dépendance
Composant et interface : relation de dépendance ou de réalisation
Pour contrôler une granularité appropriée des composants, les modules fonctionnels généraux peuvent être définis comme des composants. Ne concevez pas un seul classe comme un composant.
Faites glisser « interface » depuis la zone de symboles à gauche vers la zone de travail à droite, puis cliquez sur une extrémité du composant, maintenez le bouton gauche de la souris jusqu'à l'interface correspondante, relâchez la souris pour assigner l'interface que le composant doit réaliser.
Non, un composant simple peut ne pas avoir d'interface explicite.
Une interface fournie est représentée par un cercle, indiquant les fonctions exposées par le composant (pouvant être appelées).
Une interface requise est représentée par un demi-cercle, indiquant les services dont le composant dépend, fournis par d'autres composants.
Oui. Il peut y avoir une dépendance un-à-plusieurs, une dépendance bidirectionnelle ou un découplage via un composant médiateur entre les composants, en utilisant plusieurs lignes pointillées pour représenter les multiples relations de dépendance.