Bonjour,
Je modélise actuellement un système industriel dans lequel interviennent plusieurs automates et un PC pour la partie commande.
J'ai décrit au niveau 'systèmes' les interactions entre les automates et le PC pour la réalisation des scénarios avec des diagrammes de séquences.
Dans l'ouvrage "introduction à UML" par tom penders, on propose d'utiliser les diagrammes de séq existants pour générer ces états en prenant tous les états actifs représentés entre deux messages, ce que je trouve une très bonne idée, cela permet de lier les diagrammes et de se relire.
Le complément du diagramme d'état sera pour moi de définir les activités du systèmes.
Je voudrais mettre en évidence que je suis susceptible de passer d'un scénario à une autre grace au diagramme d'état, parce que certains scénarios sont prioritaires, et bien sur le système met en oeuvre plusieurs scénarios en parallèle. C'est une chose assez facile à présenter lors de la conception (multi-threading, etc ...) mais je trouve moins à mon niveau d'analyse.
Il me semble que je dois utiliser les états composites avec des états historiques. Qu'en pensez-vous ?
De même peut-on confondre des sous-machines et des états composites.
Sous bouml j'ai systématiquement utilisé des sous-machines pour "factoriser" certaines étapes des processus. D'un point de vue édition de diagramme c'était plus productifs mais peut-être que j'induis ensuite des erreurs d'interprétation ?
Question bonus : sous bouml il ne m'est pas possible de nommer un état final. Dans "modélisation objet avec UML" des éditions Eyrolles on indique qu'en "général ces états ne sont pas nommés". J'assimile alors les états initiaux/finaux à des 'pointeurs' vers les états nommés. Mais je rencontre des exemples dans lesquels les transitions depuis/vers ces états sont elle nommées avec des évènements/actions, ce qui me laisse penser que j'ai tort.
Ou alors tout simplement la norme (que j'ai pas lu) n'oblige rien a ce sujet. Quelqu'un peut-il porter une lumière là-dessus ?
Merci.
Partager