466 research outputs found

    Vers un environnement pour le déploiement logiciel autonomique

    Get PDF
    Le déploiement de logiciels répartis dans des environnements à grande échelle et ouverts (tels les systèmes ubiquitaires, les systèmes mobiles et les systèmes P2P) est une problématique actuelle ouverte. Ces environnements sont distribués, hétérogènes et peuvent être de nature instable (dotés d une topologie dynamique du réseau). Le déploiement dans ces environnements met en jeu un très grand nombre de machines, de liens réseau ainsi qu un ensemble de contraintes de déploiement. Quelques solutions de déploiement existent aujourd hui, mais ne sont exploitables que dans le cadre d architectures figées et fiables. Dans la plupart des solutions, une personne en charge du déploiement doit décrire plus ou moins manuellement la topologie. En outre, la majorité de ces outils ne prennent pas en compte les problèmes dûs à la variabilité de la qualité de service du réseau, aux pannes des hôtes, aux défaillances des liens du réseau ou encore aux changements dynamiques de topologie, qui caractérisent les environnements ouverts. Dans ce mémoire, nous présentons les motivations de la réalisation d'une infrastructure de déploiement logiciel autonomique et les exigences sous-jacentes d'une telle plate-forme. Nous présentons un état de l art du déploiement logiciel que nous analysons au regard du contexte visé. Ensuite, nous présentons notre contribution pour le déploiement autonomique. Notre proposition s'appuie sur une combinaison de technologies (composants logiciels, agents mobiles adaptables, intergiciel, langage dédié). Nous proposons j-ASD, un intergiciel qui exploite la complémentarité de ces technologies pour réaliser un déploiement logiciel autonomique. Le processus de déploiement contient trois étapes : description des contraintes de déploiement, résolution, et déploiement autonomique. Pour la première étape, nous avons défini un langage dédié (DSL) comme langage de haut niveau pour exprimer des contraintes de déploiement. Pour la deuxième, nous avons conçu une infrastructure répartie pour collecter les propriétés des sites cibles, ce qui permet de résoudre les contraintes de déploiement. Pour la troisième étape, nous proposons un intergiciel à base d agents mobiles pour la réalisation et la supervision du déploiement autonomique. Enfin, nous donnons les éléments de conception du prototype que nous avons implémenté, ainsi que les résultats de certaines expérimentations pour montrer la validité de notre approcheSoftware deployment in large-scale and open distributed systems (such as ubiquitous systems, mobile systems and P2P systems) is still an open issue. These environments are distributed, heterogeneous and can be naturally unstable (fitted with a dynamic network topology). Deployment in such environments require the management of a large number of hosts, network links and deployment constraints. Existing distributed deployment solutions are usable only within static and reliable topologies of hosts, where a man in charge of the deployment has to describe more or less manually the topology. Moreover, majority of these tools do not take into account network and computer QoS variabilities, hosts crashes, network link failures and network topology changes, which characterize open and mobile environments. In this thesis, we discuss the motivations for an autonomic software deployment and the requirements underlying for such a platform. We carefully study and compare the existing work about software deployment. Then, we propose a middleware framework, designed to reduce the human cost for setting up software deployment and to deal with failure-prone and change-prone environments. We also propose an autonomic deployment process in three steps : deployment constraints description step, constraints resolution step and the autonomic deployment step. For the first step, we defined a high-level constraint-based dedicated language (DSL) as support for expressing deployment constraints. In the second step, we have designed a distributed infrastructure to collect target hosts properties used to solve deployment constraints. For the third step, we propose an agent-based system for establishing and maintaining software deployment. At last, we give an overview of our working prototype with some details on some experimental resultsEVRY-INT (912282302) / SudocSudocFranceF

    Ethylene : composants dynamiques pour la mise en øeuvre d'IHM plastiques en informatique ambiante

    No full text
    National audienceL'informatique ambiante impose de nouvelles contraintes sur la manière de construire les interfaces Homme- Machine (IHM). Traditionnellement centralisée sur un unique dispositif, l'IHM doit maintenant être distribuable de manière opportuniste sur un ensemble dynamique de dispositifs hétérogènes. Ces nouvelles IHM, dites plastiques, sont abordées dans cet article sous l'angle du génie logiciel (GL). Ce sont des logiciels répartis, dynamiquement adaptables, capables de s'affranchir de l'hétérogénéité des dispositifs et des logiciels. Les solutions actuelles de l'état de l'art en GL et systèmes répartis ne tiennent pas compte de la spécificité de l'interaction homme-machine. Nous proposons donc Ethylene, un cadre conceptuel et technique pour déve- lopper des IHM plastiques en informatique ambiante. Notre solution s'appuie sur l'intégration des approches dirigées par les modèles, d'une combinaison particulière de l'approche à composants et de l'approche à service et d'une manière originale de s'affranchir de l'hétérogénéité des modèles de communication inter- composant

    Architecture Orienté Service Dynamique : D-SOA

    Get PDF
    Depuis quelques années, la notion d'Architecture Orientée Services (SOA) s'est rapidement répandue et a été largement acceptée par l'industrie du logiciel. L'aspect dynamique d'une SOA nous semble être l'un des points fondamentaux et cruciaux de cette approche. Le concept d'une Architecture Orientée Services Dynamique D-SOA, se propose de fournir des moyens pour rendre l'architecture adaptable dynamiquement, en cours d'exécution, aux besoins des applications. Les entités qui collaborent pour une application donnée, ne sont pas forcément, connue ou prévisible statiquement. Une D-SOA doit pouvoir s'adapter dynamiquement à son environnement. Elle doit pouvoir supporter aisément des évolutions et des changements dans l'utilisation même de l'application. Elle doit permettre de connecter des entités sans qu'il soit nécessaire qu'elles se connaissent au préalable, qu'elles partagent une même interface de services. A travers l'implémentation de D-SOA au-dessus de la plate-forme OSGi on montre d'une part, sa complémentarité par rapport à OSGi, puis d'autre part, sa simplicité de mise en oeuvre. Cette immersion de D-SOA au-dessus OSGi permet d'envisager des utilisations pour un large public sur des petits supports matériels tels que des PDAs et Smartphones. Finalement, cette notion de SOA dynamique, nous semble être un élément important pour les architectures des applications pour l'Internet du Futur, surtout dans le contexte dynamique des réseaux sociaux et de l'Internet des Objets

    Adaptation des composants centrée sur l'utilisation

    Get PDF
    Avec la notion de composant logiciel, la démarche de conception d'applications informatiques a vu apparaître une alternative intéressante à l'approche classique, où le développement est mené selon une approche centralisée. L'idée est en effet de permettre la construction d'applications adaptées aux besoins spécifiques de chaque utilisateur par assemblage de composants préexistants. Néanmoins, le choix de composants prédéfinis, sur étagère, pose le problème de leur adéquation à une utilisation spécifique. Dans ce contexte, la possibilité d'adapter les composants semble cruciale, si l'on souhaite rendre réellement effective l'approche de développement par assemblage de composants. Cette thèse introduit une nouvelle approche de l'adaptation de composants logiciels qui consiste à adapter le composant à ses contextes d'utilisation en se basant sur le point de vue de l'utilisateur. Nous décrivons le profil d'utilisation sous la forme d'un ensemble de triplets dont chacun spécifie les propriétés souhaitées, les réactions correspondantes à traiter dans le cas où une condition n'est pas vérifiée et les échéanciers d'évaluation des propriétés. Nous proposons aussi un service de supervision de composant (SSC) qui repose sur la surveillance de l'état des composants pour obtenir des clichés qui reflètent l'état actuel du composant et les changements récents. Nous définissons également le service de sûreté de service (SSS) qui intercepte les requêtes clientes et qui les délègue vers le composant le plus convenable, tout en gérant l'exécution du composant en fonction du profil d'usage. ABSTRACT : The concept of software component, provides an interesting alternative to the traditional way of designing data-processing applications, where the development is undertaken according to a centralized approach. The idea is indeed to allow the construction of applications adapted to the specific needs for each user by assembling preexistent components. Nevertheless, the choice of off-the-shelf components, raises the problem of their adequacy to a specific use. In this context, the ability to adapt components appears to be crucial, if one wishes to make really effective the approach of development by assembling components. This thesis introduces a new approach of the adaptation of software components which consists in adapting the component to its contexts of use centered on the point of view of the user. We describe a user profile as a set of triples, where each triple specifies the desired properties, the reactions to be run if a condition is not checked and the schedule of evaluation of properties. We propose also a service of supervision of component (SSC) which is based on the monitoring of the state of the components to obtain snapshots which reflect the current state of the component and the recent changes. We also define the service of safety of service (SSS) which intercepts the user requests and delegates them towards the most suitable component, while managing the execution of the component according to the profile of use

    Reconfigurations dynamiques de services dans un intergiciel Ă  composants CORBA CCM

    Get PDF
    International audienceToday, component oriented middlewares are used to design, develop and deploy easily distributed applications, by ensuring the heterogeneity, interoperability, and reuse of the software modules, and the separation between the business code encapsulated in the components and the system code managed by the containers. Several standards answer this definition such as: CCM (CORBA Component Model), EJB (Enterprise Java Beans) and .Net. However these standards offer a limited and fixed number of system services, removing any possibility to add system services or to reconfigure dynamically the middleware. Our works propose mechanisms to add and to adapt dynamically the system services, based on a reconfiguration language which is dynamically adaptable to the need of the reconfiguration, and on a tool of dynamic reconfiguration, a prototype was achieved for the OpenCCM platform, that is an implementation of the CCM specification. This work was partially financed by the european project IST-COACH (2001-34445).De nos jours, les intergiciels à composants sont utilisés pour concevoir, développer, et déployer facilement les applications réparties, et assurer l'hétérogénéité, et l'interopérabilité, ainsi que la réutilisation des modules logiciels, et la séparation entre le code métier encapsulé dans des composants et le code système géré par les conteneurs. De nombreux standards répondent à cette définition tels: CCM (CORBA Component Model), EJB (Entreprise Java Beans) et .NET. Cependant ces standards offrent un nombre limité et figé de services systèmes, supprimant ainsi toute possibilité d'ajout de services systèmes ou de reconfiguration dynamiques de l'intergiciel. Nos travaux proposent des mécanismes d'ajout et d'adaptation dynamique des services systèmes, basés sur un langage de reconfiguration adaptable dynamiquement aux besoins de la reconfiguration et sur un outil de reconfiguration dynamique. Un prototype a été réalisé pour la plateforme OpenCCM, qui est une implémentation de la spécification CCM de l'OMG. Ce travail a été partiellement financé par le projet européen IST-COACH (2001-34445)

    Ethylene : composants dynamiques pour la mise en øeuvre d'IHM plastiques en informatique ambiante

    Get PDF
    National audienceL'informatique ambiante impose de nouvelles contraintes sur la manière de construire les interfaces Homme- Machine (IHM). Traditionnellement centralisée sur un unique dispositif, l'IHM doit maintenant être distribuable de manière opportuniste sur un ensemble dynamique de dispositifs hétérogènes. Ces nouvelles IHM, dites plastiques, sont abordées dans cet article sous l'angle du génie logiciel (GL). Ce sont des logiciels répartis, dynamiquement adaptables, capables de s'affranchir de l'hétérogénéité des dispositifs et des logiciels. Les solutions actuelles de l'état de l'art en GL et systèmes répartis ne tiennent pas compte de la spécificité de l'interaction homme-machine. Nous proposons donc Ethylene, un cadre conceptuel et technique pour déve- lopper des IHM plastiques en informatique ambiante. Notre solution s'appuie sur l'intégration des approches dirigées par les modèles, d'une combinaison particulière de l'approche à composants et de l'approche à service et d'une manière originale de s'affranchir de l'hétérogénéité des modèles de communication inter- composant

    Adaptabilité et reconfiguration des systèmes temps-réel embarqués

    Get PDF
    Les systèmes temps réel peuvent être grands, distribués et avoir un environnement dynamique. Cela exige la mise en place de différents modes de fonctionnement et techniques de fiabilité. Par ailleurs, ces différents changements dynamiques d'architecture et de comportement ont un impact sur les caractéristiques temporelles des systèmes qui nécessitent une étude particulière de la capacité des comportements d'adaptation à garantir les contraintes fixées aux systèmes. Le travail présenté dans cette thèse est focalisé sur la spécification de l'adaptabilité d'un système temps réel et l'étude sur de jeux de configurations prédéfinis de l'impact temporel des actions d'adaptation dynamique. Pour cela, nous présentons une méthodologie outillée basée sur la notion de Mode du profil MARTE. Chaque mode représente un comportement possible du système pour un environnement bien déterminé associé à une configuration logicielle. L'approche développée propose de modéliser le comportement adaptatif à travers la définition du contexte, de la variabilité, des opérations de reconfigurations et de la configuration de base. L'analyse d'ordonnançabilité est ensuite effectuée au niveau du modèle en intégrant l'impact des comportements d'adaptation. Deux paradigmes de modélisation peuvent alors être exploités pour effectuer cette analyse : les requêtes et les flots de données. Cela permet de vérifier que les contraintes temporelles de notre système resteront satisfaites en intégrant les opérations de reconfiguration issues du comportement adaptatif. Enfin, l'approche permet de générer des implantations des comportements adaptatifs à partir des modèles afin d'automatiser l'intégration des mécanismes d'adaptation dans les systèmes temps réel.Real-time systems can be large, distributed and have a dynamic environment. This requires the introduction of various operating modes and reliability techniques. Different operating modes are associated with a different architecture and behavior. Dynamic changes between these modes have an impact on the temporal characteristics of systems which requires an analysis whether the constraints of the system are also fulfilled during adaptations. The work presented in this thesis is focused on specifying the adaptability and the study of the temporal impact of dynamic adaptation actions on a predefined set of configurations. For this purpose, we present a tooled methodology based on the concept of Mode of the MARTE profile. Each mode represents a possible behavior of the system for a well determined environment associated with a software configuration. The influence of these operations on the temporal behavior of the system is done via schedulability analysis. This methodology proposes to model the adaptive behavior through the definition of the context, the variability, the reconfiguration operations and of the base configuration. The schedulability analysis is performed at the model level by incorporating the impact of the behavior of adaptation. Two paradigms of modeling can be exploited to perform this analysis: request/reply and data flow. This allows to verify that the temporal constraints of our system will remain satisfied even with the inclusion of reconfiguration operations executing the adaptive behavior. Finally, the approach allows generating the implementation of adaptive behavior from the model to automate the integration of adaptation mechanisms in real-time systems.PARIS11-SCD-Bib. électronique (914719901) / SudocSudocFranceF

    DĂ©ploiement d'applications patrimoniales en environnements de type informatique dans le nuage

    Get PDF
    L'objectif de cette thèse est d'offrir une solution de bout en bout permettant de décrire et de déployer de façon fiable une application distribuée dans un environnement virtualisé. Ceci passe par la définition d'un formalisme permettant de décrirer une application ainsi que son environnement d'exécution, puis de fournir les outils capable d'interpéter ce formalisme pour déployer (installer, instancier et configurer) l'application sur une plate-forme de type cloud computing.Cloud computing aims to cut down on the outlay and operational expenses involved in setting up and running applications. To do this, an application is split into a set of virtualized hardware and software resources. This virtualized application can be autonomously managed, making it responsive to the dynamic changes affecting its running environment. This is referred to as Application Life-cycle Management (ALM). In cloud computing, ALM is a growing but immature market, with many offers claiming to significantly improve productivity. However, all these solutions are faced with a major restriction: the duality between the level of autonomy they offer and the type of applications they can handle. To address this, this thesis focuses on managing the initial deployment of an application to demonstrate that the duality is artificial. The main contributions of this work are presented in a platform named VAMP (Virtual Applications Management Platform). VAMP can deploy any legacy application distributed in the cloud, in an autonomous, generic and reliable way. It consists of: a component-based model to describe the elements making up an application and their projection on the running infrastructure, as well as the dependencies binding them in the applicative architecture; an asynchronous, distributed and reliable protocol for self-configuration and self-activation of the application; mechanisms ensuring the reliability of the VAMP system itself. Beyond implementing the solution, the most critical aspects of running VAMP have been formally verified using model checking tools. A validation step was also used to demonstrate the genericity of the proposal through various real-life implementations.SAVOIE-SCD - Bib.électronique (730659901) / SudocGRENOBLE1/INP-Bib.électronique (384210012) / SudocGRENOBLE2/3-Bib.électronique (384219901) / SudocSudocFranceF
    • …
    corecore