• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 16
  • 7
  • Tagged with
  • 23
  • 23
  • 23
  • 23
  • 8
  • 8
  • 6
  • 5
  • 5
  • 4
  • 3
  • 3
  • 3
  • 3
  • 3
  • 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 COMMUNICATION PROCESSOR FOR CONNECTION OF A COMPUTER TO A NETWORK SWITCHED TO PACKAGES / [pt] UM PROCESSADOR DE COMUNICAÇÃO PARA LIGAÇÃO DE UM COMPUTADOR A UMA REDE COMUTADA POR PACOTES

SELDA TEREZA TRIBUZI LULA 24 January 2008 (has links)
[pt] O presente trabalho contém o projeto da arquitetura de hardware e software de um Processador de Comunicação (PC) que tem como finalidade a realização do protocolo X.25 para a ligação de um computador, em particular o sistema de multimicrocomputadores (MULTIPUC) da Pontifícia Universidade Católica do Rio de Janeiro, a uma rede de comunicação de dados comutada por pacotes. O Processador de Comunicação é baseado no microprocessador 8085 e no controlador de linha 8273 da Intel. A arquitetura de software do PC é composta de um conjunto de processos e monitores que implementam os procedimentos da recomendação X.25 do CCITT, aliviando assim o computador hospedeiro das tarefas de comunicação de dados. / [en] Communication processors are used to alleviate the main processor from data communications tasks. This work presens the design an implementation of a communications processor which serves as a front-end between a host computer and a packet switched network. The host computer is a local microprocessor network, MULTIPUC, under development at the Laboratório de Engenharia e Sistemas de Comunicação of the Pontifícia Universidade Católica do Rio de Janeiro. The Communication Processor implements the three levels of the X.25 CCITT recommendation. The software architecture, composed of several processes and monitors, is also described here.
2

[en] BLENDING AND REUSING RULES FOR ARCHITECTURAL DEGRADATION PREVENTION / [pt] COMPOSIÇÃO E REUSO DE REGRAS PARA PREVENÇÃO DA DEGRADAÇÃO ARQUITETURAL

ALESSANDRO CAVALCANTE GURGEL 29 January 2015 (has links)
[pt] Durante a manutenção de sistemas de software, os projetos arquiteturais podem se degradar através dos processos de erosão e descaracterização arquitetural. Estes processos estão usualmente entrelaçados e, consequentemente, sintomas de descaracterização arquitetural favorecem a manifestação posterior de sintomas de erosão e vice-versa. De fato, estudos empíricos recentes revelam que estes sintomas tendem a afetar os mesmos módulos de um sistema. Desta forma, arquitetos devem elaborar estratégias híbridas para uma prevenção simultânea de ambos os processos de degradação arquitetural. Embora as especificações de regras arquiteturais demandem um esforço considerável, estas são frequentemente similares em diversos projetos de uma mesma companhia ou de um mesmo domínio de aplicação. Essa dissertação descreve a linguagem específica de domínio TamDera para: (i) especificar estratégias de regras para permitir prevenção simultânea de ambos os processos de erosão e descaracterização arquitetural, e (ii) prover o reúso tanto hierárquico quanto composicional de regras de projetos em múltiplos contextos. Essa dissertação apresenta a avaliação empírica da linguagem em termos de provisão de suporte para descrição e reúso de regras de projeto em cinco projetos de software. O presente trabalho também apresenta um protótipo que suporta a utilização da linguagem para detecção de sintomas de degradação arquitetural.. Nossos resultados sugerem que arquitetos podem se beneficiar de abordagens que permitam a definição e reúso de regras híbridas para detectar ocorrências de ambos os processos de erosão e descaracterização arquitetural in diversos cenários. / [en] During the maintenance of software systems, their architecture often degrades through processes of architectural erosion and drift. These processes are often intertwined and, as a consequence, a given module in the code becomes the locus of both erosion and drift symptoms. Architects should elaborate strategies for detecting co-occurrences of both degradation symptoms. Strategies for enabling the detection of these symptoms are based on design rules. While the specification of design rules is time-consuming, they are often similar across different software projects. In this context, the contribution of this dissertation is threefold. First, it presents TamDera, an unified domain-specific language for: (i) specifying rule-based strategies to detect both erosion and drift symptoms, and (ii) promoting the hierarchical and compositional reuse of design rules across multiple contexts. Second, a tool implementation for supporting the language usage and rule enforcement is also presented in this dissertation. Third, we evaluated the language in supporting the description and reuse of design rules on five software projects. Our evaluation revealed that architects could be benefited by using TamDera to blend and reuse rules for detecting erosion and drift occurrences in multiple scenarios.
3

