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

AUTOR(ES)
DATA DE PUBLICAÇÃO

2007

RESUMO

Although agent-oriented software engineering is quite recent, this new paradigm has been successfully used in industrial applications, such as telecommunications and e-commerce. Among the several issues required for the consolidation of this new paradigm, we highlight the need for suitable methodologies, notations and tools to support agentoriented software development. In this light, the Tropos framework proposes a requirements-driven approach aimed at building agent-oriented software that operates within a dynamic environment. Among the challenges of multi-agent systems (MAS) development, we highlight the issue of developing reusable, flexible, understandable and maintainable systems in order to reduce development costs. To this end, Tropos has defined a set of design patterns, called social patterns, focusing on social and intentional features which are recurrent in cooperative and multi-agent systems. These patterns can be called crosscutting concerns, since they cut across the functional modules in MAS, decreasing the system reusability and maintainability. These crosscutting concerns can be better addressed by adopting aspect-oriented software development techniques. The purpose of this new technology is to encapsulate crosscutting concerns in separate modules, the aspects, avoiding their scattering or tangling through software artifacts. Thus, aspects can be used as abstractions to capture social patterns concerns. This thesis proposes a description technique to promote advanced separation of social patterns concerns in MAS design. To achieve this we have: (i) specified a UML (Unified Modeling Language) profile that defines a metamodel incorporating agency concepts; (ii) specialized the agency metamodel by using the concept of model roles for specifying which model elements must participate in a pattern; (iii) attached notes to the structural model of the social pattern to capture some abstractions of aspect orientation; and (iv) suggested guidelines to map the proposed notation to the constructs of AspectJ and JADE implementation environments. In particular, we have used an integration of JADE and AspectJ to implement our approach. Moreover, we have described a process, using the SPEM (Software Process Engineering Metamodel) notation, to guide the whole detailed design of a MAS using the social patterns. To illustrate the feasibility of our proposal, we specify two multi-agent systems from different application domains and with different degrees of complexity: a Content Manager System, called e-News, and a Conference Management System

ASSUNTO(S)

padrÃes de projeto detailed design process orientaÃÃo a aspectos modelagem multi-agent systems sistemas multi-agentes processo de projeto detalhado aspect orientation modeling design patterns ciencia da computacao

Documentos Relacionados