5 research outputs found

    Uma solução de implantação auto-adaptativa para plataformas Android

    Get PDF
    Orientador: Cecília Mary Fischer RubiraDissertação (mestrado) - Universidade Estadual de Campinas, Instituto de ComputaçãoResumo: Os dispositivos móveis, hoje em dia, fornecem recursos semelhantes aos de um computador pessoal de uma década atrás, permitindo o desenvolvimento de aplicações complexas. Consequentemente, essas aplicações móveis podem exigir tolerar falhas em tempo de execução. No entanto, a maioria das aplicações móveis de hoje são implantados usando configurações estáticas, tornando difícil tolerar falhas durante a sua execução. Nós propomos uma infraestrutura de implantação auto-adaptativa para lidar com este problema. A nossa solução oferece um circuito autônomo que administra o modelo de configuração atual da aplicação usando um modelo de características dinâmico associado com o modelo arquitetônico da mesma. Em tempo de execução, de acordo com a seleção dinâmica de características, o modelo arquitetônico implantado na plataforma se re-configura para fornecer uma nova solução. Uma aplicação Android foi implementada utilizando a solução proposta, e durante sua execução, a disponibilidade de serviços foi alterada, de tal forma que sua configuração corrente foi dinamicamente alterada para tolerar a indisponibilidade dos serviçosAbstract: Mobile devices, nowadays, provide similar capabilities as a personal computer of a decade ago, allowing the development of complex applications. Consequently, these mobile applications may require tolerating failures at runtime. However, most of the today¿s mobile applications are deployed using static configurations, making difficult to tolerate failure during their execution. We propose an adaptive deployment infrastructure to deal with this problem. Our solution offers an autonomic loop that manages the current configuration model of the application using a dynamic feature model associated with the architectural model. During runtime, according to the dynamic feature selection, the deployed architectural model can be modified to provide a new deployment solution. An Android application was implemented using the proposed solution, and during its execution, the services availability was altered so that its current configuration was changed dynamically in order to tolerate the unavailability of servicesMestradoCiência da ComputaçãoMestre em Ciência da Computação131830/2013-9CNP

    Survey of Template-Based Code Generation

    Full text link
    L'automatisation de la génération des artefacts textuels à partir des modèles est une étape critique dans l'Ingénierie Dirigée par les Modèles (IDM). C'est une transformation de modèles utile pour générer le code source, sérialiser les modèles dans de stockages persistents, générer les rapports ou encore la documentation. Parmi les différents paradigmes de transformation de modèle-au-texte, la génération de code basée sur les templates (TBCG) est la plus utilisée en IDM. La TBCG est une technique de génération qui produit du code à partir des spécifications de haut niveau appelées templates. Compte tenu de la diversité des outils et des approches, il est nécessaire de classifier et de comparer les techniques de TBCG existantes afin d'apporter un soutien approprié aux développeurs. L'objectif de ce mémoire est de mieux comprendre les caractéristiques des techniques de TBCG, identifier les tendances dans la recherche, et éxaminer l'importance du rôle de l'IDM par rapport à cette approche. J'évalue également l'expressivité, la performance et la mise à l'échelle des outils associés selon une série de modèles. Je propose une étude systématique de cartographie de la littérature qui décrit une intéressante vue d'ensemble de la TBCG et une étude comparitive des outils de la TBCG pour mieux guider les dévloppeurs dans leur choix. Cette étude montre que les outils basés sur les modèles offrent plus d'expressivité tandis que les outils basés sur le code sont les plus performants. Enfin, Xtend2 offre le meilleur compromis entre l'expressivité et la performance.A critical step in model-driven engineering (MDE) is the automatic synthesis of a textual artifact from models. This is a very useful model transformation to generate application code, to serialize the model in persistent storage, generate documentation or reports. Among the various model-to-text transformation paradigms, Template-Based Code Generation (TBCG) is the most popular in MDE. TBCG is a synthesis technique that produces code from high-level specifications, called templates. It is a popular technique in MDE given that they both emphasize abstraction and automation. Given the diversity of tools and approaches, it is necessary to classify and compare existing TBCG techniques to provide appropriate support to developers. The goal of this thesis is to better understand the characteristics of TBCG techniques, identify research trends, and assess the importance of the role of MDE in this code synthesis approach. We also evaluate the expressiveness, performance and scalability of the associated tools based on a range of models that implement critical patterns. To this end, we conduct a systematic mapping study of the literature that paints an interesting overview of TBCG and a comparative study on TBCG tools to better guide developers in their choices. This study shows that model-based tools offer more expressiveness whereas code-based tools performed much faster. Xtend2 offers the best compromise between the expressiveness and the performance

    Un système multi-agents pour la gestion des connaissances hétérogènes et distribuées

    Get PDF
    La gestion des connaissances permet d'identifier et de capitaliser les savoirs faires de l'entreprise afin de les organiser et de les diffuser. Cette thèse propose un système de gestion des connaissances hétérogènes et distribuées, appelé OCEAN. Basé sur les ontologies et sur un système multi-agents, OCEAN a pour but de résoudre le problème de la capitalisation et de réutilisation des connaissances provenant de plusieurs sources différentes, afin d aider les acteurs métiers dans le processus de développement de produits mécaniques. Le système OCEAN repose sur un cycle de vie de quatre étapes Ce cycle de vie possède les phases : d identification, d extraction, de validation et se termine par la réutilisation des connaissances. Chaque phase constitue l objectif d une organisation d agents.L identification dans le système OCEAN consiste à définir les connaissances par un expert métier sous la forme d une ontologie. Les ontologies sont utilisées dans notre système pour représenter les connaissances définis d une façon structurée et formelle afin d être compréhensible par les machines. L extraction des connaissances dans OCEAN est réalisée par les agents de manière automatique à l aide des ontologies créées par les experts métiers. Les agents interagissent avec les différentes applications métiers via des services web. Le résultat de cette phase est stocké dans une mémoire organisationnelle. La validation des connaissances consiste à permettre aux acteurs métiers de valider les connaissances de la mémoire organisationnelle dans un wiki sémantique. Ce wiki permet de présenter les connaissances de la mémoire organisationnelle aux acteurs pour les réutiliser, les évaluer et les faire évoluer. La réutilisation des connaissances dans OCEAN est inspiré de travaux antérieurs intégrés au sein d OCEAN. Les quatre phases du cycle de vie des connaissances traitées dans cette thèse nous ont permis de réaliser un système apte à gérer les connaissances hétérogènes et distribuées dans une entreprise étendue.Among the goals of Knowledge Management we can cite the identification and capitalization of the know-how of companies in order to organize and disseminate them. This thesis proposes a heterogeneous and distributed knowledge management system, called OCEAN. Based on ontologies and multi-agents system, OCEAN aims to solve the problem of capitalization and reuse of multi-sources knowledge in order to assist business actors in the development process of mechanical products. The OCEAN system is based on a knowledge life cycle composed by four steps. This knowledge life cycle begins with the identification then extraction, validation and finishes with knowledge reuse. Each step is the goal of an organization of agents.The identification in OCEAN system consists in the definition of knowledge by a business expert with an ontology. Ontologies are used in our system to represent the knowledge, defined by the business expert, in a structured and formal way in order to be understandable by machines. Agents according to the ontology defined by business experts realize knowledge extraction in OCEAN automatically. Agents interact with professional softwares via web services. The result of this extraction is stored in an organizational memory (OM). Validation of knowledge in OCEAN relies on business actors that validate the knowledge of the OM in a semantic wiki. This wiki allows also the presentation of this knowledge to business actors in order to reuse, evaluate or evolve it. Previous works, integrated within OCEAN, inspires the knowledge reuse step. The four steps lifecycle discussed in this thesis has enabled us to achieve a system that can manage heterogeneous and distributed knowledge in an extended enterprise.BELFORT-UTBM-SEVENANS (900942101) / SudocSudocFranceF

    Approches organisationnelles pour la conception de systèmes multi-agents dédiés à la gestion des connaissances; Application aux projets d'ingénierie et d'innovation Composition du jury

    Get PDF
    Approches organisationnelles pour la conception de systèmes multi-agents dédiés à la gestion des connaissances; Application aux projets d’ingénierie et d’innovatio
    corecore