0% ont trouvé ce document utile (0 vote)
41 vues11 pages

AOSI 17 c5

Le document présente les Langages de Description d'Architectures (ADL) qui permettent de modéliser l'architecture conceptuelle des systèmes logiciels. Il décrit les fonctionnalités des ADL, les outils qui les supportent, ainsi que les différentes catégories de composants, notamment les composants logiciels, matériels et hybrides, avec un accent particulier sur l'AADL. L'AADL est dédié aux systèmes répartis embarqués temps réel et permet de décrire des éléments matériels et logiciels tout en facilitant la génération de systèmes exécutables.

Transféré par

tahraoui.wadoud
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPT, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
41 vues11 pages

AOSI 17 c5

Le document présente les Langages de Description d'Architectures (ADL) qui permettent de modéliser l'architecture conceptuelle des systèmes logiciels. Il décrit les fonctionnalités des ADL, les outils qui les supportent, ainsi que les différentes catégories de composants, notamment les composants logiciels, matériels et hybrides, avec un accent particulier sur l'AADL. L'AADL est dédié aux systèmes répartis embarqués temps réel et permet de décrire des éléments matériels et logiciels tout en facilitant la génération de systèmes exécutables.

Transféré par

tahraoui.wadoud
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPT, PDF, TXT ou lisez en ligne sur Scribd

1 ère Année Master ISI

Notes de Cours
Administration et Organisation des SI

Cours 5
Les Langages de Description d'Architectures
Présenté par
[Link] <[Link]@[Link]>

2016/2017
Définition et fonctionnalités

Un ADL est un langage qui permet la modélisation d'une architecture conceptuelle
d'un système logiciel.
Il fournit une syntaxe concrète et une structure générique (framework) pour
caractériser les architectures.

Parmi les fonctionnalités des ADL :


 Exprimer les choix architecturaux.
 Définir les contraintes architecturales
 Analyser à partir de plusieurs points de vue.
 Proposer un modèle d'exécution plus abstrait et plus générique qui permettrait une
plus grande indépendance vis-à-vis de la plateforme d'exécution.
 Intégrer les quantifications de la logique de premier ordre ainsi que les autres types
de quantification comme la décision (utile dans de nombreux cas).
 Créer des patrons d'architecture.
Les fonctions des outils support d'un ADL

 Gestion des erreurs


Les outils proposent une gestion des erreurs.

 Interaction de différentes vues


La plupart des outils proposent les deux vues basiques d'une architecture : textuelle et
graphique.

 Analyse de la description architecturale


Les outils proposent la vérification d'un certain nombre de propriétés et le contrôle du
respect des contraintes.

 Raffinage d'architecture
Les outils proposent la manipulation de différents niveaux de détails.

 Génération de code
Un grand nombre d'outil support d'un ADL permettent la génération de code C++, Java,
Ada, etc.
ADLs existants

Les ADLs peuvent être classés en deux grandes familles:

La première correspond aux langages qui privilégient la description des éléments de
l’architecture et leur assemblage structurel,

La seconde définit les langages qui se centrent sur la description de la configuration
d’une architecture et sur la dynamique du système.

Exemples d’ADLs:

UniCon, Aesop, Darwin, C2, Wright, Rapide, OLAN, ACME, AADL.


AADL (Architecture Analysis & Design Language)

Anciennement « Avionics Architecture Description Language »


Evolution de MetaH, qui était développé par Honeywell

Dédié aux systèmes répartis embarqués temps réel


Décrit des éléments matériels et logiciels
Conçu pour permettre la génération de systèmes exécutables

Plusieurs représentations
 Représentation textuelle pour contrôler tous les détails du système.
 Représentation en XML pour l’interopérabilité entre outils
 Représentation graphique (convenable pour avoir une vision globale du système)

• Version 1.0 publiée en 2004.


• Version 2 a été publiée fin 2009.
Les composants AADL
AADL permet de décrire des composants connectés entre eux pour former une
architecture.

6Un composant AADL représente une entité matérielle ou logicielle qui appartient au
système en cours de modélisation.
Un composant possède un type (component type), qui spécifie son interface, et une ou
plusieurs implantations (component implementation).

Le type d’un composant est constitué de trois parties : les éléments d’interface
(features), les flots (flows) et les propriétés (properties).
Une implantation, par contre, décrit la structure interne du composant en termes de
sous composants (subcomponents), connexions (connections) entre les éléments
d’interface de ces sous-composants, et les propriétés (properties).
Catégories de composants AADL

AADL définit plusieurs catégories de composants, réparties en trois grandes familles de


composants
7 :
1. Les composants logiciels décrivent les éléments applicatifs de l'architecture.
2. Les composants matériels définissent les éléments de la plate forme d'exécution.
3. Les composants hybrides (ou systèmes) permettent de structurer l'architecture de
l'application (hiérarchiser une description AADL).
Les composants AADL
Composants logiciels

Il existe cinq sortes de composants logiciels :

Le composant processus :
Il définit un espace mémoire qui sert à contenir les threads ainsi que les données partagées entre
eux. Un processus doit contenir au moins un thread.

Le composant thread :
Il modélise les files d'exécution qui constituent les éléments actifs des logiciels. Un thread doit être
contenu dans un processus.

Le composant thread group :


Il regroupe les threads afin de former des hiérarchies entre les processus légers (thread).

Le composant data :
Il représente les structures de données qui peuvent être stockées ou échangées entre les
composants.

Le composant subprogram :
Il modélise les procédures (code séquentiel exécutable), telles que les procédures des langages
impératifs.
Les composants AADL
Composants matériels

Les composants matériels représentent les ressources matérielles de calcul et


d'interface avec le système. Il existe quatre genres de composants matériels :

Le composant processor :


Les composants processor modélisent un ensemble constitué d'un microprocesseur.
Les processeurs peuvent exécuter des threads, avoir des mémoires et accéder à un bus.

Le composant memory :


Les composants mémoires représentent les dispositifs qui stockent les données et le code
exécutable (mémoire physique : disque dur, mémoire vive, ...).

Le composant device :


Les composants périphériques représentent des éléments dont la structure interne est ignorée,
seule l'interface d'un périphérique est visible de l'extérieur. Un périphérique est vu comme une boite
noire.

Le composant bus :


Les composants bus fournissent la communication entre les processeurs, les périphériques et les
mémoires.
Les composants AADL
Composants hybrides

10
Les systèmes, modélisés par le composant system, permettent de rassembler les
différents composants d'une manière logique pour structurer l'architecture de
l'application.
Les composants systèmes ne représentent aucun élément concret.

Composition de composants AADL


Merci pour votre attention
11

Vous aimerez peut-être aussi