Le SysML

Introduction :

La conception et la maintenance de systèmes pluritechniques font appel à de nombreux métiers différents et revêtent de nombreux aspects de la vie de ces systèmes. Un outil commun de communication interdisciplinaire s’impose alors, afin de formaliser et d’appréhender la conception de systèmes pluritechniques.
Les diagrammes de modélisation « SysML » permettent de répondre à ce besoin de communication.

Dans ce cours, à l’aide d’un exemple très simple, nous en donnerons le principe général, en nous limitant aux toutes premières notions, qui vous serviront pour mieux comprendre certains diagrammes qui vous seront présentés.
Durant la suite de vos études, vous apprendre à approfondir tous ces diagrammes, en fonction de la filière que vous choisirez.

Une notation unifiée pour l’ingénierie système

bannière definition

Définition

Ingénierie système :

L’ingénierie système est une approche scientifique interdisciplinaire dont le but est de formaliser et d’appréhender la conception de systèmes pluritechniques.

Contexte

Un système est considéré comme une association structurée d’éléments en relation entre eux, de façon à former une entité remplissant une ou plusieurs fonctions, répondant à un besoin des hommes.
Un système peut être matériel comme un téléphone ou un véhicule…) ou encore immatériel comme un service ou un logiciel.

Prenons l’exemple des écouteurs sans fil et leur bloc de recharge dont le besoin exprimé est : « Écouter de la musique sans fil ». Il est composé de divers éléments organisés pour répondre à ces besoins.
Son cycle de vie est composé de nombreuses étapes, entre autres : l’analyse du besoin (rédaction du cahier des charges), la conception, la validation, la réalisation, l’exploitation, la fin de vie.
Toutes ces étapes font appel à divers acteurs et divers métiers de l’ingénierie système : management, conception, contrôle, sécurité, marketing, traitement des déchets, etc.

La notation SysML a donc été créée pour permettre aux différents acteurs de mieux communiquer ensemble.

  • Elle permet de modéliser/représenter graphiquement/décrire le système de différents points de vue tout au long de son cycle de vie.

Les neuf diagrammes SysML

bannière definition

Définition

Langage SysML :

Le SysML, abréviation de « Systems Modeling Language », est un langage de modélisation graphique utilisé dans le domaine de l’ingénierie système qui permet la description, l’analyse, la conception et la validation de systèmes.

bannière à retenir

À retenir

Il existe neuf diagrammes SysML :

  • le diagramme des exigences représente le cahier des charges du système ;
  • quatre diagrammes comportementaux représentent les différents comportements du système ;
  • quatre diagrammes structurels représentent la structure, la composition du système.

Dans ce cours, nous donnerons les grandes lignes de six d’entre eux :

  • le diagramme des exigences ;
  • parmi les comportementaux, les diagrammes des cas d’utilisation, de séquence et d’états ;
  • parmi les structurels, les diagrammes de définition de blocs et de blocs internes.

Notations

Le SysML est donc une notation internationale, dont les mots clés sont en anglais, comme par exemple $\text{requirement}$, $\text{block}$, $\text{satisfy}$, $\text{refine}$, que nous allons découvrir au fil de ce cours.

bannière à retenir

À retenir

D’abord, il est important d’identifier le diagramme sur lequel nous travaillons : le type est précisé dans un rectangle en haut à gauche de chaque diagramme avec, entre autres, le nom du diagramme.

  • Ce type est indiqué en premier, sous forme d’une abréviation anglaise.
  • Le titre du diagramme est donné en dernier, et il est écrit entre crochets.
bannière exemple

Exemple

Prenons comme exemple le diagramme des exigences pour des écouteurs sans fil (qui nous serviront de fil rouge) :

$$\boxed{\text{req $\big[$Modèle$\big]$ Écouteurs sans fil $\big[$Exigences techniques$\big]$}}$$

Pour précision supplémentaire, même si, à ce niveau, il n’est pas indispensable de la savoir :

  • $\text{$\big[$Modèle$\big]$}$ correspond au type d’élément concerné ;
  • $\text{Écouteurs sans fil}$ correspond au nom de l’élément concerné ;
bannière à retenir

À retenir

Les différents diagrammes sont interdépendants, se précisent les uns les autres et sont bâtis sur des notations communes, par exemple pour indiquer les liens entre les éléments.

  • Nous donnons ci-dessous les cinq types de liens principaux (nous en trouverons plus bas des exemples d’utilisation).

Symbole Lien Signification

Alt Sciences de l’ingénieur première diagrammes SysML

Conteneur « L’élément $\text B$ contient l’élément $\text A$ »

Alt Sciences de l’ingénieur première diagrammes SysML

Association « L’élément $\text A$ utilise l’élément $\text B$ »

Alt Sciences de l’ingénieur première diagrammes SysML

Dépendance « L’élément $\text A$ dépend de l’élément $\text B$ »

