Page 1 sur 2

Votre outil de modélisation

Posté : 05 oct. 2006, 15:20
par naholyr
Je suis en phase de modification de mon outil de modélisation, qui me gonfle à cause de sa lourdeur sur ma machine de travail qui n'est pas tout à fait au goût du jour. Il s'agit de Poseidon For UML. Je me suis récemment mis à Eclipse une bonne fois pour toutes, que j'ai donc installé sur cette même machine. ça tourne bien, mais certainement pas avec Poseidon en prime.

Je voulais donc faire un tour d'horizon des outils de modélisation que vous utilisiez, et comment vous les raccrochiez à PHP.

Posté : 05 oct. 2006, 19:33
par Cyrano
Personnellement, le seul que j'utilise est MySQL WorkBench pour modéliser mes bases de données.

Mais pour ce qui est de l'UML, d'abord je suis une tanche dans ce type de modélisation et ensuite le seul que j'ai essayé est Dia avec le plugin pour PHP5... qui n'a jamais fonctionné, les liens de génération du code restant désespérément inactifs. Et depuis... ho quoi, peut-être deux ans, on attend toujours la doc annoncée, même payante (il était question de 10€)

Sinon, j'ai à peine touché quelques autres comme Poseidon ou encore Borland mais les versions gratuites et il n'y a pas de lien avec PHP.

Donc mon seul outil de modélisation actuel est situé quelque part entre mes deux oreilles ;)

Posté : 05 oct. 2006, 19:50
par momox
J'ai trouvé le meilleur outil qui existe, la feuille de papier :langue:
Très utile de surcroit, mais on ne s'en lasse pas, car c'est ce qu'il y a de plus efficace.
Ensuite, on voit a peu près le plan de ce que l'on veut obtenir.
@+

Posté : 05 oct. 2006, 19:51
par naholyr
Je vais tester bouml pour voir ce que ça donne, il se targue de sa légèreté :)

Posté : 05 oct. 2006, 20:31
par rami
Pour les mêmes raisons que toi naholyr, j'ai arrêté Poséïdon qui prend énormément de RAM.