[en] ARCHITECTURAL DESCRIPTION OF THE QOS PROVISION IN GENERIC PROCESSING AND COMMUNICATION ENVIRONMENTS / [pt] DESCRIÇÃO ARQUITETURAL DA PROVISÃO DE QOS EM AMBIENTES GENÉRICOS DE PROCESSAMENTO E COMUNICAÇÃO

CARLOS DE SALLES SOARES NETO 19 December 2003 (has links)
[pt] O aumento da demanda por plataformas com suporte a aplicações multimídia torna evidente a importância de mecanismos que ofereçam garantias de Qualidade de Serviço (QoS), uma vez que cada mídia exige requisitos próprios de processamento e comunicação. O modelo SCM (Service- Composition Model) fornece abstrações adequadas para a representação e programação de aspectos de QoS e comunicação em grupo em serviços de comunicação. Seguindo sua terminologia, a provisão de QoS pode ser vista como um provedor de serviços onde atuam meta serviços de negociação e sintonização de QoS. A negociação de QoS define mecanismos responsáveis pela admissão de novos fluxos do usuário, enquanto a sintonização de QoS age, durante o fornecimento do serviço, na manutenção do nível de serviço negociado. Tais meta serviços já foram previamente descritos por meio de frameworks em UML. O presente trabalho focaliza a descrição arquitetural desses meta serviços, utilizando a linguagem de descrição de arquitetura (ADL) Wright, permitindo o emprego de suas ferramentas de análise e verificação formal para inferir propriedades. Para facilitar o emprego dessa abordagem através do uso de uma notação mais próxima do domínio do problema, uma linguagem de domínio específico (DSL) chamada LindaQoS é proposta especificamente para definir hierarquias de subsistemas de negociação e sintonização. O trabalho é complementado por um compilador que traduz especificações LindaQoS para descrições arquiteturais (atualmente, usando Wright) e para linguagens de programação (futuramente em JAVA). / [en] The increased demand for platforms with support for multimedia applications raised the importance of mechanisms for Quality of Service provisioning, since each media has its own processing and communication requirements. SCM Model (Service-Composition Model) provides abstractions for the representation and programming of QoS aspects and multicast in communication services. According to its terminology, the QoS provisioning can be seen as a service provider, where QoS negotiation and QoS maintenance meta services act upon it. The QoS negotiation are the mechanisms responsible for the admission of new user flows, while the QoS maintenance meta service is responsible for maintaining the negotiated level of service during the service operation. Such meta services had been previously described as frameworks modelled in UML. The present work focuses on the architectural description of these meta services using Wright architecture description language (ADL), which allows the use of its analysis and formal verification tools to infer properties. To smooth this approach, a domain-specific language (DSL) called LindaQoS is proposed as a notation closest to the abstraction level of the problem domain, specifically designed to define hierarchies of negotiation and maintenance subsystems. Moreover this work presents a compiler allowing the translation of LindaQoS specifications into architectural descriptions (currently, using Wright) and into programming languages (JAVA in the future).
4

[en] AN ARCHITECTURE FOR DYNAMIC NCL APPLICATIONS BASED ON DOCUMENT FAMILIES / [pt] UMA ARQUITETURA PARA APLICAÇÕES DINÂMICAS NCL BASEADAS EM FAMÍLIAS DE DOCUMENTOS

