Vous êtes sur la page 1sur 27

Framework

Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Framework Rainbow
Architecture-Based Self-Adaptation whith
reusable Infrastructure
Alban Mnager
18 octobre 2011
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Plan
Contexte
Framework Rainbow
Exemple
Implmentation
Test et Performances
Conclusion
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Quoi ?

Auto-adaptation dun logiciel un systme

volution du systme

Contraintes du systme
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Par qui ?

Defense Advanced Research Projects


Agency (DARPA)

Carnegie Mellon University


Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Pourquoi ?

Faire des conomies

Faciliter lauto-adaptation
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Problmes

Environnement volutif

Contraintes denvironnement et du client

Il faut donc auto-adapter le logiciel


Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Existant
Solution interne

Trop prs du code

Dicile mettre en place

Dicile modier

Trop coteux
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Autre Solution
Solution externe

Ncessit davoir un modle

Mise en place dun modle architectural

Perspective globale du systme

Soulve les proprits du systme

Soulve les contraintes du systme


Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Autre Solution
Problmes

Les systmes ayant des architectures


direntes devrons avoir un modle de
contrle et des stratgies de modications
adapts chaque modle.

Le but de diminuer les cots peut tre


remis en cause sil faut adapter tous les
mcanismes de transformation pour chaque
nouveau systme.
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Et Rainbow?
Tente de rsoudre ces problme car il possde :

une infrastructure rutilisable

des mcanismes de spcialisation pour cette


infrastructure
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Solution

Cest donc un composant exterieur de


faire ladaptation lenvironnement.

Utile quand on ne peut pas accder au code


source.
Figure: Composant externe
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Une Structure Rutilisable
Tous les composants du framework doivent tre
rutilisable. Il a donc t divis en deux :

Adaptation infrastructure

Architecture Layer

Translation Layer

System Layer

System-specic adaptation knowledge

Propre au systme
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Structure
Figure: La Structure de Rainbow
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
System-layer infrastructure

Probes mechanism Observe et mesure les


tats du systme.

Resource discovery mechanism Dcouverte


de nouvelles ressources.

Eector mechanism Eectue les


modications du systme actuel.
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Architecture-layer infrastructure

Gauges Des jauges ajoutes des informations


aux mesures prcdentes et met--jour les
proprits de larchitecture.

Model Manager fournie una accs au


modle darchitecture.

Constrainte evluator Vrie priodiquement


le modle et ladapte si des violations de
contraintes apparaissent.

Adaptation engine Determines le


droulement des actions et eectue les
adaptations ncessaires.
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Translation infrastructure
Permet de mapper des information entre les
deux couches System et Architecture
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
System-specic adaptation
knowledge
Adaptation de linfrastructure au systme.
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Architecture Style
Points communs entre direntes architectures
systmes. Un ensemble de 4 entits t mis en
place par la communaut du software
engineering pour observer les points communs :

Component and connector types ore un


vocabulaire dlments :

Components Database, Client, Server...

Connectors SQL, HTTP, RPC...

Constraints dtermine ce qui est permis de


faire pour les lments instancis.

viter les boucles.

Properties Attributs des Component and


connector types.

Analyses Analyse de performances.


Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Architecture Style
Ces 4 entits sont des attributs statiques.
Le framework Rainbow tend cette notion en
capturant des attributs dynamiques du systme :

Adaptation operators Dtermine un


ensemble dactions spciques que
linfrastructure de controle pourra raliser
sur les lments du systme ou modier sa
conguration.

Adaptation strategies Spcie des


adaptations qui pourront tres lances an
de sortir le systme dune condition
indsirable.

Adaptation strategies
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Client/Serveur
Figure: Client/Serveur
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Proprits

Types ClientT, ServerT, ServerGroupT, and


LinkT

Properties ClientT.responseTime,
ServerT.load, Server- GroupT.load, and
LinkT.bandwidth

Operators ServerGroupT.addServer() and


ClientT.move(ServerGroupT, toGroup)
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Pour chaque client
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Architecture-layer

Implment en Java.

Bas sur Acme


Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Translation Infrastructure

Implment en Java.

Le Translation Repository fourni une


interface Java RMI pour stocker et fournir
le mapping de translation.
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Environnement

5 routeurs

11 machines en communication

lignes de 10mbps

rseau surcharg

latence des clients de moins de 2s


Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Rsultats
Framework
Rainbow
Alban Mnager
Plan
Contexte
Framework
Rainbow
Exemple
Implmentation
Test et
Performances
Conclusion
Conclusion

Il est possible de raliser une architecture


auto-adaptive low-cost utilisant une
infrastructure rutilisable.

Tous les lments du systmes sont


accessibles et donc on peut les observer et
adapter.

Vous aimerez peut-être aussi