Résumé Des Diagrammes SysML
Résumé Des Diagrammes SysML
Résumé Des Diagrammes SysML
Introduction :
Plusieurs techniques ou méthodes ont été conçues pour adapter le langage UML aux
contraintes et applications de l'ingénierie système11 et contourner les limitations évoquées plus
haut. Certains concepteurs ont choisi d'utiliser des « profils UML », de définir et d'employer
des stéréotypes spécifiques à leurs besoins. Cependant, les résultats semblent peu
satisfaisants, d'autant que l'utilisation de profils n'est pas standardisée.
L'OMG a ainsi lancé en mars 2003 un « appel à propositions » pour construire une version
d'UML adaptée à l'ingénierie système. Le cahier des charges précise que le langage doit
permettre « l'analyse, la spécification, la conception et la vérification de systèmes complexes
afin d'améliorer la qualité des systèmes et la capacité à échanger des informations d'ingénierie
système entre les outils, tout en réduisant la distance sémantique entre les disciplines
d'ingénierie système et logicielle » Une seule proposition technique a été déposée : il s'agit du
langage SYSML (Systems Modeling Langage).
SysML est un langage de modélisation graphique développé par l'OMG en 1993 et à étais fait
pour :
Et il intègre :
Une exigence permet de spécifier une capacité ou une contrainte qui doit être satisfaite par un
système. Elle peut spécifier une fonction que le système devra réaliser ou une condition de
performance, de fiabilité, de sécurité, etc. Les exigences servent à établir un contrat entre le
client et les réalisateurs du futur système
Les exigences peuvent être reliées entre elles par des relations de contenance, de raffinement
ou de dérivation :
la contenance (ligne terminée par un cercle contenant une croix du côté du conteneur)
permet de décomposer une exigence composite en plusieurs exigences unitaires, plus
faciles ensuite à tracer vis-à-vis de l’architecture ou des tests ; Figure 1–3 Exigences
du radio-réveil avec attributs SysML par l’exemple 28Chapitre 1 – Le diagramme
d’exigences
le raffinement (« refine ») consiste en l’ajout de précisions, par exemple de données
quantitatives ;
la dérivation (« deriveReqt ») consiste à relier des exigences de niveaux différents, par
exemple des exigences système à des exigences de niveau sous-système, etc. Elle
implique généralement des choix d’architecture.
Exemple :
Dans notre exemple, l’exigence sur la gestion de la radio est exprimée par une phrase
contenant une conjonction de coordination « et ». Ceci est souvent le symptôme d’une
exigence composite devant être décomposée en exigences unitaires, ce que nous avons fait
avec les deux exigences sur le réglage de la station et le réglage du volume. L’exigence sur le
réglage de la station peut être raffinée en précisant les valeurs des gammes de fréquence
devant être supportées. Enfin, on peut considérer que la gestion de l’heure est une exigence
qui dérive de l’exigence générale en ce sens qu’elle implique un niveau d’architecture
supplémentaire, à savoir la notion d’horloge.
Exemple :
Pour illustrer avec un exemple, prenons un radio-réveil. Dans la première version de l'étude,
un seul acteur (l'utilisateur) est lié à un cas d'utilisation unique (être réveillé à l'heure en
musique). Cependant, on pourrait ensuite considérer que l'utilisateur peut également utiliser le
radio-réveil comme une simple radio ou horloge lorsqu'il est éveillé. Chaque cas d'utilisation
doit représenter un service autonome qui offre un résultat observable et utile pour l'acteur
concerné. Pour encapsuler le radio-réveil, un rectangle englobant pourrait être dessiné autour
des cas d'utilisation.
Diagramme de séquence
Le diagramme de séquence SysML est une représentation graphique des interactions et du
flux d'informations entre les composants d'un système sur une ligne de temps. C'est un outil
clé pour modéliser le comportement dynamique du système, illustrant l'ordre dans lequel les
actions se déroulent et les messages échangés entre les objets.
En outre, des scénarios d'interaction peuvent être incorporés dans un diagramme de séquence
pour décrire des situations spécifiques où le système est employé. Ces scénarios peuvent
illustrer des cas d'utilisation, des processus d'affaires, des workflows, etc.
Interactions entre les composants : Il dépeint les interactions entre diverses entités du
système, y compris les objets, les blocs, les ports, etc.
Chronologie : Il illustre l'ordre des interactions en montrant la séquence des messages
échangés.
Durée : Il montre la durée des interactions en représentant les temps de réponse et les
délais entre les messages.
Séparation des préoccupations : Il facilite la compréhension et la maintenance du
système en isolant les interactions de chaque composant.
Analyse et conception : Il peut être utilisé pour la validation des exigences et la
conception des composants du système.
Traçabilité : Il permet de relier les interactions aux exigences du système, facilitant
ainsi la traçabilité des exigences.
Pour conclure, le diagramme de séquence SysML est un outil essentiel pour décrire les
interactions entre les composants d'un système. Il met en évidence la séquence et la durée des
interactions, la séparation des préoccupations, l'analyse et la conception du système, et assure
la traçabilité des exigences.
Exemple :
On peut trouver un exemple d'un diagramme de séquence système (DSS). L'acteur principal
est placé à gauche, le système est représenté comme une boîte noire, et les acteurs secondaires
sont situés à droite. L'exemple présenté est un DSS pour le cas d'utilisation "Se réveiller à
l'heure avec de la musique". Il utilise des notes pour fournir des détails supplémentaires sur le
diagramme. Le texte explique l'utilisation de différents opérateurs comme les messages
synchrones et asynchrones, les messages réflexifs avec le mot-clé "quand" et les fragments
comme les boucles et les alternatives. Il fait également mention de l'usage de cadres
"référence" pour modéliser des interactions qui ne sont pas directement liées au scénario
principal et de l'opérateur"
Pour résumer, le diagramme de définition de blocs SysML est un outil précieux pour
représenter la structure interne d'un système en termes de blocs, de ports et de connexions. Il
expose la hiérarchie des composants, les attributs et les propriétés des blocs, les interfaces, et
permet la vérification de la cohérence et de l'exhaustivité du système.
Exemple :
En guise d'exemple, nous devrions considérer un système de réveil-radio pour expliquer la
notion de type de valeur définie en SysML. Les trois valeurs de temps utilisées dans le
système (heure actuelle, heure de l'alarme, heure projetée) sont toutes du même type, c'est-à-
dire qu'elles partagent la même structure interne (heures et minutes). Il est donc préconisé de
définir un type de valeur "Horodatage", qui englobe deux champs pour les heures et les
minutes. Ces définitions de types simples sont elles-mêmes basées sur une dimension
"Temps" avec une unité désignée. Le diagramme associé montre également des contraintes
sur les unités pour limiter les valeurs possibles ainsi que les valeurs par défaut dans le bloc
"Réveil". La notion de multiplicité est également indiquée pour indiquer que l'heure projetée
est facultative avec une multiplicité [0..1]. Enfin, le texte mentionne l'existence de deux blocs
principaux pour le système, à savoir le réveil et la radio, qui reprennent
Pour résumer, le diagramme de bloc interne SysML est un outil puissant pour illustrer les
relations et interactions entre les blocs d'un système. Il expose leur structure interne, leurs
connexions, les flux de données, l'allocation des fonctions et permet la vérification de la
consistance et de l'intégralité du système.
Exemple :
Prenons l'exemple d'une voiture pour expliquer commenter représentant la relation de
composition dans un diagramme de blocs internes. Le cadre de l'IBD représente le bloc
englobant, et chaque extrémité d'une relation de composition apparaît comme un bloc à
l'intérieur de ce cadre. Les associations simples et les agrégations sont représentées de
manière similaire aux compositions, à l'exception que le rectangle du bloc est en pointillé.
Plusieurs niveaux de décomposition ou de référence peuvent être représentés dans un même
IBD. Un connecteur peut être typé par une association et peut posséder une flèche
unidirectionnelle. Les parties peuvent être connectées à plusieurs autres parties, mais un
connecteur séparé doit être représenté pour chaque liaison.
Le diagramme de package
Un diagramme de package SysML est un type de diagramme de modélisation de système
utilisé pour organiser les éléments d'un modèle de système en groupes appelés packages, et
pour illustrer les relations entre ces packages. Le diagramme de package est un diagramme
statique qui dépeint des groupes de modèles de systèmes connexes, appelés packages. Ces
packages peuvent contenir des éléments tels que des diagrammes, des blocs, des ports, des
connexions, des propriétés, des opérations, etc. Les relations entre les packages sont
représentées par des dépendances, des réalisations, des généralisations, etc.
les caractéristiques d'un diagramme de package SysML :
Pour résumer, le diagramme de package SysML est un outil de modélisation puissant qui
permet de décrire l'organisation logique d'un système en termes de packages. Il illustre la
hiérarchie des packages, les dépendances entre eux, la visibilité des éléments du système, et
facilite la structuration de la modélisation et la navigation.
Exemple :
Les exigences, les cas d'utilisation, les blocs externes et internes, ainsi que les types de base
devraient être regroupés dans des packages différents. Un diagramme de package synthétiques
peut alors être utilisé pour représenter ces packages et leur contenu. Il est à noter que cette
division en packages est arbitraire, et que des éléments de natures différentes peuvent être
regroupés dans le même package pour mettre en évidence la décomposition architecturale du
système. Des dépendances peuvent également être ajoutées vers le package qui regroupe les
types communs, et des cas d'utilisation peuvent être liés au contexte, qui contient les acteurs.
Le diagramme d’état
Un diagramme d'états SysML est un type de diagramme de modélisation de système utilisé
pour décrire le comportement dynamique d'un système en termes d'états, de transitions et
d'événements. Le diagramme d'états est un diagramme comportemental qui décrit le
comportement d'un système sous forme de transitions entre les différents états. Les états
symbolisent les conditions dans lesquelles un système peut se trouver, tandis que les
transitions symbolisent les modifications de l'état du système en réponse à des événements.
Les événements sont des stimuli externes qui provoquent une transition d'un état à un autre.
Pour résumer, le diagramme d'états SysML est un outil de modélisation qui permet de
représenter les différents états d'un système, les transitions entre ces états, les actions
associées à ces transitions, les événements externes qui évoquent le système, l'historique des
états et la gestion des erreurs. Il est donc très utile pour comprendre le comportement d'un
système et pour s'assurer que ce comportement est correct et cohérent.
Exemple :
Considérons l'exemple d'un diagramme d'états pour le bloc "Radio" d'un radio-réveil. Trois
états principaux sont définis pour les trois positions du bouton d'alimentation : allumé, éteint
et alarme. Les événements de changement de position sont nommés power_ON, power_OFF
et power_AUTO. Dans l'état "Radio ON", une activité durable "émettre son" est déclarée.
Dans l'état "Radio AUTO", la radio reste silencieuse jusqu'à ce que l'heure courante coïncide
avec l'heure de l'alarme. Ensuite, la radio s'éteint automatiquement après 59 minutes.
Diagramme d’activité
Un diagramme d'activité SysML est un type de diagramme de modélisation de système utilisé
pour décrire le comportement dynamique d'un système en termes d'activités, de transitions,
ainsi que de flux de contrôle et de données. Le diagramme d'activité est un diagramme
comportemental qui illustre le comportement d'un système sous forme de séquences
d'activités et de leurs interdépendances. Les activités sont des actions ou des processus
effectués dans un système, tandis que les transitions représentent les modifications de l'état du
système en réponse à des événements. Les flux de contrôle et de données représentent les
chemins que suivent les activités et l'échange de données entre elles.
Exemple :
Considérons l'exemple d'un diagramme d'activité SysML pour l'inscription à un site web. Ce
diagramme d'activité décrit le processus d'inscription à un site web. L'activité débute par la
création d'un nouveau compte utilisateur (Create Account), fournissant les informations
nécessaires telles que l'adresse e-mail, le nom d'utilisateur et le mot de passe. Ensuite, le
système envoie un e-mail de vérification à l'adresse e-mail fournie, déclenchant l'attente de la
réponse de l'utilisateur (Wait for Email Confirmation). Si l'utilisateur ne confirme pas l'e-mail
dans un délai de 24 heures, l'inscription est annulée (Cancel Registration) et l'activité prend
fin. Cependant, si l'utilisateur suit le lien de l'e-mail de vérification, cela déclenche
l’activation du compte (Activate Account). L'activité se termine alors avec l'affichage de la
page de confirmation (Show Confirmation Page).
Diagramme paramétrique
Le diagramme paramétrique SYSML est une approche de modélisation systémique, utilisée
pour analyser et décrire les interactions entre les divers paramètres constitutifs d'un système.
Ces paramètres peuvent être des entrées, des sorties, ou des variables internes du système, et
ils sont souvent sujets à des contraintes spécifiques qui régulent leur comportement. Les
diagrammes paramétriques sont des outils précieux pour comprendre la dynamique de
systèmes complexes, qu'ils soient mécaniques, électriques, hydrauliques, thermiques, ou
même des systèmes d'information, de communication ou des processus commerciaux.
Exemple :
Pour illustrer cela, considérons un bloc "Voiture" avec deux paramètres : "Vitesse" et
"Distance". La "Vitesse" est limitée à un maximum de 120 km/h, tandis que la "Distance" peut
varier de 0 à 500 km.
Conclusion
En conclusion, les différents types de diagrammes SYSML - diagramme de blocs, diagramme
d'activités, diagramme d'états, diagramme de séquences, diagramme d'interaction, diagramme
de cas d'utilisation et diagramme paramétrique - sont des outils précieux pour la modélisation
et l'analyse des systèmes complexes.
Chacun d'entre eux a un rôle spécifique et offre une perspective unique sur le système étudié.
Ils permettent de modéliser les relations structurelles, comportementales et fonctionnelles d'un
système, ainsi que les contraintes sur ses paramètres. Ces diagrammes peuvent être utilisés
individuellement ou en combinaison pour une analyse plus complète.
Ensemble, ils offrent une vue d'ensemble complète du système, facilitant ainsi la
compréhension de ses dynamiques et son optimisation. Ils aident les ingénieurs à identifier les
problèmes, à tester les solutions, à prévoir le comportement du système dans différents
scénarios et à communiquer efficacement les complexités du système aux différentes parties
prenantes.