PlantUML a écrit 8 commentaires

  • [^] # Re: PlantUML

    Posté par  (site web personnel) . En réponse au journal Écrire des diagrammes de séquences. Évalué à 6.

    Bonjour,
    C'est vrai que nous collons à l'UML (d'où le nom), mais quand c'est possible nous nous écartons de cette ligne.
    (Par exemple, nous avons rajouté des fonctionnalités SDL, ainsi que le support des diagrammes Archimate).

    Ainsi, pour la double flèche, la syntaxe suivante est déjà possible:
    w3client<-> w3server : TLS Hanshake\nthat follows is ciphered

    Une autre possiblité est d'utiliser:
    == TLS Hanshake\nhat follows is ciphered ==

    Résultat:
    http://www.plantuml.com/plantuml/uml/ixLL2F49Ll18p2lEICnEZSdBI2nHIClFoSalBrR8B5P8pYp8I2rAJL6mjUKgDqxEoKpDAx7HjLCeDovEBIfBBLAm8au_0000

    Ce n'est pas exactement le dessin voulu, mais ça peut dépanner.

  • # Interopérabilité avec XMI

    Posté par  (site web personnel) . En réponse à la dépêche PlantUML, un nouvel outil de génération UML. Évalué à 2.

    Alors, en ce qui concerne l'interopérabilité avec XMI, supposons qu'on essaie de faire un fichier XMI qui marche à la fois avec StarUML et ArgoUML (au hasard), avec 3 classes, et 2 relations.

    Le problème, c'est que StarUML et ArgoUML n'interprètent pas tout à fait la balise <UML:AssociationEnd> de la même façon. :-)

    Si un fan de XMI réussi à faire un même fichier qui marche sur les deux produits, ça m'intéresse beaucoup. Mais je ne suis pas sur que cela soit possible...

    Fichier pour ArgoUML: [http://plantuml.sourceforge.net/testArgoUML.xml]
    Fichier pour StartUML: [http://plantuml.sourceforge.net/testStarUML.xml]
  • [^] # Re: Felicitation pour ce joli travail

    Posté par  (site web personnel) . En réponse à la dépêche PlantUML, un nouvel outil de génération UML. Évalué à 2.

    Je plussoie à l'idée d'avoir un export xmi car cela pourrait permettre de profiter des outils actuels de transformations (et pas simplement des générateurs de code).
    Ok, pour commencer, seuls les diagrammes de classes (j'ai l'impression que c'est ce que veulent les gens de toute façon) seront pris en compte, et on va tester avec ArgoUML et StarUML.
    Mais il faudra attendre l'année prochaine pour avoir ça :-)


    Sinon, par pure curiosité, avez vous regardé la norme "Human UML Textual Notation" (ou un truc dans le genre) de l'OMG, et si oui, qu'en avez vous pensé ?

    Quelqu'un m'a effectivement montré ça il y a quelque temps. [[http://www.omg.org/spec/HUTN/1.0/PDF]].
    D'ailleurs, cela a un peu influencé la syntaxe de PlantUML sur les diagrammes de classes et d'objet (utilisation d'accolades).
    En fait, cela m'a laissé un peu perplexe: dans le document, il est écrit que cela peut marcher pour tous les types de diagrammes.
    Mais les exemples ne contiennent que des diagrammes de classes ou d'objets, et je ne vois pas comment utiliser la notation pour les diagrammes de cas d'utilisation ou de séquence, par exemple.

    Est-ce qu'il y a des avantages par rapport à UMLgraph ?
    UMLgraph est très bien (d'ailleurs, je l'utilisais avant PlantUML, et c'est clair que cela a été une source d'inspiration), mais il ne se focalise uniquement sur les diagrammes de classes (et un peu les diagrammes de séquence). Il manque tous les autres.
    De plus, il est très orienté Java, puisqu'il est fait pour être mis dans la javadoc.
    Je le considère donc comme un illustre ancêtre! (au sens positif du terme)
  • [^] # Re: uml c'est aussi utile que ... rien

    Posté par  (site web personnel) . En réponse à la dépêche PlantUML, un nouvel outil de génération UML. Évalué à 4.

    Je suis à 100% d'accord.
    L'exemple de paypal est parfait : avoir des tas de diagrammes que l'on ne comprend pas ne sert à rien.

    Martin Fowler a expliqué il y a longtemps que l'UML était très utile pour présenter une version simplifiée, mais compréhensible d'un code.
    [[http://www.martinfowler.com/bliki/UmlAsSketch.html]]

    Cela permet d'avoir une vision globale du problème.
    Allez, puisque je fais ma pub, voici un diagramme des classes paypal faite avec PlantUML:

    [[http://www.plantuml.com/plantuml/uml/image/bPBFJiGW4CRlJVeEd(...)]]

    Cela me paraît plus compréhensible (même si je n'ai pas tout compris :-)

    Quant à la possibilité de rajouter une légende, c'est une bonne suggestion. Il faudra rajouter cette possibilité dans le logiciel...
  • [^] # Re: Rendu

    Posté par  (site web personnel) . En réponse à la dépêche PlantUML, un nouvel outil de génération UML. Évalué à 5.


    Tu sembles indiquer que l'intérêt de faire une sortie en xmi (ou uml2 eclipse) n'y est pas, mais y en existe t'il une ?
    C'est justement pour pallier ce manque pour quelqu'un qui souhaiterait reprendre cette ébauche travail dans un AGL classique que ca aurait un intérêt.

    En fait, l'export vers XMI est quelquepart dans la TODO liste.
    Je suis d'accord que cela serait un vrai plus, surtout que ca ne doit pas être très compliqué à faire.
    La seule chose qui m'empêche d'avancer sur ce point est le manque de documentation précise sur XMI.
    Si quelqu'un a un des liens sur des exemples simples & précis de fichiers XMI, je suis preneur!
    (Genre, le diagramme de séquence minimale : Bob -> Alice : Hello, et le digramme de classe minimale A <|-- B)


    Pas moyen de partager un même concept entre plusieurs diagrammes,

    C'est vrai, encore qu'avec l'utilisation d'!include, tu peux t'en sortir, même si c'est un peu une bidouille


    Pas moyen de renommer une classe partout où elle apparaît,

    Là, par contre, avec un petit sed ou alors avec ton éditeur de texte, c'est possible


    de remplacer simplement un héritage par une délégation, pour discuter de la pertinence de la décision...

    Remplacer :

    Role <|-- User

    par:

    User --> Role : utilise

    va très vite pour un expert du clavier. Je te met au défi d'aller aussi vite avec Rose / ArgoUml :-)
    Mais j'imagine que tu pensais à quelquechose de plus compliqué ?


    Que ce message ne t'apparaisse comme une critique simplement péjorative car je reste admiratif devant le travail accompli.
    Il y a un espace qui est brillamment occupé avec ce projet.

    Pas de problème. Le projet a beaucoup avancé grâce aux remarques (même négatives!) des utilisateurs, et on a le droit d'être dubitatif sur l'intérêt de PlantUML : il n'a pas vocation à sauver le monde :-)
  • [^] # Re: XMI?

    Posté par  (site web personnel) . En réponse à la dépêche PlantUML, un nouvel outil de génération UML. Évalué à 2.

    C'est une discussion que j'ai eu souvent :-) Tout dépend de l'usage que l'on fait de l'UML, et il y a beaucoup d'usages possibles.
    Je ne suis pas d'accord que sans xmi, UML est très restreint. D'ailleurs, il me semble qu'UML existait bien avant xmi. Pour la documentation, UML est super pratique.

    Certes, sans xmi, il est impossible de faire un traitement automatiquement de l'information. Mais on peut très bien utiliser UML sans avoir ce besoin précis.

    En plus, comme expliqué ici, chacun utilise son "standard" XMI [[http://modeling-languages.com/content/xmi2-tool-exchanging-u(...)]], qui du coup n'est pas si standard que ça (et du coup, on dit que UML est compliqué et lourd).

    PlantUML n'est pas un outil de modélisation, c'est plutôt un outil de dessin (on m'a même dit "dessin agile"). Le paradoxe, c'est que malgré cela, il aide quand même à faire de la modélisation.
  • [^] # Re: Je déteste UML

    Posté par  (site web personnel) . En réponse à la dépêche PlantUML, un nouvel outil de génération UML. Évalué à 7.

    D'ailleurs, c'est ça qui a poussé au développement de PlantUML.

    J'en avais marre que pour faire un simple petit dessin explicatif, il fallait lancer des outils trop lourds (Rose...), et cela juste pour faire un petit diagramme.

    Ces outils peuvent être très puissants (génération de code, analyse automatique...). Mais pour faire simplement quelques diagrammes, ils ne sont forcément adaptés.

    Et la lourdeur inhérente à ces outils provoque la réaction classique : UML, c'est lourd, compliqué et je déteste :-)

    UML, cela sert à communiquer avec un symbolisme commun.
  • [^] # Re: Rendu

    Posté par  (site web personnel) . En réponse à la dépêche PlantUML, un nouvel outil de génération UML. Évalué à 3.

    En fait, c'est GraphViz qui fait tout le boulot de placement des classes. Et en pratique, l'algo donne souvent de très bons résultats. (mais pas toujours :-)

    Exemples:
    [http://code.google.com/p/pyang/wiki/UMLOutput]
    [http://ews.mseedsoft.com/code-docs/page1.html]

    Quand il y a beaucoup de classes (disons plus de 60) la limite, c'est plutôt la taille de l'image générée, trop grande, qui fait que ce n'est plus lisible.