Title: Chap
1Chapître 4
- SDL structure dun système et son comportement
2Contenu
- (1) SDL langage normalisé par lUIT
- (2) Les concepts principaux
- (3) Les composants Block et Processus
- (4) Comportement dun Processus
- Sommaire des symboles SDL
3(1) SDL langage normalisé par lUIT
- Normalisé par lUnion Internationale des
Télécommunications (Genève), première version
(assez rudimentaire) en 1976, depuis de nouvelles
versions tous les 4 ans - Actuellement, intégration avec UML SDL étant un
profil de la version 2 de UML (à sortir) - But du langage Permettre la description précise
des propriétés fonctionnelles - dun système à construire
- dun système tel quil est construit
4Portée du langage
- Peut être utilisé dans différentes phases du
processus de développement - Peut être utilisé à différents niveaux
dabstraction, en commençant par une vue orientée
usager, et en allant vers des descriptions plus
concrètes dépendant des décisions de conception - Nest pas suggéré comme langage dimplantation,
mais permet la génération automatique de code
dimplantation - SDL, cest un langage, et non pas une méthodologie
5(2) Les concepts principaux
- Comportement
- Un système décrit en SDL modélise le comportement
par des processus concurrents, appelés Processus - Les dépendences comportementales entre les
différentes composantes dun système SDL sont
modélisées par léchange de messages, appelés
Signaux - Le comportement dun Processus est modélisé comme
un automate détats finis avec entrées et sorties
(automate de type Mealy, aussi appellé Finite
State Machine (FSM) en anglais, voir livre de
Haugen, section 2.5.5) avec une file dentrée de
messages et étendu avec des variables détats et
de messages avec paramètres
6(2) Les concepts principaux (suite)
- Structure
- La structure dun système est décrite comme une
hiérarchie dagrégation de composantes - SDL distingue entre deux types de composantes
- Un Block est une composante qui est décrite comme
une composition de un ou plusieurs
sous-composantes des liens pour léchange de
message (entre sous-composantes et avec
lenvironnement de la composante) sont indiqués.
Le système au complet est décrit comme un Block. - Un Processus est une composante pour laquelle le
comportement dynamique est défini explicitement
(en forme dautomate). Les liens associés à un
Processus sont appelés Signalroute, les autres
(entre Blocks) sont appelés Channel. - En SDL, on peut définir un Block ou Processus
individuel (instance unique) ou des types de
Block ou Processus, cest-à-dire des classes .
Des instances des Processus définis comme types
peuvent être créées dynamiquement lors de
lexécution dun système SDL les instances
uniques sont créées lors de linitialisation du
système SDL.
7Modèle dun Processus SDL
File dentrée de messages (Signal) et automate
étendu (EFSM)
8(3) Les composantes Block et Processus
- Définition des signaux
- Définitions du système et de ses composantes
(Blocks) - Définition des Processus définissant le
comportement dun Block - Note un bloc contient ou dautres blocs ou des
processus, mais jamais les deux.
9Définition de signaux
- Il est nécessaire de déclarer chaque signal pour
quil soit visible pour les blocs et processus
qui les utilisent. - La chose montrée dans la figure 4.8 ci-haut est
appelée un symbole texte en SDL. Un diagramme SDL
de Block ou Processus peut contenir plusieurs
symboles de texte. - Des commentaires peuvent être donnés en /
/dans un symbole texte ou en forme dun symbole
de commentaire graphique - Une SIGNALLIST est une liste de signaux.
10Exemple de définition de système
- Le système est défini en forme de Block
11Explications
Ceci représente une instance de Block unique
nommée CentralUnit et en même temps une référence
à sa définition donnée dans un document
séparé Ceci représente un canal (Channel)
nommé C sur lequel les messages de type Code vont
vers la droite, et les messages contenus dans la
liste de signaux validity vont vers la gauche
12Explications (ii)
- Ceci représente un ensemble de 100 instances de
blocs de type LocalStation. e et C sont des
portes (Gate en anglais) qui représentent une
terminaison de canal. - Ceci représente une référence à la définition du
type de bloc LocalStation . Cette référence
définit la portée de la définition de type
13Esquisse dune LocalStation
14Définition du type de bloc LocalStation
15Correspondance entre description informelle et
description en SDL
16Esquisse dun Panel
17Définition dune instance de bloc Panel
18Explications
Ceci représente une instance de processus, nommé
PanelControl Ceci représente une SignalRoute
(lien) entre processus, nommé K sur laquelle des
signaux nommés Digit passent vers la gauche.
19Définition du bloc LSControl(il contient
seulement un processus, aussi nommé LSControl)
20Vue densemble de la structure du système de
contrôle daccès
21(4) Comportement dun Processus
- The SDL way of describing an extended finite
state machine (E-FSM) - Un processus en SDL est un objet acteur exécutant
des actions (faisant partie de sa définition) qui
dépendent des messages (signaux) qui se trouvent
dans sa file dentrée, et des valeurs des
variables locales.
22Exemple dun FSMNotation La transition de S1 à
S2 est exécutée quand le message A est en tête de
la file dentrée, et une sortie C sera créée par
la transition (et lentrée A est consommée)
23Définition dun processus SDL équivalent au FSM
ci-haut
24Forme dun diagramme de processus SDL
- En général, chaque transition a la forme
suivante - Dans un état, normalement plusieurs transitions
sont définies pour différents messages dentrée.
Le processus attend dans létat actuel jusquà ce
quune entrée se présente dans la file dentrée.
Le traitement des messages dans la file est FIFO,
sauf pour les signaux sauvés (SAVE)
25Définition du processus LSControl (partie 1)
26Définition du processus LSControl (partie 2)
27Notes
- Lannotation TO et FROM dans les diagrammes
ci-hauts sont des commentaires. Les définitions
des canaux et routes de signaux définissent déjà
la transmission des messages. Voir ci-dessous
pour la définition formelle de la transmission
des messages en général. - Le caractère dans un symbole dentrée
représente tous les signaux qui ne sont pas
explicitement mentionnés pour létat en question. - Le caractère dans un symbole détat suivant
veut dire que létat suivant est létat doù la
transition est partie.
28Différentes options pour définir la destination
des sorties
29Un canal peut être détaillé
30Sommaire des symboles SDL
31Sommaire des symboles SDL (II)