Abstract
Agent architectures have to cope with a number of internal properties (concerns), such as autonomy, learning, and mobility. As the agent complexity increases, these agent properties crosscut each other and the agent’s basic functionality. In addition, multi-agent systems encompass multiple agent types with heterogeneous architectures. Each of these agent types has different properties, which need to be composed in different ways. In this context, the separation and the flexible composition of agent concerns are crucial for the construction of heterogeneous agent architectures. Moreover the separation of agent concerns needs to be guaranteed throughout the different development phases, especially from the architectural to the implementation phase. Existing approaches do not provide appropriate support for the modularization of agent properties at the architectural stage, and do not promote a smooth transition to the system implementation. This paper presents an aspect-oriented method that allows for a better separation of concerns, supporting the systematic aspectization of agent properties through the architectural definition, detailed design and implementation. A multi-agent system for paper reviewing management is assumed as a case study through this paper to show the applicability of our proposal.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Buschmann, F., et al.: Pattern-Oriented Software Architecture: A System of Patterns. John Wiley Sons, Chichester (1996)
Chavez, C.: A Model-Driven Approach to Aspect-Oriented Design. PhD Thesis, Computer Science Department, PUC-Rio, Rio de Janeiro, Brazil (April 2004)
Garcia, A., Cortés, M., Lucena, C.: A Web Environment for the Development of E-Commerce Portals. In: Proceedings of the IRMA 2001, Toronto (May 2001)
Garcia, A., et al.: Separation of Concerns in Multi-Agent Systems: An Empirical Study. In: Lucena, C., Garcia, A., Romanovsky, A., Castro, J., Alencar, P.S.C. (eds.) SELMAS 2003. LNCS, vol. 2940, pp. 49–72. Springer, Heidelberg (2004)
Garcia, A.: From Objects to Agents: An Aspect-Oriented Approach. PhD Thesis, Computer Science Department, PUC-Rio, Rio de Janeiro, Brazil (April 2004)
Garcia, A., Lucena, C., Cowan, D.: Agents in Object-Oriented Software Engineering. Software: Practice and Experience 34(5), 489–521 (2004)
Garcia, A., et al.: Engineering Multi-Agent Systems with Aspects and Patterns. Journal of the Brazilian Computer Society 8(1), 57–72 (2002)
Sant’anna, C., Garcia, A., Chavez, C., Lucena, C., Staa, A.: On the Reuse and Maintenance of Aspect-Oriented Software: An Assessment Framework. In: Proc. 17th Brazilian Symposium on Software Engineering (SBES 2003), Manaus, Brazil (October 2003)
Kiczales, G., et al.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Kiczales, G., et al.: Getting Started with AspectJ. CACM (October 2001)
Pace, A., et al.: Architecting the Design of Multi-Agent Organizations with Proto- Frameworks. In: Lucena, C., Garcia, A., Romanovsky, A., Castro, J., Alencar, P.S.C. (eds.) SELMAS 2003. LNCS, vol. 2940, pp. 75–92. Springer, Heidelberg (2004)
Pace, A., et al.: Assisting the Development of Aspect-based MAS using the SmartWeaver Approach. In: Garcia, A.F., de Lucena, C.J.P., Zambonelli, F., Omicini, A., Castro, J. (eds.) Software Engineering for Large-Scale Multi-Agent Systems. LNCS, vol. 2603. Springer, Heidelberg (2003)
Silva, V., et al.: Taming Agents and Objects in Software Engineering. In: Garcia, A.F., de Lucena, C.J.P., Zambonelli, F., Omicini, A., Castro, J. (eds.) Software Engineering for Large-Scale Multi-Agent Systems. LNCS, vol. 2603. Springer, Heidelberg (2003)
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)
Bellifemine, F., et al.: JADE: A FIPA-Compliant Agent Framework. In: Proc. of the Practical Applications of Intelligent Agents and Multi-Agents, April 1999, pp. 97–108 (1999)
Fuggetta, A., Picco, G., Vigna, C.: Understanding Code Mobility. IEEE Transactions on Software Engineering 24(5), 342–361 (1998)
Iglesias, C., et al.: A Survey of Agent-Oriented Methodologies. In: Rao, A.S., Singh, M.P., Müller, J.P. (eds.) ATAL 1998. LNCS (LNAI), vol. 1555, pp. 317–330. Springer, Heidelberg (1999)
Garcia, A., et al.: The Mobility Aspect Pattern. In: Proc. of the 4th Latin-American Conference on Pattern Languages of Programming, SugarLoafPLoP 2004, Fortaleza, Brazil (August 2004)
Amandi, A., Price, A.: Building Object-Agents from a Software Meta-Architecture. In: de Oliveira, F.M. (ed.) SBIA 1998. LNCS (LNAI), vol. 1515, pp. 21–30. Springer, Heidelberg (1998)
Gamma, E., et al.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)
Camacho, D.: Coordination of Planning Agents to Solve Problems in the Web. AI Communications 16(4), 309–311 (2003)
Garcia, A., et al.: The Learning Aspect Pattern. In: Proc. of the 11th Conference on Pattern Languages of Programs (PLoP 2004), Monticello, USA (September 2004)
Pulvermüller, E., Speck, A., Rashid, A.: Implementing collaboration-based Designs using Aspect-Oriented Programming. In: Proc. of TOOLS-USA, July 2000, pp. 95–104 (2000)
Lavender, R., Schmidt, D.: Active Object: an Object Behavioral Pattern for Concurrent Programming. In: Pattern Languages of Program Design. Addison-Wesley, Reading (1996)
Costa, A.: An Aspect-Oriented Software Architecture for Traffic Simulators. Master’s Dissertation, University of Sao Paulo (In Portuguese) (October 2003)
Kendall, E., et al.: A Framework for Agent Systems. Implementing Application Frameworks. In: Fayad, M., et al. (eds.) OO Frameworks at Work. John Wiley & Sons, Chichester (1999)
Kendall, E.: Role Model Designs and Implementations with Aspect-oriented Programming. In: Proceedings of OOPSLA 1999, pp. 353–369. ACM Press, New York (1999)
D’Hondt, M., Gybels, K., Jonckers, V.: Seamless Integration of Rule-Based Knowledge and Object-Oriented Functionality with Linguistic Symbiosis. In: Proceedings of the 19th Annual ACM Symposium on Applied Computing (SAC 2004), Nicosia, Cyprus (March 2004)
Dijkstra, E.: A Discipline of Programming. Prentice Hall, Englewood Cliffs (1976)
Jennings, N.: Agent-Oriented Software Engineering. In: Proc. of the 12th Intl. Conference on Industrial and Engineering Applications of Artificial Intelligence, pp. 4–10 (1999)
Huhns, M., Singh, M. (eds.): Agents and Multiagent Systems: Themes, Approaches, and Challenges. Readings in Agents, Ch. 1, pp. 1–23. Morgan Kaufmann Publishers, USA
Rasmus, D.: Rethinking Smart Objects: Building Artificial Intelligence with Objects. Cambridge University Press, New York (1999)
Briot, J., Gasser, L.: Agents and Concurrent Objects. IEEE Concurrency, Special Issue on Actors and Agents (1998)
Rao, A., Georgeff, M.: BDI Agents: From Theory to Practice. In: Proceedings of the 1st Intl. Conference on Multi-Agent Systems (ICMAS 1995), San Francisco, pp. 312–319 (1995)
Shoham, Y.: Agent-Oriented Programming. Artificial Intelligence 60(1), 51–92 (1993)
FIPA, Agent Communication Technical Committee. Agent Communication Language - FIPA 1999 Draft Specification (1999), http://www.fipa.org
Splunter, S., Wijngaards, N., Brazier, F.: Structuring Agents for Adaptation. In: Alonso, E., et al. (eds.) AAMAS 2000 and AAMAS 2002. LNCS (LNAI), vol. 2636, pp. 174–186. Springer, Heidelberg (2003)
Russell, S., Norvig, P.: Artificial Intelligence: A Modern Approach, 2nd edn. Prentice Hall, Englewood Cliffs (2002)
Norman, T., Long, D.: Goal Creation in Motivated Agents. In: Wooldridge, M.J., Jennings, N.R. (eds.) ECAI 1994 and ATAL 1994. LNCS, vol. 890. Springer, Heidelberg (1995)
Ekdahl, B.: How Autonomous is an Autonomous Agent? In: Proc. of the 5th Conference on Systemic, Cybernetics and Informatics (SCI 2001), Orlando, USA, July 22-25 (2001)
Mitchell, T.: Machine Learning. McGraw Hill, New York (1997)
Tarr, P., Ossher, H.: Hyper/J User Manual (2000), http://www.alphaworks.ibm.com/tech/hyperj
Zambonelli, F., Jennings, N., Wooldridge, M.: Organizational Abstractions for the Analysis and Design of Multi-agent Systems. In: Ciancarini, P., Wooldridge, M.J. (eds.) AOSE 2000. LNCS, vol. 1957, pp. 235–251. Springer, Heidelberg (2001)
Guessoum, Z., Briot, J.: From Active Objects to Autonomous Agents. IEEE Concurrency, Special Series on Actors and Agents 7(3), 68–76 (1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Garcia, A., Kulesza, U., Lucena, C. (2005). Aspectizing Multi-agent Systems: From Architecture to Implementation. In: Choren, R., Garcia, A., Lucena, C., Romanovsky, A. (eds) Software Engineering for Multi-Agent Systems III. SELMAS 2004. Lecture Notes in Computer Science, vol 3390. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31846-0_8
Download citation
DOI: https://doi.org/10.1007/978-3-540-31846-0_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-24843-9
Online ISBN: 978-3-540-31846-0
eBook Packages: Computer ScienceComputer Science (R0)