De nombreuses applications temps réel nécessitent
d’utiliser des quantités importantes de données temps réel. Il s’agit par
exemple des applications utilisées pour le contrôle des usines chimiques, des
centrales nucléaires, des applications de commerce électronique, etc. Ces
applications doivent à la fois fournir des résultats respectant des échéances
temps réel mais aussi manipuler des données temps réel (données sensorielles de
base) ou calculées à partir d’autres données (données dérivées). L’exploitation
des données temps réel dans des applications rend adéquate l’utilisation de
SGBD temps réel. Ce type d’application doit très souvent faire face à des
charges d’utilisation imprévisibles qui causent la surcharge du système. Durant
ces périodes, les transactions temps réel chargées d’exploiter les données de
l’application peuvent manquer leur échéance ou être amenées à utiliser des
données non fraîches (obsolètes). C’est pourquoi plusieurs travaux utilisant
une boucle de rétroaction pour l’adaptation des paramètres de qualité de
service ont été menés. Dans ces travaux, l’objectif est de faire varier dynamiquement
les paramètres de la qualité de service afin d’arriver à une stabilisation du
comportement du SGBD temps réel (SGBDTR) et d’éviter ainsi la surcharge du
système ou sa sous-utilisation (gaspillage des ressources).
Toutes les approches offrant une qualité de Service
s'articulent autour du contrôle par rétroaction. Toutefois, elles différent
largement les unes des autres et il est impossible de les manipuler autrement
qu'en les adoptant en entier. Souvent, selon les spécificités de l'application
exécutée, il peut s'avérer utile voire nécessaire d'appliquer un cas
particulier de réaction en fonction de l'évolution de la surcharge du système.
L'objectif de nos travaux est d'unifier ces approches autour d'un framework pour
la gestion de la QoS.
Le cadre de référence (framework) offert permet
d’aider les concepteurs des SGBD temps réel à intégrer la gestion de la qualité
de service, à spécifier et concevoir les composantes paramètres, modèles et
politiques utilisés, selon les besoins et les contraintes de l’application
temps réel cible et ensuite à générer un modèle de la politique de gestion de
la qualité le plus adéquat.
Le framework offre une méthodologie MSCA (Méthodologie
Stratégique de Construction d’Approches de gestion de QDS) multi-démarches
centrée sur les modèles pour guider les utilisateurs du framework dans leurs
pratiques, à savoir : l’expert de SGBDTR qui alimente la base de fragments par
différentes stratégies et le concepteur de solutions de GQdS qui construit de
nouvelles approches par réutilisation de fragments existants dans la base selon
plusieurs stratégies. A chacun est associé un processus conforme à un
méta-modèle de processus stratégique.
Nos contributions sont les suivantes :
- Pour contribuer à la modélisation des solutions de GQdS dans les
SGBSTR, nous avons proposé un méta-modèle des solutions de GQdS nommé
MM-SGQdS. Il est constitué de trois méta-modèles MO-MM, PA-MM et PO-MM
modélisant les fragments d’approches représentant les composantes d’une
solution de GQdS proposées: Modèles, Paramètres et Politiques
correspondant aux modèles, paramètres et algorithmes utilisés. Ce
méta-modèle permet de générer des modèles uniformes de solutions qu’on
appelle "approches de QdS". Nous avons accordé un intérêt
particulier aux algorithmes de GQdS car ils permettent de personnaliser la
gestion de la surcharge. A cet effet, nous avons proposé un méta-modèle
nommé CoSAM (Condition Scenario Action Metamodel) de ces algorithmes. Il
permet de générer les modèles des algorithmes qu’on appelle
"politiques de QdS". Pour la décomposition, l’extension et la
combinaison des politiques de GQdS, nous proposons un méta-modèle des
fragments politiques.
- Pour l’outillage du framework, nous avons développé un environnement
dédié à la modélisation et la réutilisation des approches et politiques de
GQdS dans les SGBDTR. Cet environnement s’appuie sur le framework EMF
[Steingerg et al., 2009] de méta-modélisation sous Eclipse et sur le
langage orienté objet KerMeta [Drey et al., 2009] [Jézéquel et al., 2012]
de méta-modélisation exécutable et de transformation de modèles. Il permet
la modélisation d’approches et de politiques de GQdS ainsi que de leurs
fragments à l’aide d’éditeurs de modèles graphiques dédiés. Il fournit un
affichage des modèles générés en mode textuel et en mode graphique. Il
offre aussi les moyens de les générer de façon automatisée par des
transformations de décomposition de modèles. La réutilisation des modèles
ou de certains de leurs fragments ou éléments est fournie à travers des
transformations de composition ou d’extension.
Architecture
logique du Framework
L’architecture logique du framework est illustrée dans
la Figure suivante. Initialement, les solutions de GQdS existantes sont
modélisées par l’expert conformément à leur méta-modèle MM-SGQdS. Les modèles
ainsi obtenus constituent les approches de GQdS. Pour générer les fragments
d’approches réutilisables, nous proposons une transformation de modèles notée
"Décomposition" qui permet de décomposer une approche en trois
fragments de types respectifs : "Frag-Modèles", "Frag-Paramètres"
et "Frag-Politiques". Les fragments générés sont stockés dans une
base de modèles "Base de fragments" pour être réutilisées dans de
nouvelles situations. Pour des besoins de réutilisation des éléments de ces
fragments, ces derniers sont à leur tour décomposés en éléments, chacun suivant
son modèle.
Pour la réutilisation des fragments d’approches (ou
des fragments de politiques), nous proposons les transformations de modèles
suivantes : la transformation "Composition" permet d’assembler les
fragments d’approches (politiques) différentes pour construire une nouvelle
approche (politique) de GQdS, la transformation "Extension" permet
d’étendre une approche de GQdS en rajoutant à ces fragments des éléments de
fragments d’autres approches ou de nouveaux éléments modélisés par l’expert.
L’extension d’une politique consiste à lui rajouter des scénarios d’autres
politiques ou de nouveaux scénarios générés par l’expert.
Les nouvelles approches de GQdS construites par le
concepteur sont à leur tour décomposées en fragments par la transformation
"Décomposition" par l’expert. Les fragments et les éléments de
fragments générés suite à la décomposition sont ajoutés dans la base de
fragments pour être réutilisés.
Architecture
de modélisation à 4-niveaux
Nous désignons par Approche de GQdS, le modèle d’une
solution de GQdS. L’Approche est composée de trois types de fragments, à savoir
: le fragment Frag-Modèles, le fragment Frag-Paramètres et le fragment
Frag-Politiques représentant respectivement les trois composantes d’une
solution de GQdS: Modèles, Paramètres et Politiques. Les choix de modélisation
adoptés étant inspirés de l’Ingénierie Dirigée par les Modèles-IDM qui stipule
que tout modèle doit être conforme à un méta-modèle, par conséquent, nous
définissons les modèles des fragments d’approche de GQdS
("Frag-Modèles", "Frag-Paramètres" et
"Frag-Politiques") auxquels ils doivent être conformes. En se basant
sur ce principe, l’IDM a l’avantage d’offrir des modèles productifs c.à.d. pouvant
être manipulés et transformés automatiquement par la machine par des techniques
de transformations de modèles. Nous pensons à utiliser ces techniques qui sont
au cœur de l’IDM, pour la réutilisation d’approches de GQdS.
Les niveaux de l’architecture de modélisation
illustrée dans la figure suivante que nous proposons pour modéliser les
solutions de GQdS, sont définis comme suit :
- Le niveau M0 (niveau monde réel) : contient les solutions de GQdS et
leurs composantes Modèles, Paramètres et Politiques.
- Le niveau M1 (niveau modèles) : contient les fragments d’approches de
GQdS (Frag-Modèles, Frag-Paramètres et Frag-Politiques) qui doivent être
conformes à leurs méta-modèles dans le niveau M2.
- Le niveau M2 (niveau Méta-modèles) : contient le modèle d’une approche
de GQdS qui constitue le méta-modèle d’une solution de GQdS que nous
appelons MM-SGQdS (Méta-Modèle de Solutions de GQdS). Ce méta-modèle sert
à valider la conformité d’une approche de GQdS et aussi à valider les
transformations de modèles pour la réutilisation.
MM-SGQdS inclut les modèles des différents fragments
d’approche constituant les méta-modèles des différentes composantes d’une
solution de GQdS. Ainsi, MM-SGQdS est composé des méta-modèles illustrés dans
la figure et qui sont définis comme suit :
- Le méta-modèle MO-MM (MOdels MetaModel) : il s’agit du modèle du
fragment "Frag-Modèles" qui représente la composante
"Modèles".
- Le méta-modèle PA-MM (PArameters MetaModel) : c’est le modèle du
fragment "Frag-Paramètres" qui représente la composante
"Paramètres".
- Le méta-modèle PO-MM (POlicies MetaModel) : il constitue le modèle du
fragment "Frag-Politiques" qui représente la composante
"Politiques".
Pour valider la conformité des politiques de GQdS et
leurs transformations lors de la réutilisation, nous désignons par CoSAM
(Condition Scenario Action Metamodel) leur méta-modèle, extrait du méta-modèle
MM-SGQdS (c’est entre autre le méta-modèle d’algorithmes de GQdS). Il est
directement lié à la racine du méta-modèle PO-MM. Il est lui-même décomposable
en fragments de politiques réutilisables. Le méta-modèle MP-FraM (Management
Policy Fragment Metamodel) désigne un extrait de CoSAM pour modéliser un
fragment de politique (représentant un scénario de GQdS).
- Le niveau M3 (niveau méta-méta-modèle) : contient le langage de
description des méta-modèles du niveau M2 ou méta-méta-modèle. Nous avons
choisi d’utiliser Ecore au niveau M3 pour bénéficier des outils de
manipulation de modèles proposés par le framework de méta-modélisation EMF
(Eclipse Modeling Framework) dans lequel Ecore est intégré.
Publications
Nos travaux sur le framework pour la conception
d’approches de gestion de la qualité de service ont donné lieu aux publications
suivantes :
- M’Barek, S., Baccouche, L., and Ben Ghezala, H. (2016). Model driven Engineering for QoS Management Solutions Modeling : the case of real-time Database management system. Accepté au Journal of Database Management, IGI-Global.
- M’Barek, S., Baccouche, L., and Ben Ghezala, H. (2015a). Model-driven engineering of software solutions for QoS management in real-time DBMS. In Proceedings of The Fifth International Conference on Software Engineering Advances, ICSEA ’2015, pages 192–199, November 15–20, Barcelona, Spain.
- M’Barek, S., Baccouche, L., and Ben Ghezala, H. (2015b). Un framework dirigé par les modèles pour la gestion de la qualité de service dans les SGBD temps réel. Technique et Science Informatiques, 99(1) :7–37.
- M’Barek, S., Baccouche, L., and Ben Ghezala, H. (2012). MDE-based QoS management framework for RTDB management systems development. In Proceedings of the Third International Conference on Systems, ICONS 2012, Saint Gilles, Reunion, Mars 2012, pages 100–104.
- M’Barek, S., Baccouche, L., and Ben Ghezala, H. (2008a). COSAAM for modeling QoS management policies in real-time databases. In Proceedings of the 2th Junior Researcher Workshop on Real-Time Computing JRWRTC In conjonction with the 16th International Conference on Real-Time and Network Systems, RTNS ’08, pages 37–40, Rennes, France, 16–17 October.
- M’Barek, S., Baccouche, L., and Ben Ghezala, H. (2008b). An evaluation of QoS management approaches in real-time databases. In The Third International Conference on Systems, ICONS 2008, April 13-18, 2008, Cancun, Mexico, pages 41–46.
- M’Barek, S., Baccouche, L., and Ben Ghezala, H. (2008c). Feedback control based model of QoS management approaches in real-time databases. In Proceedings of the IEEE International Conference on Research Challenges in Information Science, RCIS 2008, Marrakech, Morocco, June 3-6, 2008, pages 409–414.