Personnellement j'utilise beaucoup UML sur le papier ou avec UMLet http://www.umlet.com/ . Je pense que c'est un bon outil d'analyse et de conception.
Maintenant toutes les intégrations d'UML avec le code que j'ai essayé (Together, Rational, ...) ne m'ont jamais convaincu:
- c'est lourd
- le code généré n'est parfois (voire souvent) pas ce qu'on aurait écrit
- le travail en équipe n'est pas facilité, intégration avec les outils de versionning assez difficile
- dur de former les gens
- et puis quand on doit faire de la mise au point sur sa machine (je travaille en info indus.) et qu'on doit faire vite, c'est quand même plus simple de taper directement dans le code.
Je pense qu'il faut garder UML comme un outil d'analyse et de communication entre les développeurs. Les outils de génération enlèvent toute la souplesse d'UML.
Pour la qualité du code, de la doc. et du gain de temps, moi je pense qu'il vaut mieux dépenser son énergie à mettre en place une bonne politique de tests unitaires et d'intégration continue avec des outils comme CruiseControl, xUnit, ... et garder UML pour l'analyse et la doc.
# UML oui, génération de code non
Posté par laurent laffont . En réponse au journal Conception de logiciel et UML. Évalué à 4.
Maintenant toutes les intégrations d'UML avec le code que j'ai essayé (Together, Rational, ...) ne m'ont jamais convaincu:
- c'est lourd
- le code généré n'est parfois (voire souvent) pas ce qu'on aurait écrit
- le travail en équipe n'est pas facilité, intégration avec les outils de versionning assez difficile
- dur de former les gens
- et puis quand on doit faire de la mise au point sur sa machine (je travaille en info indus.) et qu'on doit faire vite, c'est quand même plus simple de taper directement dans le code.
Je pense qu'il faut garder UML comme un outil d'analyse et de communication entre les développeurs. Les outils de génération enlèvent toute la souplesse d'UML.
Pour la qualité du code, de la doc. et du gain de temps, moi je pense qu'il vaut mieux dépenser son énergie à mettre en place une bonne politique de tests unitaires et d'intégration continue avec des outils comme CruiseControl, xUnit, ... et garder UML pour l'analyse et la doc.