Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 11 sur 11
  1. #1
    Invité de passage
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    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 : 0
    Points
    0

    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 Confirmé Sénior
    Avatar de fsmrel
    Homme Profil pro François de Sainte Marie
    Spécialiste en bases de données
    Inscrit en
    septembre 2006
    Messages
    4 387
    Détails du profil
    Informations personnelles :
    Nom : Homme François de Sainte Marie
    Localisation : Autre

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

    Informations forums :
    Inscription : septembre 2006
    Messages : 4 387
    Points : 11 828
    Points
    11 828

    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.
    Faites simple, mais pas plus simple ! (A. Einstein)
    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 »)


    De grâce, pas de questions techniques par MP, ma boîte de réception explose !
    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale (Bonne lecture !)

  3. #3
    Invité de passage
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    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 : 0
    Points
    0

    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 Confirmé Sénior
    Avatar de fsmrel
    Homme Profil pro François de Sainte Marie
    Spécialiste en bases de données
    Inscrit en
    septembre 2006
    Messages
    4 387
    Détails du profil
    Informations personnelles :
    Nom : Homme François de Sainte Marie
    Localisation : Autre

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

    Informations forums :
    Inscription : septembre 2006
    Messages : 4 387
    Points : 11 828
    Points
    11 828

    Par défaut

    Présentez déjà votre proposition de diagramme et on verra ensuite les remarques qu'on peut en faire.
    Faites simple, mais pas plus simple ! (A. Einstein)
    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 »)


    De grâce, pas de questions techniques par MP, ma boîte de réception explose !
    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale (Bonne lecture !)

  5. #5
    Invité de passage
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    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 : 0
    Points
    0

    Par défaut diagramme de classes UML

    diagram.jpg
    Voici le diagramme que j'ai réalisé
    merci de me faire un retour

  6. #6
    Expert Confirmé Sénior
    Avatar de fsmrel
    Homme Profil pro François de Sainte Marie
    Spécialiste en bases de données
    Inscrit en
    septembre 2006
    Messages
    4 387
    Détails du profil
    Informations personnelles :
    Nom : Homme François de Sainte Marie
    Localisation : Autre

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

    Informations forums :
    Inscription : septembre 2006
    Messages : 4 387
    Points : 11 828
    Points
    11 828

    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.
    Faites simple, mais pas plus simple ! (A. Einstein)
    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 »)


    De grâce, pas de questions techniques par MP, ma boîte de réception explose !
    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale (Bonne lecture !)

  7. #7
    Invité de passage
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    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 : 0
    Points
    0

    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 diagram.jpg

  8. #8
    Expert Confirmé Sénior
    Avatar de fsmrel
    Homme Profil pro François de Sainte Marie
    Spécialiste en bases de données
    Inscrit en
    septembre 2006
    Messages
    4 387
    Détails du profil
    Informations personnelles :
    Nom : Homme François de Sainte Marie
    Localisation : Autre

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

    Informations forums :
    Inscription : septembre 2006
    Messages : 4 387
    Points : 11 828
    Points
    11 828

    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.
    Faites simple, mais pas plus simple ! (A. Einstein)
    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 »)


    De grâce, pas de questions techniques par MP, ma boîte de réception explose !
    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale (Bonne lecture !)

  9. #9
    Invité de passage
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    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 : 0
    Points
    0

    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 Confirmé Sénior
    Avatar de fsmrel
    Homme Profil pro François de Sainte Marie
    Spécialiste en bases de données
    Inscrit en
    septembre 2006
    Messages
    4 387
    Détails du profil
    Informations personnelles :
    Nom : Homme François de Sainte Marie
    Localisation : Autre

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

    Informations forums :
    Inscription : septembre 2006
    Messages : 4 387
    Points : 11 828
    Points
    11 828

    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.
    Faites simple, mais pas plus simple ! (A. Einstein)
    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 »)


    De grâce, pas de questions techniques par MP, ma boîte de réception explose !
    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale (Bonne lecture !)

  11. #11
    Invité de passage
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    décembre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    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 : 0
    Points
    0

    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,

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •