• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 3
  • 1
  • 1
  • Tagged with
  • 5
  • 5
  • 4
  • 4
  • 3
  • 3
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Gestion autonomique d'applications dynamiques sûres et résilientes / Autonomic Management of Reliable and Resilient Dynamic Applications

Calmant, Thomas 19 October 2015 (has links)
Les architectures orientées services (SOA) sont considérées comme le moyen le plus avancé pour réaliser et intégrer rapidement des applications modulaires et flexibles.Dans ce domaine, les plates-formes SOA à disposition des développeurs et des architectes de produits logiciels sont multiples; les deux plus évoluées d'entre elles étant SCA et OSGi.Une application s'appuyant sur l'une de ces plates-formes peut ainsi être assemblée avec le minimum de composants nécessaires à la réalisation de ses tâches, afin de réduire sa consommation de ressources et d'augmenter sa maintenabilité.De plus, ces plates-formes autorisent l'ajout de composants greffons qui n'étaient pas connus lors des phases initiales de la réalisation du produit.Elles permettent ainsi de mettre à jour, d'étendre et d'adapter continuellement les fonctionnalités du produit de base ou des services techniques nécessaires à sa mise en production, sans interruption de service.Ces capacités sont notamment utilisées dans le cadre du paradigme DevOps et, plus généralement, pour mettre en œuvre le déploiement continu d'artefacts.Cependant, l'extensibilité offerte par ces plates-formes peut diminuer la fiabilité globale du système: une tendance forte pour développer un produit est l'assemblage de composants provenant de tierces-parties. De tels composants peuvent être d'une qualité inconnue voire douteuse.En cas d'erreur, de détérioration des performances, etc., il est difficile de diagnostiquer les composants ou combinaisons de composants incriminés.Il devient indispensable pour le producteur d'un logiciel de déterminer la responsabilité des différents composants impliqués dans un dysfonctionnement.Cette thèse a pour objectif de fournir une plate-forme, Cohorte, permettant de concevoir et d'exécuter des produits logiciels extensibles et résilients aux dysfonctionnements d'extensions non qualifiées.Les composants de tels produits pourront être développés dans différents langages de programmation et être déployés (ajout, mise à jour et retrait) en continu et sans interruption de service.Notre proposition adopte pour principe d'isoler les composants considérés comme instables ou peu sûrs.Le choix des composants à isoler peut être décidé par l'équipe de développement et l'équipe opérationnelle, à partir de leur expertise, ou bien déterminé à partir d'une combinaison d'indicateurs.Ces derniers évoluent au cours du temps pour refléter la fiabilité des composants.Par exemple, des composants peuvent être considérés fiables après une période de quarantaine; une mise à jour peut entraîner la dégradation de leur stabilité, etc..Par conséquent, il est indispensable de remettre en cause les choix initiaux dans l'isolation des composants afin, dans le premier cas, de limiter le coup des communications entre composants et, dans le deuxième cas, de maintenir le niveau de fiabilité du noyau critique du produit. / Service-Oriented architectures (SOA) are considered the most advanced way to develop and integrate modular and flexible applications.There are many SOA platforms available for software developers and architects; the most evolved of them being SCA and OSGi.An application based on one of these platforms can be assembled with only the components required for the execution of its tasks, which helps decreasing its resource consumption and increasing its maintainability.Furthermore, those platforms allow adding plug-ins at runtime, even if they were not known during the early stages of the development of the application.Thus, they allow updating, extending and adapting the features of the base product or of the technical services required for its execution, continuously and without outage.Those capabilities are applied in the DevOps paradigm and, more generally, to implement the continuous deployment of artifacts.However, the extensibility provided by those platforms can decrease the overall reliability of the system: a strong tendency in software development is the assembly of third-parties components.Such components may be of unknown or even questionable quality.In case of error, deterioration of performance, ... it is difficult to identify the implicated components or combinations of components.It becomes essential for the software producer to determine the responsibility of the various components involved in a malfunction.This thesis aims to provide a platform, Cohorte, to design and implement scalable software products, resilient to malfunctions of unqualified extensions.The components of such products may be developed in various programming languages and be deployed continuously (adding, updating and withdrawal) and without interruption of service.Our proposal adopts the principle of isolating the components considered unstable or insecure.The choice of the components to be isolated may be decided by the development team and the operational team, from their expertise, or determined from a combination of indicators.The latters evolve over time to reflect the reliability of components.For example, components can be considered reliable after a quarantine period; an update may result in deterioration of stability, ...Therefore, it is essential to question the initial choices in isolating components to limit, in the first case, the scope of communications between components and, in the second case, to maintain the reliability of the critical core of the product.
2

CEYLAN : Un canevas pour la création de gestionnaires autonomiques extensibles et dynamiques.

Maurel, Yoann 01 December 2010 (has links) (PDF)
Les applications modernes sont de plus en plus dynamiques et hétérogènes. L'architecture des systèmes modernes n'est plus figée et prévisible. Il en va de même pour les besoins des utilisateurs, les capacités des ordinateurs et des réseaux, et les technologies utilisées. Il nous parait essentiel que les gestionnaires autonomiques soient dynamiquement adaptables et extensibles pour prendre en compte ces changements et faciliter la maintenance. L'objectif de notre travail est de définir et d'implanter un cadriciel, ou framework, facilitant le développement de gestionnaires autonomiques. Dans cet effort, nous visons à définir un modèle architectural permettant le développement de gestionnaires autonomiques modulaires, homogènes, souples, évolutifs, dynamiques et administrables. Un objectif important de ce travail est de clairement définir et séparer les concepts appartenant de façon générique à un gestionnaire autonomique et les aspects métier, développés au cas par cas. Le but est de permettre au experts domaine de se concentrer sur l'écriture des fonctions autonomiques et de ne pas gérer entièrement l'enchaînement et le contrôle de ces fonctions. Pour atteindre nos objectifs, nous avons tout d'abord défini la notion de tâche d'administration. Une tâche d'administration est une entité indépendante et spécialisée qui réalise une ou plusieurs fonctions d'administration. Le gestionnaire autonomique résulte de la combinaison opportuniste de ces tâches. A chaque instant, l'ensemble de tâches utilisées peut être modifié en fonction du contexte et des informations remontées par la plateforme. Des mécanismes de sélections permettent de gérer les conflits éventuels et permettent d'assurer une cohérence du comportement du gestionnaire. Nous avons ensuite défini une architecture de gestion de ces tâches permettant la combinaison opportuniste de ces tâches en fonction du contexte. Cette architecture a été implantée sous la forme d'un framework fondé sur la technologie des composants orientés services. Le framework que nous avons développé fournit un cadre pour l'intégration dynamique de fonctions autonomiques et pour leur gestion en fonction du contexte et de politiques d'administration, elles mêmes évolutives. En conclusion de ce travail, nous présentons une implémentation particulière sous la forme d'un modèle à composants de sorte que le travail des développeurs est facilité et que la réutilisation est favorisée. Enfin nous donnons un exemple d'application développée au dessus de ce framework.
3

Gestion autonomique de performance, d'énergie et de qualité de service. Application aux réseaux filaires, réseaux de capteurs et grilles de calcul

Sharrock, Remi 08 December 2010 (has links) (PDF)
La motivation principale de cette thèse est de faire face à l'accroissement de la complexité des systèmes informatiques, qui, dans un futur proche ( de l'ordre de quelques années) risque fort d'être le principal frein à leur évolution et à leur développement. Aujourd'hui la tendance s'inverse et le coût de gestion humaine dépasse le coût des infrastructures matérielles et logicielles. De plus, l'administration manuelle de grands systèmes (applications distribuées, réseaux de capteurs, équipements réseaux) est non seulement lente mais aussi sujette à de nombreuses erreurs humaines. Un des domaines de recherche émergent est celui de l'informatique autonomique qui a pour but de rendre ces systèmes auto-gérés. Nous proposons une approche qui permet de décrire des politiques de gestion autonomiques de haut niveau. Ces politiques permettent au système d'assurer quatre propriétés fondamentales de l'auto-gestion: l'auto-guérison, l'auto-configuration, l'auto-protection et l'auto-optimisation. Nos contributions portent sur la spécification de diagrammes de description de politiques de gestion autonomiques appelés (S)PDD "(Sensor) Policy Description Diagrams". Ces diagrammes sont implémentés dans le gestionnaire autonomique TUNe et l'approche a été validée sur de nombreux systèmes: simulation électromagnétique répartie sur grille de calcul, réseaux de capteurs SunSPOT, répartiteur de calcul DIET. Une deuxième partie présente une modélisation mathématique de l'auto-optimisation pour un " datacenter ". Nous introduisons un problème de minimisation d'un critère intégrant d'une part la consommation électrique des équipements du réseau du " datacenter " et d'autre part la qualité de service des applications déployées sur le " datacenter ". Une heuristique permet de prendre en compte les contraintes dues aux fonctions de routage utilisées.
4

Generic autonomic service management for component-based applications / Gestion autonomique générique des services pour les applications à base de composants

Belhaj, Nabila 25 September 2018 (has links)
Au cours de la dernière décennie, la complexité des applications a considérablement évolué afin de répondre aux besoins métiers émergeants. Leur conception implique une composition distribuée de composants logiciels. Ces applications fournissent des services à travers les interactions métiers maintenues par leurs composants. De telles applications sont intrinsèquement en évolution dynamique en raison de la dynamicité de leurs contextes. En effet, elles évoluent dans des environnements qui changent tout en présentant des conditions très dynamiques durant leur cycle de vie d’exécution. De tels contextes représentent une lourde charge pour les développeurs aussi bien pour leurs tâches de conception que de gestion. Cela a motivé́ le besoin de renforcer l’autonomie de gestion des applications pour les rendre moins dépendantes de l’intervention humaine en utilisant les principes de l’Informatique Autonomique. Les Systèmes Informatiques Autonomes (SIA) impliquent l’utilisation des boucles autonomiques, dédiées aux systèmes afin de les aider à accomplir leurs tâches de gestion. Ces boucles ont pour objectif d’adapter leurs systèmes à la dynamicité de leurs contextes, en se basant sur une logique d’adaptation intégrée. Cette logique est souvent donnée par des règles statiques codées manuellement. La construction de ces règles demande beaucoup de temps tout en exigeant une bonne expertise. En fait, elles nécessitent une compréhension approfondie de la dynamicité du système afin de prédire les adaptations précises à apporter à celui-ci. Par ailleurs, une telle logique ne peut envisager tous les scénarios d’adaptation possibles, donc, ne sera pas en mesure de prendre en compte des adaptations pour des situations précédemment inconnues. Les SIA devraient donc être assez sophistiqués afin de pouvoir faire face à la nature dynamique de leurs contextes et de pouvoir apprendre par eux-mêmes afin d’agir correctement dans des situations inconnues. Les SIA devraient également être capables d’apprendre de leur propre expérience passée afin de modifier leur logique d’adaptation en fonction de la dynamicité de leurs contextes. Dans ce manuscrit, nous abordons les lacunes décrites en utilisant les techniques d’Apprentissage par Renforcement (AR) afin de construire notre logique d’adaptation. Cependant, les approches fondées sur l’AR sont connues pour leur mauvaise performance lors des premières phases d’apprentissage. Cette mauvaise performance entrave leur utilisation dans le monde réel des systèmes déployés. Par conséquent, nous avons amélioré cette logique d’adaptation avec des capacités d’apprentissage plus performantes avec une approche AR en multi-pas. Notre objectif est d’optimiser la performance de l’apprentissage et de le rendre plus efficace et plus rapide, en particulier durant les premières phases d’apprentissage. Nous avons aussi proposé́ un cadriciel générique visant à aider les développeurs dans la construction d’applications auto-adaptatives. Nous avons donc proposé de transformer des applications existantes en ajoutant des capacités d’autonomie et d’apprentissage à leurs composants. La transformation consiste en l’encapsulation des composants dans des conteneurs autonomiques pour les doter du comportement auto-adaptatif nécessaire. Notre objectif est d’alléger la charge des tâches de gestion des développeurs et de leur permettre de se concentrer plus sur la logique métier de leurs applications. Les solutions proposées sont destinées à être génériques, granulaires et basées sur un standard connu, à savoir l’Architecture de Composant de Service. Enfin, nos propositions ont été évaluées et validées avec des résultats expérimentaux. Ils ont démontré leur efficacité en montrant un ajustement dynamique des applications transformées face aux dynamicités de leurs contextes en un temps beaucoup plus court comparé aux approches existantes / During the past decade, the complexity of applications has significantly scaled to satisfy the emerging business needs. Their design entails a composition of distributed and interacting software components. They provide services by means of the business interactions maintained by their components. Such applications are inherently in a dynamic evolution due to their context dynamics. Indeed, they evolve in changing environments while exhibiting highly dynamic conditions during their execution life-cycle (e.g., their load, availability, performance, etc.). Such contexts have burdened the applications developers with their design and management tasks. Subsequently, motivated the need to enforce the autonomy of their management to be less dependent on human interventions with the Autonomic Computing principles. Autonomic Computing Systems (ACS) implies the usage of autonomic loops, dedicated to help the system to achieve its management tasks. These loops main role is to adapt their associated systems to the dynamic of their contexts by acting upon an embedded adaptation logic. Most of time, this logic is given by static hand-coded rules, often concern-specific and potentially error-prone. It is undoubtedly time and effort-consuming while demanding a costly expertise. Actually, it requires a thorough understanding of the system design and dynamics to predict the accurate adaptations to bring to the system. Furthermore, such logic cannot envisage all the possible adaptation scenarios, hence, not able to take appropriate adaptations for previously unknown situations. ACS should be sophisticated enough to cope with the dynamic nature of their contexts and be able to learn on their own to properly act in unknown situations. They should also be able to learn from their past experiences and modify their adaptation logic according to their context dynamics. In this thesis manuscript, we address the described shortcomings by using Reinforcement Learning (RL) techniques to build our adaptation logic. Nevertheless, RL-based approaches are known for their poor performance during the early stages of learning. This poor performance hinders their usage in real-world deployed systems. Accordingly, we enhanced the adaptation logic with sophisticated and better-performing learning abilities with a multi-step RL approach. Our main objective is to optimize the learning performance and render it timely-efficient which considerably improves the ACS performance even during the beginning of learning phase. Thereafter, we pushed further our work by proposing a generic framework aimed to support the application developers in building self-adaptive applications. We proposed to transform existing applications by dynamically adding autonomic and learning abilities to their components. The transformation entails the encapsulation of components into autonomic containers to provide them with the needed self-adaptive behavior. The objective is to alleviate the burden of management tasks on the developers and let them focus on the business logic of their applications. The proposed solutions are intended to be generic, granular and based on a well known standard (i.e., Service Component Architecture). Finally, our proposals were evaluated and validated with experimental results. They demonstrated their effectiveness by showing a dynamic adjustment to the transformed application to its context changes in a shorter time as compared to existing approaches
5