Alt Sciences de l’ingénieur première diagrammes SysML

Agrégation « L’élément $\text B$ contient l’élément $\text A$ de façon optionnelle »

Alt Sciences de l’ingénieur première diagrammes SysML

Composition « L’élément $\text B$ contient l’élément $\text A$ de façon indispensable »

Notons que, en SysML, certains blocs représentent une classe d’objets, et d’autres représentent une instance d’objet.

  • Une classe est une catégorie d’objets.
  • Une instance est un des objets d’une catégorie.
bannière exemple

Exemple

La classe « écouteurs » est l’ensemble des écouteurs identiques du système : il y en a 2 dans le nôtre.
L’instance « écouteur gauche » est l’un des écouteurs en particulier.

Le diagramme des exigences

Rôle

bannière definition

Définition

Diagramme des exigences ($\text {req}$) :

Le diagramme des exigences (Requirement Diagram) décrit les exigences du cahier des charges fonctionnel, c’est-à-dire ce qui est attendu du système.

  • Il répond à la question : « À quoi sert-il ? ».
bannière à retenir

À retenir

Une exigence peut être :

  • une fonction (une capacité que doit avoir le système), par exemple : « Permettre à l’utilisateur de changer le volume » ;
  • ou une contrainte, par exemple : « Ne pas dépasser le seuil de volume dangereux pour les oreilles ».

Les exigences peuvent être des exigences environnementales, économiques, fonctionnelles, techniques, de sécurité, etc.

Exemple

bannière exemple

Exemple

Considérons, comme annoncé, un système constitué de deux écouteurs sans fil et de leur bloc batterie.

Le diagramme des exigences ci-dessous définit une exigence système : la gestion de la musique, pour une partie du système : les écouteurs.

Alt Sciences de l’ingénieur première diagrammes SysML exigences Diagramme des exigences

Détaillons maintenant un peu plus les éléments du diagramme et les liens qui les connectent.

  • Nous indiquons d’abord la fonction des écouteurs : « Écouter de la musique ».
  • L’exigence « Gestion de la musique » est précisée ($\text{refine}$) par la fonction demandée.
  • Le champ $\text{id}=1$ identifie l’exigence de manière unique.
  • Le champ $\text{Text}$ la décrit précisément.

Alt Sciences de l’ingénieur première diagrammes SysML

  • Cette exigence doit être satisfaite ($\text{satisfy}$) par le bloc, ou élément du système, « Écouteurs », identifié par $\text{block}$.
  • Et elle se décompose en deux exigences :
  • « Gestion de la lecture/pause », identifiée par $\text{Id}=1.1$ ;
  • « Gestion du volume », identifiée par $\text{Id}=1.2$.
  • Ainsi, l’exigence « Gestion de la musique » contient ces deux exigences. D’où le choix du symbole pour le lien qui les relient.
  • Intéressons-nous à l’exigence « Volume maximum ». Celle-ci précise ($\text{refine}$) la « Gestion du volume », en prenant en compte la norme légale à respecter ($100\ \text{db}$).
  • Nous voyons ainsi qu’un critère quantitatif, ici fixé à $80\ \text{dB}$, peut être défini dans l’exigence, lorsque c’est pertinent.

Les diagrammes comportementaux

bannière definition

Définition

Diagrammes comportementaux :

Ces diagrammes décrivent le comportement du système et permettent de le simuler afin de répondre à la question : « Quelles sont ses performances ? ».

  • Ce sont donc des diagrammes dynamiques qui modélisent une évolution sur une période de temps.

Le diagramme des cas d’utilisation

bannière definition

Définition

Diagramme des cas d’utilisation ($\text{uc}$) :

Le diagramme des cas d’utilisation (Use Case Diagram) montre les interactions entre le système étudié et les acteurs de son environnement. Il délimite le système et décrit ce qu’il permet de faire, les services qu’il offre aux utilisateurs.

Notons qu’un acteur peut être une personne physique comme être un autre système.

  • Les personnes humaines sont placées à gauche du système et les systèmes non humains à droite.
bannière exemple

Exemple

Prenons le cas simple des écouteurs :

  • nous avons à droite les acteurs non humains (smartphone et bloc batterie) ;
  • à gauche, nous plaçons l’auditeur ;
  • celui-ci doit pouvoir écouter de la musique et recharger son téléphone.

Alt Sciences de l’ingénieur première diagrammes SysML cas d’utilisation Diagramme des cas d’utilisation

Le diagramme de séquence

bannière definition

Définition

Diagramme de séquence ($\text{sd}$) :

Le diagramme de séquence (Sequence Diagram) représente les échanges de messages entre les acteurs et le système, ou entre des parties du système, pendant une séquence d’actions appelée « scénario ».

Donnons rapidement les symboles principaux de ce type de schéma et leur explicitation.

  • Les pointillés à la verticale des éléments sont appelés « lignes de vie » et symbolisent le déroulement du temps.
  • Les rectangles sur ces lignes montrent les plages où les éléments concernés sont actifs.
  • Le tableau suivant donne la signification des flèches dans un diagramme de séquence :

