UML, quels diagrammes choisir ? - Divers - Programmation
Marsh Posté le 13-05-2006 à 21:21:33
De mon experience :
- diagramme de classe, ne te sens pas obliger de faire ca aux normes exactes et tout le patata ... Modèles comme tu le sens , brainstorme avec ton équipe et à la limite mets au propre après
- diagramme de séquence, je me les fait souvent quand j'arrive sur un projet existant afin de saisir un peu le flow général de l'appli ...
- uses cases (cas d'utilisation), mouais tu peux les faire pour faire kiffer les analystes, le département business et ton chef de projet ...
Marsh Posté le 14-05-2006 à 10:35:18
UML est une modélisation. Les diagrammes sont des outils pour décrire les données et les traitements du système au niveau conceptuel et logique. Le projet peut consister à produire un système "from scratch" ou a reprendre un existant. Selon le type de projet, l'ordre d'exécution des diagrammes ne sera pas le même.
Le diagramme de cas d'utilisation s'utilise essentiellement en phase d'analyse pour documenter les scénarii d'utilisation du système. On définit alors le périmètre fonctionnel du système.
Les cas d'utilisation sont affinés à l'aide de diagrammes de séquences. Les diagrammes d'état-transistion et d'activités modélisent les changements d'état à la manière d'un logigramme. Le diagramme de classe décrit les données du système.
Certains diagrammes modélisent l'organisation physique et logique du système final : diagramme de composants et diagramme de déploiement (en pratique, rarement utilisés)
Pour ma part, les diagrammes importants sont, dans l'ordre d'utilisation : le use case, le diagramme de séquence et le diagramme de classe. Le diagramme de séquence n'est pas bien adapté à la modélisation des scénarii alternatifs et des boucles (lacune comblée dans UML 2.0). Le diagramme de séquence décrit l'enchaînement des opérations qui concourrent à la réalisation du scénario type d'un cas d'utilisation. Le diagramme de classe est indispensable pour décrire et critiquer un choix d'architecture logiciel.
Quelque soit le diagramme que tu souhaites mettre en oeuvre, demande toi ce que tu veux décrire et quel est le diagramme le plus adapté pour le faire. Il ne faut pas qu'UML guide ta conduite mais que tu adaptes le choix des diagrammes à ce que tu veux faire.
UML est comparable à des plans d'architecte : ils ne te disent pas comment construire la maison mais décrivent la solution retenue.
Marsh Posté le 14-05-2006 à 16:34:01
Merci pour les réponses, ça va me permettre de faire pas mal de ménage...
Donc diag. cas d'utilisation -> puis séquence -> puis classe
Maintenant à l'issu du diag de classe qui devrait clore mon analyse mon objetcif est double. D'abord de créer mon code d'arborescence de classe et ensuite ma BDD.
Avec Merise (ou j'ai plus d'expérience), j'utilisais le logiciel AMC Designor pour générer mon script SQL de génération de BDD à partir de mon MCD (l'équivalent du diagramme de classe en UML) ou chaque entité représentait une table.
Est-ce le même principe avec UML ?
Dois-je représenter chaque classe par une table en BDD ?
Les outils de modélisation UML tels que Magic Draw permettent-ils une génération automatique
1) du script SQL de génération de BDD ?
2) du code de création de l'arborescence de classe ?
Marsh Posté le 14-05-2006 à 19:29:54
Les RADs UML que je connais sont tous destinés à la production de squelette de code programmable (C, C++, Java...)
Pour ma part, je garderai la modélisation Merise pour les données au moins pour la génération de la BDD. En plus, je ne sais pas comment tu pourrais implémenter les héritages et surclasses de classes dans une base de données relationnelle.
Marsh Posté le 15-05-2006 à 09:09:10
jamesbond2 a écrit : |
MagicDraw fonctionne tres bien avec androMDA qui te genere 80% de ton code
Marsh Posté le 13-05-2006 à 19:07:56
Salut,
Je me suis mis à UML il y a quelques semaines et vue la complexité, je suis un peu perdu.
Mon problème principale réside dans le nombre et le type de diagrammes nécessaires.
J'ai vu dans un topic de ce forum qu'il fallait au minimum 3 diagrammes dans un projet. Si cette remarque est pertinente, quels sont ces diagrammes ?
Tous les diagrammes sont-ils applicables et necessaires à tous les types de projets ?
Quels sont les diagrammes superflus pour les petits projets ?
Quels sont les diagrammes indispensables pour les gros projets ?
Merci de vos réponses