Profil UML
Les profils UML
1.3 Les annotations ou propriétés. 5
1.4 Les commentaires ou notes. 5
1.5 Comment définir un profil UML ? (1/2). 5
2 UML et le paradigme relationnel 8
3 Proposition de profil pour les vues conceptuelles sur les données. 8
4 Proposition de profil pour les schémas relationnels. 9
1 Les profils UML
Un profil UML est un ensemble cohérent, un véritable dictionnaire composé de stéréotypes, de contraintes, d’annotations et de commentaires, définissant un univers ou un paradigme de pensée. Il permet d’étendre le langage UML à des contextes liés au paradigme objet ou à d’autres univers. Ce dictionnaire constitue un nouveau vocabulaire qui enrichit la portée de UML.
1.1 Les stéréotypes
Un stéréotype, noté « nom », permet d’étendre la sémantique d’un diagramme et peut s’appliquer à n’importe quel élément UML. UML comprend 13 types de diagrammes. Le nom du stéréotype fait référence à un espace de nommage particulier, par exemple la persistance, le temps réel, ou la distribution de composants.
UML inclut aussi des stéréotypes natifs comme « interface » ou « include », permettant de différencier certains artefacts. Par exemple, « interface » indique que l’élément graphique représente une interface et non une classe, malgré une forme identique.
1.2 Les contraintes
Une contrainte, notée {expression de contrainte}, impose des règles à un élément UML. Elle peut définir des règles, des choix ou des énumérations. On les retrouve souvent sur les relations entre classes. Par exemple, la contrainte {triée} indique que les objets dans une relation multiplicité 1..* ou 0..* sont organisés dans un ordre précis. Les contraintes peuvent être exprimées en langage naturel ou formel (OCL, langage de programmation, etc.).
1.3 Les annotations ou propriétés
Une annotation, ou « tagged value », est une propriété ajoutée à un stéréotype pour en préciser la fonction. Elle est notée {clef=valeur}. Par exemple, dans un diagramme de déploiement : {cœurs par processeur=6}. Si la valeur est booléenne, la simple présence de la clé suffit : {multi-processor}.
1.4 Les commentaires ou notes
Un commentaire ou note est un objet graphique attaché à un élément UML pour préciser, détailler ou expliciter des remarques et règles de façon verbeuse.
1.5 Comment définir un profil UML ? (1/2)
Un profil est un package portant le stéréotype <<profile>>
Un profil contient la définition de nouveaux stéréotypes :


2 UML et le paradigme relationnel
Les concepts liés au modèle relationnel apparaissent souvent dans des vues abstraites du système d’information (modèle de domaine, modèle conceptuel de données, modèle Entité-Association) ou dans des vues logiques (modèle logique de données, schéma relationnel). Ces représentations sont variées et non standardisées. UML peut être utilisé pour les formaliser, à condition d’étendre sa sémantique via des profils adaptés.
3 Proposition de profil pour les vues conceptuelles sur les données
En raison des limites graphiques des outils UML du marché, ce profil permet de réaliser des modèles d’analyse et de conception.
Dictionnaire de stéréotypes : « entité », « association », « entité
fictive », « id », « id relatif »
Dictionnaire
de contraintes :
{DF}, {CIF}, {lien relatif}
Dictionnaire
de propriétés :
{lien=entité A, entité B, entité C,…} ou via les commentaires/notes
Contraintes
optionnelles :
{partition}, {exclusion}, {totalité}
Exemples :

4 Proposition de profil pour les schémas relationnels
Dictionnaire de
stéréotypes : « TABLE »,
« VUE », « PK », « FK », « PFK », « ARTIFICIELLE », « NOT NULL », « UNIQUE »,
« CHECK », « INDEX », « TRIGGER »
Dictionnaire de contraintes : {lien identifiant}, {lien non identifiant}
Dictionnaire de commentaires : explication des contraintes CHECK et
autres
Les contraintes de clé primaire et étrangère sont indiquées dans la description des colonnes de la table. Les autres contraintes apparaissent dans une seconde section. Pour la contrainte NOT NULL, il est recommandé de regrouper les colonnes concernées sous forme de liste pour plus de lisibilité, ce qui n’est pas possible pour les autres contraintes.