Alt Sciences de l’ingénieur première diagrammes SysML

Message asynchrone

L’élément $\text A$ envoie un message à l’élément $\text B$ et n’attend pas de réponse de celui-ci

Alt Sciences de l’ingénieur première diagrammes SysML

Message synchrone

L’élément $\text A$ envoie un message à l’élément $\text B$ et attend une réponse de celui-ci

Alt Sciences de l’ingénieur première diagrammes SysML

Message retour

L’élément $\text B$ envoie un message à l’élément $\text A$ en réponse au message synchrone reçu

Alt Sciences de l’ingénieur première diagrammes SysML

Message réflexif

L’élément opère une action sur lui-même

bannière exemple

Exemple

Le diagramme ci-dessous présente le « scénario » lorsque l’utilisateur dépose les écouteurs sur le bloc batterie, sachant qu’il y a un voyant « En charge » et « Charge complète » sur les écouteurs.

  • Par exemple, lorsque les écouteurs sont pleinement chargés, ils envoient un message synchrone à l’utilisateur, qui répond en retirant les écouteurs du bloc batterie.

Alt Sciences de l’ingénieur première diagrammes SysML séquence Diagramme de séquence

Le diagramme d’états

bannière definition

Définition

Diagramme d’états ($\text{stm}$) :

Le diagramme d’états (State Machine Diagram) permet de modéliser les différents états successifs du système et les transitions possibles entre les états pilotées par des événements.

  • L’état initial est symbolisé par un disque plein.
  • L’état final est symbolisé par un disque plein entouré d’un cercle.
bannière exemple

Exemple

Dans le diagramme ci-dessous, nous nous intéressons à deux façons d’appuyer sur le bouton de lecture/pause, avec les écouteurs actifs :

  • si la pression dure moins de $2\ \text{secondes}$ et que la musique est en lecture, alors la lecture se met en pause ;
  • si la pression dure moins de $2\ \text{secondes}$ et que la musique est en pause, alors la lecture reprend ;
  • si la pression dure plus de $2\ \text{secondes}$, alors les écouteurs s’éteignent.

Alt Sciences de l’ingénieur première diagrammes SysML états Diagramme d’états

Les diagrammes structurels

bannière definition

Définition

Diagrammes structurels :

Les diagrammes structurels décrivent la structure, la composition du système. Ils répondent aux questions « De quoi est-il composé ? » et « Comment est-il organisé ? ».

  • Ce sont des diagrammes statiques qui n’évoluent pas dans le temps, ou qui représentent le système à un moment donné.

Le diagramme de définition de blocs

bannière definition

Définition

Diagramme de définition de blocs ($\text{bdd}$) :

Le diagramme de définition des blocs (Block Definition Diagram) définit, classe et hiérarchise les blocs, qui sont des classes de composants.

  • Les blocs peuvent être des blocs matériels (« hardware ») ou des blocs logiciels (« software »).
bannière exemple

Exemple

Dans notre exemple, l’ensemble « Écouteurs sans fil » contient de manière indispensable le bloc batterie et, bien sûr, les écouteurs.

  • Nous allons plus particulièrement détailler ceux-ci : carte électronique, module Bluetooth, haut-parleurs.

Alt Sciences de l’ingénieur première diagrammes SysML définition blocs Diagramme de définition de blocs

Le diagramme de blocs internes

bannière definition

Définition

Diagramme de blocs internes ($\text{ibd}$) :

Le diagramme de blocs internes (Internal Block Diagram) modélise la structure interne d’un bloc : ses différents composants mais aussi les flux de matière, d’énergie et d’information qui circulent entre eux.

Ce diagramme représente les connexions entre les éléments par des ports :

Alt Sciences de l’ingénieur première diagrammes SysML

Port standard

Correspond à un événement épisodique, comme l’appui sur un bouton

Alt Sciences de l’ingénieur première diagrammes SysML

Port de flux

Correspond à un flux, comme l’alimentation en électricité

bannière exemple

Exemple

Par exemple, dans le diagramme ci-dessous, l’appui sur le « volume + » par l’utilisateur correspond à une énergie mécanique transmise au bouton ; l’information sera alors transmise numériquement à la carte de puissance.

Alt Sciences de l’ingénieur première diagrammes SysML blocs internes Diagramme de blocs internes

Conclusion :

Les cours précédents de cette partie nous ont permis de découvrir les différentes étapes du suivi d’un projet.
Ce dernier cours nous a montré comment les diagrammes SysML permettaient d’exprimer le besoin, de décrire la structure, les fonctions et le comportement d’un système pluritechnique.

Dans les parties suivantes, nous étudierons les outils mathématiques, physiques et numériques qui nous permettront de comprendre le comportement des systèmes et d’en évaluer les performances.