IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Diagrammes de Classes Discussion :

Comment représenter cette idée en UML ?


Sujet :

Diagrammes de Classes

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 9
    Par défaut Comment représenter cette idée en UML ?
    Bonjour,

    malgré l'usage de littérature (UML 2 et les design patterns
    analyse et conception orientées objets et développement itératif) et les faqs/tuto de développez.com, je n'arrive pas à trouver la représentation à utiliser dans mon cas d'étude.

    Pour ne pas rentrer dans les détails "biologiques" de mon exemple, je vais essayer de le formuler différemment. Pardon d'avance si ç'en devient obscur.

    Je souhaite en UML représenter une classe "hiérarchie" qui comporte les références suivantes :
    - nom du noeud (nom de la personne qui s'y trouve)
    - rang du noeud (capitaine, caporal ; chef, sous-chef)
    - contexte (administration, privé)
    - nom du noeud surordonné (nom du supérieur de ce noeud par exemple)

    Chacunes de ces références pointent vers une classe du même nom soit :
    - la liste des noms que peut prendre un noeud
    - la liste des rangs
    - la liste des contextes

    Voici mes conclusions :
    Ce n'est une composition car si on ne spécifie pas le rang, on peut
    tout de même reconstruire la hiérarchie (on peut reconstruire l'arbre).
    Je penser que c'était une aggrégation mais comme ma classe hiérarchie pointe deux fois sur la classe nom du noeud, comment représente-on ce "double pointage" ?
    Serait-ce une simple association ?
    Mon chef m'a suggéré deux choses : de poster sur un forum, puisque je ne trouve pas la réponse à ma question dans le livre, et de regarder un objet UML en forme de triangle qui bien sûr en UML à un sens particulier et là pareil, je n'ai pas trouvé le triangle en UML.

    Je serais plus que reconnaissant à toute forme d'aide donc merci d'avance.

  2. #2
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Billets dans le blog
    2
    Par défaut
    si je comprend bien ton truc, tes listes sont des ensembles de valeurs possibles pour les données dont tu parles avant.
    On ne représente pas les intervalles de valeur en UML, en général.

    Cependant, tu peux éventuellement définir une classe que tu stéréotypes "enum" et dont le nom des attributs seront les valeurs que peuvent prendre les données typées avec cette classe.

    Ex :
    Classe "enum" : RANG_VALUES
    avec les attributs suivant : CAPORAL, CAPITAINE

    Classe Noeud
    avec entre autres l'attribut rang de type RANG_VALUES

    J'espère que cela répond à ta question

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 9
    Par défaut
    En fait, non.
    Mais je pense que j'ai mal exposé ma question.
    Nom : representationHierarchie.png
Affichages : 1607
Taille : 10,8 Ko
    Mon gros sushi là c'est de savoir si j'utilise bien l'aggrégation et la composition.
    Et pour l'exemple de la liste de noms, je me demande aussi si je représente bien le double lien qu'il y a avec la hiérarchie.
    Néanmoins merci pour la réponse.

  4. #4
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Billets dans le blog
    2
    Par défaut
    Pour l'aggrégation, il faut te demander si la liste est une partie de la hiérarchie et pour la composition, tu dois te poser la même question avec en plus, tu dois détruire la liste de nom quand tu "tue" la hiérarchie.

    Je n'ai pas l'impression que l'aggrégation et la composition soient adaptées.

    Autre point, c'est en général louche d'avoir des classes "Liste de XXX" en UML. On a plutôt une association avec multiplicité > 1 vers un XXX (et non liste de XXX)

    Je pense que tu devrais exposer ton problème sans parler d'UML, cela serait plus clair car je ne comprend pas ton modèle UML

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 9
    Par défaut
    Pour l'aggrégation et la composition, c'est ce que j'avais lu.
    Le niveau de mes connaissances en UML aujourd'hui fait que :
    - le nom (pour ne plus dire la liste, j'ai compris ce que tu voulais dire) fait partie de la hiérarchie
    - une hiérarchie sans indication du rang reste une hiérarchie donc on peut tuer la classe rang sans détruire automatiquement la classe hiérarchie
    - une hiérarchie sans nom et sans avoir le nom du supérieur, c'est plus une hiérarchie donc si on tue la classe nom, on tue la hiérarchie

    au final, c'est peut être ces trois points qui sont faux : on a bien lu la même chose mais je l'ai interprété complètement différemment

    mais pour reprendre ton exemple, entre la classe noeud et la classe enum, le lien est de quel type ? association ? aggrégation ?

    quant à exposer mon problème sans parler d'UML, j'adorerais mais j'ai besoin de ce moyen d'expression universel pour présenter mon modèle, justement parce que un losange aura pour tout le monde la même signification. après je reconnais totalement que je suis newby.

    en tout cas merci pour les éclaircissements

  6. #6
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Billets dans le blog
    2
    Par défaut
    Pas lien avec l'enum, tu utilises l'enum comme type d'un attribut. Tu considères ainsi l'enum comme un type "basic / primitif" au même titre que int, float,...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [QST] Une idée de comment représenté ceci ?
    Par hannibal.76 dans le forum AWT/Swing
    Réponses: 0
    Dernier message: 28/06/2011, 11h12
  2. Comment représenter au mieux cette structure ?
    Par FloBaoti dans le forum C#
    Réponses: 0
    Dernier message: 03/08/2009, 10h23
  3. [UML][UC] Comment représenter catégories et sous catégories
    Par Kakashi_sensei dans le forum Cas d'utilisation
    Réponses: 15
    Dernier message: 31/01/2008, 17h56
  4. Réponses: 7
    Dernier message: 19/07/2005, 08h31
  5. [débutant][JSci][Matrix]comment utiliser cette classe
    Par Clark dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 10/05/2005, 10h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo