J'ai récemment étudié UML et dessiné des diagrammes simples avec des flèches simples ordinaires entre les classes, mais je sais que cela ne suffit pas. Il y a beaucoup d'autres flèches: généralisation, réalisation, etc., qui ont une signification pour le lecteur de diagramme.
Existe-t-il une ressource de Nice qui pourrait expliquer chaque flèche (ordinaire, ordinaire, en pointillé, remplie de diamant, diamant)?
Ce serait le meilleur si il aurait des exemples de code pour eux.
Voici quelques explications de la documentation Visual Studio 2015:
Diagrammes de classes UML: Référence : https://msdn.Microsoft.com/library/dd409437%28VS.140%29.aspx
5 : Association : Relation entre les membres de deux classificateurs.
5a : Agrégation : Association représentant une relation de propriété partagée. La propriété Agrégation du rôle de propriétaire est définie sur partagée .
5b : Composition : Association représentant une relation entière. La propriété Agrégation du rôle de propriétaire est définie sur Composite .
9 : Généralisation : le classifieur spécifique hérite d'une partie de sa définition du classificateur général. Le classificateur général se trouve à l'extrémité fléchée du connecteur. Les attributs, associations et opérations sont hérités par le classificateur spécifique. Utilisez l'outil Héritage pour créer une généralisation entre deux classificateurs.
13 : Importer : Relation entre les packages, indiquant qu'un package inclut toutes les définitions d'un autre.
14 : Dépendance : la définition ou l'implémentation du classifieur dépendant peut changer si le classificateur situé à l'extrémité de la flèche est modifié.
15 : Realization : La classe implémente les opérations et les attributs définis par le interface. Utilisez l'outil Héritage pour créer une réalisation entre une classe et une interface.
16 : Réalisation : Une autre présentation de la même relation. L'étiquette sur le symbole Lollipop identifie l'interface.
Diagrammes de classes UML: Règles : http://msdn.Microsoft.com/library/dd409416%28VS.140%29.aspx
Propriétés d'une association
Agrégation : Il s’agit d’un losange situé à une extrémité du connecteur. Vous pouvez l'utiliser pour indiquer que les instances du rôle d'agrégation sont propres ou contiennent des instances de l'autre.
est navigable : si la valeur est vraie pour un seul rôle, une flèche apparaît dans le sens de la navigation. Vous pouvez l'utiliser pour indiquer la navigabilité des liens et des relations de base de données dans le logiciel.
Généralisation : La généralisation signifie que le type spécialisé ou dérivé hérite des attributs, des opérations et des associations du type général ou du type de base. Le type général apparaît à l'extrémité en flèche de la relation.
Realization : Realization signifie qu'une classe implémente les attributs et les opérations spécifiés par l'interface. L’interface se trouve au bout de la flèche du connecteur.
Dites moi si vous avez d'autres questions.
ne belle feuille de triche (http://loufranco.com/wp-content/uploads/2012/11/cheatsheet.pdf) :
Cela couvre:
Et fournit quelques échantillons.
Mon "aide-mémoire" UML préféré est ML Distilled , de Martin Fowler. C'est le seul de ses livres que j'ai lu et que je recommande.
Pour des références rapides et des exemples clairs et précis, la référence rapide UML d’Allen Holub est excellente:
http://www.holub.com/goodies/uml/
(Il existe de nombreux exemples spécifiques de flèches et de pointeurs dans la première colonne d'un tableau, avec des descriptions dans la deuxième colonne.)
Une description très facile à comprendre est la documentation de yuml , avec des exemples pour les diagrammes de classes, les cas d'utilisation et les activités.
La réponse acceptée étant dite, il manque quelques explications. Par exemple, quelle est la différence entre une association unidirectionnelle et une association bidirectionnelle? Dans l'exemple fourni, les deux font existent. (Les deux '5 dans les flèches)
Si vous cherchez une réponse plus complète et que vous avez plus de temps, ici est une explication détaillée.
Si vous êtes davantage du genre MOOC, un cours gratuit que je vous recommanderais et qui vous apprend tout ce qu'il y a à faire pour sortir de la plupart des diagrammes UML est celui d'Udacity: https://www.udacity.com/course/software-architecture-design - ud821
Les agrégations et les compositions sont un peu déroutantes. Cependant, pensez que les compositions sont une version plus forte de l'agrégation. Qu'est-ce que ça veut dire? Prenons un exemple: (Agrégation) 1. Prenez une salle de classe et des étudiants: Dans ce cas, nous essayons d’analyser la relation qui les unit. Une salle de classe a une relation avec des étudiants. Cela signifie que la classe comprend un ou plusieurs étudiants. Même si nous supprimons la classe Classroom, la classe Students n'a pas besoin de détruire, ce qui signifie que nous pouvons utiliser la classe Student de manière indépendante.
(Composition) 2. Jetez un coup d'œil aux pages et à Book Class. Dans ce cas, les pages sont un livre , ce qui signifie des collections de pages fait le livre. Si nous supprimons la classe book, la classe entière sera détruite. Cela signifie que nous ne pouvons pas utiliser la classe de la page indépendamment.
Si vous n'êtes toujours pas clair sur ce sujet, regardez cette courte vidéo magnifique, qui explique plus clairement l'agrégation.