• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 3
  • Tagged with
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 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

[en] A REFLECTIVE TUPLESPACE-BASED ARCHITECTURE FOR THE DEVELOPMENT OF MULTI-AGENT SYSTEMS / [pt] UMA ARQUITETURA PARA SISTEMAS MULTI-AGENTES BASEADA EM ESPAÇOS DE TUPLAS REFLEXIVOS

OTAVIO REZENDE DA SILVA 01 September 2003 (has links)
[pt] A tecnologia de software está passando por uma transição de arquiteturas monolíticas e coesas para arquiteturas compostas por agentes e sistemas multiagentes semi-autônomos e heterogêneos. Estas arquiteturas são marcadas pela existência de propriedades adicionais no nível do sistema, como comunicação, coordenação, mobilidade, adaptabilidade e persistência. No entanto, o gerenciamento e controle destas propriedades e dos diferentes agentes de software não é uma tarefa simples e exige uma abordagem mais sofisticada desde a fase arquitetural deste tipo de sistema. Neste contexto, neste trabalho, propomos a definição de um padrão arquitetural, denominado Reflective Blackboard. Este padrão é o resultado da composição de dois outros padrões arquiteturais bem conhecidos: o padrão Blackboard e o padrão Reflection. Através da utilização do padrão, uma melhor separação de responsabilidades é atingida pelo tratamento separado, por meio de técnicas de reflexão computacional, das diferentes estratégias de controle incorporadas no sistema. De forma complementar à definição do padrão foi desenvolvida uma infra-estrutura para o desenvolvimento de sistemas multi-agentes que utilizam a arquitetura proposta pelo padrão apresentado. Esta infra- estrutura, além de funcionar como uma implementação do padrão Reflective Blackboard, provê suporte a diferentes propriedades do nível do sistema como mobilidade, comunicação, coordenação e persistência. A utilização do padrão e da infraestrutura desenvolvida foi aplicada em uma aplicação de Marketplace com o objetivo de validar os conceitos propostos. / [en] Software technology is undergoing a transition from monolithic architectures, constructed according to a single overall design, into open architectures composed of conglomerates of collaborative, heterogeneous, and independently designed agents and multi-agent systems (MAS). These architectures are driven by additional system- wide properties, such as communication, coordination, adaptability, mobility and persistence. However, controlling these properties and managing different application agents is not an easy task, requiring a more sophisticated software architectural approach. In this context, we propose the Reflective Blackboard architectural pattern, which is the result of the composition of tho other well-known architectural patterns: the Blackboard pattern and the Reflection pattern. The pattern allows a better separation of concerns, supporting the separate handling of control strategies, by means of the computational reflection technique. An infrastructure, which implements the proposed pattern and provides support to multiple system-level properties, such as mobility, communication, coordination and persistence, was also developed. The Reflective Blackboard pattern was applied together with this infrastructure to the development of a Marketplace application in order to validate de concepts proposed in this work.
2

[en] A STUDY OF TCHINIQUES FOR THE ADAPTATION OF SOFTWARE COMPONENTS IN JAVA / [pt] UM ESTUDO DE TÉCNICAS PARA ADAPTAÇÃO DE COMPONENTES DE SFTWARE EM JAVA

