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

Dotnet Discussion :

Convertir un projet C# en UML


Sujet :

Dotnet

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Points : 25
    Points
    25
    Par défaut Convertir un projet C# en UML
    Bonjour,
    je souhaite mettre mon projet C# en UML. Existe t-il un logiciel permettant ce type de conversion ?
    L'intéret est d'obtenir un schéma "lisible" pour une présentation.

    Je sais que l'inverse est courament utiliser.

    Merci d'avance

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

    Inscrit en
    Juin 2004
    Messages
    963
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 963
    Points : 1 076
    Points
    1 076
    Par défaut
    Dans ce sens la c'est du reverse engineering est de nombreux logiciels le font mais ils sont a ma connaissance tous payants.
    Quoiqu'il en soit, le reverse engineering te donnent les briques pour ton schema UML (tout depend de ta conception objet) mais t'as du boulot derriere pour tout remettre en place.
    Sinon si tu es le developpeur et que le connais correctement, trace le directement sans repartir de ton code, tu t'embetteras moins.

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 103
    Points : 1 561
    Points
    1 561
    Par défaut
    Reflector dispose d'un modules pour faire du traçage de diagrammes uml...
    Il prend ton assembly et la décompile et extrait les diagrammes...
    Un module fait les diagrammes de classes, un autres les diagrammes de séquences... Malheureusement ces outils sont pas très rapides, libres et donc pas très performants, surtout pour des gros projets... le mien fait planter les deux traceurs

    Maintenant les gros outils de reverse quelqu'ils soient (tous payant je confirme) extrairons le diagramme de classes, cela dit c'est deja pas mal en soit, et éventuellement si té chanceux et que ton code est relativement propre, les diagrammes de séquences, mais sur les 15 diagrammes utilisés en UML (meme si au final yen a peut etre que 3 ou 4 qui servent), c'est à peu près les seuls qui pourrons être tracés automatiquement depuis ton code/assembly.

    Quand aux logiciels d'uml capable de faire du reverse engineering sur du code C#, ils ne sont pas légions quand meme. Les meilleurs pourrons retracer une partie des interactions entre les classes, mais ce n'est pas garantie et dépend d'énormément de facteur.

    Tu l'aura compris ce que tu demande est ce qu'il y a de plus difficile

  4. #4
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Points : 25
    Points
    25
    Par défaut
    bonjour,
    Merci de ces réponses,
    J'ai développer un logiciel de controle vision (Camera -> pc ->logiciel) pour un controle qualité en production. Il y a 12 semaines je connaissait ni l'environnement .NET ni le C# . (Néanmoins je connais le C/C++ le java). J'ai globalement fini mon application.

    Mon code n'est pas de ce qu'il y a de plus propre
    J'ai essayer FxCop j'ai 1500 messages (mais le logiciel marche).

    Je dois faire une présentation et expliquer le developpement a un consultant exterieur.

    L'idée d'une presentation graphique ma parut plus intéréssante. J'ai reussi a obtenir quelque chose intéréssant avec Altova UModel (essais de 15 jours).
    Que je vais imprimer en A0.
    Je pense que ce support graphique va me permettre de voir des erreurs de conceptions, ou des optimissations...

    Si je devais tous refaire depuis le début est-t'il conseillé :
    Pour un gain de temps et d'une conception simplifier :

    De faire le schéma UML puis le convertir en C# afin de finaliser le projet ou c'est juste une approche différente ?

    En tous cas merci,
    je vais essayer reflector pour voir si le resultat est plus intéréssant.

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 103
    Points : 1 561
    Points
    1 561
    Par défaut
    Tout dépend du projet et de toi.

    Si tu en est l'architecte et le développeur ou juste l'architecture ou juste le développeur.

    Moi étant les deux... j'ai développé toute l'architecture de tête sans me prendre la tete sur les diagrammes uml, cependant j'ai déjà pas mal d'expérience et l'architecture évolue sans cesse, au grès des mes humeurs.
    Et c'est une architecture volontairement ultra-modulaire avec un noyau dur qui fourni des tonnes de services. (un vrai framework)

    Cela dit pour toi, si tu n'a pas enormément d'expérience en architecture logicielle, ou si c'est pas ton métier principal, ou si le projet est trop gros, je te suggère vivement de passer par l'UML. Au moins meme si toi tu ne les utilisent pas, ces diagrammes, ils seront toujours là pour la documentation technique et permettrent aux autres de comprendre ton architecture.
    Surtout si quelqu'un doit te relire après.

    Ensuite les diagrammes uml sont d'un faible intéret pour un employeur ou pour un client. Sauf eventuellement le use-case, sinon... le reste ne concerne vraiment que l'équipe de developpement.

  6. #6
    Membre expérimenté Avatar de LaChips
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 109
    Points : 1 482
    Points
    1 482
    Par défaut
    Bonjour,
    Visual Studio 2005 permet d'obtenir le diagramme UML de ton projet.
    Tu fais un clic droit sur ton projet > Ajouter nouveau diagramme UML

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Points : 25
    Points
    25
    Par défaut
    Je suis l'architect et le developpeur et ce n'est pas mon métier principale mais je vais essayé pour le prochain projet de passer par l'UML.

    Le logiciel en question est générique, il n'est pas pour un projet spécifique. Ce logiciel devrait durer dans l'entreprise, si je dois quitter l'entreprise (je suis en apprentissage) et que quelqu'un doit le mettre a jour ou autre. Je souhaite lui laisser une trace et un rapport avec le code source afin qu'il ne soit pas noyer.

    Pour reflector c'est pas vraiment mieux

    Pour visual Studio 2005 j'essaie ce soir car l'entreprise n'a pas de licence.

    Merci pour tous !

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

Discussions similaires

  1. [Méthodes]Projet de DATAWAREHOUSE : UML ? Merise ?
    Par crashyear dans le forum Méthodes
    Réponses: 5
    Dernier message: 30/04/2007, 10h40
  2. [Visual C] Convertir un projet en pdf pur impression
    Par Platypus dans le forum Visual C++
    Réponses: 2
    Dernier message: 23/11/2006, 12h49
  3. Comment convertir un projet winform en webform ?
    Par shako95 dans le forum ASP.NET
    Réponses: 10
    Dernier message: 30/10/2006, 11h02
  4. Réponses: 3
    Dernier message: 28/04/2006, 12h27
  5. convertir un fichier XML en UML
    Par longbeach dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 28/07/2005, 09h47

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