JOSE GERALDO DE SOUSA JUNIOR 05 June 2012 (has links)
[pt] A apresentação de aplicações hipermídia dinâmicas pode ser vista em alguns casos como um processo de autoria recursivo, no qual aplicações são recriadas em tempo de apresentação quando modificações no conteúdo são desencadeadas por interações entre a máquina de apresentação e outras entidades (tais como usuários, objetos imperativos, aplicações externas etc.). Em alguns cenários de aplicações hipermídia dinâmicas, é possível identificar um padrão de composição hipermídia que se mantém mesmo após o documento ter sido recriado. Aplicações desse tipo são comuns, por exemplo, em um ambiente de TV Digital Interativa. A existência de um padrão durante a apresentação de uma aplicação para TV Digital Interativa permite estabelecer uma analogia entre os processos de recriar documentos dinamicamente e de especificar aplicações pelo método orientado a templates. Nesse último método, o autor especifica uma aplicação preenchendo lacunas deixadas por um template que representa o padrão de composição hipermídia da aplicação. Analogamente, na recriação dinâmica de documentos o módulo que processa atualizações no documento faz o papel de preencher as lacunas de templates. O objetivo principal do presente trabalho é definir uma arquitetura, inspirada nessa analogia, para estruturar aplicações NCL que podem ser refatoradas dinamicamente e que se mantêm em conformidade com seus respectivos templates. Nested Context Language (NCL) é a linguagem para autoria de aplicações do Sistema Brasileiro de TV Digital terrestre. Para validar a solução proposta, foram desenvolvidas uma aplicação que captura um cenário real de uso e uma ferramenta de autoria que permite especificar graficamente o preenchimento de templates. / [en] The presentation of dynamic hypermedia applications may be seen as a recursive authoring process, in which applications are recreated during presentation time, whenever content changes are triggered by interactions between the presentation engine and other entities such as users, imperative objects, external applications, etc. In some scenarios of dynamic hypermedia applications, it is possible to identify a hypermedia composition pattern that remains consistent even after the document is recreated. This kind of applications is common, for instance, in an Interactive Digital Television environment. The presence of such a pattern throughout the presentation of an application for Interactive Digital Television allows the establishment of an analogy between recreating documents dynamically and authoring applications through a template-driven authoring method. Using the latter, the authoring process is conducted by filling gaps left by a template that represents the hypermedia composition pattern of an application. Analogously, in the dynamic document re-creation, the module that processes document updates fulfills the role of filling the templates gaps. The main goal of the present work is to define an architecture, inspired by this analogy, to structure NCL applications that can be dynamically refactored and that remain conform to their respective templates. Nested Context Language (NCL) is the language of Brazilian System of Digital Terrestrial Television applications. In order to validate the proposal, an application that captures a real scenario and an authoring tool for specify graphically document filling was developed.
5

[en] A DEONTIC APPROACH TO DEVELOP AUTONOMOUS NORMATIVE AGENTS / [pt] UMA ABORDAGEM DEONTICA PARA O DESENVOLVIMENTO DE AGENTES NORMATIVOS AUTÔNOMOS

BALDOINO FONSECA DOS SANTOS NETO 14 June 2012 (has links)
[pt] Normas sociais têm se tornado uma das abordagens mais promissoras para garantir uma ordem social desejável em sistemas multiagentes. Nestes sistemas, agentes autônomos trabalham a fim de atingir objetivos comuns ou diferentes. Normas regulam o comportamento de tais agentes definindo obrigações e proibições, fornecendo recompensas e estabelecendo punições a fim de incentivá-los a se comportarem de acordo com as normas. Embora o uso de normas seja um mecanismo promissor para regular o comportamento de agentes, o desenvolvimento de agentes capazes de atuar em um sistema, adotar as normas e lidar com as mesmas autonomamente tem sido mais difícil do que o desenvolvimento de agentes tradicionais. A razão para esta dificuldade é a falta de mecanismos que possibilitem o desenvolvimento de agentes autônomos capazes de lidar com questões relacionadas a normas. Nesta tese, apresenta-se uma abordagem para desenvolvimento de agentes capazes de lidar autonomamente com questões normativas. Para tanto, a abordagem fornece um modelo arquitetural para apoiar um agente no raciocínio sobre as normas. Tal modelo estende o modelo Belief-Desire-Intention adicionando um conjunto de funções que auxiliam o agente na adoção de novas normas, na verificação da ativação, desativação, cumprimento e violação das normas, na seleção de quais normas devem ser cumpridas ou violadas, na detecção e resolução de conflitos entre normas, na geração de novos objetivos e na seleção de objetivos, planos e intenções, levando em consideração as normas do sistema. Além disto, a abordagem fornece os mecanismos necessários para implementação de agentes projetados a partir do modelo arquitetural proposto. Dois cenários são utilizados para exemplificar a abordagem proposta. O primeiro está relacionado ao planejamento de missões de resgate reguladas por normas. O segundo está relacionado ao suporte ao desenvolvimento de software regulado por normas. Por fim, experimentos são apresentados que demonstram a importância de desenvolver agentes a partir da abordagem proposta seja na visão do agente ou da sociedade. / [en] Social norms have become one of the most promising approaches toward ensuring a desirable social outcome in multi-agent systems. In these systems, autonomous and heterogeneous agents work toward common or different goals. Norms regulate the behaviour of these agents by defining obligations and prohibitions, and by creating rewards and penalties to encourage the agents to behave so as to meet these norms. Although the use of norms is a promising mechanism to regulate the agents’ behavior, the development of agents able to join an agents society, to adopt the norms and to work with them autonomously has shown to be significantly more challenging than traditional agents. The reason for this difficulty is the lack of agent models that allow developing of autonomous agents able to cope with issues related to norms. In this thesis, we introduce an approach to develop agents able to deal with normative questions in an autonomous way. The approach extends the Belief-Desire- Intention model including functions that assist the agent in adopting new norms, in verifying norm activation, deactivation, fulfillment and violation, in selecting the norms to be fulfilled or violated by the agent, in identifying and overcoming conflicts among norms, in generating new goals from norms and in selecting goals, plans and intentions while taking into account the system norms. In addition, the approach provides mechanisms that are necessary to implement agents designed from the proposed architectural model. Two scenarios are used in order to exemplify the proposed approach. The first is related to the planning of rescue missions regulated by norms. The second is related to the support to software development regulated by norms. Finally, experiments that demonstrate the importance of developing agent by using the proposed architectural model, both in the agent and society point of view, are presented.
6

