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

Outils Discussion :

[UML] Que peut-on vraiment faire avec ces logiciels ?


Sujet :

Outils

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 35
    Points : 25
    Points
    25
    Par défaut [UML] Que peut-on vraiment faire avec ces logiciels ?
    Peut-on réellement obtenir de manière automatique le code UML, avec les schémas, en donnant simplement le code source du programme en Java ?

    Ou cela ne fonctionne que dans un sens : donner l'uml pour avoir le Java...

    J'ai essayé de télécharger Rose, mais c'est la misère sur le site de IBM...

  2. #2
    Rédacteur en Chef
    Avatar de Marc Lussac
    Homme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Mars 2002
    Messages
    28 664
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2002
    Messages : 28 664
    Points : 61 870
    Points
    61 870
    Par défaut
    Du code à UML c'est du reverse enginering.

    Donc quand tu as les deux sens c'est du bi-directionnel.

    Avec Borland Together c'est possible par exemple, dans les deux sens.

    Dans la théorie, quand tous fonctionne bien, avec un outil bi-directionnel tu peux donc générer ton code, après modifier ton code et ca met à jour pour toi la partie UML. Bon ca c'est la théorie, dans la pratique il faut voir...

    Je ne peux pas te répondre pour les autres outils UML.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mai 2002
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 20
    Points : 29
    Points
    29
    Par défaut
    En faisant du reverse Enginering tu n'obtiendras que la partie statique du système à savoir un gros diagramme de classes. Les schémas donnant la partie dynamique du système (diagrammes de séquences) ne seront pas réalisés.
    Le reverse enginering donne uniquement la partie statique et il faut découper le diagramme de classes obtenu en sous diagrammes pour mieux comprendre. De plus certains objets ou relations statiques ne seront pas donnés ou resterons seuls car le reverse ne peut tout voir.
    Donc à la question "Peut-on réellement obtenir de manière automatique le code UML, avec les schémas, en donnant simplement le code source du programme en Java ?" je réponds "non on ne peut pas réellement obtenir de manière automatique les schémas UML en donnant le code source"; tu n'auras que la partie statique (ce qui est déjà bien mais largement pas suffisant).

  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 : 56
    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
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Le meilleure outil que je connaisse c'est Borland Together Control Center.
    Il sait faire le reverse statique et sait même reconnaitre les collections Java non typées (genre Vector) ce qui lui permet de mettre les associations type 0..* sur tes diagrammes.
    Pour la partie dynamique, tu peux lui demander de générer un diagramme de séquence pour une opération quelconque. Il regardes pour cela ton code et fait ce qu'il faut (c'est même paramétrable).

  5. #5
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 534
    Points : 6 723
    Points
    6 723
    Par défaut
    je suis d'accord avec Ziploppe, espéré qu'un outil génére de lui même les 'bons' diagrammes est illusoire car à moins d'avoir seulement 3 classes il y a une partie sémantique un diagramme faisant que l'on montre tel groupe de classes et non telles autre dans chaque diagramme.

    C'est bien pour cela que je pense ne jamais générer automatiquement de diagramme lors d'un reverse avec Bouml, et surtout pas un diagramme ou l'on retrouve toutes classes reversées dessinées les unes à coté des autres avec les relations genre plat de spaghettis

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 206
    Points : 149
    Points
    149
    Par défaut
    Je ne peux pas te dire pour Java, mais des solutions existent peut-être. Comme dit plus haut, les outils UML bi directionnels ne donnent que la partie statique d'un programme. C'est utile mais loin d'être suffisant.

    Je me suis retrouvé confronté à ce problème avec un programme développé avec Delphi. En utilisant ModelMaker, j'ai eu les digrammes de classes, mais c'est très insuffisant pour comprendre comment fonctionne ce programme, qui contient des centaines de classes...

    Passer en mode debug et suivre la pile d’appel pour tracer manuellement les diagrammes est une solution, mais pas pratique et très longue. J’ai trouvé une autre solution. J’utilise le programme InTrace pour générer une liste des appels de procédures et fonctions, alors que le programme tourne. J’exporte le résultat sur forme de fichier texte. Un plug-in, dans ModelMaker, se sert ensuite de ce fichier texte pour générer un diagramme de séquences (ou plusieurs, s’il y a trop d’appels). Ce diagramme de séquences me donne une vision dynamique du programme, que je peux commenter dans ModelMaker. Même comme cela, c’est assez lourd, mais c’est nettement mieux que rien.

    Cette solution ne marche pas pour Java, bien sûr, mais mon message est là pour dire que si le besoin existe et est suffisamment fort, il y a peut-être des solutions.

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 35
    Points : 25
    Points
    25
    Par défaut
    Je vous remercie pour toutes ces explications

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

Discussions similaires

  1. [Toutes versions] Que ne peut on pas faire avec Excel ?
    Par comme de bien entendu dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 22/04/2019, 23h29
  2. Que faire avec ces fichiers ?
    Par r-kelleg dans le forum Microsoft BI
    Réponses: 5
    Dernier message: 28/09/2013, 19h47
  3. Peut on tout faire avec JNLP ?
    Par Dave62 dans le forum JWS
    Réponses: 1
    Dernier message: 25/10/2008, 19h23
  4. Que peux-je bien faire avec sql server EXPRESS
    Par bruce-willis dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 04/03/2008, 08h45
  5. Que peut-on faire avec une vue ?
    Par Invité dans le forum Décisions SGBD
    Réponses: 8
    Dernier message: 20/10/2005, 11h13

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