1 |
[en] A CONTEXT-AWARE PROTOCOL FOR COORDINATED ADAPTATION OF COMMUNICATION SERVICES IN WIRELESS NETWORKS / [pt] UM PROTOCOLO SENSÍVEL AO CONTEXTO PARA ADAPTAÇÃO COORDENADA DE SERVIÇOS DE COMUNICAÇÃO EM REDES SEM FIOJORDAN JANEIRO LOPES DA SILVA 01 September 2008 (has links)
[pt] A pesquisa em redes móveis e computação pervasiva têm
demonstrado que adaptação dinâmica e sensibilidade ao
contexto são requisitos básicos para aplicações nestes
ambientes. Muitos dos trabalhos sobre adaptação dinâmica
sensível ao contexto encontrados na literatura se baseiam
nas informações de contexto de dispositivos para selecionar
e executar uma determinada adaptação, mas somente no
próprio dispositivo. Para aplicações distribuídas cientes do
contexto envolvendo um grupo de dispositivos portáteis,
executando em uma rede sem fio, por vezes faz-se necessária
uma adaptação conjunta e coordenada de todos os
dispositivos do grupo, adaptação essa que depende de um
contexto global do grupo. Este trabalho apresenta Moratus,
um protocolo para obter o contexto global de um grupo de
dispositivos e executar uma única adaptação de serviços de
comunicação em todos os dispositivos de forma coordenada.
Este protocolo também leva em conta e trata desconexões
involuntárias de membros do grupo durante o processo. O
Moratus é o elemento central de um middleware, o SACS,
que permite que tal adaptação coordenada ocorra de forma
transparente e sem interrupção para a aplicação distribuída
que usa o middleware. / [en] Research in mobile networks and pervasive computing has
shown that dynamic adaptation and context-awareness are
basic requirements for applications executing in such
environments. Many of the works about context-awareness
dynamic adaptation found in the literature use the device's
context information to execute an adaptation only locally
at the device. For distributed, context-aware applications
composed of a group of portable devices (executing in a
wireless network) sometimes it is necessary to perform a
collective and coordinated adaptation at all the devices of
the group, and where this adaptation depends on the global
context of the group. This thesis presents Moratus, a
protocol that processes the global context of a group and
executes a unique adaptation of a communication service at
all devices in the group in a coordinated way. This
protocol also handles unplanned disconnections of group
members during the adaptation process. Moratus is the
central element of a middleware named SACS, which allows
that such coordinated adaptation is performed transparently
and without disruption for the distributed application
based on this middleware.
|
2 |
[en] A MECHANISM OF COMPONENT SELECTION WITH THE NOTION OF RECONFIGURATION CONTRACTS / [pt] UM MECANISMO DE SELEÇÃO DE COMPONENTES PARA O MIDDLEWARE KALUANA USANDO A NOÇÃO DE CONTRATOS DE RECONFIGURAÇÃOALLAN ALVES VALERIANO 13 October 2011 (has links)
[pt] A computação móvel cria a necessidade de que as aplicações sejam
adaptáveis de acordo com o contexto do usuário. Demandas específicas do
usuário, assim como alterações no contexto computacional requerem que
aplicações móveis clientes devam ser capazes de se adaptar dinamicamente para
se adequar ao novo cenário de execução. Estas adaptações precisam ser
apropriadas e devem manter a qualidade de serviço evitando falhas ou degradação
do desempenho da aplicação. Este trabalho propõe uma extensão do middleware
de componentes Kaluana, que provê um mecanismo de seleção de componentes
para aplicações adaptáveis a partir de contratos de reconfiguração. Esta seleção é
feita com a noção de equivalência entre suas as interfaces públicas e considera as
restrições de execução dos componentes candidatos a serem usados na adaptação
de acordo com o contexto computacional do dispositivo para a avaliação dos
componentes candidatos a instanciação. Esta seleção visa manter a
compatibilidade dos novos componentes com os componentes já implantados bem
como com o contexto de execução, ou seja, o estado corrente dos recursos no
dispositivo. Com a noção de equivalência entre as interfaces de especificação de
componentes, a aplicação tem a possibilidade de selecionar componentes através
da interface do serviço requisitado sem a necessidade de conhecer seu nome ou
alguma característica específica, evitando assim que uma amarração seja criada
com uma determinada implementação. / [en] Mobile computing creates the need for applications to be adaptable
according to the user s context. Specific user demands as well as changes in the
computational context the mobile applications require clients to be able to adapt
dynamically to suit the new scenario of execution. These adjustments should be
appropriate and should maintain the quality of service avoiding failures or
preventing degradation of application performance. This thesis proposes an
extension of Kaluana middleware which provides a mechanism for selection of
components for adaptive applications based on the notion of reconfigurations
contracts. This selection is done also based on the notion of equivalence between
their public interfaces and should consider the execution restrictions of the
candidate components to be used in the adaptation in accord to the device s
execution context to be used to evaluate the candidate components to the
instantiation. This selection aims to maintain the compatibility of new
components with the components already used as well as the execution context,
i.e. the current status of the device s resources. Due to the notion of equivalence
between the interface specifications of components, the application should be able
to request a component through the interface of the requested service, avoiding the
need to know the component s name or any other specific feature that creates a tie
with the given implementation.
|
3 |
[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 JAVAEDUARDO 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.
|
4 |
[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ÍDOSRENATO 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.0303 seconds