[en] ON THE DETECTION OF ARCHITECTURALLY RELEVANT CODE ANOMALIES IN SOFTWARE SYSTEMS / [pt] DETECÇÃO DE ANOMALIAS DE CÓDIGO ARQUITETURALMENTE RELEVANTES EM SISTEMAS DE SOFTWARE

ISELA MACIA BERTRAN 29 January 2015 (has links)
[pt] Anomalias de código podem sinalizar a degradação da arquitetura de software. No entanto, a identificação de anomalias de código arquiteturalmente relevantes (ou seja, aquelas que implicam em deficiências arquiteturais) é particularmente difícil devido: (i) a falta de compreensão sobre a relação existente entre anomalias de código e degradação arquitetural, (ii) ao fato do processo de detecção de anomalias ter como foco somente o código fonte, sem considerar como ele se relaciona com sua arquitetura, e (iii) a falta de conhecimento sobre a confiabilidade das técnicas de detecção em revelar anomalias de código que são arquiteturalmente relevantes. Esta tese apresenta técnicas para identificar anomalias de código que são arquiteturalmente relevantes. Métricas sensíveis à arquitetura e estratégias de detecção foram definidas para superar as limitações das técnicas de detecção convencionais. Estas métricas e estratégias aproveitam rastros que podem ser estabelecidos entre as visões arquiteturais e a implementação dos sistemas. A tese também documenta padrões de anomalias de código (ou seja, relações recorrentes de anomalias) que estão relacionados com problemas arquiteturais. Uma ferramenta, chamada de SCOOP, foi desenvolvida para coletar as métricas sensíveis à arquitetura, aplicar as novas estratégias de detecção, e identificar os padrões de anomalias de código. Usando esta ferramenta, a técnica proposta foi avaliada em uma série de estudos empíricos, comparando sua acurácia com técnicas convencionais de detecção durante o processo de identificação de anomalias de código que são arquiteturalmente relevantes. / [en] Code anomalies can signal software architecture degradation. However, the identification of architecturally-relevant code anomalies (i.e. code anomalies that strongly imply architectural deficiencies) is particularly challenging due to: (i) lack of understanding about the relationship between code anomalies and architectural degradation, (ii) the focus on source code anomaly detection without considering how it relates to the software architecture, and (iii) lack of knowledge about how reliable these detection techniques are when revealing architecturally-relevant code anomalies. This thesis presents techniques for identifying architecturally-relevant code anomalies. Architecture-sensitive metrics and detection strategies were defined to overcome the limitations of conventional detection strategies. These metrics and strategies leverage traces that can be established between architectural views and system implementation. The thesis also documents code anomaly patterns (i.e. recurring anomaly relationships) that are strongly related to architectural problems. A tool, called SCOOP, was developed to collect the architecture-sensitive metrics, apply the new detection strategies, and identify the documented code anomaly patterns. Using this tool, we evaluated our technique in a series of empirical studies, comparing its accuracy with that of conventional detection techniques when identifying architecturally-relevant code anomalies.
7

