Vous êtes sur la page 1sur 169

ESTIC INFO-01

ASR301
2015-2016
2018-2019

INITIATION A L’INGENIERIE DES SYSTEMES


ASR301
CHAPITRE 4 PRINCIPES DE MODELISATION DES SYSTEMES

NOTES CONCUES OU COMPILEES par Bertin Polombwe


Version 1.0 – 2016/2017
ESTIC INFO-01
ASR301
2015-2016
2018-2019

I. Rappels sur l’Etude des Systemes


ESTIC INFO-01
2015-2016
Etude des systèmes 1. Notion de système.

2. Caractéristiques globales d’un


système automatisé.

3. Analyse des systèmes automatisés.


Description fonctionnelle.
Description structurelle.
Description comportementale.
Description technique.
ESTIC Quelques exemples : INFO-01
2015-2016

Véhicule automobile Ordinateur

Usine de fabrication de l’acier Centrale nucléaire


ESTIC INFO-01
2015-2016 Définition :

Système :
On appelle système un assemblage, une collection
organisée (possédant une structure) d'objets reliés ou
branchés (en interrelation) les uns aux autres, de façon à
former une entité ou un tout remplissant une ou plusieurs
fonctions.

Un système est un produit artificiel de l'esprit des


hommes.

Exemples de systèmes :
Système nerveux
Système de fermeture
Système linguistique
Système capitaliste
Système d’équation
Système monétaire
Système nerveux
ESTIC INFO-01
2015-2016 Définition :

Théorie des Système :


Théorie générale et interdisciplinaire qui étudie les systèmes en tant
qu'ensembles d'éléments, matériels ou non, en relation les uns avec les
autres et formant un tout

Moteur de voiture

Interdisciplinarité :
Citer les différentes disciplines
intervenant dans l’étude des
moteurs.
ESTIC INFO-01
2015-2016
Un système n’est pas un ensemble :
Il ne suffit pas de connaître tous les composants d’un
système pour connaître le système

Composants Performances du système : …


Inter-relations
Fonction : …
ESTIC INFO-01
2015-2016
Système technique :
La norme NFE 90-001 définit un système technique comme "un ensemble
d'éléments interconnectés de façon logique, qui se coordonnent pour
réaliser une tâche précise".

Système automatique :
Un système est dit automatique s'il réalise la fonction seul, sans
intervention humaine.

Pelleteuse Poclain Robot cueilleur de fruit


ESTIC INFO-01
2015-2016
Système technique :
La norme NFE 90-001 définit un système technique comme "un ensemble
d'éléments interconnectés de façon logique, qui se coordonnent pour
réaliser une tâche précise".

Système automatique :
Un système est dit automatique s'il réalise la fonction seul, sans
intervention humaine.

L’homme délègue la partie opérative L’homme délègue la partie opérative


et la partie commande
ESTIC INFO-01
2015-2016
L’Automatisation au 20ième siècle :
•Coût
•Quantité
•Qualité
•Pénibilité

Robots d’assemblage chez CITROEN


ESTIC INFO-01
2015-2016
Complexité :
Qui contient plusieurs éléments différents et combinés
d'une manière qui n'est pas immédiatement claire pour
l'esprit, qui est difficile à analyser.

Approche déductive

Approche inductive
ESTIC INFO-01
2015-2016

Objectif général de formation en STI2D :

identifier les éléments influents d’un système, décoder son organisation


et utiliser un modèle de comportement pour prédire ou valider ses
performances.

Compétences attendues :
•limitées au mode lecture et interprétation sur des systèmes ou
sous-systèmes simples.
•Pendant les activités, être capables de modifier ou créer les modèles
de comportement pour valider les solutions envisagées ou prédire un
comportement.
ESTIC INFO-01
2015-2016 Etude des systèmes 1. Notion de système.

2. Caractéristiques globales d’un


système automatisé.

3. Analyse des systèmes automatisés.


Description fonctionnelle.
Description structurelle.
Description comportementale.
Description technique.

Le système est vu comme une boite noire. On ne s’intéresse


pas aux détails internes du système.

Il s’agit de :
•Définir le système.
•Expliciter les critères de performance du système.
ESTIC Application sur Ariane :
Donner le contexte, la frontière et la fonction principale sous forme de INFO-01
2015-2016
diagramme du lanceur Ariane.
ESTIC INFO-01
2015-2016

Application Ariane :
Description globale du
système
ESTIC INFO-01
2015-2016

Compétences attendues :

Vous devez être capable d’appréhender et présenter un système réel.

Pour cela, il faut :


1. Aborder/Présenter le système de manière globale,
2. Analyser/Expliquer le fonctionnement interne.

Pour Aborder/Présenter de manière globale, il faut :


1. Définir le contexte,
2. Définir la frontière,
3. Exprimer la fonction principale,
4. Définir la matière d’œuvre,
5. Préciser la valeur ajoutée,
6. Donner des critères de performance (si possible quantifiés)
ESTIC INFO-01
2015-2016 Etude des systèmes
1. Notion de système.

2. Caractéristiques globales d’un système


automatisé.

3. Analyse des systèmes automatisés.


Description fonctionnelle.
Description structurelle.
Description comportementale.
Description technique.
L’analyse ou la présentation d’un système passe par une étude des éléments
internes au système.

Plusieurs points de vue peuvent être adoptés : fonctionnel, structurel,


comportemental ou technique.

Afin d’échanger efficacement, certains outils de communication sont


normalisés. Ce sont principalement des outils graphiques de type diagrammes
SysML.
ESTIC INFO-01
2015-2016 Illustration : Système de suivi de trajectoire d’ariane

Vérins de
commande
ESTIC Description structurelle des systèmes
INFO-01
2015-2016
Chaîne fonctionnelle
ESTIC Description structurelle des systèmes
INFO-01
2015-2016
Chaîne fonctionnelle en boucle fermée

Chaîne fonctionnelle en boucle ouverte


ESTIC Description structurelle des systèmes
INFO-01
2015-2016

Illustration Ariane :
Proposer une description structurelle du
système de suivi d’Ariane
ESTIC Description structurelle des systèmes
INFO-01
2015-2016
Illustration Ariane :
Proposer une description structurelle du
système de suivi d’Ariane
ESTIC Description Comportementale des systèmes
INFO-01
2015-2016
Schéma blocs fonctionnel

Chaque bloc représente le comportement d’un module transformant


une grandeur physique d’entrée en une grandeur physique de sortie.

Les liens représentent des grandeurs physiques.

Ces schémas seront largement utilisés en « asservissements » (non


au programme)
ESTIC Description Comportementale des systèmes
INFO-01
2015-2016
Illustration Ariane
ESTIC INFO-01
ASR301
2015-2016
2018-2019

II. La modélisation des Systèmes

Yann Pollet
Cnam

Chaire d ’intégration des systèmes


ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modélisation des systèmes

