Integration of system requirements and multiagent software architecture - Rosângela David Bastos, Lúcia (2005)
Engenharia de Requisitos e Arquitetura de Software vêm estabelecendo áreas de pesquisa, educação e pratica dentro da comunidade de Engenharia de Software. A evolução dessas duas disciplinas vem, entretanto, ocorrendo de forma independente, o que estabelece um problema de integração entre as duas disciplinas a ser explorada. A Engenharia de Requisitos identifica o propósito de sistemas e o contexto no qual serão utilizados. Arquitetura de Software define os componentes do software, suas propriedades e seus relacionamentos. Adicionalmente, Arquitetura de Software é reconhecida por ter grande importância no atendimento dos requisitos não-funcionais, tais como: disponibilidade, confidencialidade, manutenabilidade, segurança e evolução do sistema. Há um relacionamento claro entre as duas disciplinas, apesar disso, desenvolver requisitos de sistemas dentro de arquiteturas de software que satisfaçam àqueles requisitos é ainda uma tarefa difícil, baseada principalmente na intuição. Entender e dar suporte à integração entre os conceitos de requisitos e arquiteturas é um dos principais problemas nas pesquisas da Engenharia de Software. Para reduzir estes problemas, este tese propõe técnicas para derivar um modelo arquitetural a partir de especificações de requisitos em Sistema Multi-Agentes (MAS). Esta tese propõe uma estrutura para identificar e mapear os elementos arquiteturais e as dependências entre estes elementos, usando como base os requisitos declarados no sistema e conceitos organizacionais. Nossa abordagem propõe que um Sistema Multi-Agentes (MAS) corresponde a uma estrutura organizacional na qual os atores são membros de um grupo com o propósito de atingir um objetivo. Uma organização compreende grupos, membros, objetivos, papéis e interações. A idéia básica do conceito de grupo é fornecer uma referência coletiva de um conjunto de papéis que executam, de forma colaborativa um conjunto de tarefas para atingir os seus objetivos. Um membro, quando assume um papel, não trabalha isolado, mas interage e coopera com outros papéis. Nossa abordagem é baseada em dois modelos complementares que separam os conceitos de organização e de atribuição. No modelo organizacional, os objetivos do grupo são identificados a partir do modelo de requisitos do sistema. A organização social consiste em papéis e interações. No modelo da atribuição, os papéis são agrupados em sub-grupos. Estes sub-grupos são atribuídos aos componentes, baseados em sua similaridade com cada componente arquitetural. O resultado é uma configuração arquitetural, na qual os sub-grupos são alocados nos componentes da arquitetura