[en] AN ASPECT-ORIENTED FRAMEWORK FOR SOFTWARE AGENTS MOBILITY / [pt] UM FRAMEWORK ORIENTADO A ASPECTOS PARA MOBILIDADE DE AGENTES DE SOFTWARE

CIDIANE ARACATY LOBATO 29 March 2006 (has links)
[pt] Engenheiros de sistemas multi-agentes (SMAs) móveis devem lidar com o projeto e a implementação de mobilidade de código, além do projeto e implementação de funcionalidades básicas e outros requisitos. À medida que a complexidade dos SMAs aumenta, questões referentes à mobilidade não podem ser modularizadas somente a partir da utilização de abstrações e mecanismos orientados a objetos (OO). Além disso, vários programadores freqüentemente evidenciam a presença de problemas de entrelaçamento e espalhamento em suas linhas de código referentes à mobilidade. Apesar de tais problemas, os desenvolvedores de SMAs têm se apoiado vastamente na utilização de interfaces de programação de aplicações (APIs) OO das plataformas de mobilidade e na linguagem de programação Java. O resultado é a produção de SMAs que são difíceis de entender, manter e reutilizar. Este trabalho apresenta três contribuições principais. Primeiramente, é realizada uma análise das soluções existentes para separação dos interesses de mobilidade. Além disso, são propostos a arquitetura de software ArchM e o framework AspectM, ambos baseados em aspectos, visando: (i) uma clara separação dos interesses de mobilidade em relação às funcionalidades básicas e outros requisitos, (ii) uma introdução transparente do código de mobilidade em agentes estacionários, e (iii) uma integração flexível dos SMAs com plataformas de mobilidade existentes. O desenvolvimento de software orientado a aspectos é um novo paradigma com abstrações e mecanismos de composição que possibilitam o aumento do grau de reusabilidade e manutenibilidade dos sistemas. Os benefícios de ArchM e AspectM são ilustrados através de dois estudos de caso e com o uso de duas plataformas de mobilidade. / [en] Software engineers of multi-agent systems (MASs) are concerned with the design and implementation of the mobility issues in addition to the agents` basic functionalities and other agent-related concerns. As the agents` complexity increases, mobility issues cannot be modularized based only on object-oriented (OO) abstractions and mechanisms. Besides, some programmers frequently evidence the presence of mobility tangling and scattering problems on their systems. Despite these problems, MAS developers have mostly relied on application programming interfaces (APIs) OO from mobility platforms and on the use of the Java programming language. The result is the production of MASs that are difficult to understand, maintain, and reuse. This work presents three main contributions. Firstly, an analysis of existent solutions for modularization of mobility issues. Besides, the proposal of the ArchM software architecture and the AspectM framework, both based on aspects, which support: (i) improved modularization of the mobility issues, that is, a clean separation between the mobility-specific concerns and the other agent concerns, (ii) a seamless introduction of code mobility into stationary agents, and (iii) a flexible integration with multiple mobility platforms. The aspect- oriented software development (AOSD) is a new paradigm with abstractions and composition mechanisms that support an improvement of reuse and maintainability of systems. The benefits of the AspectM framework are illustrated through two case studies and through use of two mobility platforms.
8

[en] A STUDY OF DYNAMIC UPDATE FOR SOFTWARE COMPONENTS / [pt] UM ESTUDO SOBRE ATUALIZAÇÃO DINÂMICA DE COMPONENTES DE SOFTWARE

EDUARDO CASTRO MOTA CAMARA 07 October 2014 (has links)
[pt] O desenvolvimento baseado em sistemas de componentes de software consiste em compor sistemas a partir de unidades de sotfware prontas e reutilizáveis. Muitos sistemas de componentes software em produção, precisam ficar disponíveis durante 24 horas por dia nos 7 dias da semana. Atualizações dinâmicas permitem que os sistemas sejam atualizados sem interromperem a execução dos seus serviços, aplicando a atualização em tempo de execução. Muitas técnicas de atualização dinâmica, na literatura, utilizam aplicações feitas especificamente para cobrir os pontos implementados e poucas utilizam um histórico de necessidades de um sistema real. Este trabalho estuda os principais casos de atualizações que ocorrem em um sistema de componentes de uso extenso, o Openbus, que consiste em uma infraestrutura de integração responsável pela comunicação de diversas aplicações de aquisição, processamento e interpretação de dados. Além deste estudo, implementamos uma solução de atualização dinâmica para acomodar as necessidades deste sistema. Depois, utilizando a solução implementada, apresentamos um teste de sobrecarga e algumas aplicações de atualizações do Openbus. / [en] The component-based development of software systems consists on composing systems from ready and reusable sotfware units. Many software componente systems on production, need to be available 24 hours a day 7 days a week. Dynamic updates allow systems to be upgraded without interrupting the execution of its services, applying the update at runtime. Many dynamics software update techniques in the literature use applications specically implemented to cover the presented points and only a few use a historical need of a real system. This work studies the main cases of updates that occur in a system of components with extensive use, the Openbus, which consists of an integration infrastructure responsible for communication of various applications for acquisition, processing and interpretation of data. In addition to this study, we implement a solution of dynamic software update to accommodate the needs of this system. After, using the implemented solution, we present an overhead test and applications of updates on Openbus.
9