• Pourquoi modéliser?
• La modélisation générale des systèmes
• La modélisation de systèmes à logiciel
prépondérant
– Modélisation fonctionnelle
– Modélisation sémantique
– Modélisation dynamique
– Approches intégrées
– L’approche objet
ESTIC INFO-01
2015-2016
Pourquoi modéliser ?
Modélisation
Comprendre
l ’environnement
Prescrire les
complexité exigences
En général, un différents points de vue
système ne peut Investiguer
être le système
hétérogénéité convenablement Construire les
appréhendé qu’à architectures
travers : fonctionnelle
et physique
pluridisciplinarité -différents niveaux Modèles d ’analyse et de
Estimer les conception
-des points de vue performances
multiples et la sûreté de
fonctionnement Modèles
analytiques
Prévoir et
valider les Modèles
formels
comportements
Modèles
Partager la cognitifs de
connaissance communication
ESTIC INFO-01
ASR301
2015-2016
2018-2019
But de la modélisation des systèmes
• Documenter les résultats de manière aussi formelle que possible :
– Exigences spécifiées pour le système
– Résultats de l’analyse fonctionnelle exigences applicables aux
sous-systèmes
– Architectures fonctionnelle et organique
• Supporter l’analyse
– Expression des résultats de l’analyse fonctionnelle
– Aide à l’exhaustivité, à la cohérence, à la non contradiction
– Lien / traces entre les étapes d’analyse / niveaux
• Communiquer entre acteurs :
– maîtrise d’œuvre – autres parties prenantes
– entre acteurs du processus d’ingénierie
ESTIC INFO-01
2015-2016
Les niveaux d ’abstraction des systèmes
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Une typologie des modèles
c Modèlesde
Modèles decompréhension
compréhension
•• comprendre
comprendrell’environnement
’environnement
E ? S
•• analyser
analyserlelesystème
système
•• décrire
décrirepour
pourpartager
partagerlalaconnaissance
connaissance

c Modèlesnormatifs
Modèles normatifs
E S •• prescrire
prescrireles
lesexigences
exigences
? •• concevoir
concevoirleslesarchitectures
architectures
•• définir
définirles
lessolutions
solutions

c Modèlesde
Modèles deprévision
prévision
E S ? •• prévoir
prévoiretetvalider
validerles
lescomportements
comportements
•• estimer
estimerles
lesperformances
performances
•• estimer
estimerlalafiabilité,
fiabilité,lalasûreté
sûretéde
defonctionnement
fonctionnement
?c Modèlesde
Modèles depilotage
pilotage
E S •• modèles
modèlesde
decommande
commandedu dusystème
système
•• modèles
modèlesde
dedécision
décisiondans
dansleleprojet
projet
ESTIC INFO-01
2015-2016

La modélisation générale des systèmes

Les Diagrammes de Flux de


Données, SADT, Sagace
ESTIC INFO-01
2015-2016
Structure générale d’un système
Finalité

Sphère
humaine
Entrées
Sorties

Sphère Sphère
technologique informatisée
ESTIC INFO-01
ASR301
2015-2016
2018-2019
La modélisation des systèmes finalisés

Systèmes finalisés 4 hiérarchies


Fonctionnelle Temporelle Décisionnelle Structurelle

Finalité
évolution
S phases de vie
modes de Buts
fonctionnement
états / proc. consignes
continu système
fonctionnement opérant

hiérarchie de niveaux hiérarchie de


hiérarchie pilotage hiérarchie
fonctionnelle d ’invariance organique
temporelle
ESTIC INFO-01
ASR301
2015-2016
2018-2019

SADT/ IDEF0
Structured Analysis & Design Technique
Ross 1977
Modélisation fonctionnelle
Langage pour le communication
Fonctions et « contrôles »
ESTIC INFO-01
ASR301
2015-2016
2018-2019
SADT

• Notation graphique d’un concept très général (Diagrammes de Flux de


Données, DFD), mais aussi méthode
• Base de plusieurs standards dont IDEF0 (Integration Definition for Function
) du NIST (National Institute of Standards and Technology) (1993)
• Support pour l’analyse d’un système
• Périmètre d’application très général : processus de production, processus
d’entreprise, systèmes informatisés, systèmes technologiques, …
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modélisation fonctionnelle : SADT

« Boîte » : activité transformatrice entrant en flux sortant


– activité définie par un verbe
– flux définis par des substantifs (information, matière, énergie)
– notion de « contrôle »:
• message : information nécessaire à l ’activité (consultée, mais non
transformée)
• événement déclencheur de l ’activité (aspect temporel)
• commande (aspect décisionnel)
– notion de « processeur » : organe (ressource, moyen, acteur)
démarrage type
contrôles / arrêt produit

entrées sorties matière première Produire produit fini


activité

processeur chaîne de production


ESTIC INFO-01
2015-2016
Éléments de base SADT
contrôles

entrées sorties diagramme de contexte


activité A0

A-0
processeur
A1
• Une boîte est décomposée en A2 A3
sous-boîtes (3 à 6 ou 7) A0 A4
• toute boîte doit avoir un
événement déclencheur (contrôle) A21
A22
• une information à la fois entrée et
A1 A2 A23 A3
contrôle d ’une boîte est notée en
contrôle
• contrainte de cohérence des flux sous-diagrammes
entre une boîte et sa
décomposition
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Exemple : Terminal monétique
insertion carte méthode
authentification diagramme A0
carte
authentifier code bon
code confidentiel l ’usager
A1

ancien solde
nouveau solde
montant traiter la
retraits déjà effectués compensation interbancaire
transaction montant autorisé
A2
espèces restantes
méthode
authentification fournir les espèces
espèces en stock
insertion carte retraits
effectués espèces
depuis n jours A3
carte nouveau solde espèces restantes
code confidentiel effectuer des compensation interbancaire
ancien solde
retraits espèces
montant A0 diagramme A-0
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Exemple : Système de conduite
arrêt station

ouverture / fermeture porte


capteur porte embarquer / signal sonore
débarquer départ consigne
A1
vitesse
info vitesse cde accélération
capteurs voie cde freinage
capteur obstacle conduire alarme
arrêt urgence A2 estimation position

diagramme A0
informer message
usager
arrêt consigne A3
station vitesse

état porte ouverture / fermeture porte


info vitesse signal sonore
cde accélération
capteurs voie transporter cde freinage
capteurs obstacles alarme diagramme A-0
arrêt urgence A0 message
ESTIC INFO-01
2015-2016
Exemple : Système de conduite (2)
départ consigne
vitesse

info vitesse acquérir vitesse


vitesse
A21

capteurs voie estimer estimation position


position
A22

commander cde accélération


capteur obstacle
capteur porte accélération freinage alarme
arrêt urgence A23 urgence
fin
accélération
réguler
vitesse cde freinage
A24
début
freinage
commander
arrêt
diagramme A2 A25
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Exemple : développer un système
diagramme A0

diagramme
A-0 signature
plans du projet composants log
méthodes etmatériel
contrat de dév. disponibles
cahier des charges dossier de spec syst
proposition dossier ss-syst et interfaces
développer dossier d ’intégration
interviews
un système dossier de validation
système existant système validé
A0
ESTIC INFO-01
2015-2016

L’approche SAGACE
JM Pénalva, CEA (1994)

Une méthode d ’analyse et de


conception systémique
ESTIC INFO-01
ASR301
2015-2016
2018-2019
SAGACE

• Une approche systémique générale, mise au point au CEA


• Une grille d’analyse + un langage graphique de
modélisation + une démarche d’analyse
• Peu utilisée dans la réalité industrielle….
• Grille d’analyse d’un système utilisable indépendamment de
tout langage de modélisation ou de toute méthode
• Applicable aux systèmes complexes : humain +
technologie + informatique
ESTIC
2015-2016
2018-2019 Approche globale de la INFO-01
ASR301