EDUARDO PILLA PORTILHO 19 February 2016 (has links)
[pt] Sistemas de Software fatalmente necessitam passar por modificações ao longo de sua existência para que sejam efetuadas tanto correções de erros quanto alterações evolutivas que contemplem novos requisitos. Processos de manutenção desse tipo normalmente exigem que os sistemas sejam interrompidos por algum período de tempo, que varia de acordo com a complexidade da modificação e com a tecnologia utilizada. Essa interrupção pode ser inaceitável no caso de aplicações que exijam um alto grau de disponibilidade. Nesse caso, qualquer tipo de alteração precisa ser feita de maneira dinâmica, sem interromper a aplicação. No caso de sistemas distribuídos, essa dificuldade é significantemente agravada em decorrência do número naturalmente maior de usuários atendidos e da própria distribuição de seus módulos. A implementação de mecanismos que permitem substituir ou introduzir novas funcionalidades em aplicações de maneira dinâmica foge de escopo da maioria das aplicações, por se tratar de um desenvolvimento de elevada complexidade. Acreditamos que a crescente demanda por mecanismo deste tipo justifica que eles sejam oferecidos sob a forma de serviços pela camada de middleware. Neste trabalho, avaliamos a implementação de mecanismos de adaptação dinâmica em um sistema de componentes desenvolvido em Java. Estes mecanismos devem permitir efetuar alterações nas aplicações de maneira simples e estruturada, sem que seja necessário interromper o seu funcionamento. Posteriormente, comparamos a solução obtida com uma solução similar implementada com a linguagem Lua para avaliar as vantagens e desvantagens apresentadas por dois tipos de linguagem para sistemas dinamicamente adaptáveis. Avaliamos também o desempenho da solução, comparando o tempo de execução de aplicação desenvolvidas sobre ela com similares desenvolvidas sem ela, medindo assim a sobrecarga de desempenho imposto pela solução proposta. / [en] Software systems will inevitably need to suffler modifications during its existence, in order to receive both error corrections and evolutionary changes that address new requirements. This kind of maintenance processes typically involves the interruption of the systems for an amount of time that varies with the complexity of the change and with the used technology. This interruption may be unacceptable in the case of applications that demand a high degree of availability. In this case, any modification must be made dynamically, without interrupting the application. In the case of distributed systems, this difficulty is significantly increased due to the typical greater number of users and to the distribution of their modules. Replacement or addition of features dynamically in applications developed with the major middleware platforms , such as CORBA or RMI, is a fairly complex process, which requires both the replaced modules and those that interact with the implementation of dynamic adaptation mechanisms that circumvent these limitations of dynamic adaptation mechanisms that circumvent these limitations is beynd of the scope of most applications, due to its highly complex nature. We believe that the increasing demand for such mechanisms justifies that they should be offered as services on the middleware layer. In this dissertation we evaluete the implementation of dynamic adaptation mechanisms in a component system developed using the Java programming language. These mechanisms should allow changing applications in simple and structured way, without the need to interrupt its operation. We compare the developed solution with a similar solution developed using the Lua proramming Language, in order to evaluate the advantages and disadvantages presented by this two types of languages in the implementation of dynamically adaptable sustems. We also evaluate the performance of the proposed.
3

[en] A FRAMEWORK FOR DYNAMIC ADAPTATION OF DISTRIBUTED COMPONENT-BASED SYSTEMS / [pt] UM FRAMEWORK PARA ADAPTAÇÃO DINÂMICA DE SISTEMAS BASEADOS EM COMPONENTES DISTRIBUÍDOS

RENATO FIGUEIRO MAIA 04 August 2004 (has links)
[pt] A adaptação dinâmica de aplicações distribuídas tem se tornado um recurso cada vez mais essencial na construção de sistemas de computação. Isso é justificado especialmente pelo avanço da tecnologia, que tem permitido a automação de tarefas complexas em domínios de aplicação cada vez menos tolerantes à suspensão de serviços. Nesta dissertação é proposto o LuaOrb Adaptation Framework, que utiliza os recursos da linguagem Lua na adaptação dinâmica de sistemas baseados em componentes do Modelo de Componentes de CORBA (CCM - CORBA Component Model ). Através desse framework é possível utilizar as abstrações de papéis e protocolos para realizar adaptações criando novas interações entre os componentes do sistema, assim como reconfigurar dinamicamente os componentes CCM. Devido a limitações do modelo CCM, é proposta uma adaptação desse modelo para a linguagem Lua, de onde surge o conceito de contêiner dinâmico, que permite a construção de componentes dinamicamente adaptáveis através de alterações na estrutura e implementação desses componentes. O contêiner dinâmico permite que essas alterações sejam feitas em níveis diferentes, ou seja, no nível de uma única instância ou implementação de componente, assim como em todas as instâncias de um determinado componente. / [en] Dynamic adaptation of distributed applications has become an essential feature in development of computer systems, mainly justified by nowadays technology, which enables complex tasks to be performed by computers in application domains less suited for service interruption. This dissertation proposes the LuaOrb Adaptation Framework, which uses features of the programming language Lua to dynamically adapt systems based on the CORBA Component Model (CCM). This framework uses abstractions like roles and protocols to adapt systems by creating new interactions between systems components, as well as provides features for dynamic reconfigurations of CCM components. Due to limitations of CCM, an adaptation of this model to Lua concepts is proposed, resulting in the definition of dynamic containers, which enable development of dynamically adaptable components by changes on component structure and implementation. Dynamic containers allows adaptations to be done on different levels, namely on the level of a single component instance or implementation, as well as on all instances of a given component.

Page generated in 0.0515 seconds