An Aspect-Oriented Modeling Framework for Multi-Agent Systems Design

  • Alessandro Garcia
  • Christina Chavez
  • Ricardo Choren
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4405)


A number of concerns in multi-agent system (MAS)design have a crosscutting impact on agent-oriented models. These concerns inherently affect several system agents and their internal modeling elements, such as actions and goals. Examples of crosscutting concerns in MAS design encompass both internal and systemic properties, such as learning, mobility, error handling, and security. Without an explicit modeling of such MAS properties, designers can not properly communicate and reason about them and their broadly-scoped effects. This paper pre sents a meta-modeling framework for supporting the modular representation of crosscutting concerns in agent-oriented design. The framework is centered on the notion of aspects to describe these concerns. It also defines new composition op-erators to enable the specification on how aspects affect the agent goals and ac-tions. The proposed framework is a result of our previous experience in both using aspect-oriented techniques for MAS design and implementation, and integrating aspect-oriented abstractions in an agent-oriented modeling language, called ANote.


Multiagent System Agent Model Agent Goal Composition Mechanism Architectural Description Language 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    AOSD Steering Committee: main page (2006),
  2. 2.
    Bergenti, F., Gleizes, M.-P., Zambonelli, F. (eds.): Methodologies and Software Engineering for Agent Systems: The Agent-Oriented Software Engineering Handbook, vol. 11. Springer, Heidelberg (2004)Google Scholar
  3. 3.
    Cacho, N., et al.: Composing Design Patterns: A Scalability Study of Aspect-Oriented Programming. In: Proc. of the 5th International Conference on Aspect-Oriented Software Development (2006)Google Scholar
  4. 4.
    Castro, J., Kolp, M., Mylopoulos, J.: Towards Requirements-Driven Information Systems Engineering: the Tropos Project. Information Systems 27(6), 365–389 (2002)zbMATHCrossRefGoogle Scholar
  5. 5.
    Chavez, C., Lucena, C.: A Theory of Aspects for Aspect-Oriented Development. In: Proc. 17th Brazilian Symposium on Software Engineering, pp. 130–145 (2003)Google Scholar
  6. 6.
    Chavez, C.: A Model-Driven Approach to Aspect-Oriented Design. PhD Thesis, Computer Science Department, PUC-Rio (2004)Google Scholar
  7. 7.
    Winikoff, M., Cheong, C.: Hermes: Designing Goal-Oriented Agent Interactions. In: Müller, J.P., Zambonelli, F. (eds.) AOSE 2005. LNCS, vol. 3950, pp. 16–27. Springer, Heidelberg (2006)Google Scholar
  8. 8.
    Choren, R., Lucena, C.: Modeling Multi-agent Systems with ANote. Journal of Software and Systems Modeling 4(3), 199–208 (2005)CrossRefGoogle Scholar
  9. 9.
    Cossentino, M., Zambonelli, F.: Agent Design from the Autonomy Perspective. In: Nickles, M., Rovatsos, M., Weiss, G. (eds.) AUTONOMY 2003. LNCS (LNAI), vol. 2969, pp. 140–150. Springer, Heidelberg (2004)Google Scholar
  10. 10.
    D’Hondt, M., Gybels, K., Jonckers, V.: Seamless Integration of Rule-Based Knowledge and Object-Oriented Functionality with Linguistic Symbiosis. In: Proc. of the 2004 ACM Symposium on Applied Computing, pp. 1328–1335 (2004)Google Scholar
  11. 11.
    Dijkstra, E.: A Discipline of Programming. Prentice Hall, Englewood Cliffs (1976)zbMATHGoogle Scholar
  12. 12.
    Filho, F., et al.: Exceptions and As-pects: the Devil is in the Details. In: Proc. of the 14th International Conference on Foundations on Software Engineering (2004)Google Scholar
  13. 13.
    Filman, R., et al.: Aspect-Oriented Software Development. Addison-Wesley, Reading (2004)Google Scholar
  14. 14.
    Garcia, A., et al.: Separation of Con-cerns in Multi-Agent Systems: An Empirical Study. In: Lucena, C., et al. (eds.) SELMAS 2003. LNCS, vol. 2940, pp. 49–72. Springer, Heidelberg (2004)Google Scholar
  15. 15.
    Garcia, A., Lucena, C., Cowan, D.: Agents in Object-Oriented Software Engineering. Software: Practice and Experience 34(3), 489–521 (2004)CrossRefGoogle Scholar
  16. 16.
    de Lucena, C.J.P., et al.: Aspects in Agent-Oriented Software Engineering: Lessons Learned. In: Müller, J.P., Zambonelli, F. (eds.) AOSE 2005. LNCS, vol. 3950, pp. 231–247. Springer, Heidelberg (2006)Google Scholar
  17. 17.
    Garcia, A., Kulesza, U., Lucena, C.: Aspectizing Multi-Agent Systems: From Architecture to Implementation. In: Choren, R., et al. (eds.) SELMAS 2004. LNCS, vol. 3390, pp. 121–143. Springer, Heidelberg (2005)Google Scholar
  18. 18.
    Garcia, A., Chavez, C., Choren, R.: Enhancing Agent-Oriented Models with Aspects. In: Proc. of the 5th International Conference on Autonomous Agents and MultiAgent Systems (2006)Google Scholar
  19. 19.
    Garcia, A., Lucena, C.: Taming Heterogeneous Agent Architectures with Aspects. Commmunications of the ACM (to appear) (October 2006)Google Scholar
  20. 20.
    Garcia, A., et al.: Modularizing Design Patterns with Aspects: A Quantitative Study. In: Rashid, A., Aksit, M. (eds.) Transactions on Aspect-Oriented Software Development I. LNCS, vol. 3880, pp. 36–74. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  21. 21.
    Kang, M., et al.: Modelling Mobile Agent Applications in UML 2.0 Activity Diagrams. In: Proc. of 3rd SELMAS Workshop at ICSE 2004, pp. 104–111 (2004)Google Scholar
  22. 22.
    Kiczales, G., et al.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  23. 23.
    Kiczales, G., Mezini, M.: Aspect-Oriented Programming and Modular Reasoning. In: Proc. of the 27th International Conference on Software Engineering, pp. 49–58 (2005)Google Scholar
  24. 24.
    Kulesza, U., et al.: Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study. In: Proc. of the 9th International Conference on Software Maintenance (2006)Google Scholar
  25. 25.
    de Lucena, C.J.P., et al.: Improving Extensibility of Object-Oriented Frameworks with Aspect-Oriented Programming. In: Morisio, M. (ed.) ICSR 2006. LNCS, vol. 4039, pp. 231–245. Springer, Heidelberg (2006)Google Scholar
  26. 26.
    Lobato, C., et al.: A Modular Implementation Framework for Code Mobility. In: Proc. 3rd IEE Mobility Conference (2006)Google Scholar
  27. 27.
    Singh, M.P., Mallya, A.U.: Incorporating Commitment Protocols into Tropos. In: Müller, J.P., Zambonelli, F. (eds.) AOSE 2005. LNCS, vol. 3950, pp. 69–80. Springer, Heidelberg (2006)Google Scholar
  28. 28.
    Mouratidis, H., et al.: A Secure Architectural Description Language for Agent Systems. In: Proc. of 4th Intl. Conference on Autonomous Agents and Multiagent Systems, pp. 578–585 (2005)Google Scholar
  29. 29.
    Odell, J., Parunak, H., Bauer, B.: Extending UML for Agents. In: Proc. of the Agent-Oriented Information Systems Workshop at AAAI 2000, pp. 3–17 (2000)Google Scholar
  30. 30.
    Pace, A., Trilnik, F., Campo, M.: Assisting the Development of Aspect-based MAS using the SmartWeaver Approach. In: Garcia, A.F., et al. (eds.) Software Engineering for Large-Scale Multi-Agent Systems. LNCS, vol. 2603, pp. 165–181. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  31. 31.
    Parnas, D.: On the Criteria to Be Used in Decomposing Systems into Modules. Communications of the ACM 15(12), 1053–1058 (1972)CrossRefGoogle Scholar
  32. 32.
    On the Quantitative Asessment of Modular Multiagent Architectures. In: Proc. of Net.ObjectDays.06 (to appear) (2006)Google Scholar
  33. 33.
    SICS AB: Trading Agent Competition (2006),
  34. 34.
    Silva, V., Lucena, C.: From a Conceptual Framework for Agents and Objects to a Multi-Agent System Modeling Language. Journal of Autonomous Agents and Multi-Agent 9(1–2), 145–189 (2004)CrossRefGoogle Scholar
  35. 35.
    Tarr, P., et al.: N Degrees of Separation: Multi-Dimensional Separation of Concerns. In: Proc. 21st International Conference on Software Engineering, pp. 107–119 (1999)Google Scholar
  36. 36.
    Ubayashi, N., Tamai, T.: Separation of Concerns in Mobile Agent Applications. In: Yonezawa, A., Matsuoka, S. (eds.) Reflection 2001. LNCS, vol. 2192, pp. 89–109. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  37. 37.
    Weiss, G., Rovatsos, M., Nickles, M.: Capturing Agent Autonomy in Roles and XML. In: Proc. Intl. Conference on Autonomous Agents and Multiagent Systems, pp. 105–112 (2003)Google Scholar
  38. 38.
    Zambonelli, F., Jennings, N., Wooldridge, M.: Developing multiagent systems: The Gaia methodology. ACM Transactions on Software Engineering and Methodology 12(3), 417–470 (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Alessandro Garcia
    • 1
  • Christina Chavez
    • 2
  • Ricardo Choren
    • 3
  1. 1.Computing Department, Lancaster UniversityUK
  2. 2.Computing Department, Federal University of BahiaBrazil
  3. 3.Computer Engineering Department, Military Institute of EngineeringBrazil

Personalised recommendations