modélisation
évolution
phases de vie
niveaux d ’invariance modes de
S temporelle fonctionnement
états / proc.
continu

fonctionnement

action fonctionnement évolution


1 fonctions 2 processus 3 scénarios
vision fonctions constituantes enchaînement des enchaînement des
fonctionnelle correspondant aux a ctivités pour réaliser modes de
activités élémentaires les fonctions de servic e fonctionnemen
visions t
du 4 sous-système
système vision 5 sous-système de 6 sous-
opérant commande système
organique auxiliaire
organes réalisant les organes de mise en organes assurant les
fonctions œuvre des activités
changements
de
vision configuration
opérationnelle 7 conduite 8 gestion 9 anticipation
(décisionnelle) consignes de adaptation des décisions d ’ordre
régulation activités (transitio n stratégique
des des phases de (cha ngement de mode
fonctions fonctionnement) de fonctionnement)
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Exemple : atelier automatisé de production

action fonctionnement évolution


1 2 3
vision programme
fonctionnelle
procédé processus
de
production
4 5 6 système
vision machines de système
organique production de d
contrôle- ’ordonna
vision command nce-
opérationnelle e ment
(décisionnelle) 7 8 9
conduite supervision ordonnancemen
t
d ’atelier
ESTIC INFO-01
2015-2016
Syntaxe
processus information information de
entrée sortie
de résultat commande
(M, E, I) (M, E, I)
Processus
•fonctions, activités, ou modes conditions de
(vision fonctionnelle) démarrage
•organes (vision organique)
•tâches décisionnelles (vision
transition entre processus
décisionnelles)
flux entrant
condition (IC)
(M, E, I)
processus
processus événement
propagation (IR)
(M, E, I) condition (IC)
flux sortant événement (IR)
(M, E, I)
processus processus
transition
rétroaction (M, E, I) événement
(IR)
diagramme de flux diagramme de transition
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Exemple du système de transport

1 fonctions 2 programme 3 position


position opérantes et scénarios
véhicule (M)
fonctions d ’enchaînement d ’exploitation véhicule (M)
de
position porte conduite
(M) 4 organes 6 position porte
5 organe de (M)
arrêt effecteurs, organes
d ’urgence (I) capteurs, logiciel commande auxiliaire
de contrôle du
énergie processus information
électrique (E) usager (I)
7 8 décisions 9 décisions
lois de régulation précision des arrêts
temps de transport
d d ’exploitation
sécurité des passagers
’opération contraintes
et attentes
Diagramme de contexte
Ex : Système = sous-système opérant
(véhicule, voie, infrastructure) + sous-
système de commande Voie et infrastructure
ESTIC INFO-01
2015-2016

La modélisation des Systèmes a


Logiciel Prépondérant

Introduction
ESTIC INFO-01
ASR301
2015-2016
2018-2019 Niveaux et points de vue

Point de vue S
contextuel

Comment le système
Point de vue évolue
dynamique

Point de vue Point de vue


Validation
fonctionnel « sémantique »
réciproque des
Ce que fait le Les informations modèles
système qu’il manipule
Intégration entre
les modèles
Architecture
organique
ESTIC INFO-01
2015-2016

La vision contextuelle, ou
vision fonctionnelle
externe
Les cas d ’utilisation
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Les Cas d ’Utilisation (Use Cases)
• Vision contextuelle du système :
– Services concourant à la finalité
– Unité d’interaction usager - système
– Acteurs externes et types d’interactions
– Premier niveau de structuration des services
Use Cases : formalisés par Ivar Jacobson
• Destinés à l ’expression du besoin
• Centrés sur les utilisateurs
• Formalisme très simple
• Servent également à la conception des tests de validation
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Concepts de base

ACTEUR
•représente un rôle joué par une personne ou une chose
qui interagit avec le système mais qui lui est extérieure
•est caractérisé par un nom qui exprime son rôle
•une même personne physique peut être modélisée par Usager
plusieurs acteurs
ou
•un acteur représenter plusieurs personnes physiques
<<actor>>
CAS D ’UTILISATION Autre Système
•unité fonctionnelle de service cohérente assurée par un
système ou une classe
•correspond à un certain type d’interaction entre le
système et les acteurs Consulter
•doivent être vus comme des classes dont les instances solde
compte
sont des scénarios
ESTIC
2015-2016
2018-2019 Exemple Paquetage
INFO-01
ASR301
regroupe des Acteur
éléments de secondaire
modélisation
Nature de Distributeur de billets
l ’interaction
<<actor>>
Consulter
solde compte SI Banque
visualise
Retirer de Le technicien
débite l ’agent éteint le
Client distributeur
avant de
Mettre en ravitailler le
coffre
Acteur marche /
personne ou arrêter
système externe à
l ’origine d ’une
interaction avec le Ravitailler le
systèmes coffre
On ne peut Technicien
retirer de
l ’argent que Cas d ’utilisation
dans la limite
du stock objectif du système motivé par un
besoin
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Liens entre cas d ’utilisation

Communication – exprime le fait que l ’acteur participe à la réalisation d ’un


cas d ’utilisation . C ’est la seule relation qui peut exister entre un acteur et un
cas d ’utilisation

Généralisation « Extends » – Une relation de généralisation stéréotypée


« extends » du cas d ’utilisation A vers le cas d ’utilisation B signifie qu’un
scénario du cas d ’utilisation B peut contenir le comportement spécifié par A.
Les comportements spécifiés par différentes extensions d ’un cas
d ’utilisation« général » peuvent se produire dans un même scénario
<<Extends>> Enseignement
Enseignement
par correspondance

Généralisation « Uses » – Une relation de généralisation stéréotypée « uses »


du cas d ’utilisation A vers le cas d ’utilisation B signifie qu’un scénario du cas
d ’utilisation A intégrera aussi le comportement spécifié par B.
<<Uses>>
Travaux dirigés Enseignement
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Exemple : le GAB
Guichet automatique bancaire
Services offerts :
1. distribution d ’argent à tout porteur de carte de crédit (carte Visa, ou carte de
la banque) via un lecteur de carte et un distributeur de billets

2. consultation de solde de compte, dépôt en espèces et dépôt de chèques pour les


clients porteurs d ’une carte de la banque

3. il est nécessaire de recharger de temps à autre le distributeur


ESTIC INFO-01
2015-2016
Exemple : diagramme de contexte statique du GAB

0..1 1..1 <<actor>>


SA Visa
Porteur de CB
GAB
0..1
1..1
<<actor>>
Client de la
banque SI Banque
0..1

Porteur de CB

Note : « Porteur de CB » et Opérateur de


maintenance
« Client de la banque » sont
mutuellement exclusifs Client de la banque
ESTIC INFO-01
2015-2016
Exemple : Réalisation du diagramme de cas d ’utilisation
<<actor>>
SI Banque

Porteur de CB <<actor>>
Visa Retirer de l ’argent SA Visa

Consulter un solde Recharger le distributeur

Client de la Récupérer les cartes


banque Déposer du liquide avalées Opérateur de
maintenance

Récupérer les chèques


Déposer des chèques déposés
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Cas d ’utilisation et scénarios
Un scénario est une série d ’événements ordonnés dans le temps, simulant
une exécution particulière du système

Pour chaque cas d ’utilisation, il existe un ou plusieurs scénarios dont la description permet d
’expliciter le comportement du système pour une situation donnée. (TP KERBEROS)