StarUML est écrit en Delphi, ce qui signifie qu'il est dispo seulement pour Windows. Mais du coup, c'est plutôt rapide. Il gère la plupart des diagrammes UML, fait du reverse engineering comme un chef (Java, C++, C#).

Il génère même depuis peu du code PHP5 en installant ce template.

Bref, à tester pour les windowsiens!

Posté : 05 oct. 2006, 20:35
par momox
Tiens au fait, quelqu'un aurait-il un tuto pour faire de l'uml?
@+

Posté : 05 oct. 2006, 20:41
par rami
UML est considéré plus comme une boîte à outils qu'une méthode. Il est assez difficile de trouver des tutoriels étant donnés qu'il faut connaître un certain nombre de choses pour commencer.
Par contre, il existe des introductions assez développées :
- http://uml.developpez.com/
- http://uml.free.fr/

Posté : 05 oct. 2006, 20:58
par momox
Je file chercher la boite d'aspirines :langue:
@+

Posté : 05 oct. 2006, 21:34
par iclo
Je dois encore avoir un cours d'uml sur support électronique, faudrait que je fouille un peu, si ça intéresse quelqu'un...

Sinon, pour avoir un peu jouer avec Poséidon, cv'est vrai qu'il est puissant au niveau des fonctionnalité, mais très gourmant en ressources, comme d'autres programmes équivalents, tel que la gamme de Rationnal,

Posté : 06 oct. 2006, 06:36
par Cyrano
Je dois encore avoir un cours d'uml sur support électronique, faudrait que je fouille un peu, si ça intéresse quelqu'un...
Oui, ça m'intéresse :)
J'ai bien deux bouquins sur UML, un qui vaut pas un clou de chez O'Reilly (C'est rare chez eux) intitulé "Introduction à UML" dans lequel l'auteur fait plus montre de son savoir que de l'enseignement et un autre beaucoup plus sympa mais un peu brouillon à mon sens de la collection "Les cahier du programmeur"intitulé "Modéliser un site de E-Commerce avec UML".

Dans l'ensemble, je dirais que l'UML est une méthode de modélisation puissante et à mon avis un peu indispensable pour tout projet d'envergure, mais l'auto-apprentissage de cette matière est particulièrement ardue. Avoir au départ une bonne culture "objet" ne peut qu'aider à aborder certains concepts.

Posté : 06 oct. 2006, 10:05
par naholyr
Pour les mêmes raisons que toi naholyr, j'ai arrêté Poséïdon qui prend énormément de RAM.

StarUML est écrit en Delphi, ce qui signifie qu'il est dispo seulement pour Windows. Mais du coup, c'est plutôt rapide. Il gère la plupart des diagrammes UML, fait du reverse engineering comme un chef (Java, C++, C#).

Il génère même depuis peu du code PHP5 en installant ce template.

Bref, à tester pour les windowsiens!
J'ai testé hier à la maison, excellente produit ! Simple mais complet, par contre un défaut pour PHP5 (le seul mais grave à mon sens) : le code qu'il génère n'inclut pas la documentation :( C'est très embêtant je trouve, mais il doit être possible d'éditer le template...

Edit: après avoir potassé l'API je sais comment faire :) je m'y attèle et j'enverrai le template remis à jour à StarUML.

Posté : 06 oct. 2006, 19:14
par iclo
Cyrano : je tenterai d'exumer mes vieilles archives ce we, mais c'est pas gagné...

Posté : 07 oct. 2006, 23:12
par zigz4g
Je met ma petite contribution a ce poste :
Je modélise les classes PHP5 sous Dia avec le plugin de UML2PHP5.
C'est correct, il faut néanmoins regarder du côté de la template XSLT pour obtenir des fichiers générés à sa sauce. Pour les autres, il suffit de configurer le plugin par son fichier de configuration.
Le petit défaut que je pense est possible de résoudre avec le fichier de configuration, c'est qu'il faut redéfinir les méthodes abstraites ou les méthodes des interfaces dans la classe héritantes. Bon la encore faut regarder dans le fichier de conf pour certainement obtenir des schémas plus propres et ne pas faire trop vite mais on manque de temps dans le projet en cours :)
Je dirais aussi que pour un projet assez volumineux, le fait de faire des schémas permet de garder une bonne cohérence dans le développement. Pour ce qui est de l'UML dans notre projet, on ne fait que les diagrammes pour générer les classes. C'est déjà pas mal, surtout quand on s'appercoit qu'il faut refaire parfois quelques classes lors du développement.
Pour le reste de la méthodologie, je dirais qu'elle est pratique met long à mettre en place dans le cadre de petits projets et même pour des gros.
L'avantage par rapport au papier c'est qu'il est possible de faire des versions des fichiers grace à subversion par exemple (OK le classeur peut faire la même chose et la date avec :) ).

Pour ce qui est de l'apprentissage, c'est grace à la pratique que l'on apprend le mieux. C'est par contre grace au C++ que je comprend l'UML et moins l'inverse. Une fois les méthodes de bases apprises, on comprend mieux des concepts plus avancés, je pense aux designs patterns.

Je clos mon poste par un outil rarement cité car je ne suis pas sur qu'il est porté sous Windows : Umbrello.
Il permet de générer du code PHP5. Si mes souvenirs sont bons, ce n'était pas encore d'une grande qualité pour la génération du code. Enfin, plus un problème de norme qui ne me plaisait pas :)
Dans la FAQ, il y aurait une méthode pour faire du reverse ingenering des fichiers PHP.

Posté : 09 oct. 2006, 20:05
par rami
Le problème de Dia, c'est qu'il est très light puisqu'il ne permet de faire que des diagrammes de classe. Il ne gère pas XMI et son ergonomie n'est pas dès plus simple..

Posté : 09 oct. 2006, 20:44
par iclo
Cyrano : j'ai cherché, mais je n'ai retrouvé que la version papier de mon cours d'uml, et pas la version électonique, désolé :oops: