/ / Les packages sont-ils autorisés dans les diagrammes de classes UML 2.0? - java, uml

Les packages sont-ils autorisés dans les diagrammes de classes UML 2.0? - java, uml

Je suis en train de concevoir les classes d’un système basé sur Java en utilisant la notation UML 2.0 pour les diagrammes de classes (avec Astah).

Afin de simplifier les dépendances entre les classes, j'aimerais regrouper certaines classes dans un package et mettre les relations de dépendance d'autres classes dans le package.

La mise en package des packages dans un diagramme de classes, puis l’écriture de la relation entre les classes et les packages, est-elle conforme aux spécifications UML 2.0?

Les paquets doivent-ils être placés uniquement dans les diagrammes de paquet?

Réponses:

6 pour la réponse № 1

Tout d’abord, les différents diagrammes en UML ("ClassDiagramme "," Diagramme de paquetage "," Diagramme de séquence ", etc.) sont davantage une commodité conceptuelle que une restriction de ce que vous pouvez visualiser, comme indiqué dans l’annexe A:

Annexe A

Cette taxonomie fournit une organisation logique pourles différents types principaux de diagrammes. Cependant, il ne faut pas exclure le mélange de différents types de diagrammes, comme on le ferait quand on combine des structures éléments (par exemple, montrant une machine à états imbriquée dans une structure interne). Par conséquent, les limites entre les Différents types de diagrammes ne sont pas strictement appliqués.

Cela signifie que vous pouvez mettre des paquets en toute sécurité dans des diagrammes de classes et inversement, car ces termes ne veulent pas dire grand chose.

La question la plus importante est cependant de savoir s'il peut y avoir une dépendance entre les classes et les packages, et selon les spécifications, nous pouvons:

7.7.3.2

Une utilisation est une dépendance dans laquelle un NamedElementnécessite un autre élément NamedElement (ou un ensemble d’éléments NamedElements) pour sa mise en œuvre complète ou son fonctionnement. L’utilisation ne spécifie pas comment le client utilise le fournisseur autre que le fait que le fournisseur est utilisé par la définition ou la mise en œuvre du client.

Depuis les deux Class et Package sont des sous-classes de NamedElement, vous pouvez avoir un Dependency entre eux.