Separating crosscutting concerns in agent oriented detailed design: the social patterns case

Detalhes bibliográficos
Ano de defesa: 2007
Autor(a) principal: Taciana Lima Lourenço Silva, Carla
Orientador(a): Freire Brelaz de Castro, Jaelson
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/1990
Resumo: O desenvolvimento orientado a agentes é bastante recente, no entanto, este novo paradigma tem sido utilizado cada vez mais em aplicações industriais, tais como telecomunicações e comércio eletrônico. Entre as principais preocupações para a consolidação deste novo paradigma, destacamos a necessidade de técnicas, notações e ferramentas adequadas para suportar o desenvolvimento de sistemas orientados a agentes. Neste sentido, o projeto Tropos está desenvolvendo uma abordagem de desenvolvimento orientado a agentes centrada em requisitos que visa construir software orientado a agentes que opera dentro de um ambiente dinâmico. Dentre os desafios do desenvolvimento de sistemas multi-agentes (SMA), destaca-se a questão de desenvolver sistemas reusáveis, flexíveis, fáceis de entender e manter de forma a reduzir os custos de desenvolvimento. Para este fim, Tropos definiu um conjunto de padrões de projeto, chamados padrões sociais, focando em aspectos intencionais e sociais que são recorrentes em sistemas multi-agentes e cooperativos. Estes padrões podem ser chamados de interesses entrecortantes (do inglês, crosscutting concerns), já que eles entrecortam módulos funcionais em SMA, diminuindo a reusabilidade e manutenibilidade do sistema. Estes interesses entrecortantes podem ser mais bem endereçados pela adoção de técnicas do desenvolvimento de software orientado a aspectos. O objetivo desta nova tecnologia é encapsular interesses entrecortantes em módulos separados, os aspectos, evitando seu espalhamento e entrelaçamento através dos artefatos de software. Assim, aspectos podem ser usados como abstrações para capturar interesses de padrões sociais. Esta tese propõe uma técnica de descrição que visa promover a separação avançada de interesses de padrões sociais no projeto de SMA. Para alcançar este fim, nós: (i) especificamos um profile UML (Unified Modeling Language) que define um metamodelo que incorpora conceitos de agência; (ii) especializamos o metamodelo de agência usando o conceito de papéis de modelo (do inglês, model roles) para especificar quais elementos do modelo devem participar em um padrão; (iii) anexamos notas ao modelo estrutural do padrão social para capturar algumas abstrações da orientação a aspectos; e (iv) sugerimos diretrizes para mapear a notação proposta em construtores dos ambientes de implementação AspectJ e JADE. Em particular, nós usamos uma integração de JADE e AspectJ para implementar nossa abordagem. Além disso, nós descrevemos um processo, usando a notação SPEM (Software Process Engineering Metamodel), para guiar o projeto detalhado completo de um SMA usando os padrões sociais. Para ilustrar a viabilidade de nossa proposta, nós especificamos dois sistemas multi-agentes de diferentes domínios de aplicação e com diferentes graus de complexidade: um Sistema Gestor de Conteúdo, chamado e-News, e um Sistema Gestor de Conferência