UML 2 Pratique de la modélisation
Transcription
UML 2 Pratique de la modélisation
UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti UML 2 Pratique de la modélisation Fabio Roda1 Leo Liberti1 [1] LIX, École Polytechnique, 91128 Palaiseau, France June 2-5, 2009 1 / 31 State Diagram: introdution UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Le diagramme d’états-transition illustre l’ensembre des états du cycle de vie d’un objet. La description du cycle de vie est réalisée séparément pour chacun des objets. Un état correspond à un moment d’activité ou d’inactivité de l’objet. Un événement est un fait qui déclenche le changement d’état. Une transition est un lien orienté qui exprime le fait que l’objet a la possibilité de passer de l’état d’origine de la transition á son état de destination. 2 / 31 State Diagram: état UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Un état correspond à un moment d’activité ou d’inactivité de l’objet. 3 / 31 State Diagram: état initial final UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Un état initial est unique. Les objets permanents n’ont pas d’état final. 4 / 31 State Diagram: transition UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti L’ événement est un fait qui déclenche le changement d’état. Si la transition est automatique aucun événement n’est pas indiqué. 5 / 31 State Diagram: état réflexive UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Une transition réflexive possède le même état d’origine et de destination. 6 / 31 State Diagram: exemple 1 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Dans un concours d’obstacles, l’épreuve consiste à demander à chaque concurrent de sauter deux ou trois obstacles différents. Il arrive que le cheval refuse de sauter un obstacle. Le concurrent peut alors recommencer le saut. Les deux obstacles sont respectivement le mur e la barrière. Le concurrent peut se trouver dans les états suivants: Attente du départ, Course Avant Mur, Saut Mur, Course Avant Barrière, Saut Barrière, FinEpreuve. Construire le State Diagram d’une instance de la classe Concurrent de l’epreuve. 7 / 31 State Diagram: exemple 1 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 8 / 31 State Diagram: condition garde UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Il est possible d’associer une condition à une transition 9 / 31 State Diagram: exemple (condition garde) UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 10 / 31 State Diagram: activities UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Il est possible de spécifier différentes activités à l’entrée d’un état (entry/...) au sein d’un état, lors de réception d’un événement (événement/...) pendant un état (do/...) à et la sortie d’un état (exit/...) lors du franchissement d’une transition 11 / 31 State Diagram: exemple (activities) UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 12 / 31 State Diagram: état composé UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Un état peut être décrit lui-même par un diagramme d’états-transitions. Un tel état est appelé un état composé. Dès que l’object passe dans l’état composé, il passe également dans le sous-état initial du diagramme interne d’états-transitions. Si l’objet franchit une transition qui fait sortir de l’état composé, il quitte égalment les sous-états. 13 / 31 State Diagram: état composé UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 14 / 31 State Diagram: exemple (état composé) UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 15 / 31 State Diagram: sous état de mémoire UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 16 / 31 State Diagram: exemple (sous état de mémoire) UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 17 / 31 State Diagram: sous états paralléles UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Au sein d’un objet composé il est possible d’avoir des sous-états qui évoluent en parallèle. Il existe une transition de type fourche qui possède plusieurs sous-états de destination. Une fois franchie l’objet se trouve dans tous le sous-états de destination. La transition de type synchronisation possède plusieurs sous-états d’origine et un seul état de destination. Il faut que l’objet se trouve dans tous les sous-états d’origine pour que la transition soit franchie. 18 / 31 State Diagram: sous états paralléles UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 19 / 31 State Diagram UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 20 / 31 Exercices UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Exercices 21 / 31 State Diagram: ex. 1 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Un ticket de course peut se trouver dans les états suivants: Vierge, Rempli, Validé, Perdant, Gagnant, Payé. Construire le State Diagram d’une instance de la classe Ticket. 22 / 31 State Diagram: ex.1 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 23 / 31 State Diagram: ex. 2 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Une course de chevaux peut se trouver dans les états suivants: Attente de chevaux, Attente du départ, Course en cours, Arrivée, Annulée. Construire le State Diagram d’une instance de la classe Course. Considérer l’événement Faux Départ. 24 / 31 State Diagram: ex.2 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 25 / 31 State Diagram: ex. 3 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Le but de l’exercice est de décrire les différents états de la situation professionnelle d’une personne et les transitions correspondantes. La personne peut être : étudiante, salarié, sans activité, indépendante ou retraitée. Au début de sa situation professionnelle, une personne est étudiante. Ne prenez pas en compte les activités simultanées comme la possibilité d’être simultanément salarié et indépendant. Construisez le diagramme d’états-transitions correspondant. INDICE : Utilisez les conditions de garde pour différencier les possibilités multiples 26 / 31 State Diagram: ex.3 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 27 / 31 State Diagram: ex. 4 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Represéntez par un diagramme d’états les états que peut prendre un individu du point de vue de l’INSEE (Institut national de la statistique et des études économiques) Vivant, décédé, mineur, majeur, célibataire, marié, veuf, divorcé. Il faut être majeur pour se marrier. 28 / 31 State Diagram: ex.4 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 29 / 31 State Diagram: ex. 5 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti Une course de chevaux peut se trouver dans les états suivants: Attente du départ, Course en cours, Course Avant Mur, Saut Mur, Course Avant Barrière, Saut Barrière, FinEpreuve. Après l’ordre de départ et jusqu’au dernier saut, un concurrent est dans l’état Concours. À tout moment, il peut être disqualifié mais cette disqualification doit être confirmée (par exemple, en cas de contestation). Si elle est annulée, l’épreuve repart de l’état dans lequel elle s’était arrêtée. Construire le State Diagram d’une instance de la classe Concurrent de l’épreuve. 30 / 31 State Diagram: ex.5 UML 2 Pratique de la modélisation Fabio Roda, Leo Liberti 31 / 31
Documents pareils
UML 2 Pratique de la modélisation
Si le comportement de B peut être étendu par le comportement
de A, on dit alors que A étend B.
Cette relation est symbolisée par une flèche pointillée et le
stéréotype extend .
Exemple :...