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 :

diagramme de classes UML


Sujet :

Diagrammes de Classes

  1. #1
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 6
    Points : 3
    Points
    3
    Par défaut diagramme de classes UML
    On veut modéliser des bâtiments (chaque bâtiment a une adresse) avec des étages et des pièces, pour chaque pièce il y a un nombre d'occupants prévu.
    Une pièce fait partie d'un seul étage, il y a des escaliers et des ascenseurs. Une pièce peut avoir une ou plusieurs portes donnant sur d'autres pièces. Il y a aussi des fenêtres donnant sur l'extérieur.

    Il faut aussi pouvoir répondre à 3 questions :

    1) quel est le nombre total d'occupants prévus par bâtiment ?
    2) quelles sont les pièces voisines de chaque pièce (des pièces sont voisines si il y a une porte au moins entre elles)
    3) Pour une pièce donnée, quel est le nombre minimum de pièces par où passer pour arriver à l'extérieur ?

    Il faut fournir un diagramme de classes UML correspondant au problème et un programme java traitant les questions en accord avec votre modélisation UML.

    Merci d'avance,

  2. #2
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonjour codeur42,


    Du point de vue diagramme de classes :



    Mais dans la programmation du calcul du plus court chemin pour aller d’une pièce à la porte d’entrée de l’immeuble il faudra assurer quelques contrôles du genre auto-connexion, car il y aura des requêtes récursives (disons jointure récursive si on utilisait SQL) :

    Par exemple, on sort de la pièce P1 pour entrer dans la pièce P2, puis on quitte P2 pour entrer dans P3 qui à son tour débouche sur P1, ça peut durer longtemps...

    Pour la partie java, à vous de voir.


    N.B. Les losanges noirs symbolisent la relation de composition entre classes.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  3. #3
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 6
    Points : 3
    Points
    3
    Par défaut diagramme de classes UML
    Merci pour la réponse,
    Pourriez vous juste me compléter le diagramme (il manque des classes, ex : porte, fenetre, ...). Je serait reconnaissant
    Bonne journée

  4. #4
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Présentez déjà votre proposition de diagramme et on verra ensuite les remarques qu'on peut en faire.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  5. #5
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 6
    Points : 3
    Points
    3
    Par défaut diagramme de classes UML
    Nom : diagram.jpg
Affichages : 2692
Taille : 39,0 Ko
    Voici le diagramme que j'ai réalisé
    merci de me faire un retour

  6. #6
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonsoir codeur42,


    Une pièce détermine un étage et un étage détermine un bâtiment, donc par transitivité une pièce détermine un bâtiment : ainsi l’association que vous avez établie entre BATIMENT et PIECE est redondante, inutile et doit disparaître.

    Vous définissez une classe OCCUPANT dotée des attributs nom et prénom. Toutefois il est écrit :

    « Pour chaque pièce il y a un nombre d'occupants prévu »

    Autrement dit on peut penser que les bâtiments ne sont pas encore habités... Contentez-vous de définir un attribut NbOccupants (nombre d’occupants par pièce) pour la classe PIECE.

    Selon votre DC, une pièce peut avoir plusieurs fenêtres : d’accord. En revanche vous avez modélisé la possibilité pour une fenêtre d’appartenir à plusieurs pièces : personnellement je me limiterai à l’appartenance à exactement une pièce...

    Par ailleurs une fenêtre n’a rien de particulier, elle caractérise seulement une pièce, en conséquence il suffit de compter combien une pièce a de fenêtres, ce qui revient à se contenter de définir un attribut NbFenetres pour la classe PIECE plutôt que de prévoir une classe FENETRE.

    Concernant les portes : comme les fenêtres, en faire une classe manque d’intérêt. Il est préférable d’utiliser l’association réflexive que j’ai représentée pour relier les pièces : l’association simule les portes. Toutefois, on peut aussi modéliser le fait que deux pièces ont plus d’une porte en commun :



    Maintenant, ça me paraît luxueux, mais si vraiment vous y tenez, vous pouvez aussi définir une classe PORTE associée à la classe PIECE par une relation d’agrégation : les pièces communicantes ont en commun une ou plusieurs portes.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  7. #7
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 6
    Points : 3
    Points
    3
    Par défaut diagramme de classes UML (codeur42)
    Merci beaucoup pour ton aide.
    Voici le diagramme de classe que j'ai réussi à faire, avez vous des remarques à faire ou des choses à compléter ?
    Merci d'avance Nom : diagram.jpg
Affichages : 2654
Taille : 28,6 Ko

  8. #8
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonsoir codeur42,


    Manifestement, la classe-association Communication ne vous enthousiasme pas, mais anyway !

    Le jour où on vous ajoutera des questions du genre « Quel escalier, quel ascenseur prendre pour se rendre à tel étage », il y aura des raffinements à apporter...

    Sinon, ça devrait rouler.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  9. #9
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Bonsoir fsmrel,
    que signifient les pointillés qui partent de la classe communication ?
    Je n'ai pas bien compris !!!
    Merci d'avance,

  10. #10
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonsoir codeur42,

    Avec UML, contrairement à une classe, une association ne peut pas être porteuse d'attributs. Pour y parvenir, on utilise une classe-association qui a les propriétés de la classe et de l'association. Pour brancher une classe-association et une association, on utilise justement les pointillés.

    Par exemple, pour savoir à quelle date les étudiants ont obtenu leurs diplômes :



    DATE_DIPLOME est une classe-association.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  11. #11
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 6
    Points : 3
    Points
    3
    Par défaut Diagramme de classe uml / code java
    Bonjour,
    Pourriez vous m'aider pour vérifier qu'avec ce diagramme de classes je peux répondre aux 3 questions posées dans le sujet initial ???
    Y a t'il quelqu'un qui peut m'aider pour la génération du code JAVA ?
    Merci d'avance,

Discussions similaires

  1. aide sur un diagramme de classe UML
    Par pascal91 dans le forum Diagrammes de Classes
    Réponses: 7
    Dernier message: 29/12/2008, 19h19
  2. Diagramme de classes UML
    Par cliquet dans le forum Général Java
    Réponses: 3
    Dernier message: 08/06/2008, 13h18
  3. Diagrammes de classes UML de moteurs 3D
    Par Elendhil dans le forum Moteurs 3D
    Réponses: 4
    Dernier message: 18/11/2007, 21h30
  4. Réponses: 2
    Dernier message: 26/05/2007, 23h06
  5. Diagramme de classes UML
    Par franc82 dans le forum OpenGL
    Réponses: 5
    Dernier message: 27/10/2006, 10h19

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