SysML – description comportementale
Diagramme des cas d’utilisation (UC = Use Case)
La définition d’une « frontière » autour du système permet de caractériser les échanges entre le système et l’environnement avec lequel il interagit afin de décrire les différents cas d’utilisation (use case) et les acteurs (actor) qui y participent.
Acteur
Acteur = rôle joué par un utilisateur humain ou un autre système.
Les acteurs peuvent être des humains ou des éléments qui interagissent avec le système.
L’acteur interagit directement avec le système en participant à au moins un cas d’utilisation
L’acteur principal est celui à qui le système rend service, au sens du besoin auquel le système doit répondre.
Cas d’utilisation
Cas d’utilisation = ensemble de séquences d’actions réalisées par le système et qui produisent un résultat observable intéressant pour un acteur.
Quelles sont les interactions des acteurs avec le système ?
Le diagramme des cas d’utilisation permet de décrire ces différentes situations qui concernent tout le cycle de vie.
Types de relation entre cas d’utilisation :
- Inclusion (« include ») : le « cas 1 » est inclut dans le « cas 2 ». Lorsque le « cas 2 » est exécuté alors le « cas 1 » a obligatoirement été exécuté.
Les inclusions permettent également de décomposer un cas complexe en sous-cas plus simples.
- Extension (« extend ») : Le « cas 1 » étend le « cas 2 ». Lorsque le « cas 2 » est exécuté alors le « cas 1 » n’est pas obligatoirement exécuté.
Diagramme de séquence (SD = Sequence Diagram)
Point de vue « système »
Pour un cas d’utilisation donné, le diagramme de séquence « système » montre la séquence des actions réalisées par l’acteur principal et les réponses du système. L’ordre chronologique se déroule vers le bas. Le système est vu comme une boite noire.
Un objet est représenté par un rectangle et une ligne verticale, appelée ligne de vie de l’objet. Les objets communiquent en échangeant des « messages » représentés par des flèches, orientées de l’émetteur vers le récepteur (destinataire).
On représente un objet en activité par un rectangle placé sur la ligne de vie.
Exemple : radio-réveil
Diagramme d’état (STM = State Machine Diagram)
Le diagramme d’état nous permet voir les états du système selon les évènements qui s’y produisent. Il permet de représenter les comportements des blocs, des cas d’utilisation, des acteurs, des sous-systèmes, etc…
Il permet de décrire le fonctionnement séquentiel du système sous forme d’un programme graphique.
Un état représente une situation durant la vie d’un bloc pendant laquelle :
- il satisfait une condition
- il exécute une action
- il attend un événement
Une condition (ou condition de garde) peut être ajoutée à un événement. Cette condition est une expression booléenne qui doit être vraie lorsque l’événement arrive pour que la transition soit déclenchée.
Exemple : radio-réveil
- l’état « Radio ON » satisfait la condition « power_ON »
- l’état « Radio_ON » exécute l’action « émettre son »
- l’état « Radio_OFF » attend l’événement « power_ON » ou « power_AUTO »