Diapositive 1 - Sti2d option SIN

Download Report

Transcript Diapositive 1 - Sti2d option SIN

Présentation
SysML (Systems Modeling Language ) est basé sur UML et remplace la modélisation de
classes et d'objets par la modélisation de blocs pour un vocabulaire plus adapté à l'Ingénierie
Système. Un bloc englobe tout concept logiciel, matériel, données, processus, et même la
gestion des personnes.
Exemple représentation SysML
Modélisation
Structurelle
Il donne une vue statique du système sans tenir compte du temps .
Exemple :
•
Diagramme de blocs
Le diagramme de définition de bloc (BDD, ou Block Definition Diagram en anglais) représente
la vue boîte noire d'un bloc. Ainsi le bloc principal et la hiérarchie des blocs qui le composent,
qu'ils soient logiciels ou matériels, sont spécifiés dans ce diagramme.
Le BDD est similaire à la première page d'une notice de montage d'un meuble, indiquant la
liste des éléments et des pièces à assembler avec leurs quantités respectives.
Il est représenté par un bloc principale défini par sa fonction suivi des blocs corrspondant aux
éléments qui le compose.
Modélisation
Structurelle
• Diagramme de blocs
Exemple purificateur d’eau
Modélisation
Structurelle
• Diagramme de blocs
Exemple purificateur d’eau
Le bloc principal définit le purificateur d'eau (bloc Distiller) composé de 3 blocs :
un échangeur de chaleur (HeatExchanger) qui a un rôle de condensateur (condenser)
une bouilloire (Boiler) qui a un rôle d'évaporateur (evaporator)
une soupape (Valve) qui a un rôle de drain
Les trois blocs font physiquement partie du bloc principal (le purificateur d'eau), car les liens utilisés sur le
diagramme sont des agrégations fortes ou compositions, représentées par un losange plein. Si un bloc n'en
faisait pas physiquement partie, on parlerait alors d'une référence, et l'association utilisée serait une
agrégation simple, représentée par un losange vide.
Il est également possible d'employer des liens de généralisation (héritage) sur un BDD.
On peut voir que certains aspects dynamiques du système ont déjà été modélisés en raison de la présence
d'opérations (ex : l'opération 'boil water' dans le bloc Boiler).
Les ports de flux (flow ports) est une nouveauté SysML ; les « flow ports » représentent ce qui peut circuler
en entrée et/ou en sortie d'un bloc, que ce soit des données, de la matière ou de l'énergie.
Ainsi le bloc « Distiller » utilise en entrée de l'eau froide et de la chaleur externe, et produit en sortie
de l'eau purifiée, du résidu, et de l'eau pour le bypass
Les ports des blocs qui composent le Distiller sont également représentés, indiquant comment ceuxci peuvent être connectés lors de leur assemblage (modélisé dans le diagramme interne de bloc,
l'IBD, traité dans le chapitre suivant)
Modélisation
Structurelle
• Diagramme de blocs internes
Il permet de déterminer les liens
et les flux entre les blocs
Exemple Machine à laver
Modélisation
Dynamique
La modélisation de l'aspect dynamique du système avec SysML repose sur une sélection de
quatre diagrammes UML2 : diagrammes de cas d'utilisations, de séquence, d'activité, et
d'états. Comme son nom l’indique, il donne une vue dynamique du système.
•
Diagramme cas d’utilisation
Il est utilisés pour donner une vision globale du comportement fonctionnel d'un système . Ils
sont utiles pour des présentations auprès de la direction ou des acteurs d'un projet, mais
pour le développement. C’est un moyen simple d’exprimer le besoin, de les analyser et de les
organiser.
C’est une description des interactions qui vont permettre à l'acteur d'atteindre son objectif en
utilisant le système. Les use case (cas d'utilisation) sont représentés par une ellipse sous-titrée
par le nom du cas d'utilisation (éventuellement le nom est placé dans l'ellipse). Un acteur et
un cas d'utilisation sont mis en relation par une association représentée par une ligne.
Modélisation
•
Diagramme cas d’utilisation
Modélisation
•
Diagramme cas d’utilisation
Les acteurs
Ils sont des entités externes qui interagissent avec le système, comme une personne humaine ou un robot.
Une même personne (ou robot, ...) peut être plusieurs acteurs pour un système, c'est pourquoi les acteurs
doivent surtout être décrits par leur rôle. On distingue 4 catégories d'acteurs : les acteurs principaux (ex :
usager, client, etc), les acteurs secondaires (ex : opérateur de maintenance, administrateur, etc), le matériel
externe (capteur, imprimante, etc), les autres systèmes (serveur, etc).
Les relations
Trois types de relations sont prises en charge par la norme UML et sont graphiquement représentées par
des types particuliers de ces relations. Les relations indiquent que le cas d'utilisation source présente les
mêmes conditions d'exécution que le cas issue. Une relation simple entre un acteur et une utilisation est
un trait simple.
Modélisation
•
Diagramme cas d’utilisation
Les inclusions
Dans ce type d'interaction le premier cas englobe l'autre et son issue dépend souvent de la résolution du
second. Ce type de description est utile pour extraire un ensemble de sous comportement commun à
plusieurs tâches, comme une macro en programmation. Elle est représentée par une flèche en pointillée et
le terme include.
Les extensions
Les extensions (Extend) représentent des prolongements logiques de certaines tâches sous certaines
conditions. Autrement dit un cas d'utilisation A étend un cas d'utilisation B lorsque le cas d'utilisation A
peut être appelé au cours de l'exécution du cas d'utilisation B. Elle est représentée par une flèche avec le
terme Extend. Ce type de relation peut être utile pour traiter des cas particuliers ou préciser les objectifs,
ou pour tenir compte de nouvelles exigences au cours de la maintenance du système et de son évolution.
Modélisation
Dynamique
•
Diagramme de séquences
Le diagramme de séquences permet de montrer les interactions d'objets dans le cadre d'un
scénario d'un diagramme des cas d’utilisation. Dans un souci de simplification, on représente
l'acteur principal à gauche du diagramme, et les acteurs secondaires éventuels à droite du
système. Le but étant de décrire comment se déroulent les actions entre les acteurs ou
objets.
Exemple :
Modélisation
Dynamique
• Diagramme de séquences
Pour les cas plus complexes, on peut intégrer des algorithmes dans les diagrammes de
séquences. Par le biais de cadres d'interaction, on peut préciser les spécificités d'un ensemble
de messages :
alt : fragments multiple alternatifs (si alors sinon)
opt : fragment optionnel
par : fragment parallèle (traitements concurrents)
loop : le fragment s'exécute plusieurs fois
region : région critique (un seul thread à la fois)
neg : une interaction non valable
ref : référence à une interaction dans un autre diagramme
sd : fragment du diagramme de séquence en entier
Modélisation
Dynamique
•
Diagramme d’état-transitions
Il permet de déterminer les changements d’état d’un système