On the Quantitative Assessment of Modular Multi-Agent System Architectures

A number of concerns in multi-agent systems (MAS) have a broadly-scoped impact on the system architectural decomposition, which in turn hinder the design of modular MAS architectures. These concerns inherently crosscut the boundaries of several architecture elements, such as components, connectors, and their interfaces. Typical examples of crosscutting concerns in MAS architecture include learning, mobility, coordination, context-awareness, and error handling. Nowadays there are some architectural proposals that envisage an emerging aspect-oriented architectural pattern as a potential solution to address modularity shortcomings of conventional architectural patterns for MAS designs. However, little effort has been dedicated to effectively assess when and which of these existing architectural solutions promote in fact superior modularity in the presence of typical crosscutting MAS concerns. This paper presents a quantitative comparison of aspect-oriented and traditional MAS architectures with respect to their support for promoting enhanced modularity in the presence of architectural crosscutting concerns in MAS design. Our evaluation used two medium-sized MAS applications and was centered on fundamental modularity attributes, such as separation of architectural concerns, architectural coupling, component cohesion, and interface simplicity.

[1]  Agostino Poggi,et al.  Jade - a fipa-compliant agent framework , 1999 .

[2]  Marcelo R. Campo,et al.  Assisting the Development of Aspect-Based Multi-agent Systems Using the Smartweaver Approach , 2002, SELMAS.

[3]  Uirá Kulesza,et al.  The Mobility Aspect Pattern , 2004 .

[4]  Aaron Helsinger,et al.  Cougaar: a scalable, distributed multi-agent architecture , 2004, 2004 IEEE International Conference on Systems, Man and Cybernetics (IEEE Cat. No.04CH37583).

[5]  Carlos José Pereira de Lucena,et al.  A modular implementation framework for code mobility , 2006, Mobility '06.

[6]  David Camacho Coordination of planning agents to solve problems in the Web: Thesis , 2003 .

[7]  Rick Kazman,et al.  Evaluating Software Architectures: Methods and Case Studies , 2001 .

[8]  Mario R. Barbacci,et al.  Architectural Evaluation of Collaborative Agent-Based Systems , 1999 .

[9]  Carlos José Pereira de Lucena,et al.  Composing design patterns: a scalability study of aspect-oriented programming , 2006, AOSD.

[10]  Cecília M. F. Rubira,et al.  Exceptions and aspects: the devil is in the details , 2006, SIGSOFT '06/FSE-14.

[11]  Michael Rovatsos,et al.  Capturing agent autonomy in roles and XML , 2003, AAMAS '03.

[12]  Donald D. Cowan,et al.  An interactive method for extracting grammar from programs , 2004 .

[13]  Naoyasu Ubayashi,et al.  Separation of Concerns in Mobile Agent Applications , 2001, Reflection.

[14]  Carlos José Pereira de Lucena,et al.  Taming Heterogeneous Agent Architectures with Aspects , 2006 .

[15]  Nenad Ivezic,et al.  An analysis of a supply chain management agent architecture , 2000, Proceedings Fourth International Conference on MultiAgent Systems.

[16]  Daniel W. Palmer,et al.  An aspect-oriented approach for modeling self-organizing emergent structures , 2006, SELMAS '06.

[17]  Danny Weyns,et al.  Decentralized control of E'GV transportation systems , 2005, AAMAS '05.

[18]  Elizabeth A. Kendall,et al.  Role model designs and implementations with aspect-oriented programming , 1999, OOPSLA '99.

[19]  Carlos José Pereira de Lucena,et al.  Improving Extensibility of Object-Oriented Frameworks with Aspect-Oriented Programming , 2006, ICSR.

[20]  Lidia Fuentes,et al.  Training compositional agents in negotiation protocols using ontologies , 2004, Integr. Comput. Aided Eng..

[21]  Carlos José Pereira de Lucena,et al.  Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study , 2006, 2006 22nd IEEE International Conference on Software Maintenance.

[22]  Carlos José Pereira de Lucena,et al.  Towards a Method for the Development of Aspect-Oriented Generative Approaches , 2004 .

[23]  Carlos José Pereira de Lucena,et al.  Aspectizing Multi-agent Systems: From Architecture to Implementation , 2004, SELMAS.

[24]  Paul Davidsson,et al.  Characterization and Evaluation of Multi-agent System Architectural Styles , 2005, SELMAS.

[25]  I. Gorton,et al.  A quality-driven systematic approach for architecting distributed software applications , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[26]  Tobin J. Lehman,et al.  T Spaces : The Next Wave , 2004 .

[27]  Jean-Pierre Briot,et al.  From Active Objects to Autonomous Agents , 1998, IEEE Concurr..

[28]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[29]  Cláudio Sant'Anna,et al.  Reflections on architectural connection: seven issues on aspects and ADLs , 2006, EA '06.

[30]  Carlos José Pereira de Lucena,et al.  On the Modular Representation of Architectural Aspects , 2006, EWSA.

[31]  Franco Zambonelli,et al.  Software Engineering for Large-Scale Multi-Agent Systems , 2003, Lecture Notes in Computer Science.

[32]  Alessandro F. Garcia,et al.  Context-aware exception handling in mobile agent systems: the MoCA case , 2006, SELMAS '06.

[33]  Onn Shehory,et al.  Software Architecture Attributes of Multi-agent Systems , 2009, AOSE.

[34]  Carlos José Pereira de Lucena,et al.  The Reflective Blackboard Pattern: Architecting Large Multi-agent Systems , 2002, SELMAS.

[35]  Analía Amandi,et al.  Building Object-Agents from a Software Meta-Architecture , 1998, SBIA.

[36]  Danny B. Lange,et al.  Programming and Deploying Java¿ Mobile Agents with Aglets¿ , 1998 .

[37]  Carlos José Pereira de Lucena,et al.  Separation of Concerns in Multi-agent Systems: An Empirical Study , 2003, SELMAS.

[38]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[39]  William G. Griswold,et al.  Getting started with ASPECTJ , 2001, CACM.

[40]  Carlos José Pereira de Lucena,et al.  Modularizing design patterns with aspects: a quantitative study , 2005, AOSD '05.

[41]  Fabio Kon,et al.  InteGrade: object‐oriented Grid middleware leveraging the idle computing power of desktop machines , 2004, Concurr. Pract. Exp..