SysML – description comportementale

Diagramme des cas d’utilisation (uc = Use Case)

Comment décrire les interactions des acteurs avec le système ?

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 (actors) qui y participent.

Le diagramme des cas d’utilisation permet de décrire ces différentes situations qui concernent tout ou partie de son cycle de vie.

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 directement avec le système, en participant à au moins un cas d’utilisation.

Un acteur principal est un acteur à qui le système rend service, au sens du besoin auquel le système doit répondre. C’est l’acteur pour qui le cas d’utilisation associé produit un résultat observable.

 

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.

 

Relations entre cas d’utilisation et acteurs

  • Association : l’acteur participe au .
  • Inclusion (« include ») : le  est inclus dans le .

    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 étend le .

    Lorsque le « cas 2 » est exécuté alors le « cas 1 » ne l’est pas obligatoirement.

  • Généralisation : le  hérite de la description du

 

Exemple : radio-réveil

 

 


Diagramme de séquence (sd = Sequence Diagram)

Un diagramme de séquence représente la chronologie des messages échangés entres « éléments« , internes ou externes au système.

L’ordre chronologique se déroule de haut en bas .

Les « éléments » sont représentés par des rectangles possédant une ligne verticale appelée ligne de vie .

On représente un élément en activité par un rectangle placé sur sa ligne de vie.

Les éléments communiquent en échangeant des messages représentés par des flèches , orientées de l’émetteur vers le récepteur (destinataire).

 

  • Pour le message synchrone, la flèche est pleine, un message de retour est attendu. Le message de retour (flèche pointillée) est obligatoire mais pas toujours tracé.
  • Pour le message asynchrone, la flèche est ouverte. L’envoi d’un message se fait à n’importe quel moment et sans attente d’une quelconque réponse.

On peut rajouter des cadres d’interaction, dotés d’un opérateur (ref, opt, alt, loop, par, …) et éventuellement divisés en fragments.

 

Point de vue « système »

Pour un cas d’utilisation donné, le diagramme de séquence du point de vue « système » montre la séquence des actions réalisées par l’acteur principal et les réponses du système (vu comme une « boite noire ».

Exemple : radio-réveil

 

 


Diagramme d’état (stm = State Machine)

Le diagramme d’état 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 décrit le fonctionnement séquentiel du système sous forme d’un « programme » représenté graphiquement.

États

Un état (state) représente une situation durant la vie d’un bloc fonctionnel pendant laquelle :

  • il satisfait une condition
  • il exécute une action
  • il attend un événement

 

Transitions

Les états sont reliés entre eux par des transitions, permettant ainsi les changements d’état du système.

Une transition est déclenchée par un événement déclencheur (trigger event), conditionné par une condition. Une transition peut induire des effets.

  • si l’événement est omis, le déclenchement est déterminé par la fin de l’activité de l’état source,
  • la condition de garde est une expression booléenne qui doit être « vraie » lorsque l’événement se produit pour que la transition soit déclenchée. Si elle est omise, cela équivaut à « toujours vrai ».
  • les effets sont optionnels, et sont exécutés après l’évaluation de la condition à « vrai ».

 

Exemple : radio-réveil – gestion des modes

 

 

Parmi les événements possibles, on rencontre :

  • when(condition) : se produit à l’instant ou condition devient « vraie »,
  • after(durée) : se produit durée après l’activation de l’état source,

 

Les actions d’état peuvent être précédées d’une étiquette qui identifie les circonstances dans lesquelles l’action sera exécutée.

  • entry : action exécutée lors de l’entrée dans l’état
  • do : action exécutée tant que l’état est actif
  • exit : action exécutée lors de la sortie de l’état

 

États composites

Les états composites (ou super-états) sont des états qui possèdent des sous-états, formant un autre diagramme d’état à l’intérieur de l’état composite.

Le diagramme interne à un état composite peut-être visible ou caché : dans ce cas on l’indique par l’icône 

Les sous-états peuvent être séquentiels (disjoints) ou concurrents (orthogonaux).

Exemple : radio-réveil – gestion des modes

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *