122 0 634KB
![Introduction À SysML [PDF]](https://vdoc.tips/img/200x200/introduction-a-sysml.jpg)
Université Sidi Mohamed Ben Abdellah Ecole Nationale des Sciences Appliquées
 
 Modélisation des systèmes complexes avec SysML Abdelouahed Sabri [email protected]
 
 Introduction: Etude de cas 
 
 Etapes pour la réalisation d’un projet (système)    
 
  
 
 Prospection Elaboration du cahier de charges Modélisation et conception Développement (fabrication) Test Déploiement
 
 2
 
 Introduction: Etude de cas
 
 Store SOMFY
 
 3
 
 Introduction: Etude de cas 
 
 Cahier de charges (Utilisation): élaboré après étude des besoins et du marcher  
 
    
 
 Protection contre le vent (enrouler si le vent est fort) Automatisation vis-à-vis de l’état du soleil ; dérouler quand la luminosité devient forte et inversement Commande manuelle ; à distance ou par contact Possibilité de commander plusieurs stores à la fois Entretient facile et rapide ...
 
  BESOINS ET FONCTIONNALITÉS 4
 
 Introduction: Etude de cas 
 
 Cahier de charges (Utilisation): élaboré après étude des besoins et du marcher      
 
 Protection contre le vent (enrouler si le vent est fort) Automatisation vis-à-vis de l’état du soleil: ; déroule luminosité devient forte et inversement Commande manuelle; à distance ou par contact Possibilité de commander plusieurs store à la fois Visualisation à distance de l’état du store Entretient facile et rapide Exigences
 
 Le replier si la vitesse du vent est grande Automatisation: Déplier/plier suivant le positionnement du soleil Le commander Entretient facile
 
 Acteurs
 
 Propriétaire Installateur Vent Soleil
 
 Exemples d’utilisation
 
 Lever/baisser le store Régler le seuil
 
 5
 
 Introduction: Etude de cas 
 
 Représentation graphique des utilisations
 
 Diagramme de cas d’utilisation
 
 Src: http://perso.numericable.fr/starnaud/Analyse/Cours sysML.pdf
 
 6
 
 Introduction: Etude de cas 
 
 Représentation graphique des exigences
 
 Diagramme des exigences Src: http://perso.numericable.fr/starnaud/Analyse/Cours sysML.pdf
 
 7
 
 Introduction: Etude de cas 
 
 Représentation graphique des entités
 
 Diagramme définition de blocs
 
 Src: http://perso.numericable.fr/starnaud/Analyse/Cours sysML.pdf
 
 8
 
 Introduction 
 
 SysML: Systems Modeling Language 
 
 
 
 Langage de modélisation spécifique au domaine de l’Ingénierie Système (IS)  C’est une adaptation du fameux langage de modélisation UML (Unified Modeling Language) pour la modélisation des systèmes d’information (SI) Il permet la spécification, l'analyse, la conception, la vérification et la validation des systèmes complexes (industriels)
 
 9
 
 Introduction: Ingénierie Système 
 
 L’Ingénierie Système (IS): (src wikipedia) 
 
 Est une approche permettant de formaliser et d’appréhender la conception de systèmes 
 
 
 
 
 
 Système: est un ensemble d'éléments humains ou matériels
 
 Les méthodes de l’Ingénierie Système (IS) reposent sur des approches de modélisation et de simulation pour valider les exigences ou pour évaluer le système L'ingénierie des systèmes se concentre sur la définition des besoins du client et des exigences fonctionnelles et matérielles 
 
 Exemples: Cas de Somfy   
 
 Permettre une commande manuelle et à distance (Besoin client) Protéger un espace des rayons solaires (Exigence) ... 10
 
 Introduction: Modélisation
 
 
 
 Modéliser: consiste en une simplification pour faciliter la compréhension des systèmes à développer (réaliser) Un modèle est: 
 
 
 
 Une représentation abstraite et simplifiée d'une entité (phénomène, processus, système, etc.) du monde réel en vue de le décrire, de l'expliquer ou de le prévoir. Un langage commun, précis, qui est connu par tous les membres de l'équipe
 
 11
 
 Introduction: Modélisation 
 
 Pourquoi Modéliser??? L’étape de modélisation d’un système est généralement réalisée avant sa réalisation pour mieux comprendre le fonctionnement du système. C'est aussi un bon moyen pour maîtriser sa complexité et ainsi assurer sa cohérence.
 
 
 
 Un modèle permet de: 
 
 Produire un guide pour le développement du système  
 
   
 
 mieux répartir les tâches automatiser certaines d'entre elles  facteur de réduction des coûts et des délais.
 
 Avoir un support documentaire du système Définir les structures de données ainsi que le comportement du système Prédire et savoir comment va être notre système et ainsi le valider vis-à-vis des clients 12
 
 Introduction: Modélisation 
 
 Le modèle:    
 
 
 
 doit ressembler au système réel qu’on vise à développer peut être représenté avec plusieurs niveaux de précision ne doit pas être très simple ni trop complexe doit permettre sa modification et sa réutilisation doit permettre un passage facile entre le niveau conceptuel et l’implémentation
 
 13
 
 Introduction: Modélisation 
 
 Les différentes standardisation) 
 
 
 
 
 
 de
 
 modélisation
 
 (avant
 
 Méthodes de première génération: sont des méthodes fonctionnelles de décomposition hiérarchique ou descendante. Exemple: SADT (Structured Analysis and Design Technique). 
 
 
 
 méthodes
 
 Avantages: clarification et une décomposition analytique de la complexité d’un système Inconvénients: difficiles à utiliser; Absence de représentation séquentielle, absence d’opérations logiques booléens et impossibilité d'une vue globale du système
 
 Méthodes de deuxième génération : connues sous le nom de méthodes systémiques. Exemple: Merise, SSADM (Structured Systems Analysis and Design Method) Méthodes de troisième génération ou méthodes objets: OMT (Object Modeling Technique, 1991), Booch (1991), OOA (Object-Oriented Analysis, 1992), OOD (object-oriented design), fusion (1991) 
 
 Exemples: UML  SysML
 
 14
 
 Merise 
 
 MERISE est une méthode d’analyse et de conception des SI   
 
 
 
 
 
 française née dans les années 70 mise en avant dans les années 80 développée initialement par Hubert Tardieu
 
 Basée sur la séparation des données et des traitements en 3 modèles (schémas):   
 
 Modèle conceptuel, Modèle logique ou organisationnel, Modèle physique 15
 
 Merise 
 
 Niveau conceptuel 
 
 
 
 L’élaboration du modèle conceptuel des données (MCD) qui est une représentation graphique et structurée des informations mémorisées par un SI. Basé sur deux notions principales :  
 
 Entités Associations,
 
 16
 
 Merise 
 
 MCD: 
 
 Entité:   
 
 Unique Décrite par un ensemble de propriétés: attributs ou caractéristiques. Un des attributs (au moins) est utilisé comme identifiant de l’entité
 
 17
 
 Merise 
 
 MCD: 
 
 Associations:    
 
 Liens sémantique entre une ou plusieurs entités Identifiées par un verbe en infinitif Peuvent contenir des attributs Exemple:
 
 18
 
 Merise 
 
 MCD: 
 
 Associations:Types ou cardinalités 
 
  
 
 On définit le type d’association entre deux entités comme étant le nombre d'entités provenant de la première et qui sont reliées à la deuxième entité Les cardinalités les plus utilisées sont : 0,N ; 1,N ; 0,1 et 1,1. Cependant, on peut toutefois tomber sur des règles de gestion imposant des cardinalités avec des valeurs particulières: 3,5
 
 19
 
 Merise 
 
 Modèle logique: MLD  
 
 Obtenu par conversion du MCD Règles: Les entités deviennent des relations (ou tables),
 
 1.  
 
 2.
 
 3.
 
 4.
 
 L'identifiant de l'entité devient la clé de la relation, Les propriétés de l'entité deviennent des attributs.
 
 Une association de la forme X,N -------Y,N ( X=0 ou 1 et Y=0 ou 1) devient une relation à part entière dont la clé est la concaténation des deux identifiants des entités concernées et dont les attributs sont les propriétés (si elles existent) de l'association. Dans le cas d’une cardinalité 1,1 on ajoute l’identifiant cible à la relation source comme étant clé étrangère Dans le cas d’une association dont une des cardinalités est 0,1 et l’autre X,N (X=0 ou 1), créer la clef étrangère dans la relation correspondante à l'entité du côté de la cardinalité 0,1
 
 20
 
 Merise 
 
 Exercice : Gestion des stages des étudiants allant en entreprise. On cherche à développer une application pour la gestion des stages de fin d’études des étudiants de l’ENSA. Ainsi, on veut conserver pour chaque promotion : 
 
    
 
 
 
 1.
 
 Les informations sur le stage, Les informations sur l’encadrant dans l’entreprise, Les informations sur l’encadrant dans l’école, La date, l’heure et la salle de la soutenance, Les notes obtenues. ...
 
 Proposer un MCD permettant de modéliser le cas ci-dessus.
 
 21
 
 Introduction: Modélisation 
 
 UML (Unified Modeling Language) •
 
 •
 
 l’UML a été présenté pour standardiser les méthodes de modélisations déjà présentes sans standardiser le processus de développement. UML est un langage de modélisation qui à la fois compréhensible par les humains (par les graphiques) et par les machines (sa syntaxe). • •
 
 Une représentation visuelle permettant la communication entre les acteurs d'un même projet Une notation graphique simple, compréhensible même par des non informaticiens
 
 22
 
 UML: Introduction •
 
 La modélisation UML est utilisé pour : – – – –
 
 –
 
 Décomposer le processus de développement, Mettre en relation les experts métiers et les analystes, Coordonner les équipes d'analyse et de conception, Séparer l'analyse de la réalisation, Prendre en compte l'évolution de l'analyse et développement,
 
 du
 
 23
 
 UML: Formalisme du langage •
 
 Le langage UML peut être décomposé en deux sous ensembles : Les vues : Les vues sont les observables du système. Elles décrivent le système d'un point de vue donné. – Les diagrammes : Les diagrammes sont des éléments graphiques, définissant le contenu des vues, qui sont des notions abstraites Il n’est pas obligatoire de modéliser tout le système; on peut le modéliser partiellement modéliser les parties qui sont critiques. –
 
 –
 
 24
 
 UML: Vues 
 
 En UML, la manière de définir une architecture d’un système est inspiré des « 4+1 vues » de Kruchten (1995). Dans ces vues, Kruchten propose 5 façons indépendantes et complémentaires pour définir un modèle d'architecture :
 
 25
 
 UML: Exemple de vue 
 
 Vue des cas d'utilisation (use cases)  
 
 
 
 C'est la description du modèle « vue » par les acteurs du système. Correspond aux besoins attendus par chaque acteur (c'est le QUOI et le QUI). Définit les besoins des clients du système
 
 26
 
 UML: Les diagrammes •
 
 •
 
 Les diagrammes sont utilisés pour représenter les différentes vues et ainsi représenter des concepts particuliers du système. UML 2.X propose 13 types de diagrammes (9 en UML 1.3) qui dépendants hiérarchiquement et se complètent, de façon à permettre la modélisation d'un projet tout au long de son cycle de vie.
 
 27
 
 Diagrammes UML 
 
 UML 2.x propose 13 diagrammes et 9 dans UML 1.x 
 
 Peuvent être répertoriés en 3 catégories 
 
 
 
 
 
 Diagrammes structurels ou statiques (ce que le système EST) Diagrammes comportementaux ou fonctionnels (ce que le système FAIT) Diagrammes d’interaction ou dynamiques (comment le système EVOLUE)
 
 28
 
 SysML 
 
 SysML: un langage de modélisation spécifique au domaine de l'ingénierie système 
 
 Il permet:  
 
   
 
 
 
 La spécification, l'analyse, la conception, la vérification la validation de nombreux systèmes et systèmes-de-systèmes.
 
 SysML est une extension/adaptation de UML  
 
 SysML: dédié pour la modélisation des systèmes complexes UML: orienté logiciel (applications informatiques utilisant la notion de programmation objet) 29
 
 SysML 
 
 SysML est un langage plus réduit que UML:  
 
 SysML élimine les concepts d'UML qui sont liés à sa vision centrée sur le logiciel En 9 diagrammes: 
 
 Réutilisation de 7 diagrammes d’UML (13 diagrammes) et ajout de deux nouveaux types de diagrammes
 
 UML
 
 SysML
 
 30
 
 Diagrammes SysML Diagrammes ajoutés
 
 Diagramme conservés
 
 Diagrammes supprimés
 
 Diagrammes adaptés
 
 diagramme des exigences
 
 diagramme des cas d'utilisation
 
 diagramme de composants
 
 diagramme de définition de bloc (diagramme de classe dans UML)
 
 diagramme paramétrique
 
 diagramme de séquence
 
 diagramme de communication
 
 diagramme de blocs internes (diagramme de structure composite dans UML)
 
 diagramme d'état
 
 diagramme de déploiement
 
 diagramme d'activité
 
 diagramme global d'interaction
 
 diagramme des paquetages
 
 diagramme de temps diagramme d'objets
 
 31