téléphoner

Appelant Appelé
communication directe
ligne occupée
sans réponse
communication par répondeur
ligne en dérangement
etc...
ESTIC INFO-01
2015-2016
Exemple de scénario (retirer espèces)
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Liens entre cas d’utilisation
Exemple : Un système d’agence de voyage :
Relation « extends »
Réserver
voyage
<<extends>>

Réserver voyage Réserver voyage


par téléphone par Internet
ESTIC INFO-01
2015-2016
Cas d’utilisation : exemple

<<includes>>

Virement
Identification
Client distant
<<extends>>

Virement par internet Virement au guichet

Client au guichet
ESTIC INFO-01
2015-2016

L’analyse du système
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Niveaux et points de vue

Point de vue S
contextuel

Comment le système
Point de vue évolue
dynamique

Point de vue Point de vue


Validation
fonctionnel « sémantique »
réciproque des
Ce que fait le Les informations modèles
système = les qu’il manipule
transformations Besoin
d’intégration
Architecture entre les modèles
organique
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Systèmes informatisés

• Besoin en modélisation des aspects fonctionnels et


dynamiques
• Les flux informationnels traités par les fonctions véhiculent les données
représentatives du problème
• Besoin en modélisation des données et de leur
relations : contexte sémantique du problème
Approche de modélisation des systèmes
d ’information selon trois points de vue, et à différents niveaux d’abstraction
Modélisation sémantique
Le modèle Entité-Association (Chen, 1977) Les
diagrammes de Classes
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modèle sémantique
Comment évolue le système
Dynamique
évolution

E-A
Sémantique Fonctions
structure
les données
Le
Le monde
monde dudu problème,
problème, Ce que fait le système
ce
ce que
que traite
traite le
le problème
problème
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Le modèle Entité-Association

• Introduit initialement dans le domaine des Bases de Données pour


la phase de conception
• Diagramme de base dans les méthodes de conception des
Systèmes d’Information (Ex : MCD de MERISE)
• Modélisation des entités du domaine et des informations
internes au système
• Ne représente que l’aspect « données »
• Chaque méthode a introduit sa notation propre
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Le modèle Entité-Association
•objets du problème Réseaux sémantiques
•relations entre les objets modèle entité-association de
Chen
• Les entités : types d ’objets qui apparaissent pertinents pour
modéliser le problème (ex : substantifs du cahier des charges)
regroupées en classes d ’entités, et possédant des attributs
• Les associations : relations de sens entre les entités, avec des
cardinalités
• Relations de spécialisation (« plus spécifique /générique que »)
• Diverses notations (« EA », …, « classes UML »)
article magasin
est stocké dans
•référence •localisation
0, N •quantité
•désignation 1, N •capacité
ESTIC INFO-01
ASR301
2015-2016
2018-2019 Cardinalités
Précise les nombres min et max possibles
d ’occurrences mises en relation 4 cardinalités
E1 Association E2
n1 n2 m1 m2
Nombre min. Nombre max.
d ’entités E1 Nombre max. Nombre min. d ’entités E2
associées à une d ’entités E1 d ’entités E2 associées à une
entité E2 associées à une associées à une entité E1
entité E2 entité E1

n : signifie « plusieurs » (0, 1 ou n) Exemples


1 n : plusieurs (0, 1, ...) 0 1 : 0 ou 1
2 n : au moins 1 (1, n) 1 2 : 1 ou 2
1 1 : exactement 1 0 2 : 0, 1 ou 2
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Cardinalités. Exemples

article magasin
est stocké dans
•référence 1n 0 n •localisation
•quantité
•désignation •capacité

besoin exigence
•identifiant définit
1n 0 1 •identifiant
•texte •texte

client banque
•nom est client
1n 0 n •identifiant
•adresse •nom
11
compte
• numéro compte
• type
• solde
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Cardinalités des associations

La CARDINALITE ( ou MULTIPLICITE) d ’une association


est le nombre d ’instances mises en jeu pour une classe dans le
lien avec chaque instance de l ’autre classe
On précise généralement la cardinalité minimum et la cardinalité
maximum
marié à > 1..1 : exactement 1
Homme Femme
0..1
possède > 0. 0..* : 0, 1 ou n
Automobil e .1 Roue
1
4 0..1 : optionnel
< affecté à Manager
Projet
1..* 1
< gouverne
1..4 : spécifié
Administr s Ministre
é all numériquement
1
all : toutes les
instances de la classe
ESTIC INFO-01
2015-2016
Modèle EA du GAB
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Projet d ’ingénierie
système
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Contraintes de spécialisation
Avion

Motorisation ContexteUtilisation
{inclusif}
AvionReaction AvionHelice AvionMilitaire AvionCivil
Personne

{exclusif}

Language de programmation Homme Femme

{incomplet}
Pascal C++ Java COBOL
ESTIC INFO-01
2015-2016

La modélisation fonctionnelle

Les méthodes SADT et SA


ESTIC INFO-01
ASR301
2015-2016
2018-2019 SADT

• Application de SADT aux systèmes informatisés en générale et logiciels en


particulier
• Modélisation des aspects fonctionnels par les
Actigrammes, avec flux de données
• Les flux de données peuvent se décomposer progressivement par
dérivation
• Introduction des Datagrammes pour centrer une représentation sur la
structuration des données
• Note :
– Pas de sémantique de contrôle « événementiel »
– Peu de lien avec les entités de l’architecture logicielle
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Ex : Terminal monétique
carte méthode retraits
authentification effectués diagramme A0
depuis n jours
authentifier code bon
code confidentiel l ’usager
A1

ancien solde nouveau solde


traiter la
montant Requête de débit compte
transaction montant à servir
A2

méthode fournir les espèces


authentification
retraits espèces
carte effectués espèces en stock
A3
depuis n jours
nouveau solde
code confidentiel
effectuer des Requête de débit compte
ancien solde
retraits espèces
montant A0 diagramme A-0
ESTIC INFO-01
ASR301
2015-2016
2018-2019
SADT : Actigrammes et Datagrammes
informations activité de
de contrôle contrôle
informations informations activité activité
en entrée en sorties productrice utilisatrice
activité données

organe mémoire
processeur ou lien de
communication
Actigramme Datagramme
vérifier les
exigences
faire l ’analyse référentiel faire l ’analyse fonctionnelle
cahier des des exigences
charges des faire la synthèse
exigences
faire l ’analyse
conflit système compromis
d ’exigences d ’exigences

Exemple de Datagramme
ESTIC INFO-01
ASR301
2015-2016
2018-2019

Modélisation fonctionnelle L ’analyse structurée

SA (Structured Analysis)
E. Yourdon et T. De Marco (1978)
ESTIC INFO-01
ASR301
2015-2016
2018-2019
L ’analyse structurée

source flux 1 flux 3 puits

processus P
flux 2 flux 4
source puits

