Télécom Bretagne. En habilitation conjointe avec l Université de Rennes 1. Ecole Doctorale MATISSE
|
|
- Oliver Wood
- 6 years ago
- Views:
Transcription
1 N d ordre : 2010telb0166 Sous le sceau de l Université européenne de Bretagne Télécom Bretagne En habilitation conjointe avec l Université de Rennes 1 Ecole Doctorale MATISSE A Model-driven Feature-based Approach to Runtime Adaptation of Distributed Software Architectures Thèse de Doctorat Mention : Informatique Présentée par An Phung-Khac Département : Informatique Equipe : CAMA Directeur de thèse : Antoine Beugnard Soutenue le 15 novembre 2010 Jury : M. Jean-Marc Jézéquel, Professeur, Université Rennes 1 (Président) M. Gordon Blair, Professeur, Lancaster University, UK (Rapporteur) Mme. Laurence Duchien, Professeur, Université Lille 1 (Rapporteur) M. Salah Sadou, Maître de conférences, Université Bretagne Sud (Examinateur) M. Antoine Beugnard, Professeur, Télécom Bretagne (Directeur) M. Jean-Marie Gilliot, Maître de conférences, Télécom Bretagne (Co-encadrant) Mme. Maria-Térésa Segarra, Maître de conférences, Télécom Bretagne (Co-encadrant)
2
3 Acknowledgements First and foremost, I would like to sincerely thank my advisors, Antoine Beugnard, Jean-Marie Gilliot, and Maria-Teresa Sagarra, for guiding me at every step throughout my Ph.D., for everything I have learned about research because of them, and for their sense of humour. More than four years ago, I knew nothing about research. Antoine Beugnard picked me up at the old Brest airport at midnight under the typical rain in Brittany, brought me to Telecom Bretagne, introduced me into the research world where I have learned many things. I would like to thank Prof. Laurence Duchien and Prof. Gordon Blair for spending time to review my thesis. Their comments and suggestions helped me to significantly improve my thesis. I would also like to thank my other thesis committee members, Prof. Jean-Marc Jézéquel and Prof. Salah Sadou for examining my thesis. Many thanks to my friends, and particularly to Dang Xuan Ha and Janet Ormerod, for checking English of the manuscript and articles. Thanks to Chantal-Eveline Kaboré and Jean-Baptiste Lézoray for the collaboration and being coauthors. Thanks to Pham Nguyen Cuong, Ali Hassan, Pham Quyet Thang, and Trinh Anh Tuan for interesting discussions. Thanks to all my friends for sharing every moment here in Finistère - the End of the Earth. Thanks to everyone in Département Informatique, particularly to Armelle Lannuzel who helped me with paperwork. Finally, my deepest gratitude goes towards my parents, my wife, and everyone in my big family. They are the ones who support me unconditionally and in every moment, good or bad.
4
5 Abstract Runtime software adaptation implies the ability of software systems to change at runtime in order to adapt to operating environments. By a runtime adaptation, an adaptive software system moves from a consistent variant to another one. Developing such a system is difficult due to complex tasks such as building consistent variants and defining adaptation actions that need to be performed to change the running system variant. In the context of distributed software systems, distributed adaptation actions may need to be coordinated, the development thus becomes much more challenging. This thesis proposes an approach to facilitating the development of adaptive distributed applications, called the adaptive medium approach. We particularly address the following challenges: (1) building consistent variants of the application; (2) transferring data between the variants; (3) modeling the modularity, the commonality, and the variability of the variants; (4) supporting automatic adaptation planning; (5) coordinating distributed adaptation actions; and (6) automating the development. In our approach, adaptations are realized by reconfiguring the running application at the level of software components. Adaptation actions such as component additions and removals are performed using reflection technologies supported by underlying component platforms. These actions are planned and executed by an adaptation controller that is externalized from the functional part of the application. On the other hand, the approach relies on a high-level abstraction of the distributed application, which is refined through a process combining (1) model-driven engineering to allow the generation of architectural variants and architectural models of these variants, and (2) system family engineering to enable the management the variants variability. The architectural models and the variability one are then used by the externalized adaptation controller to automatically plan and execute adaptations. Keywords: Software Architecture, Dynamic Adaptation, Model-Driven Engineering, System Family Engineering
6
7 Résumé L adaptation dynamique de logiciels définit la capacité des applications de se modifier elles-mêmes en cours d exécution afin de s adapter au contexte. Lors d une adaptation, une application passe alors d une variante à une autre. Le développement d une telle application est difficile du fait de tâches complexes comme la construction des variantes cohérentes et la définition des changements nécessaires pour changer la variante d exécution de l application. Dans le contexte des applications distribuées, les actions distribuées d adaptation doivent de plus être coordonnées, le développement n en est que plus difficile. Cette thèse propose une approche qui facilite le développement des applications distribuées adaptables dynamiquement, appelée l approche médium adaptable. L étude du développement de telles applications nous a amené à nous concentrer sur les verrous suivants : (1) support de la construction des variantes cohérence de l application ; (2) transfert des données entre les variantes de l application lors de l adaptation ; (3) modélisation de la modularité, de la similitude, et de la variabilité des variantes ; (4) planification automatique des adaptations ; (5) coordination des adaptations distribuées ; et (6) automatisation du développement. Dans cette approche, les adaptations sont réalisées en reconfigurant l application au niveau de composants. Les actions d adaptation telles que les ajouts et les enlèvements des composants sont effectuées en utilisant les technologies de réflexion fournies par des plateformes de composants. Ces actions sont planifiées et exécutées par un contrôleur de l adaptation qui est externalisée de la partie fonctionnelle de l application. Par ailleurs, l approche repose sur une abstraction de haut niveau de l application distribuée, qui est raffinée au travers d un processus combinant (1) l ingénierie dirigée par les modèles pour permettre la génération des variantes architecturales et des modèles architecturaux de ces variantes, et (2) l ingénierie des lignes de produits pour permettre la gestion de la variabilité des variantes. Les modèles architecturaux et celui de variabilité sont ensuite utilisés par le contrôleur d adaptation pour planifier et exécuter automatiquement les adaptations. Mots-clés : architecture logicielle, adaptation dynamique, l ingénierie dirigée par les modèles, l ingénierie des lignes de produits
8 Contents Résumé en français 1 1 Introduction État de l art Notions de base Travaux connexes Approche médium adaptable Processus de développement des médiums adaptables Prototype Conclusion Introduction Problem Statement Challenges and Key Issues Six Challenges Two Key Issues Overview of the Solution Adaptive Medium Approach Adaptive Medium Development Process Claims Contributions of the Thesis Contributions of the Adaptive Medium Approach Adopted Concepts and Solutions i
9 ii CONTENTS 1.5 Scope of the Thesis Structure of the Thesis State of the Art Chapter Overview Software Adaptation Terminologies Software Adaptation and Evolution Adaptation Control Adaptation Activities Adaptation Control Architecture Architecture-based Adaptation Software Architecture Definition of Architecture-based Adaptation On the Role of Modularity On the Role of Commonality and Variability Distributed Adaptation Discussion Automating Software Development Model-Driven Engineering Modeling and Model-Driven Engineering Model-Driven Architecture Domain-Specific Modeling System Family Engineering Generative Software Development Domain Engineering and Application Engineering Modeling Commonality and Variability Feature Modeling Method Discussion Related Work in Adaptive Software Development
10 CONTENTS iii A List of Related Approaches Supporting Consistent Architectures Transferring System State Modeling Commonality and Variability Supporting Automatic Adaptation Planning Supporting Distributed Adaptations Automating the Development of Adaptive Software Limitations of the Related Approaches The Medium Approach The Medium Concept Definition Examples Medium Refinement Medium Refinement Principles Modeling and Transformations Medium Refinement Process Discussion State-of-the-Art Summary Adaptive Medium Approach Chapter Overview The Adaptive Medium Approach Approach Overview Adaptive Medium Development Process Developing the Adaptation Medium Specifying the Adaptation Medium Planning and Executing Adaptations Discussion Generating Functional Medium Variants The Generation Overview
11 iv CONTENTS Architecture View Process View MCV View Modeling Data Transfer Modeling Reconfiguration Constraints Discussion Composing the Adaptive Medium Adaptive Medium Architecture Discussion Approach Summary and Discussion Approach Summary Multiple Adaptive Mediums Applications Challenges Revisited and Discussion Adaptive Medium Development Process Chapter Overview Development Process Overview Facilities for Developing Adaptive Mediums Adaptive Medium Development Activities File Sharing Adaptive Medium Step 1: Specification Specifying the Functional Medium Abstraction Specifying the Implementation Architecture Identifying Concerns and Solutions Summary Step 2: Transformation Defining Solution Introduction Transformations Creating Solution Models Summary Step 3: Generation
12 CONTENTS v Refining the Early MCV Model Feature-based Modularization Data Transfer Model Medium Reconfiguration Constraints Model Defining the Generation Process Model Executing the Main Transformation Summary Step 4: Composition Adaptation in the Adaptive Medium Adaptation Plans Transferring Data Feature-based Adaptation Planning Fine-grained Adaptations Development Process Summary and Discussion Development Process Summary Model-Driven Architecture and Feature Modeling Discussion Prototype Chapter Overview Adaptive Medium Development Framework Framework Overview Basic Facility Concern Catalogue Using Basic Facility and Concern Catalogue Adaptation Medium Implementations Composition Program An Adaptation Medium Implementation Identifying Concerns and Solutions Generating the Adaptation Medium Component Model. 188
13 vi CONTENTS Implementing the Adaptation Medium Fractal Component Model Adaptation Medium Implementation Architecture Adaptation Plans Discussion Case Study 1: File Sharing Adaptive Medium Step 1: Specification Step 2: Transformation Step 3: Generation Step 4: Composition Adaptation Summary Case Study 2: Reservation Adaptive Medium Step 1: Specification Step 2: Transformation Step 3: Generation Step 4: Composition Summary Evaluation Execution Conditions Quantitative Analysis Supporting Consistent Architectures Supporting Data Transfer Modeling Commonality and Variability Supporting Automatic Adaptation Planning Supporting Distributed Adaptation Automating the Development Qualitative Analysis Prototype Summary and Discussion
14 CONTENTS vii 6 Conclusion Contribution Summary Limitations Perspectives Improving the Approach Generalizing the Approach Remark A Publications 233 B Implementation Details Feature Refinement Transformation Feature-based Adaptation Planning Function Basic Facility Package Concern Catalogue Package Bibliography 241
15 viii CONTENTS
16 List of Figures 1 Approche médium adaptable Processus de développement des médiums adaptables Generic control loop model (from [Dobson 06]) External adaptation control (from [Garlan 04]) The MDA pattern (from [OMG 03]) Two engineering processes (from [Czarnecki 00]) A sample feature model (from [Czarnecki 07]) Description of the file sharing application using medium Description of the reservation medium A video conferencing application using several mediums Architecture and process views of the medium refinement Four abstraction levels of the medium An example of transformation The overall adaptive medium approach The adaptive medium composition target Description of the adaptation medium Adaptation medium model at the high abstraction level Adaptation medium model after introducing managers A view of the adaptation control loop (adapted from [Buisson 06]) Distributed adaptation execution processes Relations between V1 and V2 on a functional manager instance 96 ix
17 x LIST OF FIGURES 3.9 Require-constraints between adaptation actions A meta-model of local adaptation plans A meta-model of adaptation coordination plans Overview of the generation of functional medium variants Views of the generation process of functional medium variants Example of global adaptation Data transfer modeling principle Adaptive medium architecture Activities in the development process of an adaptive medium Class diagram of the FS medium at level Class diagram of the FS medium at level Data management concern usage pattern Early MCV model of the FS medium Early MCV meta-model Simple data placement solution meta-model Simple data placement models Data annotation meta-model Solution reconfiguration constraints meta-model Example of derived solution features Derived affect-constraints A primitive design concern is affected Multiple affect-constraints Fine-grained MCV meta-model FS medium fine-grained MCV model Generic medium model at the component-implementation level Typical mappings from features to components A variant of the sharer manager Data transfer meta-model Extract of the FS medium data transfer model
18 LIST OF FIGURES xi 4.22 Medium reconfiguration constraints meta-model Design concerns and design solutions for the FS medium Generation process meta-model Component diagram of the adaptive manager Generic structure of adaptation plans An example of data transfer Relation between MCV model and generation process model Tailored transformations Decomposition of the adaptation medium abstraction Early MCV model of the adaptation medium The model of AMIV1 at the class-implementation level The adaptive manager component structure in Fractal A sequence diagram of the adaptation medium implementation Structure of local adaptation plans in AMIV Structure of adaptation coordination plans Process model for generating file sharing medium variants Two FS medium variants at the component-implementation level Reservation medium model at the high abstraction level Reservation medium model after introducing managers The reservation medium early MCV model The reservation medium fine-grained MCV model Process model for generating reservation medium variants Component models of three reservation medium variants Comparison of fine-grained and coarse-grained adaptations B.1 Feature refinement transformation B.2 Feature-based adaptation planning function B.3 Basic meta-models and transformations in the framework B.4 Meta-models and transformations in the concern catalogue
19 xii LIST OF FIGURES
20 List of Tables 2.1 Related approaches to developing adaptive software Adaptive medium approach summary Elements in the adaptive medium development process Adaptation time of fine-grained adaptations Kept, removed, and added components Generated adaptation plans and their elements User-defined and generated elements Adaptive medium approach evaluation xiii
21 xiv LIST OF TABLES
22 Résumé en français Sommaire 1 Introduction État de l art Approche médium adaptable Processus de développement des médiums adaptables 10 5 Prototype Conclusion Introduction Les applications informatiques sont omniprésentes dans notre environnement. Celles-ci doivent désormais pouvoir fonctionner sans s interrompre dans des contextes très variables, et cela, dans l idéal, même si une modification de structure interne est requise. Ce contexte variable comprend aussi bien des dispositifs et des réseaux que le comportement de l environnement et de l utilisateur. On parle ainsi d adaptation dynamique pour caractériser les applications pouvant changer leur comportement à l exécution en s adaptant au contexte d exécution courant. Plusieurs travaux récents proposent des approches dédiées au développement de telles applications. Cependant, ces approches n englobent pas encore la complexité du développement d une application adaptative, particulièrement lorsqu elles sont distribuées, et de nombreuses tâches délicates restent encore à la charge des développeurs. Nous avons identifié six verrous qui résument cette complexité dans le contexte du développement d applications distribuées : V1 - Supporter la cohérence des variantes : Dans une adaptation, une application remplace sa variante courante d exécution par une autre variante. Ces variantes doivent être cohérentes, c est-à-dire que l application doit continuer à fonctionner correctement après l adaptation. 1
23 2 Résumé en français V2 - Transférer l état : Une adaptation réussie doit permettre le transfert d état de la variante remplacée à la variante remplaçante. V3 - Modéliser la modularité, la similitude et la variabilité : Afin de remplacer de manière plus fine la variante courante par une autre variante, l application doit pouvoir conserver les parties communes aux deux variantes et remplacer uniquement les parties différentes de celles-ci. À cette fin, la modularité, la similitude et la variabilité des variantes doivent être explicitement modélisées. V4 - Automatiser la planification de l adaptation : L application doit pouvoir planifier automatiquement ses adaptations. L ensemble des actions d adaptation qui permettent de modifier l application et de transférer l état doit être défini automatiquement. V5 - Supporter des adaptations distribuées : Une adaptation distribuée se décompose en plusieurs processus distribués pour gérer l adaptation sur les différents sites. Ce type d adaptation est difficile car elle nécessite la coordination des processus distribués et le transfert de l état entre les sites. V6 - Automatiser le processus de développement : Un processus de développement d applications adaptatives permettant de gérer les verrous précédents est nécéssairement complexe. L automatisation d un tel processus est donc indispensable. Nous proposons dans le cadre de ce travail une approche appelée médium adaptable qui permet de relever ces différents verrous. L approche est élaborée en se basant sur deux principes : P1 - Une abstraction de haut niveau : L application adaptable est spécifiée à un haut niveau d abstraction, permettant d intégrer l aspect de distribution. Cette abstraction de l application peut ainsi être utilisée pour guider la construction des variantes, modéliser la modularité, la similitude et la variabilité, et également les informations utiles à la planification des adaptations comme les contraintes sur les actions d adaptation et les opérations de transfert de données. P2 - Un processus automatisé : Les tâches sont partiellement automatisées grâce à l ingénierie dirigée par les modèles. Ces deux principes d abstraction et d automatisation ont déjà fait l objet de travaux au sein de notre équipe. Nous étendons ainsi l abstraction d application distribuée appelée médium définie par Eric Cariou [Cariou 03] pour construire une abstraction d application distribuée adaptable appelée médium adaptable. Le processus de raffinement de médiums proposé par Evelyne Kabore
24 2. État de l art 3 [Kaboré 08a] est également repris en introduisant 1) la modélisation de la modularité, de la similitude et de la variabilité des différentes variantes de médium, 2) la modélisation du transfert de données entre les variantes, et 3) la modélisation des contraintes entre les actions d adaptation. L ajout de ces modèles permet de préciser le processus de raffinement de différentes variantes, l automatisation de la génération de ces variantes ainsi que les liens entre celles-ci, ce qui permet de générer des plans d adaptation nécessaires. Le reste de ce document est organisé comme suit. La section 2 résume les travaux connexes. La section 3 décrit l approche médium adaptable. La section 4 formule un processus de développement des médiums adaptables. La section 5 présente un prototype du framework dédié au processus. Enfin, la section 6 conclut le document. 2 État de l art Dans cette section, nous présentons quelques notions de base, puis nous effectuons une revue de travaux connexes. 2.1 Notions de base Nous réumons ici quelques notions clés autour de l adaptation dyanmique pour mieux préciser le cadre de ce travail. Adaptation dynamique L adaptation dynamique est la capacité des applications à se modifier ellesmêmes pendant leur exécution afin de s adapter aux changements de contexte [Oreizy 99]. Par rapport à l adaptation statique dans laquelle les applications sont arrêtées et recompilées afin d intégrer des modifications, l adaptation dynamique permet d augmenter la disponibilité des applications et de réduire le coût d exploitation des adaptations. Activités de contrôle d adaptation Dans une application adaptable, les activités de contrôle d adaptation comprennent typiquement l observation des changements du contexte et de l état de l application, la décision d adaptation en fonction de ces observations, la planification des actions d adaptation à réaliser, et finalement l exécution de ces actions [Buisson 06].
25 4 Résumé en français Adaptation distribuée Dans une application distribuée, une adaptation peut comprendre des actions distribuées. Une telle adaptation est appelée une adaptation distribuée. Elle est plus difficile qu une adaptation locale car les actions distribuées doivent être exécutées de manière coordonnée pour en assurer la cohérence. Adaptation architecturale Une adaptation qui réalise des modifications au niveau de l architecture de l application est appelée adaptation architecturale. Dans cette thèse, nous considérons que l architecture logicielle d une application est une structure de composants et d interactions entre ces composants. Une adaptation architecturale est alors réalisée par des modifications au niveau des composants de l application et de leurs liaisons. L adaptation architecturale permet ainsi d exploiter les modèles architecturaux décrivant l architecture de l application afin de surveiller et d adapter l application [Garlan 04]. 2.2 Travaux connexes Nous avons étudié nombre d approches de développement des applications adaptables, et nous avons fait le choix de les présenter selon les verrous identifiés dans la section 1. Supporter la cohérence des variantes La cohérence des variantes d une application adaptable peut être supportée soit par construction des variantes, par vérification de celles-ci, ou par vérification des actions d adaptation. Les approches existantes proposent ainsi des langages de description d architecture (ADL) [Magee 95, Oquendo 04], des langages dédiés (DSL) [Bencomo 08a], ou des styles architecturaux [Oreizy 99, Garlan 04, Oquendo 04]. Dans ce cadre, les développeurs d applications adaptables, i.e., les utilisateurs de ces approches, sont amenés à manipuler des abstractions de bas niveau liées aux éléments physiques tels que les composants, les connecteurs ou les objets, et à devoir en assurer la cohérence. La qualité de celle-ci dépend alors directement de leur niveau de compétence. Transférer l état Quelques approches permettent de prendre en compte le transfert d état
26 2. État de l art 5 entre variantes. Cependant, les fonctions de transfert des données nécessitent souvent un prise en charge manuelle par le développeur [Lee 06, Geihs 09]. Modéliser la modularité, la similitude et la variabilité Pour pouvoir affiner le changement entre variantes, il est nécessaire de pouvoir décomposer l applicaton en sous-modules. Le terme «modularité» renvoie donc à cet aspect de séparation. Dans ce cadre, il est alors nécessaire de pouvoir identifier explicitement les éléments à conserver et ceux à échanger, les termes «similitude» et «variabilité» renvoient à l identification des modules différents (resp. communs) des variantes de l application. La séparation des préoccupations et l ingénierie logicielle à base de composants sont des approches importantes pour supporter la modularité logicielle. Les préoccupations d une application sont séparées, puis réifiées au travers de modules appelés composants logiciels. Plusieurs modèles de composants ont ainsi été proposés, notamment CCM, COM et Fractal. Dans certains cas, il n est pas possible de décliner des préoccupations en composants, par exemple pour cause d inter-croisement de préoccupations. La technologie des aspects (AOP) propose alors une alternative pour assurer la séparation au travers d aspects qui seront tissés dans l application désirée [Kiczales 97, Pessemier 08]. Malgré tout, les chercheurs dans ce domaine n ont pas encore résolu des verrous tels que l interaction entre aspects. Le problème de la modularité n est donc pas encore complètement résolu. La variabilité est une notion importante dans le domaine des lignes de produits. En considérant les variantes d une application adaptable comme les membres d une ligne de produits, des approches de modélisation de la variabilité dans ce domaine peuvent être utilisées pour modéliser les applications adaptables. Les exemples comprennent la modélisation des features [Lee 06, Morin 09a, Cetina 09] ou le modèle orthogonal de variabilité [Bencomo 08a]. Cependant, ces approches supposent que les features peuvent être directement liés aux composants ou aux aspects. Le cas général où les aspects ou composants ne pourraient pas séparés n est donc pas pris en compte. Autrement dit, ces approches n abordent pas la modularité dans sa globalité. Automatiser la planification d adaptation Quelques approches supportent la planification d adaptation en utilisant les informations de développement. Les plans d adaptation peuvent ainsi être générés en comparant les configurations de features [Cetina 09] ou les modèles architecturaux [Garlan 04, Bencomo 08a]. Cependant, dans ces approches, les liens entre leurs éléments et les composants logiciels sont définis manuellement.
27 6 Résumé en français La correction des plans revient donc aux développeurs. Supporter des adaptations distribuées L adaptation distribuée est particulièrement difficile de par la nécessité d assurer la coordination des actions distribuées. Ce problème est abordé dans quelques approches telles qu ACEEL [Chefrour 05] et CACTUS [Chen 01]. Cependant, dans ces approches, la coordination des actions distribuées est basée sur une politique de coordination définie par les développeurs. Or, la définition d une telle politique reste une tâche difficile. Automatiser le processus de développement Le développement d une application adaptable peut être partiellement automatisé en faisant appel à l ingénierie dirigée par les modèles et/ou à des technologies de lignes de produits [Oquendo 04, Bencomo 08a]. Dans ce contexte, la génération de code et la réutilisation des artefacts logiciels tels que les composants sont adoptées. Cependant, le niveau d automatisation reste insuffisant. En effet les développeurs doivent spécifier l application adaptable au niveau d abstraction de composants physiques et donc gérer eux-mêmes l architecture distribuée. Conclusion La spécification à un haut niveau d abstraction des applications adaptables apparait comme une approche prometteuse pour dépasser les limitations des approches existantes. Le raffinement au niveau des composants physiques peut alors s intégrer au processus et ainsi être automatisée. Ce sont les points-clés de l approche de médium adaptable [Phung-Khac 08, Phung-Khac 10]. 3 Approche médium adaptable La figure 1 décrit le principe de l approche de médium adaptable, qui s articule autour d une abstraction de haut niveau, du raffinement, et de la composition au niveau de l implémentation. L abstraction de haut niveau L abstraction de haut niveau retenue dans le cadre de notre approche pour spécifier une application adaptable est le médium - une abstraction de communication dédiée aux applications distribuées [Cariou 03].
28 3. Approche médium adaptable 7 Médium adaptable (Haut niveau d abstraction) Composant client x Médium d adaptation? 1 adapter surveiller 1? Médium fonctionnel y Raffinement Raffinement x y x y Variante 1 Variante m distribuée * Variante 1 centralisée * 1 Variante n Modèles architecturaux Modèles facilitant l adaptation embaqués dans x Composition Médium adaptable avec le contrôle centralisé d adaptation (Niveau d implémentation) y Composants physiques Entité logique, agrégation des entités physiques Entité logique, une abstraction Lien abstrait Lien physique à distance Lien physique local Fig. 1 Approche médium adaptable
29 8 Résumé en français Un médium est une abstraction de la communication fonctionnelle distribuée dans une application. L application est donc spécifiée comme une interconnexion d un médium et des composants clients. Au niveau de l implémentation, l abstraction est réifiée par une agrégation des composants physiques appelés des gestionnaires. Cette agrégation est appelée le médium au niveau d implémentation. En utilisant le médium, l application adaptable est spécifiée comme une interconnexion d un médium adaptable et de quelques composants clients. Comme le montre la figure 1, le médium adaptable en tant qu abstraction se compose de deux parties : le médium fonctionnel et le médium d adaptation. Tandis que le premier encapsule la partie fonctionnelle distribuée de l application, le second encapsule les fonctionnalités permettant l adaptation ainsi que la coordination des actions distribuées utilisées pour reconfigurer le premier. Ainsi, le médium d adaptation utilise les modèles architecturaux des variantes du médium fonctionnel pour adapter le médium fonctionnel lors de son exécution. La génération des variantes du médium fonctionnel Le médium fonctionnel en tant qu abstraction est raffiné au niveau de l implémentation en utilisant le processus de raffinement de médium [Kaboré 08a]. Ce processus est construit en identifiant dans un premier temps une suite de préoccupations. Pour chaque préoccupation, une transformation est définie. Cette transformation permet d introduire une solution à la préoccupation dans le médium, et de le rendre ainsi plus concret à chaque étape. À cette fin, un métamodèle de solution et deux méta-modèles de médium sont définis (appelés métamodèles de médium source et cible). La transformation introduit donc un modèle de solution conforme au méta-modèle de solution dans un modèle de médium de source conforme au méta-modèle de médium de source, et puis, génère un modèle de médium de cible. En définissant pour chaque préoccupation plusieurs solutions différentes, il est ainsi possible, grâce au processus de raffinement, de générer des variantes différentes du médium au niveau de son implémentation. Chaque variante d implémentation est alors une agrégation des gestionnaires fonctionnels. En vue de gérer finement les différentes variantes et leurs transitions, nous étendons le processus de raffinement de médium en ajoutant trois modèles : Le modèle de modularité, de similitude et de variabilité : Ce modèle est une extension d un modèle de features [Kang 90, Czarnecki 00]. Dans ce modèle, les préoccupations et leurs solutions sont représentées comme des features. Les solutions pour une préoccupation sont représentées comme un groupe de features attaché au feature représentant cette préoccupation. Ce modèle permet donc de décrire les variantes, la similitude et la varia-
30 3. Approche médium adaptable 9 bilité entre variantes. En outre, nous introduisons la notion de «feature concret» et les «contraintes d affectation» afin de représenter la modularité de ces variantes. Grâce à ce modèle, les variantes de médium au niveau de l implémentation peuvent automatiquement être modularisées en composants. Le modèle de transfert de données : Ce modèle décrit comment les données sont transférées entre les variantes de médium lors d une adaptation. Pour cela, il décrit comment les données gérées par un ensemble de composants correspondant à une solution sont transférées à un autre ensemble de composants correspondant à une autre solution de la même préoccupation. Ce modèle est automatiquement généré en collectant les modèles d annotation de données correspondant aux préoccupations. Le modèle de contraintes de reconfiguration de médium : Ce modèle décrit l ordre des actions d adaptation. Il est également généré automatiquement à partir des modèles de contraintes de reconfiguration de solution. Les trois modèles ci-dessus permettent de décrire la modularité, la simiilitude et la variabilité des variantes, les opérations nécessaires pour transférer les données entre les variantes, et les contraintes entre les actions d adaptation. Ces modèles, ainsi que les modèles architecturaux des variantes sont utilisés pour planifier dynamiquement les adaptations du médium fonctionnel. Le développement du médium d adaptation Le médium d adaptation peut également être développé en utilisant le processus de raffinement de médium. Cependant, ce développement reste ouvert, dans le sens où nous n avons pas proposé de processus complet de développement d un tel médium dans le cadre de cette thèse. Nous proposons simplement le modèle abstrait d entrée et un modèle unique au niveau de l implémentation, ce qui permet incidemment de montrer qu un médium d adaptation peut être réutilisé pour plusieurs médiums fonctionnels différents. Au niveau de l implémentation, le médium d adaptation est une agrégation des composants physiques appelés des gestionnaires d adaptation. Lors de l exécution, un gestionnaire d adaptation reconfigure localement un gestionnaire fonctionnel en fonction d un plan local d adaptation décrivant les actions locales d adaptation. La coordination des actions distribuées est décrite dans un plan de coordination. À cette fin, nous proposons également un modèle d adaptation distribuée. Une telle adaptation appelée aussi processus global d adaptation se décompose en différents processus locaux d adaptation. Six étapes d adaptation sont identifiées : arrêter les services du médium fonctionnel, créer les composants rem-
31 10 Résumé en français plaçants, initialiser les composants remplaçants, transférer les données, enlever les composants remplacés, et redémarrer les services du médium fonctionnel. Nous proposons aussi un méta-modèle de plan d adaptation local et un métamodèle de plan de coordination. La composition du médium adaptable Le médium adaptable au niveau de l implémentation est composé d une variante du médium fonctionnel et d une variante du médium d adaptation. Tandis que le premier est la variante initiale et sera remplacée par une autre variante pendant l exécution afin d adapter le médium fonctionnel au contexte d exécution, le second est stable et sert de plateforme de contrôle d adaptation. À ce niveau d implémentation, le médium adaptable est une agrégation des gestionnaires adaptables, chacun se composant d un d un gestionnaire fonctionnel et d un gestionnaire d adaptation. Le médium d adaptation embarque les différents modèles nécessaires à la planification dynamique des adaptations, à savoir les modèles architecturaux des variantes du médium fonctionnel, le modèle de la modularité et la variabilité des variantes, ainsi que le modèle de transfert de données, et le modèle de contraintes de reconfiguration du médium. 4 Processus de développement des médiums adaptables Le processus de développement permet de raffiner l abstraction de haut niveau et d assurer la composition finale permettant le déploiement. La figure 2 décrit le processus de développement des médiums adaptables. Nous y avons identifié quatre rôles différents pour les développeurs, correspondant à des métiers différents et permettant de bien mettre en exergue les éléments du processus sur lesquels il est possible de capitaliser pour promouvoir la réutilisation. Quatre étapes du développement sont retenues permettant de mettre en évidence les collaborations entre ces différents rôles. Les rôles des développeurs Pour mettre en avant les différents aspects du processus de développement, nous avons retenu quatre rôles pour les développeurs participant au processus de développement d un médium adaptable : l expert de médium, le concepteur de solutions, le concepteur de processus, et le concepteur d application. Les tâches de l expert de médium et du concepteur de solutions concernent principalement les aspects d ingénierie de domaine du processus, c est-à-dire
32 4. Processus de développement des médiums adaptables 11 Expert de médium Ingénierie de domaine Concepteur de solutions Concepteur de processus Ingénierie d application Concepteur d application Générer le médium niveau 1 Identifier le médium niveau 0 Etape 1: Spécification Catalogue préserver réutiliser Identifier les préoc. et les solutions en définissant un modèle MSV-initial Identifier les variantes de médium Non Valider Oui Etape 2: Transformation Pour une préoc.: Définir 1 transformation Définir 1 métamodèle de solution Définir 2 métamodèles de médium Définir 1 métamodèle de décision Pour une solution: Définir un modèle de solution Définir un modèle de contr. de reconf. de solution Ajouter des infos au modèle d annotation de données Oui Oui Nouvelles préoc.? Non Nouvelles solutions? Non Etape 3: Génération Identifier les contraintes des features et les features concrètes Générer un modèle MSV-raffiné Définir un modèle de processus Générer les variantes niveau 4, 1 modèle de transfert de données, 1 modèle de contr. de reconf. de médium Etape 4: Composition Composer le médium adaptable Fig. 2 Processus de développement des médiums adaptables
33 12 Résumé en français les aspects de développement concernant la réutilisation et la capitalisation. Ils définissent des modèles génériques, tant au niveau du processus que des éléments de solutions correspondant aux différentes préoccupations. Le concepteur de processus et le concepteur d application se péoccupent quant à eux des aspects d ingénierie d application du processus. Ainsi le premier propose un processus sous forme de suites de préoccupations correspondant à un type d application donné, et sélectionne les variants pertinentes. Le second se concentre sur le développement d un médium adaptable pour une application donnée. Les étapes du processus Comme indiqué sur la figure 2, le processus se décompose en quatre étapes : spécification, transformation, génération, et composition. Spécification : Le concepteur d application commence par définir le modèle de médium fonctionnel souhaité au niveau d abstraction le plus haut. Le concepteur de processus dérive un modèle de médium fonctionnel plus concret dans lequel les gestionnaires abstraits sont introduits, en utilisant une transformation initiale. À partir de là, le concepteur de processus et le concepteur d application identifient les préoccupations et les solutions auxquelles ils s intéressent. Ces préoccupations et solutions sont décrites par un modèle de modularité, de similitude et de variabilité (appelé «MSV-initial»). Les préoccupations et solutions sont identifiées à partir d un catalogue des préoccupations réutilisables. Transformation : Cette étape permet de compléter éventuellement le catalogue des préoccupations et solutions disponibles. Si une préoccupation identifiée n existe pas dans le catalogue, l expert de médium doit alors définir un méta-modèle de solution, deux méta-modèles de médium et implémenter une nouvelle transformation. Il définit également un métamodèle de décision qui permet de paramétrer la transformation. L ajout de solution dans le catalogue, que ce soit suite à l ajout d une nouvelle préoccupation ou pour élargir les options d une préoccupation existante est réalisé par le concepteur de solution qui définit le nouveau modèle de solution, et ajoute les opérations de transfert de données de ce modèle de solution selon le modèle d annotation de données correspondant à la préoccupation. Il définit également le modèle de contraintes de reconfiguration de la solution. Génération : Les préoccupations et les solutions candidates étant identifiées et disponibles, le concepteur de processus identifie les features concrètes et les contraintes entre les features. Il utilise ensuite une transformation pour raffiner le modèle MSV-initial issu de la spécification. Le résultat est un modèle qui précise la modularité et la variabilité des
34 5. Prototype 13 variantes du médium fonctionnel, appelé le modèle «MSV-raffiné». Le concepteur de processus définit alors un modèle de processus qui décrit l ordre d exécution des transformations pour générer les variantes. Finalement, il utilise une transformation pour générer ces variantes au niveau de l implémentation où les composants sont décrits. Ces composants sont reliés aux caractéristiques du modèle MSV-raffiné. Un modèle de transfert de données et un modèle de contraintes de reconfiguration de médium sont aussi générés par cette transformation, pour permettre la réalisation de l adaptation dynamique. Composition : Le concepteur d application choisit une variante de medium d adaptation et une variante initiale pour le médium fonctionnel. Il utilise alors un programme de composition pour construire le médium adaptable au niveau de l implémentation. L organisation des rôles et des étapes présentées ci-dessus permet de clarifier le développement des médiums adaptables. Cette organisation permet, de plus, d augmenter le niveau de réutilisation et, ainsi, d augmenter progressivement le niveau d automatisation du processus de développement des médiums adaptables. 5 Prototype Nous avons construit un prototype du framework de développement des médiums adaptables, intégrant un ensemble de fonctionnalités de base permettant la mise en œuvre du processus de développement, une variante du médium d adaptation, et un programme de composition. L ensemble des fonctionnalités de base : Il comprend les méta-modèles et les transformations utilisés pour générer les variantes de tout médium. Il intègre notamment les méta-modèles de médium aux différents niveaux d abstraction, un méta-modèle de MSV-initial, un méta-modèle de MSVraffiné, un méta-modèle de processus, un méta-modèle d annotation de données et un méta-modèle de contraintes de reconfiguration. Ces métamodèles sont utilisés par les transformations suivantes : une transformation d introduction des gestionnaires, une transformation de raffinement de modèle MSV-initial, une transformation de modularisation et une transformation principale qui exécute le modèle de processus. Les méta-modèles et les transformations sont définis en utilisant le canevas de méta-modélisation Kermeta [Triskell]. Une variante du médium d adaptation : Le modèle d implémentation de cette variante a été généré en utilisant les fonctionnalités de base définies
35 14 Résumé en français précédemment. Les langages cibles sont Java et Fractal [Bruneton 06]. Le programme de composition : Ce programme est développé en Java. La composition est réalisée de manière directe, en utilisant l ADL de Fractal et l implémentation Julia [Bruneton 06]. Ce prototype a été utilisé pour développer deux médiums adaptables : un médium adaptable de réservation de sièges et un de partage de fichiers. Des scénarios d adaptation ont été déployés pour pouvoir valider l approche. 6 Conclusion Contributions Dans cette thèse, nous proposons une approche de développement des applications distribuées adaptables, appelée l approche médium adaptable. Une application distribuée adaptable y est d abord spécifiée à un haut niveau d abstraction en utilisant une abstraction appelée le médium adaptable. L aspect fonctionnel et l aspect d adaptation sont séparés à ce niveau abstrait sous forme de deux abstractions appelées respectivement médium fonctionnel et médium d adaptation. Nous utilisons ensuite un processus de raffinement pour générer des variantes d implémentation de chaque médium. Finalement, le médium adaptable au niveau d implémentation est composé à partir d une variante du médium fonctionnel et d une variante du médium d adaptation. Alors que la variante du médium fonctionnel peut être remplacée par une autre variante lors de son exécution afin de l adapter au contexte d exécution, la variante du médium d adaptation est stable et sert d infrastructure de contrôle d adaptation. Afin d adapter le médium fonctionnel, le médium d adaptation utilise des modèles originaux d architecture de variantes du médium fonctionnel, un modèle de modularité, de similitude et de variabilité de ces variantes, un modèle de transfert de données entre ces variantes, et un modèle de contraintes de reconfiguration. Ces modèles sont automatiquement générés par le processus de raffinement de médium. Grâce à l abstraction de haut niveau, au processus de raffinement basé sur les techniques de modèles et la modélisation des features, à la modélisation de transfert de données, et à la modélisation des contraintes de reconfiguration, l approche médium adaptable permet de résoudre les six verrous identifiés dans la section 1.
VLANs. Commutation LAN et Wireless Chapitre 3
VLANs Commutation LAN et Wireless Chapitre 3 ITE I Chapter 6 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 1 Objectifs Expliquer le rôle des VLANs dans un réseau convergent. Expliquer le rôle
More informationA development process for building adaptative software architectures
A development process for building adaptative software architectures Ngoc Tho Huynh To cite this version: Ngoc Tho Huynh. A development process for building adaptative software architectures. Software
More informationLeveraging software product lines engineering in the construction of domain specific languages
Leveraging software product lines engineering in the construction of domain specific languages David Fernando Méndez Acuña To cite this version: David Fernando Méndez Acuña. Leveraging software product
More informationModel-Driven Software Engineering for Virtual Machine Images Provisioning in Cloud Computing
Model-Driven Software Engineering for Virtual Machine Images Provisioning in Cloud Computing Tam Le Nhan To cite this version: Tam Le Nhan. Model-Driven Software Engineering for Virtual Machine Images
More informationniversité européenne de BretagneB Télécom Bretagne En habilitation conjointe avec l Université de Rennes 1 Ecole Doctorale MATISSE
N d ordre : 2014telb0304 Sous le sceau de l Ul niversité européenne de BretagneB Télécom Bretagne En habilitation conjointe avec l Université de Rennes 1 Ecole Doctorale MATISSE A REFINEMENT BASED METHODOLOGY
More informationMéthodologie pour un processus d analyse temporelle dirigé par les modèles pour les systèmes automobiles
Méthodologie pour un processus d analyse temporelle dirigé par les modèles pour les systèmes automobiles Saoussen Rekik To cite this version: Saoussen Rekik. Méthodologie pour un processus d analyse temporelle
More informationVirtual Composition of EMF Models
Virtual Composition of EMF Models Cauê Clasen, Frédéric Jouault, Jordi Cabot To cite this version: Cauê Clasen, Frédéric Jouault, Jordi Cabot. Virtual Composition of EMF Models. 7èmes Journées sur l Ingénierie
More informationModel and Metamodel Composition: Separation of Mapping and Interpretation for Unifying Existing Model Composition Techniques
Model and Metamodel Composition: Separation of Mapping and Interpretation for Unifying Existing Model Composition Techniques Mickaël Clavreul To cite this version: Mickaël Clavreul. Model and Metamodel
More informationTest, beauty, cleanness. d après le cours de Alexandre Bergel
Test, beauty, cleanness d après le cours de Alexandre Bergel abergel@dcc.uchile.cl 1 But d un test et TDD Détecter les défauts le plus tôt possible dans le cycle -Tester une nouvelle méthode dès qu on
More informationArchitectures et mécanismes de sécurité pour l auto-protection des systèmes pervasifs
Architectures et mécanismes de sécurité pour l auto-protection des systèmes pervasifs Ruan He To cite this version: Ruan He. Architectures et mécanismes de sécurité pour l auto-protection des systèmes
More informationSpécification et vérification formelles des systèmes de composants répartis
Spécification et vérification formelles des systèmes de composants répartis Tomás Barros To cite this version: Tomás Barros. Spécification et vérification formelles des systèmes de composants répartis.
More informationFunctional Blue Prints for the Development of a KMapper Prototype
Functional Blue Prints for the Development of a KMapper Prototype SOFTWARE DESIGN DOCUMENT KMAPPER KNOWLEDGE INFERRING SERVICES And prepared by Martin Froment and Ludovic Tobin Fujitsu Consulting (Canada)
More informationA model-based approach for extracting business rules out of legacy information systems
A model-based approach for extracting business rules out of legacy information systems Valerio Cosentino To cite this version: Valerio Cosentino. A model-based approach for extracting business rules out
More informationAbout Transferring License Rights for. PL7 V4.5 and Unity Pro V2.3 SP1 Software
Page 1 of 38 Click here to access the English Cliquez ici pour accéder au Français Klicken Sie hier, um zum Deutschen zu gelangen Premete qui per accedere all' Italiano Pulse acquì para acceder al Español
More informationLa contextualisation en entreprise : mettre en avant utilisateurs et développeurs
THESE DE DOCTORAT CONJOINT TELECOM SUDPARIS et L UNIVERSITE PIERRE ET MARIE CURIE Spécialité : Informatique et Télécommunication Ecole doctorale : Informatique, Télécommunications et Electronique de Paris
More informationTHÈSE. l ÉCOLE NATIONALE SUPÉRIEURE DES TÉLÉCOMMUNICATIONS DE BRETAGNE. DOCTEUR de Télécom Bretagne. Samiha AYED
N d ordre : 2009telb0109 THÈSE Présentée à l ÉCOLE NATIONALE SUPÉRIEURE DES TÉLÉCOMMUNICATIONS DE BRETAGNE en habilitation conjointe avec l Université de Rennes 1 pour obtenir le grade de DOCTEUR de Télécom
More informationProcessus collaboratifs ubiquitaires: architecture, fiabilite et securite
Processus collaboratifs ubiquitaires: architecture, fiabilite et securite Frederic Montagut To cite this version: Frederic Montagut. Processus collaboratifs ubiquitaires: architecture, fiabilite et securite.
More informationComposition et interopérabilité pour l ingénierie des langages dédiés externes
Composition et interopérabilité pour l ingénierie des langages dédiés externes Thomas Degueule To cite this version: Thomas Degueule. Composition et interopérabilité pour l ingénierie des langages dédiés
More informationSun Control Station. Performance Module. Sun Microsystems, Inc. Part No September 2003, Revision A
Sun Control Station Performance Module Sun Microsystems, Inc. www.sun.com Part No. 817-3610-10 September 2003, Revision A Submit comments about this document at: http://www.sun.com/hwdocs/feedback Copyright
More informationHéritage (2) Programmation Orientée Objet. Jean-Christophe Routier Licence mention Informatique Université Lille Sciences et Technologies
Héritage (2) Programmation Orientée Objet Jean-Christophe Routier Licence mention Informatique Université Lille Sciences et Technologies Université Lille Sciences et Technologies - Licence mention Informatique
More informationOracle ZFS Storage Appliance Cabling Guide. For ZS3-x, 7x20 Controllers, and DE2-24, Sun Disk Shelves
Oracle ZFS Storage Appliance Cabling Guide For ZS3-x, 7x20 Controllers, and DE2-24, Sun Disk Shelves Part No: E53670-01 June 2014 Copyright 2009, 2014, Oracle and/or its affiliates. All rights reserved.
More informationMetamodels and feature models : complementary approaches to formalize product comparison matrices
Metamodels and feature models : complementary approaches to formalize product comparison matrices Guillaume Bécan To cite this version: Guillaume Bécan. Metamodels and feature models : complementary approaches
More informationSous le sceau de l Université européenne de Bretagne. Télécom Bretagne. En accréditation conjointe avec l Ecole Doctorale Matisse
N d ordre : 2015telb0357 Sous le sceau de l Université européenne de Bretagne Télécom Bretagne En accréditation conjointe avec l Ecole Doctorale Matisse Ecole Doctorale MATISSE Cooperation in networks
More informationUNE ARCHITECTURE DE CLOUD BROKER BASEE SUR LA SEMANTIQUE POUR L'OPTIMISATION DE LA SATISFACTION DES UTILISATEURS
THESE DE DOCTORAT CONJOINT TELECOM SUDPARIS et L UNIVERSITE PIERRE ET MARIE CURIE Spécialité : Informatique et Réseaux Ecole doctorale : Informatique, Télécommunications et Electronique de Paris Présentée
More informationSolaris 9 9/04 Installation Roadmap
Solaris 9 9/04 Installation Roadmap This document is a guide to the DVD-ROM, CD-ROMs, and documents involved in installing the Solaris 9 9/04 software. Unless otherwise specified, this document refers
More informationAutomatic testing of Lustre/SCADE programs
Automatic testing of Lustre/SCADE programs Virginia Papailiopoulou To cite this version: Virginia Papailiopoulou. Automatic testing of Lustre/SCADE programs. Computer Science [cs]. Université Joseph-Fourier
More informationSolaris 8 6/00 Sun Hardware Roadmap
Solaris 8 6/00 Sun Hardware Roadmap This document is a guide to the CDs and documents involved in installing the Solaris 8 6/00 software. Note The arrangement of CDs in the Solaris 8 product is different
More informationA. Egges. Real-time Animation of Interactive Virtual Humans. PhD Thesis, University of Geneva, Geneva, Switzerland. August 2006.
A. Egges. Real-time Animation of Interactive Virtual Humans. PhD Thesis, University of Geneva, Geneva, Switzerland. August 2006. UNIVERSITÉ DE GENÈVE Département d informatique FACULTÉ DES SCIENCES Professeur
More informationDoctorat ParisTech THÈSE. TELECOM ParisTech. La modularisation de la sécurité informatique. dans les systèmes distribués
2013-ENST-0063 EDITE - ED 130 Doctorat ParisTech THÈSE pour obtenir le grade de docteur délivré par TELECOM ParisTech Spécialité «Informatique et Réseaux» présentée et soutenue publiquement par Gabriel
More informationExploring the reuse of past search results in information retrieval
Exploring the reuse of past search results in information retrieval Claudio Gutierrez Soto To cite this version: Claudio Gutierrez Soto. Exploring the reuse of past search results in information retrieval.
More informationEcole Doctorale EDITE. Thèse présentée pour l obtention du diplôme de Docteur de Télécom & Management SudParis. Doctorat conjoint TMSP-UPMC
Ecole Doctorale EDITE Thèse présentée pour l obtention du diplôme de Docteur de Télécom & Management SudParis Doctorat conjoint TMSP-UPMC Spécialité : Informatique et Télécommunications Par Nassim LAGA
More informationAutomatic non-functional testing and tuning of configurable generators
Automatic non-functional testing and tuning of configurable generators Mohamed Boussaa To cite this version: Mohamed Boussaa. Automatic non-functional testing and tuning of configurable generators. Mathematical
More informationSunVTS Quick Reference Card
SunVTS Quick Reference Card Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA 94303-4900 U.S.A. 650-960-1300 Part No. 806-6519-10 January 2001, Revision A Send comments about this document to:
More informationpour le grade de DOCTEUR DE L UNIVERSITÉ DE RENNES 1 Mention : Traitement du Signal et Télécommunications École doctorale MATISSE présentée par
N o d ordre : 3970 ANNÉE 2010 THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Européenne de Bretagne pour le grade de DOCTEUR DE L UNIVERSITÉ DE RENNES 1 Mention : Traitement du Signal et
More informationKnowledge Engineering Models and Tools for the Digital Scholarly Publishing of Manuscripts
Knowledge Engineering Models and Tools for the Digital Scholarly Publishing of Manuscripts Semantic Web for the Digital Humanities Sahar Aljalbout, Giuseppe Cosenza, Luka Nerima, Gilles Falquet 1 Cultural
More informationIntegration of model driven engineering and ontology approaches for solving interoperability issues
Integration of model driven engineering and ontology approaches for solving interoperability issues Hui Liu To cite this version: Hui Liu. Integration of model driven engineering and ontology approaches
More informationOracle Dual Port QDR InfiniBand Adapter M3. Product Notes
Oracle Dual Port QDR InfiniBand Adapter M3 Product Notes Part No.: E40986-01 September 2013 Copyright 2013 Oracle and/or its affiliates. All rights reserved. This software and related documentation are
More informationFlexible Quality of Service Management of Web Services Orchestrations
Flexible Quality of Service Management of Web Services Orchestrations Ajay Kattepur To cite this version: Ajay Kattepur. Flexible Quality of Service Management of Web Services Orchestrations. Web. Université
More informationContributions to the Bayesian Approach to Multi-View Stereo
Contributions to the Bayesian Approach to Multi-View Stereo Pau Gargallo I Piracés To cite this version: Pau Gargallo I Piracés. Contributions to the Bayesian Approach to Multi-View Stereo. Human- Computer
More informationAn approach for Self-healing Transactional Composite Services
An approach for Self-healing Transactional Composite Services Rafael Enrique Angarita Arocha To cite this version: Rafael Enrique Angarita Arocha. An approach for Self-healing Transactional Composite Services.
More informationVHDL par Ahcène Bounceur VHDL
VHDL Ahcène Bounceur 2009 Plan de travail 1. Introduction au langage 2. Prise en main 3. Machine à état 4. Implémentation sur FPGA 1 VHDL Introduction au langage Ahcène Bounceur VHDL VHIC (Very High-speed
More informationRead me carefully before making your connections!
CROSS GAME USER GUIDE Read me carefully before making your connections! Warning: The CROSS GAME converter is compatible with most brands of keyboards and Gamer mice. However, we cannot guarantee 100% compatibility.
More informationAutomatic key discovery for Data Linking
Automatic key discovery for Data Linking Danai Symeonidou To cite this version: Danai Symeonidou. Automatic key discovery for Data Linking. Artificial Intelligence [cs.ai]. Université Paris Sud - Paris
More informationDRDC Toronto No. CR Development and Documentation of the Software to Control the Noise Simulation Facility at DRDC Toronto
DRDC Toronto No. CR 2005-083 Development and Documentation of the Software to Control the Noise Simulation Facility at DRDC Toronto Élaboration et documentation du logiciel servant à contrôler l'installation
More informationTHÈSE / UNIVERSITÉ DE RENNES
N o d ordre : 00000 ANNÉE 2014 THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Européenne de Bretagne pour le grade de DOCTEUR DE L UNIVERSITÉ DE RENNES 1 Mention : Informatique École doctorale
More informationPartitionnement dans les Systèmes de Gestion de Données Parallèles
Partitionnement dans les Systèmes de Gestion de Données Parallèles Miguel Liroz-Gistau To cite this version: Miguel Liroz-Gistau. Partitionnement dans les Systèmes de Gestion de Données Parallèles. Distributed,
More informationpour le grade de DOCTEUR DE L UNIVERSITÉ DE RENNES 1 Mention : Traitement du Signal et Télécommunications École doctorale MATISSE présentée par
ANNÉE 2015 THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Européenne de Bretagne pour le grade de DOCTEUR DE L UNIVERSITÉ DE RENNES 1 Mention : Traitement du Signal et Télécommunications
More informationFormation. Application Server Description du cours
Formation Application Server 2017 Description du cours Formation Application Server 2017 Description Cette formation d une durée de 5 jours aborde les concepts de l infrastructure logicielle System Platform
More informationUsing event sequence alignment to automatically segment web users for prediction and recommendation
École Doctorale 269 Mathématiques, Sciences de l Information et de l Ingénieur (MSII) Laboratoire Modélisation Intelligence Processus et Systèmes (MIPS) Thèse présentée pour obtenir le grade de Docteur
More informationMardi 3 avril Epreuve écrite sur un document en anglais
C O L L E CONCOURS INTERNE ET EXTERNE DE TECHNICIEN DE CLASSE NORMALE DES SYSTEMES D INFORMATION ET DE COMMUNICATION Ne pas cacher le cadre d identité. Cette opération sera réalisée par l administration
More informationThesis. Reference. Dynamically adaptive animation of virtual humans. DI GIACOMO, Thomas
Thesis Dynamically adaptive animation of virtual humans DI GIACOMO, Thomas Abstract De nombreux problèmes pour la scalabilité de hiérarchies générique pour l'animation multi-résolution de corps subsistent:
More informationTowards securing pervasive computing systems by design: a language approach
Towards securing pervasive computing systems by design: a language approach Henner Jakob To cite this version: Henner Jakob. Towards securing pervasive computing systems by design: a language approach.
More informationWorkflow Concepts and Techniques
Workflow Concepts and Techniques Hala Skaf-Molli Maître de Conférences Université de Nantes Hala.Skaf@univ-nantes.fr http://pagesperso.lina.univ-nantes.fr/~skaf-h Workflow Concepts and Techniques General
More informationDevelopment of high performance hardware architectures for multimedia applications
Development of high performance hardware architectures for multimedia applications Shafqat Khan To cite this version: Shafqat Khan. Development of high performance hardware architectures for multimedia
More informationFunctional abstraction for programming Multi-level architectures: Formalisation and implementation
Université Paris-Est École doctorale MSTIC Thèse de Doctorat pour obtenir le titre de Docteur de l Université Paris-Est Spécialité : Informatique défendue par Victor Allombert Functional abstraction for
More informationman pages section 6: Demos
man pages section 6: Demos Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 816 0221 10 May 2002 Copyright 2002 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara,
More informationAlgorithmes certifiants
Michel Habib, LIAFA, Paris Diderot Algorithmique avancée M1 8 février 2010 Schedule of the talk 1 Programme du cours 2010-2011 2 3 Minimum spanning trees and shortest paths Consequences 4 Plan du cours
More informationSun Ethernet Fabric Operating System. LLA Administration Guide
Sun Ethernet Fabric Operating System LLA Administration Guide Part No.: E41876-01 July 2013 Copyright 2013, Oracle and/or its affiliates. All rights reserved. This software and related documentation are
More informationMemory Hole in Large Memory X86 Based Systems
Memory Hole in Large Memory X86 Based Systems By XES Product Development Team http://www.sun.com/desktop/products Wednesday, May 19, 2004 1 Copyright 2004 Sun Microsystems, Inc. 4150 Network Circle, Santa
More informationDétection de défaillances fondée sur la modélisation des effets physiques dans l ambiant
Détection de défaillances fondée sur la modélisation des effets physiques dans l ambiant Ahmed Mohamed To cite this version: Ahmed Mohamed. Détection de défaillances fondée sur la modélisation des effets
More informationA formal approach to distributed application synthesis and deployment automation
A formal approach to distributed application synthesis and deployment automation Jakub Zwolakowski To cite this version: Jakub Zwolakowski. A formal approach to distributed application synthesis and deployment
More informationL UNIVERSITÉ BORDEAUX I
Des aspects locaux dans les algorithmes distribués Résumé : Dans cette thèse, nous étudions différents aspects liés à la localité des algorithmes distribués. D'abord, dans le modèle avec échange de messages,
More informationTesting and maintenance of graphical user interfaces
Testing and maintenance of graphical user interfaces Valeria Lelli Leitao To cite this version: Valeria Lelli Leitao. Testing and maintenance of graphical user interfaces. Human-Computer Interaction [cs.hc].
More informationAN OBJECT-ORIENTED MODEL FOR ADAPTIVE HIGH-PERFORMANCE COMPUTING ON THE COMPUTATIONAL GRID
AN OBJECT-ORIENTED MODEL FOR ADAPTIVE HIGH-PERFORMANCE COMPUTING ON THE COMPUTATIONAL GRID THÈSE N O 3079 (2004) PRÉSENTÉE À LA FACULTÉ INFORMATIQUE ET COMMUNICATIONS Institut des systèmes informatiques
More informationThis document is a preview generated by EVS
INTERNATIONAL STANDARD NORME INTERNATIONALE IEC 60848 Edition 3.0 2013-02 GRAFCET specification language for sequential function charts Langage de spécification GRAFCET pour diagrammes fonctionnels en
More informationSun Java System Connector for Microsoft Outlook Q4 Installation Guide
Sun Java System Connector for Microsoft Outlook 7 2005Q4 Installation Guide Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 819 2565 10 October 2005 Copyright 2005 Sun
More informationSun Management Center 3.6 Version 7 Add-On Software Release Notes
Sun Management Center 3.6 Version 7 Add-On Software Release Notes For Sun Fire, Sun Blade, Netra, and Sun Ultra Systems Sun Microsystems, Inc. www.sun.com Part No. 820-2406-10 October 2007, Revision A
More informationToward a versatile transport protocol
Toward a versatile transport protocol Guillaume Jourjon To cite this version: Guillaume Jourjon. Toward a versatile transport protocol. Computer Science [cs]. Institut National Polytechnique de Toulouse
More informationL UNIVERSITÉ BORDEAUX I
N o d ordre : 3305 THÈSE PRÉSENTÉE À L UNIVERSITÉ BORDEAUX I ÉCOLE DOCTORALE DE MATHÉMATIQUES ET D INFORMATIQUE Par Bilel Derbel POUR OBTENIR LE GRADE DE DOCTEUR SPÉCIALITÉ : INFORMATIQUE Local Aspects
More informationStatic and Dynamic Methods of Polyhedral Compilation for an Efficient Execution in Multicore Environments
Static and Dynamic Methods of Polyhedral Compilation for an Efficient Execution in Multicore Environments Benoit Pradelle To cite this version: Benoit Pradelle. Static and Dynamic Methods of Polyhedral
More informationArchitecture de sécurité pour les grands systèmes ouverts, répartis et hétérogènes
Architecture de sécurité pour les grands systèmes ouverts, répartis et hétérogènes Syed Salar Hussain Naqvi To cite this version: Syed Salar Hussain Naqvi. Architecture de sécurité pour les grands systèmes
More informationANALYSIS OF A CHIMERA METHOD
ANALYSIS OF A CHIMERA METHOD FRANCO BREZZI, JACQUES-LOUIS LIONS AND OLIVIER PIRONNEAU ABSTRACT. Chimera is a variant of Schwarz algorithm which is used in CFD to avoid meshing complicated objects. In a
More informationTHÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Bretagne Loire
THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Bretagne Loire En Cotutelle Internationale avec Northwestern Polytechnical University, Xi'an, Chine pour le grade de DOCTEUR DE L UNIVERSITÉ
More informationAlgebraic Methods for Geometric Modeling
Algebraic Methods for Geometric Modeling Julien Wintz To cite this version: Julien Wintz. Algebraic Methods for Geometric Modeling. Mathematics [math]. Université Nice Sophia Antipolis, 2008. English.
More informationMODELING AND MINING BUSINESS PROCESS VARIANTS IN CLOUD ENVIRONMENTS
DOCTORAT EN CO-ACCREDITATION TELECOM SUDPARIS ET L UNIVERSITE PARIS-SACLAY Spécialité: Informatique Ecole doctorale: Sciences et Ingénierie Présenté parkarn Yongsiriwit Pour obtenir le grade de DOCTEUR
More informationSun Management Center 4.0 Version 4 Add-On Software Release Notes
Sun Management Center 4.0 Version 4 Add-On Software Release Notes Sun Microsystems, Inc. www.sun.com Part No. 820-4781-10 June 2008, Revision A Submit comments about this document at: http://www.sun.com/hwdocs/feedback
More informationTHÈSE DE DOCTORAT DOMAINE : STIC Spécialité : Informatique Soutenue le 17 décembre 2014 par :
N o d ordre : 2014-27-TH SUPELEC École Doctorale MATISSE Mathématiques, Télécommunications, Informatique, Signal, Systèmes Électroniques THÈSE DE DOCTORAT DOMAINE : STIC Spécialité : Informatique Soutenue
More informationOptimisation et application du codage réseau dans l architecture des futurs réseaux sans fils
Optimisation et application du codage réseau dans l architecture des futurs réseaux sans fils Samih Abdul-Nabi To cite this version: Samih Abdul-Nabi. Optimisation et application du codage réseau dans
More informationTraditional Chinese Solaris Release Overview
Traditional Chinese Solaris Release Overview Sun Microsystems, Inc. 901 N. San Antonio Road Palo Alto, CA 94303-4900 U.S.A. Part No: 806 3489 10 March 2000 Copyright 2000 Sun Microsystems, Inc. 901 N.
More informationSun Management Center 4.0 Version 3 Add-On Software Release Notes
Sun Management Center 4.0 Version 3 Add-On Software Release Notes Sun Microsystems, Inc. www.sun.com Part No. 820-4491-10 March 2008, Revision A Submit comments about this document at: http://www.sun.com/hwdocs/feedback
More informationDocteur de l Ecole Nationale Supérieure des Télécommunications de Paris
THÈSE Présentée pour obtenir le grade de Docteur de l Ecole Nationale Supérieure des Télécommunications de Paris Spécialité informatique et réseaux Rony CHAHINE Services multi-fournisseurs et trans-réseaux
More informationCollections version 1.4
Collections version 1.4 Programmation Orientée Objet Jean-Christophe Routier Licence mention Informatique Université de Lille 1 Lille 1 - Licence Informatique Programmation Orientée Objet 1 Premier regard
More informationIdentification of cryptographic algorithms in binary programs
Identification of cryptographic algorithms in binary programs Pierre Lestringant To cite this version: Pierre Lestringant. Identification of cryptographic algorithms in binary programs. Cryptography and
More informationTHÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Bretagne de Loire. pour le grade de DOCTEUR DE L UNIVERSITÉ DE RENNES 1
ANNÉE 2016 THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Bretagne de Loire pour le grade de DOCTEUR DE L UNIVERSITÉ DE RENNES 1 Mention : Informatique Ecole doctorale MATISSE présentée par
More informationEnergy-efficient reliable transport protocols for IP-based low power wireless networks
Energy-efficient reliable transport protocols for IP-based low power wireless networks Ahmed Ayadi To cite this version: Ahmed Ayadi. Energy-efficient reliable transport protocols for IP-based low power
More informationA Policy-Based Resource Reservation Service for Maritime Tactical Networks
A Policy-Based Resource Reservation Service for Maritime Tactical Networks David Kidston and Isabelle Labbé The work described in this document was sponsored by the Department of National Defence under
More informationCollections. Collections. USTL routier 1
Collections USTL http://www.lifl.fr/ routier 1 Premier regard sur les collections java.util Une collection est un groupe d objets (ses éléments). On trouve des collections de comportements différents (listes,
More informationModel-based Synthesis of Distributed Real-time Automotive Architectures
Model-based Synthesis of Distributed Real-time Automotive Architectures Ernest Woźniak To cite this version: Ernest Woźniak. Model-based Synthesis of Distributed Real-time Automotive Architectures. Embedded
More informationA computerized system to store and retrieve data on biological and biotechnological veterinary products of the American continent
Rev. sa. lech. Off. int. Epiz., 1992, 11 (3), 925 929 A computerized system to store and retrieve data on biological and biotechnological veterinary products of the American continent L.V. MELENDEZ *,
More informationLA NWM INSTALLATION. Computer requirements. Updating LA Network Manager. Saving user presets and current Session. technical bulletin - v.4.
LA NWM INSTALLATION technical bulletin - v.4.0 Computer requirements System: Windows 7 to Windows 10 macos El Capitan (OS X 10.11) to macos Mojave (10.14) LA NWM may not start if Windows is not up to date.
More informationVerification and Test of Interoperability Security Policies
TÉLÉCOM SUDPARIS En co-accréditation avec l université d Evry École Doctorale - S&I Verification and Test of Interoperability Security Policies Thèse de Doctorat Mention : Informatique Présentée par Mazen
More informationFeature-Based Facial Expression Recognition: Experiments With a Multi-Layer Perceptron
Feature-Based Facial Expression Recognition: Experiments With a Multi-Layer Perceptron Zhengyou Zhang To cite this version: Zhengyou Zhang. Feature-Based Facial Expression Recognition: Experiments With
More informationEnvironnement de Programmation Multi Niveau pour Architectures Hétérogènes MPSoC
Environnement de Programmation Multi Niveau pour Architectures Hétérogènes MPSoC K. Popovici To cite this version: K. Popovici. Environnement de Programmation Multi Niveau pour Architectures Hétérogènes
More informationSolaris 8 User Supplement. Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA U.S.A.
Solaris 8 User Supplement Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA 94303-4900 U.S.A. Part Number 806-3646 10 June 2000 Copyright 2000 Sun Microsystems, Inc. 901 San Antonio Road, Palo
More informationRMP Simulation User Guide
Richard Sorensen Kihomac DRDC CORA CR 2011 099 October 2011 Defence R&D Canada Centre for Operational Research and Analysis National Defence Défense nationale Prepared By: Richard Sorensen Kihomac 5501
More informationSun Ethernet Fabric Operating System. IGMP Administration Guide
Sun Ethernet Fabric Operating System IGMP Administration Guide Part No.: E21712-02 July 2012 Copyright 2010, 2012, Oracle and/or its affiliates. All rights reserved. This software and related documentation
More informationAmélioration des Techniques de Génération de maillages 3D des structures anatomiques humaines pour la Méthode des Éléments Finis
THÈSE de DOCTORAT presentée par Claudio LOBOS YÁÑEZ pour obtenir le grade de DOCTEUR de l UNIVERSITE JOSEPH FOURIER Spécialité: Modèles, Méthodes et Algorithmes en Biologie, Santé et Environnement. Amélioration
More informationTHÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Européenne de Bretagne
ANNÉE 2015 THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Européenne de Bretagne pour le grade de DOCTEUR DE L UNIVERSITÉ DE RENNES 1 Mention : Traitement du Signal et Télécommunications
More informationFont Administrator User s Guide
Font Administrator User s Guide Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 816 0281 10 May 2002 Copyright 2002 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara,
More informationUser guide. Bluetooth Keyboard BKB10
User guide Bluetooth Keyboard BKB10 Contents Basics...3 Overview... 3 Charging the keyboard... 4 Turning on the keyboard... 5 Getting started... 6 Setting up the keyboard... 6 Support on the web...6 Legal
More information