STI2D Le langage SysML Option EE et SIN Terminale 1 – PRESENTATION Le langage SysML (Systems Modeling Language) est un outil de représentations abstraites (modèles) utilisé pour développer ou décrire des systèmes complexes. Il permet d'utiliser un langage commun à tous les concepteurs et utilisateurs d'un système (ingénieur, technicien, service marketing, client etc.…) Il comporte 9 diagrammes mais s e u l e m e n t 6 d i a g r a m m e s s e r o n t u t i l i s é s dans le cadre STI2D. Ils permettront de s t r u c t u r e r l a d e s c r i p t i o n s e l o n 3 p o i n t s d e v u . MODELISATION SysML 3 points de vue MODELISATION COMPORTEMENTALE MODELISATION FONCTIONNELLE MODELISATION STRUCTURELLE Description du comportement dynamique Définition des objectifs, contraintes Description des structures Diagramme des cas d'utilisation Use case : uc Diagramme iagramme d'états State machine : stm Diagramme de séquences Sequence diagram : sd Diagramme des exigences Requirement : req Diagramme iagramme de définition de blocs Block définition diagram : bdd Diagramme de blocs internes Internal block diagram : ibd Pour découvrir ces différents diagrammes, nous prendrons pour support le sèche-mains mains Dyson « airblade ». Il a pour particularité d'être plus rapide, plus hygiénique et beaucoup moins énergivore que les autres sèche-mains. sèche Le langage SysML Page 1/10 STI2D Option EE et SIN Le langage SysML Terminale A titre d'exemple : Dyson Sèche-main main air chaud traditionnel Sèche-mains mains papier coût moyen annuel pour une utilisation type (en €) 33 Empreinte carbone en g CO2 0,94 161 ---- 1460 12,5 2 - DIAGRAMME DES EXIGENCES (REQ) Le langage SysML Page 2/10 STI2D Option EE et SIN Le langage SysML Terminale 2.1 Ce diagramme permet de : répertorier et analyser les contraintes et les performances du système structurer les besoins faciliter la communication entre concepteurs et clients Une exigence (Requirement, req en abrégé) 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 deux propriétés riétés de base d’une exigence sont : • u n i d e n t i f i a n t u n i q u e (permettant ensuite de gérer la traçabilité avec l’architecture, etc.) ; • un texte descriptif. 2.2 Le cartouche de diagramme : Un cartouche positionné en haut à gauche du diagramme dans un pentagone permet de spécifier le type de diagramme SysML, le type de l’élément concerné, l’élément concerné, et le nom du diagramme. 2.3 Les liaisons Les exigences peuvent être reliées entre elles par des relations de : contenance qui permet de décomposer une exigence composite en plusieu plusieurs exigences unitaires. r a f f i n e m e n t « r e f i n e » qui consistent en l’ajout de précisions, par exemple de données quantitatives ; d é r i v a t i o n « d e r i v e R e q t » qui consistent à relier des exigences de niveaux différ différents par exemple des exigences système à des exigences de niveau sous-système, sous système, etc. 2.4 Les notes graphiques (commentaires commentaires) Deux mots-clés clés particuliers ont été définis afin de les représenter : • des problèmes à résoudre « p r o b l e m » ; • des justificatifs « r a t i o n a l e ». Le langage SysML Page 3/10 STI2D Option EE et SIN Le langage SysML Terminale 2.5 La traçabilité Elle permet de s’assurer de la cohérence entre ce que fait réellement le projet et ce qu’il doit faire et de faciliter l’analyse d’impact en cas de changement. Le diagramme d’exigences permet ainsi tout tout au long d’un projet de relier les exigences avec d’autres types d’élément SysML par plusieurs relations : • e x i g e n c e é l é m e n t c o m p o r t e m e n t a l « r e f i n e » (cas d’utilisa d’utilisation, diagramme d’états, etc.); • e x i g e n c e b l o c d ’ a r c h i t e c t u r e « s a t i s f y » (lien avec l'élément qui satisfait l'exigence) • e x i g e n c e c a s d e t e s t « v e r i f y » . Un cas de test représente une méthode de vérification de la satisfaction d’une exigence. Il est représenté en SysML par un rectangle avec le mot mot-clé « Test Case ». 2.6 Application Quelles sont les trois exigences contenues dans l'exigence 1 "Sécher écher les mains mains" ? Purifier de l'air Soufler de l'air Détecter les mains Quel est l'identifiant de l'exigence "Canaliser " le flux d'air" I d = " 1 . 1 . 2 " Quelle est l'exigence qui précise (refine) ( l'exigence "Générer le flux d'air" ? L ' e x i g e n c e d e p e r f o r m a n c e " Vi t e s s e d e l ' a i r " Qu'est-ce ce qui justifie l'exigence de filtration ? Rationale" respect de la norme" Quel est le bloc qui satisfait (réalise) la fonction" détecter les mains" Block détecteur Quelle est la vitesse minimum du flux d'air sur les mains ? 6 0 0 k m / h Quel est le temps de séchage maximum des mains ? 1 0 s e c o n d e s Le langage SysML Page 4/10 STI2D Option EE et SIN Le langage SysML Terminale 3 – DIAGRAMME DES CAS D'UTILISATION (UC) C'est une représentation des fonctionnalités du système. Acteur Un c a s d’utilisation (use case, ou uc) représente un ensemble de séquences d’actions qui sont réalisées par le système et qui produisent un résultat observable intéressant pour un acteur particulier. Association Cas d'utilisation Dans notre exemple l'acteur est un être humain et il est relié par une association au cas d'utilisation "Sécher les mains".. D'autres acteurs peuvent être des systèmes techniques qui interagissent avec le système étudié. Nous étudierons dans un TD les autres aut possibilités offertes par ce diagramme. 4 – DIAGRAMME DE SEQUENCE (SD) L e d i a g r a m m e d e s é q u e n c e d é c r i t l a c h ro n o l o g i e d e s é c h a n g e s i s s u s d ' u n c a s d'utilisation entre les acteurs et les objets. 4.1 Notation de bases : Il se lit de haut en bas. L i g n e d e v i e : ligne verticale en pointillée représentant un élément participant au diagramme de séquence. Elle possède un nom et un type. Message : élément de communication unidirectionnel entre lignes de vie qui déclenche une activité dans le destinata destinataire. La réception d’un message provoque un événement chez le récepteur. Le langage SysML Page 5/10 STI2D Option EE et SIN Le langage SysML Terminale L a f l è c h e p o i n t i l l é e r e p r é s e n t e u n r e t o u r. r Cela signifie que le message en question est le résultat direct du message précédent. Un message synchrone (émetteur bloqué en attente de réponse) est représenté par une flèche pleine , alors qu’un message asynchrone est représenté par une flèche évidée . La flèche qui boucle (m m e s s a g e r é f l e x i f ) permet de représenter un c o m p o r t e m e n t i n t e r n e . Activation Les bandes verticales le long d’une ligne de vie représentent des périodes d’activation. Elles sont optionnelles, mais permettent de mieux comprendre la flèche flèche pointillée du message de retour. 4.2 Cas du sèche-mains Message Bande verticale L iagsn e s d e v i e s C Le langage SysML Fragments combinés Opération interne (message reflexif) Page 6/10 STI2D Option EE et SIN Le langage SysML Terminale Les échanges de messages sont ici extrêmement simples puisqu'il n'y a qu'un message ""Passer les mains" Par contre ce diagramme fait apparaître les notions de f r a g m e n t s c o m b i n é s . Chaque fragment possède un opérateur et peut être divisé en opérandes. Ici, un f r a g m e n t " L o o p " qui signifie que l ' a c t i o n du souffle se d é r o u l e e n b o u c l e tant que la c o n d i t i o n e n t r e c r o c h e t s ( t e m p o < 3 0 s ) est vraie. Si pendant cette période, les mains sont retirées [Mains retirées], u n f r a g m e n t " b r e a k " sort de la boucle pour aller vers l'opération interne "Arréter le souffle". 5- DIAGRAMME D'ETATS (STM) Il décrit les états successifs d'un système ou sous-système qui occupent des états bien définis au cours de leur fonctionnement (machine d'état). C'est le cas notamment de fonctionnement séquentiel. Les principaux outils de description sont les suivants : E t a t i n i t i a l : il désigne le point de départ de la séquence qui peut correspondre à ma mise en énergie E t a t f i n a l : il représente la fin du fonctionnement su système qui peut correspondre à la mise hors énergie. Plus aucun état n'est actif E t a t : un état représente une situation pendant laquelle: il satisfait atisfait une certaine condition, il exécute une certaine activité, il attend un certain événement. E t a t c o m p o s i t e : aussi appelé super super-état; il permet d’englober plusieurs sous-états. états. Il comporte un état initial. Condition Tr a n s i t i o n : elle représente l'évolution du système d'un état à un autre selon une condition de déclenchement. F o u r c h e ( F o r k ) : active simultanément 2 états à partir d'un état antérieur. Il existe également l'union qui active 1 état à partir de 2 états précédents. Le langage SysML Page 7/10 STI2D Option EE et SIN Le langage SysML Terminale 5.1 Diagramme d'état du sèche-main sèche 5.2 Application Quelles sont les conditions pour activer l'état de séchage ? Etat "attente passage des mains".(capteur_2 + capteur_1) Quelle est l'équation logique de la transition entre "Attente retrait des mains" et "Attente passage des mains" ? capteur_1 . capteur_2 6 – DIAGRAMME DE DEFINITION DE BLOC (BDD) Ce diagramme décrit la hiérarchie du système et les classifications système/composant. Le bloc SysML (block) constitue la brique de base pour la modélisation de la structure d’un système. Il peut représenter un système complet, un sous sous-système ou un composant élémentaire. Les blocs sont décomposables et peuvent posséder un comportement. Les propriétés sont les caractéristiques structurelles de base des blocs. Elles peuvent être de deux types principaux: l e s v a l e u r s ( v a l u e p r o p e r t i e s ) décrivent des caractéristiques quantifiables en terme de value types (domaine de valeur, dimension et unité optionnelles) l e s p a r t i e s ( p a r t p r o p e r t i e s ) décrivent la hiérarchie de décomposition du bloc en termes d’autres blocs. Le langage SysML Page 8/10 STI2D Option EE et SIN Le langage SysML Terminale Un bloc peut être décomposé en plusieurs blocs avec des composition et d'agrégation . relations de 6.1 Diagramme du sèche-mains mains 6.2 Application Quels sont les blocs qui composent l'ensemble moteur ? Tu r b i n e Contrôleur Moteur Quel est le bloc qui assure une bonne hygiène lors du séchage ? B l o c f i l t r e H E PA 7 – DIAGRAMME DE BLOCS INTERNES (IBD) Ce diagramme (internal block diagram ou ibd) décrit la structure interne du s y s t è m e e t l e s é c h a n g e s i n t e r n e s e n t r e s e s é l é m e n t s o u a v e c l ' e x t é r i e u r. Le langage SysML Page 9/10 STI2D Option EE et SIN Le langage SysML Terminale 7.1 Diagramme de blocs internes du sèche –mains 7.2 Exercices : Quelle est le type d'énergie du flux entre le moteur et la turbine ? Energie mécanique Quelle est le type d'énergie du flux entre le contrôleur et le moteur ? Energie électrique Pourquoi y-a-t-il 2 flux de liaison entre le bloc détecteur et le bloc carte de contrôle ? Il y a deux détecteurs pour détecter les mains. Tracer sur le diagramme le trajet de l'air Le langage SysML Page 10/10