Diagramme de contexte
stockage de données
flux 1
« Processus » processus flux
flux flux 3
P1 processus
P3 flux 4
Terminateur flux 2 processus
Stockage de P2
données
Flux de
Diagramme de flux de données
données (DFD) du processus P
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Diagramme de contexte d ’un GAB
ESTIC INFO-01
ASR301
2015-2016
2018-2019
DFD d ’un GAB
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Approche SA : synthèse
• Répond à l ’analyse fonctionnelle en décomposant les fonctions et en mettant en
évidence les flux d ’information
• déclaration de stock de données et dictionnaire de données récapitule
l’ensemble des informations en prenant en compte la sémantique
• liaison possible avec le modèle entité-association
• bien adapté à la modélisation des échanges
d ’information dans les Systèmes d ’Information
• approche qui ne peut être utilisée seule pour les systèmes de conduite temps réel
(pas d ’aspects temporels et dynamiques) extension SART
Modélisation dynamique
Automates à états finis, Statecharts,
Réseaux de Pétri
ESTIC
2015-2016
2018-2019 Modèle dynamique INFO-01
ASR301

Comment évolue le système


Dynamique commande,
évolution séquencement,
événements, transitions
entre états et modes de
fonctionnement

E-A
Sémantique Fonctions les transformations
structure les informations
Le
Le monde
monde dudu problème,
problème, Ce que fait le système
ce que
ce que traite
traite le
le problème
problème
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Les Automates à Etats finis

• Introduits dans le monde des systèmes


automatisés pour modéliser les systèmes à
e/s et temps discrets
• Extrêmement utilisé dans le monde du
logiciel
• Approche classique, très naturelle et
intuitive
ESTIC
2015-2016
2018-2019 Représentation dynamique des INFO-01
ASR301

systèmes
évènement Système
données Système données
d ’entrée de sortie réaction purement
transformationnel réactif
boite noire cactus noir
Systèmes transformationnels Systèmes purement r éactifs
•réagit à des événements extérieurs en
•délivre un flux de sortie en fonction d ’un fonction de son état
flux d ’entrées
•représentation par un diagramme état -
•analysable par décomposition fonctionnelle transition

événements E1 E2 E3
Qi Qj Qk Qm temps E1 E2 E3
Qi R1 Qj R2 Qk R3 Qm
réactions R1 R2 R3

événement -réactions Systèmes mixtes (ex : temps réel)


•systèmes à la fois transformationnels et réactifs
données Système données •comportement complexe : ensemble de séquences
d ’activité transformatrices de flux, d ’événements,
d ’entrée mixte de sortie d ’actions, de conditions associées à des contraintes
temporelles
•ne se représente pas facilement dans une approche
structurée
ESTIC INFO-01
2015-2016
Automates à Etats Finis

E(t) Système S (t+t) choix produit


fournit produit reçoit à 3€
à 3€
Systèmes séquentiels 1 € 2€ 3€
Automates finis : 2 hypothèses : reçoit
•causalité : S (t+t) ne dépend que de E(t) 1€ reçoit
et de l ’histoire antérieure à t 1€ reçoit
•finitude : l ’histoire antérieure est résumée 1€
par un état qui ne prend qu ’un ensemble attente reçoit
fini de valeurs
2€
reçoit
F fournit 2€ 2€
4€
E(t) produit à
Q(t) t S(t+t) 4€ choix produit à 4€
fournit choix produit à 3€
produit à 3€
G + rend 1 €

S(t+t) = F[E(t), Q(t)]


Distributeur automatique de produits
Q(t+t) = G[E(t), Q(t)]
ESTIC INFO-01
2015-2016

Les Automates à états finis


ESTIC INFO-01
ASR301
2015-2016
2018-2019
Automates à états finis
• Tout système purement réactif peut être modélisé
par un automate à états finis
• Deux modèles de comportement possibles :
état 1 état 1
•l•l’action
’actionest
est
•l•l’action
’actionest
est associéeààlala
associée
associéeau
associée aunouvel
nouvel transition
événement 1 état
étataprès
après événement 1 transition
transition action 1 •nouveaux
•nouveaux
transition événementsprisprisen
en
événements
état 2 •nouveaux
•nouveaux état 2 comptedès
compte dèspassage
passage
événementspris
événements prisen
en danslelenouvel
dans nouvelétat
état
action 1 compteseulement
compte seulement
unefois
foislele •laconcurrence
événement 1 •la concurrence
événement 2 une possibledd’actions
’actions
traitementterminé
traitement terminé action 2 possible
nn’est
’estpas
pasmodélisée
modélisée
état 3 état 3
action 2
Machine de Moore Machine de Mealy
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Liaison avec l ’aspect fonctionnel

niveaux temporels état 1 état 1


modesdedefonctionnement
fonctionnement activités 1 mode 1
modes
scénariodd’enchaînement
’enchaînement événement 1 événement 1
scénario activation des
desactivités
des activités actions de
activités de l ’état 2 reconfiguration
état 2 régulation
état 2 processus
processusde
processus de activités 2 desactivités mode 2 du mode 2
fonctionnement
fonctionnement de l ’état 2
événement 1 événement 1
séquencementou
séquencement ou activation des
parallélisationdd’activités
parallélisation ’activités action 2
activités de l ’état 3
état 3 état 3 processus
continu
continu activités 3 mode 3 du mode 3
activitésrégulées,
activités régulées,
équilibrageavec
équilibrage avec
ll’environnement
’environnement processus de modes de
fonctionnement fonctionnement
ESTIC
2015-2016 Exemple : analyse des états INFO-01

mise en
fonctionnement

attente en
station
délai écoulé
Définition du diagramme
Définition fermer porte
porte bloquée
fermeture
dd ’état
’état global
global àà partir
partir de
de porte
scénariosopérationnels
scénarios opérationnels porte fermée
accélérer

accélération
vitesse atteinte
réguler vitesse
conduite v
constante
proximité station
freiner
freinage
station
ouvrir porte
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Matrice état-transition
ESTIC INFO-01
ASR301
2015-2016
2018-2019 GAB : diagramme des états
ESTIC INFO-01
2015-2016

Les Statecharts

Harel (87)
ESTIC
2015-2016
2018-2019 Les Statecharts INFO-01
ASR301

Fortes limitations des diagrammes états-transitions :


• croissance exponentielle des états il devient impossible de
représenter le système complet
• relative indépendance de différentes parties d ’un diagramme
• emboîtement de différents niveaux de détail (Ex: phases, modes, …)
besoin de structuration et de hiérarchisation (modularité)

AD
BD
A B D
AE BE
C E
C
Partie 1 du système = + si A ou B, Partie 2
3 états, 4 transitions = 2 états, 2 transitions Système global= 5 états, 11
transitions !
Quelle transition de C vers A?
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Principes des Statecharts de Harel

Extension des diagrammes états-transitions avec trois nouveaux


concepts :
– hiérarchisation (profondeur) regroupements d ’états dans des « super-
états » (OU exclusif)
– orthogonalité « parallélisme » de processus (ET)
– expression de synchronisation et de dépendance entre diagrammes
parallèles
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Les concepts : hiérarchisation
Emboîtement hiérarchique d’états (raffinement)
Etat = « OU exclusif » d’Etats

a
Niveau 0
A
C a
b b
c c a c E b F
a a
b
B D
b
E c
F Niveau 1 Niveau 1
E = A OUex B A E C F
a b
F = C OUex D
c c
« début » et « fin » dans B a b
chaque sous-automate D
ESTIC INFO-01
2015-2016
Les Statecharts : représentation de la profondeur

mode mode mode


mode démarrage dégradé arrêt
dégradé
panne
mode panne mode
démarrage arrêt
mode chauffage mélange traitement
marche
Mode marche

mode
dégradé

mode panne panne panne