Gestion autonomique de performance, d'énergie et de qualité de service : Application aux réseaux filaires, réseaux de capteurs et grilles de calcul / Autonomic management of performance, energy consumption and quality of service : Application to wired networks, sensors networks and grid computing facilities

Sharrock, Rémi 08 December 2010 (has links)
La motivation principale de cette thèse est de faire face à l'accroissement de la complexité des systèmes informatiques, qui, dans un futur proche ( de l'ordre de quelques années) risque fort d'être le principal frein à leur évolution et à leur développement. Aujourd'hui la tendance s'inverse et le coût de gestion humaine dépasse le coût des infrastructures matérielles et logicielles. De plus, l'administration manuelle de grands systèmes (applications distribuées, réseaux de capteurs, équipements réseaux) est non seulement lente mais aussi sujette à de nombreuses erreurs humaines. Un des domaines de recherche émergent est celui de l'informatique autonomique qui a pour but de rendre ces systèmes auto-gérés. Nous proposons une approche qui permet de décrire des politiques de gestion autonomiques de haut niveau. Ces politiques permettent au système d'assurer quatre propriétés fondamentales de l'auto-gestion: l'auto-guérison, l'auto-configuration, l'auto-protection et l'auto-optimisation. Nos contributions portent sur la spécification de diagrammes de description de politiques de gestion autonomiques appelés (S)PDD "(Sensor) Policy Description Diagrams". Ces diagrammes sont implémentés dans le gestionnaire autonomique TUNe et l'approche a été validée sur de nombreux systèmes: simulation électromagnétique répartie sur grille de calcul, réseaux de capteurs SunSPOT, répartiteur de calcul DIET. Une deuxième partie présente une modélisation mathématique de l’auto-optimisation pour un « datacenter ». Nous introduisons un problème de minimisation d’un critère intégrant d’une part la consommation électrique des équipements du réseau du « datacenter » et d’autre part la qualité de service des applications déployées sur le « datacenter ». Une heuristique permet de prendre en compte les contraintes dues aux fonctions de routage utilisées. / The main challenge of this thesis is to cope with the growing complexity of IT systems. In a near future (mainly the next few years) this complexity will prevent new developments and system evolutions. Today the trend is reversing and the managing costs are overtaking the hardware and software costs. Moreover, the manual administration of large systems (distributed applications, sensor networks, and network equipment) is not only slow but error-prone. An emerging research field called autonomic computing tries to bring up self-managed systems. We introduce an approach that enable the description of high level autonomic management policies. These policies allow the system to ensure four fundamental properties for self-management: self-healing, self-self-configuring, self-protecting and self-optimizing. We specify autonomic management Policy Description Diagrams (PDD) and implement them in Toulouse University Network (TUNe). We validated our approach on many systems: electromagnetic simulations distributed on computer grids (grid’5000), wireless sensor networks with SunSPOTs and the computing scheduler DIET. A second part of this thesis presents a mathematical modeling for self-optimizing datacenters. We introduce a minimization problem with a criterion integrating both the electrical consumption of the datacenter networking equipment and the quality of service of the deployed applications. A heuristic takes into account the routing functions used on the network.

Page generated in 0.0888 seconds