[en] FROM OBJECTS TO AGENTS: AN ASPECT ORIENTED APPROACH / [pt] OBJETOS E AGENTES: UMA ABORDAGEM ORIENTADA A ASPECTOS

ALESSANDRO FABRICIO GARCIA 13 July 2004 (has links)
[pt] Agentes de software incorporam várias propriedades específicas, como autonomia, adaptação, interação, aprendizagem e mobilidade. A inclusão dessas propriedades de agência é uma das maiores fontes de complexidade na construção de sistemas multiagentes. Dificilmente elas são modularizadas com abstrações e mecanismos da engenharia de software orientada a objetos. À medida que a complexidade da arquitetura interna dos agentes aumenta, essas propriedades tendem a se espalhar através dos vários módulos ou objetos do sistema. O espalhamento é observado desde fases preliminares de desenvolvimento, como a fase de definição arquitetural. O uso de abstrações e mecanismos existentes conduz ao projeto e à implementação de sistemas multiagentes que são difíceis de manter e reutilizar. Este trabalho apresenta uma abordagem orientada a aspectos para o desenvolvimento de sistemas baseados em agentes. A abordagem provê suporte para modularização e composição das propriedades de agência por meio de abstrações e mecanismos do paradigma orientado a aspectos. Além disso, tais propriedades são incorporadas de forma transparente à funcionalidade básica do sistema de software, desde a fase de definição arquitetural. A abordagem compreende três componentes: (i) um método arquitetural, (ii) uma linguagem de padrões e (iii) um framework para avaliação quantitativa. O método e a linguagem apresentam um conjunto de soluções orientadas a aspectos para a definição arquitetural, projeto e implementação de agentes de software. O framework define um conjunto de métricas e um modelo de qualidade que permite a avaliação empírica da nossa abordagem em termos de reusabilidade e manutenibilidade. Estudos experimentais qualitativos e quantitativos foram realizados para avaliar nossa proposta em diferentes domínios de aplicação. Os resultados empíricos concluíram que nossa abordagem permite a construção de sistemas baseados em agentes com modularização superior, menor acomplamento, menos linhas de código e menor complexidade interna dos componentes. / [en] Software engineers of Multi-Agent Systems (MASs) are faced with different concerns (properties), such as autonomy, adaptation, interaction, collaboration, learning, and mobility. Many of these agent concerns cannot be modularized based only on object-oriented abstractions. MAS developers however have relied mostly on objectoriented design techniques and on object-oriented programming languages, such as Java. As the agent complexity increases, the agent concerns tend to spread across several system components at the architectural, design and implementation levels. It often leads to a poor separation of agent concerns in the software system, and in turn to the production of MASs that are difficult to maintain and reuse. This thesis presents an innovative aspect-oriented approach for the seamless integration of agents into object-oriented software engineering from the architectural stage to the implementation stage. Aspect is the abstraction used to modularize agent concerns that crosscut several system components. The proposed approach encourages the separate handling of agent properties, and provides a disciplined scheme for their composition. The approach is composed of an architectural method, a pattern language, and an assessment framework. The architectural method and the pattern language provide aspect-oriented solutions for modularizing the agent concerns at different stages of design and implementation. The purpose of the assessment framework is to support the evaluation of the reusability and maintainability of aspect-oriented solutions based on a metrics suite and a quality model. Experimental studies in different application domains have been conducted to assess the proposed approach based on qualitative and quantitative criteria. The use of the aspect-oriented solutions resulted in fewer lines of code, fewer design and implementation components, lower internal complexity of system components, and lower coupling.
10

[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.

Page generated in 0.4192 seconds