démarrage mode
arrêt
chauffage mélange traitement

Automate global équivalent


ESTIC INFO-01
ASR301
2015-2016
2018-2019
Les concepts : parallélisation
• Orthogonalité de diagrammes, démultiplication des états produit
cartésien d’états, « ET » de processus
• Synchronisation : besoin de communications entre diagrammes

AOffOff MOffOff COffOff

AAtOff MAtOff CAtOff


Avion
Système général Sous-système radar Missile AOnOff MOnOff COnOff

Croisière Off Off


Manoeuvre Attente Tiré AOffAc

A terre On Accroché
27 états…
Automate équivalent
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Les Statecharts : orthogonalités de sous -processus

Synchronisation et
concurrence
la transition « chaud »
entraîne deux changements
d ’états
Dépendance
la transition arrêt n ’est
possible que si le processus
A est dans l ’état « fonct. »
ESTIC INFO-01
2015-2016 Exemple de Statecharts
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Exemple de Statechart : le GAB
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Standardisation UML

• Diagrammes d’états UML (Statecharts)


• Modélisation de la dynamique d’un système
complet, d’un sous-système, ou d’un objet
• une transition représente un passage supposé
instantané d ’un état vers un autre
• deux états prédéfinis : État initial et État final
• Notations :
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Transitions
Spécification de transition : 3 parties optionnelles
Nom-événement [garde] / Action
evt [cond] / Act
Événements : Etat1 Etat2

– externes : échanges entre objets


– internes : émis et reçus au sein du même objet
• 4 types d ’événements :
– appel : invocation synchrone d ’un objet
– temporisation
– satisfaction de condition
• un transition peut ne pas avoir d ’événement
associé (déclenchée lors d’une fin d ’activité, état
fugitif)
ESTIC INFO-01
ASR301
2015-2016
2018-2019 Exemple

Diagramme d ’états d ’une classe Police d ’assurance

Abandonnée

Refus client

Délai expiré
Demande client (résiliation)
En souscription Signature client En cours Trop de sinistres Résiliée

Demande client Demande client


(suspension) (fin suspension) Délai expiré
Date fin
suspension Demande client
(résiliation)
Suspendue
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Transitions (2)

Garde ou condition :
– Une transaction peut être conditionnelle
– la condition porte sur des informations accessibles de
l ’objet : paramètres, attributs
– les gardes doivent être mutuellement exclusives

Sinistre [nombreSinistres = 5]
En cours Résiliée

Sinistre [nombreSinistres < 5]


PoliceAssurance
- nombreSinistres
+signer()
+faireDemande(mot f)
i
+déclarerSinistre()
ESTIC INFO-01
ASR301
2015-2016
2018-2019 Les traitements
Actions figurant dans un état :
déclenchées par :
– l ’entrée dans l ’état (Entry)
Ex : à l ’entrée dans l ’état « En cours », édition du
contrat En souscription
sert à factoriser un action associée à plusieurs Entry / édition
transitions menant à l ’état
– la sortie de l ’état (Exit)
Ex : en sortie de l ’état « Suspendue », notification Suspendue
à l ’assuré Exit / notification

– une transition interne (laissant l ’objet dans


le même état) (On event) En souscription
Ex : relancer client dans l ’état « En souscription » On event
DélaiProche /
une semaine avant le délai d ’expiration relancer
ESTIC INFO-01
ASR301
2015-2016
2018-2019 Les activités

• Une activité est une action qui dure ou se répète


• elle ne peut être attachée qu ’à un état (et non à une
transition)
• syntaxe analogue à celle d ’une action avec mention
d ’événement remplacé par le mot clé « do »
• l ’activité dure tant que l ’objet est dans l ’état
concerné
• elle n ’est interrompue que par des transitions
internes et ne s ’arrête qu ’à la sortie de l ’état
• on peut faire référence à un traitement détaillé dans
la suite de l ’analyse
Ex : En activité Système

Do / effectuer
mission
ESTIC INFO-01
2015-2016 Les traitements : exemple

Classe « Commande »

En préparation
Entry / choisir un fournisseur
Entry / déterminer quantité à commander
Entry / calculer montant expédition En attente
On event nouveau tarif / calculer montant
On event nouveau besoin / Mettre à jour
la commande
Exit / enregistrer la date d ’expiration
Exit / Envoyer la commande
Do : publier détail commande
Commande
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Hiérarchie des états
• Difficulté de construction de diagramme pour des
traitements complexes
• décomposition d ’un super-état en plusieurs sous-états
Ex : Etat « En activité » d ’un employé décomposé en sous-états « en
fonction » et « en congés »
En activité

En fonction En congés

• chaque sous-état « hérite » de la description du super-état


• sémantique des Statecharts de Harel
• mécanisme de généralisation / spécialisation comparé à celui des classes
• introduction d ’un état noté « H » qui désigne le dernier état visité
ESTIC INFO-01
2015-2016
Hiérarchie d ’état : exemple

En activité

Lustrage

reprise
H
délai (2 mn)
En attente
Lavage

arrêt d ’urgence délai (4 mn)

délai (2 mn)

délai (2 mn)
séchage
arrêt d ’urgence
ESTIC
2015-2016
2018-2019 Agrégation d ’état INFO-01
ASR301

L ’agrégation d’état est la composition d’états à partir de plusieurs autres états


Etat courant
Situation Etat Civil
décédé
naissance Etat de veille
mort
célibataire mort mort endormi
mort

divorcé
endormissement réveil
mariage
divorce veuf
remariage
éveillé
remariage
marié
décès conjoint

Une agrégation d’états traduit généralement un amalgame de classes...


Individu biologique

Individu de l'état civil


ESTIC INFO-01
ASR301
2015-2016
2018-2019
Communications
• Communication entre objets ou sous-systèmes : envoi
d ’événements entre les automates correspondants
• concept très général : appel de méthode, interruption,
événement dans une application temps réel, ...
• notation d ’une action : ^cible.Événement(Arguments)
• syntaxe complète d ’une transition :
Événement(arguments) [garde] / action^cible.événement(arguments)

Téléviseur Télécommande
basculé Bouton Enfoncé ^Téléviseur.basculé

Attente Arrêt Attente


basculé
ESTIC
2015-2016
2018-2019 Statecharts INFO-01
ASR301

• Utilisés dans la méthode Statemate en


liaison avec un modèle fonctionnel
• repris dans les méthodes d ’analyse par
objets telles qu ’OMT et dans la notation
unifiée UML pour représenter la dynamique
d’un système ou la dynamique interne des
objets
ESTIC INFO-01
2015-2016

Les réseaux de Pétri


ESTIC INFO-01
ASR301
2015-2016
2018-2019 Réseaux de Pétri
• Modélisation formelle exprimant la synchronisation
d ’activités d ’automates parallèles
• base conceptuelle ayant inspiré les modélisations
temporelle de plusieurs méthodes (RDD, Merise, …)

P1 P2
Un réseau
Un réseau est
estconstitué
constitué ::
–– de
deplaces
places
1 2
–– de
detransitions
transitions
transition t1
–– dd’arcs
’arcsvalués
valués(valeur
(valeur11par
pardéfaut)
défaut)
•• arcs
arcsdd’incidence
’incidenceavant
avant
4
•• arcs
arcsdd’incidence
’incidenceaprès
après
valuations
–– dd ’un
’un marquage
marquage :: nombre
nombre de
de P3
jetonscontenus
jetons contenusdans
dansles
lesplaces
places
ESTIC
2015-2016
2018-2019 Évolution du marquage INFO-01
ASR301

