[en] AN ASPECT-ORIENTED FRAMEWORK FOR SOFTWARE AGENTS MOBILITY - CIDIANE ARACATY LOBATO (2006)
[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.