Débuter avec uml

UML parlant

UML est un langage. Cela signifie qu’il a des mots et une syntaxe pour regrouper les mots de la langue afin de faire des phrases, des paragraphes et enfin des articles et des essais. Comme avec les langages humains, vous pouvez construire n’importe quoi, du texte de présentation aux œuvres artistiques. Et contrairement aux langages humains, vous utilisez des éléments graphiques tels que des rectangles, des ellipses, des arêtes et autres plutôt que de l’alphabet pur et des marques de phrases. Apprendre UML, c’est comme apprendre une langue étrangère. Vous acquerrez d’abord un petit ensemble de vocabulaire passif que vous pourrez augmenter dans la pratique en améliorant progressivement votre vocabulaire actif. Parler couramment UML nécessite une certaine pratique, mais même avec quelques bases, vous pouvez accomplir beaucoup de choses et vous serez bien compris dans la communauté UML.

Vocabulaire de base

UML ne consiste pas à créer des diagrammes. Il s’agit de choisir les bons mots pour exprimer un contexte (dans la plupart des cas technique). Les diagrammes sont un moyen de présenter le texte choisi aux humains, car une perception visuelle est généralement un bon moyen de transmettre des informations. Vous utiliserez donc des éléments graphiques non pas pour dessiner une image mais pour faire passer un message. L’ensemble de la spécification du langage UML s’étend sur plusieurs centaines de pages de texte où même les experts peuvent avoir des difficultés à comprendre les détails. Passons donc à quelques éléments de langage très basiques et ignorons toutes les friandises qui ne feront que vous embrouiller au début.

Classe : est représentée par un rectangle qui ressemble à ceci : [![entrez la description de l’image ici][1]][1]

Vous voyez trois compartiments où les deux inférieurs peuvent être omis si vous souhaitez masquer des détails dans certains contextes. Le compartiment supérieur affiche le nom de la classe en gras. Au-dessus du nom, un stéréotype facultatif peut apparaître qui signifie spécialiser quel type de classe. Ce stéréotype peut également être utilisé pour contrôler la forme de la classe ou pour afficher une icône qui s’affiche en haut à droite.

Le compartiment médian répertorie les attributs définis dans la classe. Le + et - à gauche indiquent la portée (publique ou privée ; il y en a quelques autres). Il est suivi du nom, de deux-points et du type de l’attribut. Une multiplicité peut suivre entre crochets.

Le compartiment le plus bas répertorie toutes les opérations de la classe. Encore une fois avec la portée et le nom suivis des types de paramètres entre crochets et d’une valeur de retour facultative.

Edge : est une ligne (courbée) de formes diverses : [![entrer la description de l’image ici][2]][2]

De haut en bas, vous pouvez voir une dépendance, une association, une réalisation et une généralisation. Il y en a (beaucoup) plus que ce qui est montré ici, mais avec ceux-ci, vous aurez un bon départ.

Une dépendance est utilisée comme relation la plus faible. Cela montre simplement qu’un élément dépend de celui vers lequel il pointe. L’exemple ici montre un stéréotype qui peut être utilisé pour spécialiser le type de dépendance, mais dans la plupart des cas, il est utilisé sans. Les stéréotypes peuvent être appliqués à tout type d’élément UML et spécialisent davantage sa signification.

Une association est une relation plus forte entre deux éléments. Lorsqu’il est utilisé avec des classes, l’exemple ci-dessus utilise un losange à gauche pour exprimer qu’une instance de la classe qui est à côté du losange compose une instance à l’autre extrémité de l’association. Cela signifie que la classe de gauche est responsable de la libération de la mémoire de l’objet qu’elle possède.

Une réalisation est utilisée lorsque la classe de gauche réalise une interface (qui est une classe avec un stéréotype «interface» appliqué) à droite. Et la généralisation en bas exprime que la classe de gauche hérite de la classe de droite.

Notez les petites différences dans les dessins où les lignes pointillées, les triangles ouverts et fermés à la fin sont utilisés. Ils ont une grande importance et vous ne devriez pas être négligent dans leur utilisation.

[1] : http://i.stack.imgur.com/sQLZv.png [2] : http://i.stack.imgur.com/lD6N3.png