• La dynamique du réseau s ’exprime par l ’évolution du


marquage
• une transition est franchissable si le nombre de marques
dans les places amonts est supérieur ou égal aux valuations
des arcs d ’incidence avant correspondant
• ajoute au marquage des places aval les valuations
correspondantes des arcs d ’incidence après
• le fait qu ’une transition soit franchissable n ’implique pas
qu ’elle soit franchie

P2 P1 P2
P1
franchissement de t1
1 2 1 2
t1 retrait d ’une marque à P1 t1
4 retrait de 2 marques à P2 4
ajout de 4 marques à P3 P3
P3
ESTIC
2015-2016
2018-2019 Possibilités d ’expression INFO-01
ASR301

des réseaux de Pétri

condition ET

OU
sélection
ET
parallélisme
boucle
séquence

fin ET

fin OU
rendez-vous
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Possibilités d ’expression
des réseaux de Pétri (2)

Processus 1 Processus 2

exclusion mutuelle

synchronisation
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Possibilités d ’expression des
réseaux de Pétri (3)

Processus Processus
producteur consommateur
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Exemples d ’interprétation des
places et des transitions

Place amont Transition Place aval

activité amont condition de fin activité aval

état amont événement et état aval


action atomique
associée
préconditions activité postconditions
ressource activité ressources libérées
s
nécessaire
s
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modèles conceptuels de
traitement de Merise

Association :
– des synchronisations aux transitions
– des fonctions (opérations) aux places
– des événements (internes ou externes) aux marques
– des propositions logiques aux conditions de marquage
ESTIC
2015-2016
2018-2019 Réseaux de Pétri. Synthèse INFO-01
ASR301

• une représentation matricielle des réseaux de Pétri


permet (sous certains hypothèses) des validations
formelles (atteignabilité d ’un marquage ou d ’une
transition, garantie d ’interblocage, bornage du
nombre de marques dans une place, …)
• approches dérivées dans les diagrammes
représentatifs de modèles comportementaux de
différentes méthodes
• peu utilisés en tant que tels en analyse de systèmes
(complexité des diagrammes dans les cas réels)
ESTIC INFO-01
ASR301
2015-2016
2018-2019

L’intégration des points de vue : la


modélisation comportementale

SA-RT
EFFBD et Activités
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modèle comportemental
Comment évolue le système
Dynamique commande,
évolution séquencement,
événements, transitions
entre états et modes de
fonctionnement

Comportemental
Comment se comporte
le système

E-A
Sémantique Fonctions les transformations
structure les informations
Le
Le monde
monde dudu problème,
problème, Ce que fait le système
ce que
ce que traite
traite le
le problème
problème
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Le besoin

• Besoin d’intégration entre les aspects


fonctionnel, sémantique et dynamique
• Certaines approches proposent des liens
fonctions – information, et fonction -
contrôle
• Besoin de modéliser de manière intégrée
fonctions et dynamique du système
ESTIC
2015-2016
2018-2019 Approche des modèles INFO-01
ASR301

comportementaux
SA-RT EFFBD,
diagrammes
décomposition d’activité
fonctionnelle, flux de
flux de données
données
modèle fonctionnel

association décomposition en
comportements

flux de contrôle
Séquences,
parallélisme des
activités
modèle dynamique
Approches systèmes temps réels
L ’approche SA-RT
Extension de SA aux systèmes temps réel
Version de Hatley et Pirbhai
ESTIC INFO-01
ASR301
2015-2016
2018-2019
L ’analyse structurée (rappel)

source flux 1 flux 3 puits

processus P
flux 2 flux 4
source puits

Diagramme de contexte
stockage de données
flux 1
Processus processus flux
flux flux 3
P1 processus
P3 flux 4
Terminateur flux 2 processus
Stockage de P2
données
Flux de
Diagramme de flux de données
données (DFD) du processus P
ESTIC INFO-01
ASR301
2015-2016
2018-2019
L ’approche SA-RT (2)

But : intégrer l’aspect fonctionnel (DFD) et


la dynamique d’activation des fonctions
(contrôle)

données en entrée Modèle fonctionnel données en sortie

Contrôles Activations,
internes synchronisations

contrôles en entrée Modèle de contrôle contrôles en sortie


ESTIC INFO-01
ASR301
2015-2016
2018-2019 L ’approche SA-RT
Idée : compléter la décomposition fonctionnelle de
l ’analyse structurée (SA) par une modélisation de
la dynamique
état
flux de
données processus flux de événement
données action
état
événement
action
C-spec état
événement événement
flux de action
flux de contrôle
données processus
événement flux de
données
flux de
contrôle
C.spec
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Diagramme SA-RT
• Processus décomposés en sous-diagrammes
• Diagrammes :
– n sous-processus
– 0 ou 1 spécification de contrôle (C-Spec)
– Cohérence diagramme - sous-diagramme
• Processus élémentaire (fonction) pseudo-code
• C-Spec formules logiques ou automate d’états

A
C
P
B
ESTIC INFO-01
2015-2016
Flots et activateurs

Déclenchement implicite de P
Flot de données P par le flux de donnée entrant

Le flot de contrôle entrant doit


Flot de contrôle P se retrouver dans le sous-
diagramme associé à P

Data condition Le flot de contrôle est généré


P par le code de P

Le processus élémentaire P est


Activateur P déclenché/modulé par un
activateur
Un activateur peut prendre 5
valeurs : Enable, Disable,
Trigger, Suspend, Resume
ESTIC INFO-01
2015-2016
SA-RT : diagramme de
contexte du GAB
ESTIC INFO-01
ASR301
2015-2016
2018-2019 SA-RT : Exemple du GAB
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Spécification du contrôle
activateurs P2 P3 P5
vers valide obtenir fournir
r code montant espèces
action
process
us
demander code 1
demander montant
demander montant 1
fournir espèces

fournir espèces
1
entrée événement sortie événement temps de
réponse
code
banque insérer carte carte carte illisible < 2 sec
affiché
numér
o
demande
néan montant < 2 sec
t affiché
montan validation carte retirer carte < 15 sec
montant affiché
t
ESTIC
2015-2016
2018-2019 SART : extension aux INFO-01
ASR301

entrées sorties
ESTIC INFO-01
2015-2016
SART : architecture
logique
ESTIC INFO-01
ASR301
2015-2016
2018-2019
SART : architecture
physique
ESTIC INFO-01
ASR301
2015-2016
2018-2019
SART

• Une des méthodes les plus élaborées pour


l ’analyse des systèmes temps réels
• Intégration de la modélisation fonctionnelle
et la modélisation dynamique
• Une des premières méthodes permettant un
passage logique de l ’architecture
fonctionnelle à l ’architecture technique
• Concepts évolués repris par différentes
méthodes (RDD, Statemate, …)
ESTIC INFO-01
ASR301
2015-2016
2018-2019

Les EFFBD

Extended Functional Flow Block


Diagrams
(Méthodes CORE et RDD)
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Les EFFBD
• Modélisation directe de comportements
• Représentation de la synchronisation temporelle
entre fonctions avec expression de la séquentialité et
du parallélisme (flux de contrôle avec AND et OR)
• flux de données entre fonctions
T1 T2
Action 1 Action 2

