Académique Documents
Professionnel Documents
Culture Documents
A. ARBAOUI
Introduction
2
Introduction
En ingénierie systèmes IS la tendance actuelle est de regrouper les différentes représentations d’un
système au sein d'un unique modèle « multipoints de vue »
Documents Modèles
Une telle approche est dite basée sur un modèle, par opposition aux approches basées sur des
documents qui reposent sur une collection de modèles « mono-point de vue » disjoints .
Introduction
Les approches basées sur des documents fonctionnent MAIS selon les recherches 55% des erreurs
grave sont liées à la phase d’analyse des exigences et à la phase de conception
1
Assure la cohérence des données car les règles de modélisation donnent à chaque élément du modèle
une définition unique, construite en rassemblant les informations issues de ses différentes représentations,
et interdisent à celles-ci de se contredire.
Réduire le risque d'erreurs et le temps passé à la vérification des données par
rapport aux approches basées sur des documents
2
L'usage intensif de la simulation car un modèle peut regrouper toutes les informations permettant de
modéliser le système, de simuler son comportement, et de comparer les résultats aux exigences afin de
valider (ou non) des solutions.
Réduire le temps passé à la formulation des modèles et la validation des solutions
Introduction
1. Le point de vue fonctionnel, qui consiste à décrire les actions effectuées par le système pour
répondre à la question « A quoi sert-il ? » ;
2. Le point de vue structurel qui, dans le cadre de la systémique, consiste à décrire les
composants du produit et de son environnement ainsi que les relations entre ces composants,
pour répondre aux questions « De quoi est-il composé ? » et « Comment est-il organisé ? » ;
La démarche globale est une combinaison d'une méthodologie, d'un langage de modélisation et d'un outil
de modélisation qui, ensemble fournissent une infrastructure pour l'application du concept de l’ingénierie
système basée (guidé) sur les modèles.
Méthodologie
de conception
Modèles
Language Outil
SysML Papyrus
7
Objectifs et compétences visées
Se familiariser avec les principaux concepts et les différentes représentations (diagrammes et tables), de
SysML.
Comprendre comment les différentes représentations forment des points de vue complémentaires et
cohérents d’un même système.
Mettre en pratique les connaissances acquises pour modéliser un cas d’étude avec un outil de
modélisation (Papyrus).
Plan
Une demande de propositions, pour un profil UML destiné à couvrir les tâches de
l’ingénierie système, de l'OMG ou Object Management Group.
9
Relations entre UML2 et SysML
Le langage SysML et l'outil Papyrus
SysML propose de couvrir la modélisation d’un système au travers des diagrammes permettant d’aborder
les aspects structurels, comportementaux et paramétriques du système ainsi que les exigences.
Le langage SysML et l'outil Papyrus
L’outil Papyrus-SysML
Le modèle SysML® est généralement construit à l'aide d'un logiciel dédié qui le stocke dans une base de
données, et peut ensuite générer automatiquement un document correspondant à un point de vue
particulier.
Mais il existe un certain nombre d’autres outils permettant de réaliser des modèles SysML.
En voici une liste non exhaustive (ils sont pour la plupart payants) :
MagicDraw (NoMagic)
Visual Paradigm
Modelio (Softeam)
Le langage SysML et l'outil Papyrus
L’outil Papyrus-SysML
Diagrammes fonctionnels :
Diagrammes structurels :
Diagrammes comportementaux :
L’objectif
Il permet de spécifier, hiérarchiser et documenter des exigences, c'est-à-dire des
attentes portant sur le système ou sur son comportement.
Exigences
C'est une notion vaste, incluant par exemple toutes sortes de caractéristiques
chiffrées, des choix technologiques imposés, le respect de normes, de
réglementations, de sécurité, de fiabilité, d’ergonomie,d’esthétisme...
De nombreux domaines peuvent être couverts, les plus classiques étant les exigences
fonctionnelles de perforamnces ou contraintes.
comprend les éléments de conception qui la satisfont, les autres exigences qui en
découlent et les cas de test pour la vérifier. La justification des relations de traçabilité
est également indiquée.
15
Requirement diagram (diagramme des exigences)
Syntaxe
Exigence
Identifiant unique
Texte descriptif
Note qui permet de justifier
un certain choix
Exercice 1
• Req 20 : Le système doit pouvoir détecter des intrus dans n’importe quelles conditions
météorologiques.
• Req 30 : Le système doit utiliser des caméras pour détecter les intrus.
• En effet, l’étude de faisabilité XYZ a montré que l’utilisation de caméras est le moyen le
plus rentable de vérifier les exigences Req10 et Req20.
17
Requirement diagram (diagramme des exigences)
Solution
18
Use case diagram (diagramme des cas d’utilisation)
L’objectif
C’est un diagramme fonctionnel dont l’objectif est de montrer les fonctionnalités offertes par
un système en identifiant les services qu’il rend aux acteurs
Il permet donc de modéliser les exigences selon un point de vue complémentaire à celui
exposé par le diagramme des exigences
Remarque
Même si ce diagramme semble très simple voire basique au premier abord, le travail de
réflexion pour aboutir à sa représentation l’est moins. Cette simplicité est en général atteinte
après plusieurs itérations afin de bien cerner les objectifs visés grâce au système.
Use case diagram (diagramme des cas d’utilisation)
Syntaxe
Un acteur est une entité externe qui interagit avec le système et peut obtenir des services de
celui-ci. Il est relié à un ou plusieurs cas d’utilisation par une ligne simple.
<<extend>> : le cas
d’utilisation de base
« peut
éventuellement se
faire avec »
<<include>> : le cas
d’utilisation de base «
ne peut se faire sans
» ou « impose que »
Un cas d’utilisation est représenté sous forme d’ovales. C'est une façon dont le système est
utilisé, un service qu'il fournit à au moins un de ses utilisateurs.
Use case diagram (diagramme des cas d’utilisation)
Exercice 2
• Acteurs :
• Cas d’utilisation :
• Règles :
Solution
Extension points:
Panne
Block definition diagram (diagramme de définition des blocs)
L’objectif
Il est utilisé pour décrire l’architecture matérielle (physical) du système.
Un bloc est une entité bien délimitée qui encapsule principalement des attributs (variables
d’état), des opérations (procédures comportementales), des contraintes, des ports
(échange de flux avec l’extérieur) et des parts (sous-blocs internes).
Un bloc peut modéliser tout le système, un élément matériel ou logiciel...Des stéréotypes (ici
Hardware) sont utilisés pour personnaliser le langage pour des applications spécifiques à un
domaine donné.
La propriété de type value
La notion fondamentale permet d’exprimer une
de « port » qui caractéristique quantifiable
correspond à un point
d’interaction avec
l’extérieur du bloc
Une opération traduit un
comportement du block
Block definition diagram (diagramme de définition des blocs)
Syntaxe
Les relations de composition (trait avec losange plein) indiquent les block qui entrent dans la
composition du système et lui sont indispensables
Contrainte de multiplicité.
Notez comment l'utilisation du losange blanc (agrégation partagée) sur FrontWheel,
BrakePedal, ces block entrent dans la composition du système sans être indispensable à son
fonctionnement "usage-non-composition".
Block definition diagram (diagramme de définition des blocs)
Exercice 3
• d’un objectif
• et d’un capteur ;
Solution
Internal block diagram (diagramme interne d’un bloc)
L’objectif
Le diagramme de blocs internes est rattaché à un bloc issu du diagramme de définition de
blocs.
Le diagramme de définition de blocs introduit les connecteurs (traits) entre les ports pour
indiquer les flux de matière, d’énergie et d’information entre les différents blocs.
Syntaxe
On s’intéresse pour ces exemples à un compresseur, qui permet d’alimenter en air comprimé
des outils utilisant cette énergie.
Ports
Relation Composants
(flux)
Remarque
Port de flux : canal d'Entrée/Sortie par lequel transite de la matière, de l'énergie ou de
l'information (MEI).
Port standard : désigne une interface permettant d'invoquer un service/une opération.
Internal block diagram (diagramme interne d’un bloc)
Exercice 4
Solution
Package diagram (diagramme des paquets)
L’objectif
Un paquetage est un élément « conteneur » permettant le regroupement d'autres éléments.
Le diagramme de paquetages (Package Diagram) permet de représenter l’organisation des
modèles par domaine ou type de diagramme (comportement, structure ou exigences). Il est
analogue à un dossier informatique
Exemple
d'organisation
Activity diagram (diagramme d’activités)
L’objectif
C’est un diagramme de comportement qui représente l’ordre dans lequel les actions s’exécutent
et comment ces actionsd éfinissent les sorties à partir des entrées.
Syntaxe
Début 'une activité
Les éléments de base du diagramme d’activité sont les suivants :
Une action ne peut démarrer que si son flux de contrôle reçu est activé. Elle active son flux de
contrôle à la sortie une fois terminée.
Activity diagram (diagramme d’activités)
Exercice 5
Construire un diagramme d’activité constitué des deux actions suivantes :
Solution
State machine diagram (diagramme d’états)
L’objectif
Modéliser un comportement par des états et des transitions activées par des événements.
Etat : étape reproductible de la vie d’un composant munie de comportements (entrée, phase
active, sortie). Elle est exclusive (un seul état actif à la fois)
Evénement: est une spécification qui peut déclencher une réaction, peut porter des
paramètres qui matérialisent le flux d’informations ou de données reçues. Il peut être
accompagné de conditions.
Automate fini (state machine)
Syntaxe nommé Marche/arrêt
Un pseudo-état
indiquant l'état initial
Deux transitions
avec
Deux états nommés Deux événements
moteur arrêté et déclencheurs
moteur allumé
une condition de
Comportement garde indiquée entre
d'entrée repéré par crochets
le mot-clé entry
State machine diagram (diagramme d’états)
Type de Comportements:
entry / comportement appelé à l’entrée
do / comportement tant que l’état reste actif
exit / comportement appelé à la sortie
Etats composés : contiennent un autre automate avec état initial sans état final !
Quelques événements :
Exercice 6
Construire un diagramme d’états pour la barrière de parking selon les règles suivantes :
Solution
Sequence diagram (diagramme de séquence)
L’objectif
Décrire les interactions entre composants
Syntaxe
Ligne de vie
Comportement
individuel
Réponse
Sequence diagram (diagramme de séquence)
asynchrones : l’expéditeur
n’attend pas
synchrones : l’expéditeur
attend une réponse
réponses
Messages réflexifs :
interactions internes
Sequence diagram (diagramme de séquence)
Noms
Appel d’une
interaction
Branchement
conditionnel
Sequence diagram (diagramme de séquence)
Exercice 7
Ensuite :
• si l’on est ensuite en mode automatique, le garde envoie un message Suivre la trace
au :Système, sans attendre de réponse ;
• si l’on est en mode manuel, le garde envoie simultanément les messages Régler
l’inclinaison horizontale et Régler l’inclinaison verticale au :Système, sans attendre
de réponse.
Sequence diagram (diagramme de séquence)
Solution
Parametric diagram (diagramme paramétrique)
L’objectif
Représenter un système d’équations par :
• contraintes : relations mathématiques
• paramètres : variables de ces relations
• caractéristiques des blocs
Syntaxe
Dans un premier temps
La représentation des différentes relations s'effectue dans un diagramme de définition de blocs
(constraint blocks) que l'on construit selon le même principe que s'il s'agissait de blocs «
standard »
relation de référence: signifie
que le bloc de contrainte
Dynamique du véhicule peut
faire appel aux
caractéristiques du bloc
Véhicule. Cette relation est
munie d'un nom de rôle, à
savoir v
Parametric diagram (diagramme paramétrique)
Exercice 8
Solution
The system model as a framework for analysis and traceability
50