T4
AND donnée AND
Action 4
T3
Action 3
ESTIC INFO-01
2015-2016
Exemple : la méthode CORE

Représentation du contexte
ESTIC INFO-01
2015-2016
Représentation du contexte par EFFBD
ESTIC INFO-01
2015-2016
CORE : interactions avec l ’extérieur
ESTIC INFO-01
2015-2016
CORE : décomposition fonctionnelle
ESTIC INFO-01
2015-2016
RDD
• Décomposition comportementale directe
• inspiration directe des réseaux de Pétri
• la décomposition peut être continuée jusqu ’à
obtention de fonctions sans comportement temporel
à états

+ : alternative
& : concurrence
ESTIC INFO-01
2015-2016
Diagramme comportementale
du GAB
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modélisations comportementales : synthèse

• RDD bien adaptée aux besoins de la démarche


d ’ingénierie système globale (et aux scénarios
généraux des systèmes temps réel)
• SART plus adéquat pour raffiner les spécifications
de détail de sous-systèmes temps réel
• L ’intégration entre modèle comportementale et
modèle sémantique consiste à vérifier que les
données transformées par les fonctions
(décomposition fonctionnelle) et que la sémantique
des états (analyse dynamique) sont bien définies
dans le modèle structurel
ESTIC INFO-01
2015-2016

Les diagrammes d ’Activités UML


ESTIC INFO-01
ASR301
2015-2016
2018-2019
Objectifs des diagrammes d ’Activités

• Modélisation d ’un ensemble d ’activités synchronisées


• Modélisation :
– du comportement global du système ou d ’un sous-
système dans son contexte
– d’un cas d ’utilisation
– d ’un traitement (méthode d ’objet)
• Principales notions :
– Action et activité
– Transitions
– nœuds de décision
– flux d ’objets
– couloirs d ’activités
Actions et activités
• Action
– opération élémentaire,
Action
– ininteruptible
• Activité
Activité
– décomposée en actions
– peut être interrompue Action1
Action2
– représentée par un autre
diagramme E1
do: activité
• Attente
– pas d ’activité, attente d
Activité  Activité
terminée

’événements E2
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Transitions

Action Action

• relient les actions / activités (flot de contrôle)


• déclenchées par des événements :
– fin de l ’activité précédente (transition automatique)
– objet dans un certain état
– satisfaction d ’une condition
• une transition peut être assortie d ’une condition de
garde (bloque la transaction tant qu ’elle n ’est pas vérifiée)
Préparation [fin de journée]
de la Envoi de la
commande commande
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Nœuds de décision

• une transition entrante et plusieurs


transitions sortantes Contrôler le
produit
• expression logique (garde) sur reçu

chaque transition sortante


• les gardes doivent être exclusives
(flot non indéterminé) et couvrir
toutes les possibilités (flot non gelé) [produit bon] [else]

• itérations réalisées comme dans un


organigramme ou avec l ’opérateur Stocker le Renvoyer le
‘*’ produit produit
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Concurrence et synchronisation
Barre de synchronisation : indique le parallélisme
– séparation de deux flots de contrôle (fork)
– rendez-vous (join)

Demande de crédit

Recherche catalogue
Evaluation risque client

Sélection produit

Affichage réponse
ESTIC INFO-01
2015-2016
Différents cas de transitions

Commencer Mesurer
Pression
[pas assez [trop gonflé]
gonflé]

Continuer Gonfler Dégonfler

Établir Passer Servir


communication à table repas

Emettre Recevoir Manger


ESTIC
2015-2016 Exemple (1) INFO-01

Programmer
Vol
Réserver

Affréter Nommer Prendre


avion équipage réservation
[réservations
insuffisantes]
[réservations
terminées]
Annuler
Vol

Débuter
embarquement
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Objets
• Il est possible de faire apparaître les objets dans un
diagramme d ’activité
• on peut représenter la ligne de vie des objets (comme dans
un diagramme de séquence)
• on peut indiquer les créations, destructions, changement
d ’états ou de valeurs d ’attributs
ESTIC INFO-01
2015-2016
Couloirs d ’activités

Introduction des acteurs responsables de


chaque activité
ESTIC INFO-01
2015-2016
Flux d’objets (Object Flows)

CompagnieAerienne Passager Pilote


Programmer Vol
Vol
[programmé]

Réserver Préparer Vol


Enregistrer
Passager

Billet

Affréter avion Avion


[vide]

Embarquer
Vérifier Avion

Avion
[prêt à décoller]

Piloter
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Synthèse des concepts
ESTIC INFO-01
2015-2016

Modélisation par Objets

Analyse par Objets


La notation UML
ESTIC INFO-01
ASR301
2015-2016
2018-2019 Les trois modèles de base
Comment évolue le système D
Dynamique
évolution
Analyse
dynamique S F
modèle états
transitions

Modèles de Comportemental
comportementComment se comporte le
Analyse par système
objets

Réseaux Analyse
sémantiques structurée
modèle entité- modèle de flux
association de données
Sémantique
structure Fonctions
Le monde du problème, Ce que fait le système
ce que traite le problème
ESTIC INFO-01
2015-2016
Modéliser en fonctions ou en objets

Rendun
Rend unservice
servicede
detransformation
transformation
deflux.
de flux. Rendun
Rend unservice
serviceidentifié
identifiépar
parune
une
séparationdu
duflux
fluxtransformé
transforméetetde
de requête
requête
séparation
ll’événement
’événementdéclencheur
déclencheur

E La fonction S L ’objet

Lesystème
Le systèmeest
estdécomposé
décomposéen en Lesystème
Le systèmeest
estdécomposé
décomposéen
enobjets
objets
fonctionstransformatrices
fonctions transformatricesde
deflux
flux coopérants
coopérants
ESTIC INFO-01
2015-2016
L ’objet informatique

identification
associations Concepts
Concepts
Classe//instance
Classe instance
Attributs
encapsulation
encapsulation
héritage
héritage
S1
agrégation
agrégation
Services
S2 référencesentre
références entreobjets
objets
(méthodes)
identification
interfaces
des services Attributs

Services
(méthodes
)
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modélisation par objets
• Dans les approches de modélisations
comportementales, il reste une dichotomie entre
analyse fonctionnelle / dynamique et sémantique
• modélisation en objets : décomposition directe du
domaine du problème en objets:
– qui rendent des services à l ’environnement et aux autres objets (aspect fonctionnel)
– qui contiennent de la donnée (aspect sémantique)
– qui peuvent avoir leur propre état et leur propre cycle de vie (aspect dynamique)

identification sémantique
Attributs

dynamique
fonctionnel Services
(méthodes)
interne
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modélisation par objets (2)
• la décomposition d ’un domaine en objets est une
décomposition naturelle incluant les aspects
fonctionnels et dynamique
• la décomposition comportementale à l ’intérieur
des objets peut être modélisée par les techniques
existantes (Statecharts, …)
Objet 2
sémantique
Attributs dynamique
Services interne
Objet 1
(méthodes)
Objet 2 Attributs Objet 3
Attributs Attributs
Services
Services Services
(méthodes) (méthodes)
(méthodes)
Fonctionnel + dynamique pas de vision du
= comportemental comportement global
ESTIC INFO-01
ASR301
2015-2016
2018-2019
Modéliser en objet : le GAB

Vous aimerez peut-être aussi