This Article 
 Bibliographic References 
 Add to: 
Engineering Mobile Agent Applications via Context-Dependent Coordination
November 2002 (vol. 28 no. 11)
pp. 1039-1055

Abstract—The design and development of Internet applications requiring dynamic and possibly mobile access to Internet resources can take advantage of an approach based on autonomous mobile agents. However, mobility introduces peculiar issues related to the modeling and management of the agents' coordination activities. This paper introduces context-dependent coordination as a framework for the design and development of Internet applications based on mobile agents, and shows how it can be supported by a proper coordination infrastructure. Context-dependent coordination is centered on the notion of programmable coordination media, as the software abstraction via which an agent in an Internet site can access to local resources and coordinate with local agents. Programmability stems from the fact that the behavior of the media can be fully configured to influence agents' coordination activities. This enables local administrators to configure coordination media so as to enact site-dependent coordination policies, and mobile agents to configure the accessed coordination media to obtain an application-dependent behavior of the media themselves. Several application examples shows that exploiting context-dependent coordination promotes a clear separation of concern in design and development, and can make applications more modular and easier to be maintained. The MARS system is assumed as an exemplar coordination infrastructure to clarify the concepts expressed and to show their actual implementation.

[1] G.D. Abowd and E.D. Mynatt, "Charting Past, Present, and Future Research in Ubiquitous Computing," ACM Trans. Computer-Human Interaction, Mar. 2000, pp. 29-58.
[2] The Agentcities Network,http:/, 2002.
[3] S. Ahuja, N. Carriero, and D. Gelernter, “Linda and Friends,” Computer, vol. 19, no. 8, Aug. 1986.
[4] The Agent Unified Modeling Language,http:/, 2002.
[5] M. Baldi, S. Gai, and G.P. Picco, "Exploiting Code Mobility in Decentralized and Flexible Network Management," Rothermel and Popescu-Zeletin [72], pp. 13-26.
[6] J. Baumann et al., "Mole—Concepts of a Mobile Agent System," World Wide Web J., vol. 1, no. 3, 1998, pp. 123-137.
[7] P. Bellavista, A. Corradi,, and C. Stefanelli,"Mobile Agent Middleware for Mobile Computing," Computer, vol. 34, no. 3, 2001, pp. 73-81.
[8] P. Bellavista and T. Magedanz, “Middleware Technologies: CORBA and Mobile Agents,” Coordination of Internet Agents, A. Omicini, F. Zambonelli, M. Klusch, and R. Tolksdorf eds., 2001.
[9] G. Cabri, L. Leonardi, and F. Zambonelli, "Mobile-Agent Coordination Models for Internet Applications," Computer, vol. 33, no.2, Feb. 2000, pp. 82-89.
[10] G. Cabri, L. Leonardi, and F. Zambonelli, “MARS: A Programmable Coordination Architecture for Mobile Agents,” IEEE Internet Computing, vol. 4, no. 4, pp. 26-35, July/Aug. 2000.
[11] G. Cabri, L. Leonardi, and F. Zambonelli, “XML Dataspaces for the Coordination of Internet Agents,” J. Applied Artificial Intelligence, vol. 15, no. 1, pp. 35-58, Jan. 2001.
[12] L. Cardelli and A. Gordon, “Mobile Ambients,” J. Theoretical Computer Science, vol. 240, no. 1, June 2000.
[13] P. Ciancarini, R. Tolksdorf, F. Vitali, D. Rossi, and A. Knoche, “Coordinating Multiagent Applications on the WWW: A Reference Architecture,” IEEE Trans. Software Eng., vol. 24, no. 5, May 1998.
[14] E. Denti, A. Natali, and A. Omicini, “On the Expressive Power of a Language for Programmable Coordination Media,” Proc. 10th ACM Symp. Applied Computing, Apr. 1998.
[15] J. Ferber and O. Gutknecht, “A Meta-Model for the Analysis and Design of Organizations in Multi-Agent Systems,” Proc. Third Int'l Conf. Multiagent Systems, pp. 128-135, July 1998.
[16] T. Finin et al., "KQML as an Agent Communication Language," Third Int'l Conf. Information and Knowledge Management, ACM Press, New York, 1994.
[17] The Foundation for Intelligent Physical Agents,http:/, 2002.
[18] E. Freeman, S. Hupfer, and K. Arnold, JavaSpaces Principles, Patterns, and Practice, Addison-Wesley, Reading, Mass., 1999.
[19] A. Fuggetta, G. Picco, and G. Vigna, "Understanding Code Mobility," IEEE Trans. Software Eng., May 1998, pp. 352-361.
[20] R.J. Glushko, J.M. Tenenbaum, and B. Meltzer, "An XML Framework for Agent-Based E-Commerce," Comm. ACM, Mar. 1999, pp. 106-114.
[21] P. Wyckoff et al., "T Spaces," IBM Systems J., vol. 37, no. 3, 1998, pp. 454-474.
[22] A.K. Jain, M. Aparicio IV, and M.P. Singh, “Agents for Process Coherence in Virtual Enterprises,” Comm. ACM, vol. 42, no. 3, pp. 62-69, Mar. 1999.
[23] N.R. Jennings, "On Agent-Based Software Engineering," Artificial Intelligence, vol. 177, no. 2, 2000, pp. 277-296.
[24] N.M. Karnik and A.R. Tripathi, “Design Issues in Mobile-Agent Programming Systems,” IEEE Concurrency, July-Sept. 1998.
[25] E.A. Kendall, “Role Modeling for Agent System Analysis, Design, and Implementation,” IEEE Concurrency, pp. 34-41, Apr.-June, 2000.
[26] M. Klusch, “Information Agent Technology for the Internet: A Survey,” J. Data and Knowledge Eng., vol. 36, no. 3, pp. 337-372, Mar. 2001.
[27] D. Lange and M. Oshima, Programming and Deploying Java Mobile Agents with Aglets. Addison Wesley, 1998.
[28] “The MESSAGE Methodology,” Eurescom Project P907, p900-seriesp907, 1999.
[29] N.H. Minsky and V. Ungureanu, “Law-Governed Interaction: A Coordination&Control Mechanism for Heterogeneous Distributed Systems,” ACM Trans. Software Eng. and Methodology, vol. 9, no. 3, pp. 273-305, July 2000.
[30] Y. Moses and M. Tenneholtz, “Artificial Social Systems,” Computers and Artificial Intelligence, vol. 14, no. 3, pp. 533-562, 1995.
[31] A.L. Murphy and G.P. Picco, "Reliable Communication for Highly Mobile Agents," Proc. 1st Int'l Symp. Agent Systems and Applications and 3rd Int'l Symp. Mobile Agents (ASA/MA 99), IEEE CS Press, Los Alamitos, Calif., 1999, pp. 141-150.
[32] P. Noriega, C. Sierra, and J.A. Rodriguez, “The Fishmarket Project. Reflections on Agent-Mediated Institutions for Trustworthy E-Commerce,” Proc. Workshop Agent Mediated Electronic Commerce (AMEC-98), 1998.
[33] A. Omicini and F. Zambonelli, "Coordination for Internet Application Development," J. Autonomous Agents and Multi-Agent Systems, vol. 2, no. 3, Sept. 1999, pp. 251-269.
[34] H.V.D. Parunak, S. Brueckner, J. Sauter, and R.S. Matthews, “Entropy and Self-Organization in Multi-Agent Systems,” Proc. Fifth Int'l Conf. Autonomous Agents, May 2001.
[35] H.V.D. Parunak, “Go to the Ant: Engineering Principles from Natural Agent Systems,” Annals of Operations Research, vol. 75, pp. 69-101, 1997.
[36] T.R. Payne, M. Paolucci, R. Singh, and K. Sycara, “Communicating Agents in Open Multi Agent Systems,” Proc. First NASA Workshop Radical Agent Concepts, Jan. 2002.
[37] G.P. Picco, A.M. Murphy, and G.-C. Roman, “Software Engineering for Mobility: A Roadmap,” The Future of Software Eng., A. Finkelstein ed., pp. 241-258, 2000.
[38] G.P. Picco, A.L. Murphy, and G.-C. Roman, “Lime: Linda Meets Mobility,” Proc. 21st Int'l Conf. Software Eng. (ICSE '99), 1999.
[39] A. Sahai and C. Morin, “Mobile Agents for Enabling Mobile User Aware Applications,” Proc. Second ACM Int'l Conf. Autonomous Agents, May 1998.
[40] T. Sandholm and Q. Huai, “Nomad: Mobile Agent System for an Internet-Based Auction House,” IEEE Internet Computing, vol. 4, no. 2, Mar./Apr. 2000.
[41] I. Satoh, “Flying Emulator: Building and Testing of Networked Applications for Mobile Computers,” Proc. Fifth Int'l Conf. Mobile Agents, Dec. 2001.
[42] R.G. Smith, “The Contract-Net Protocol: High-Level Communication and Control in a Distributed Problem Solver,” IEEE Trans. Computers, vol. 29, no. 12, pp. 1104-1113, 1980.
[43] J.W. Stamos and D.K. Gifford, "Implementing Remote Evaluation," IEEE Trans. Software Eng., vol. 16, no. 7, pp. 710-722, July 1990.
[44] Java Servlet Development Kit (SUN), , 1997.
[45] R. Tolksdorf, “Coordinating Work on the Web with Workspaces,” Proc. Ninth IEEE Workshops Enabling Technologies: Infrastructures for Collaborative Enterprises, June 2000.
[46] J. Waldo et al., "A Note on Distributed Computing," Mobile Object Systems: Towards the Programmable Internet, Lecture Notes in Computer Science, No. 1222, Springer-Verlag, Heidelberg, Germany, 1997, pp. 49-64; (current Apr. 2000).
[47] M. Weiser, “Hot Topics: Ubiquitous Computing,” Computer, vol. 26, no. 10, Oct. 1993.
[48] J.E. White, "Mobile Agents," in Software Agents, J.M. Bradshaw, ed., MIT Press, Cambridge, Mass., 1997, pp. 437-472.
[49] F. Zambonelli, N.R. Jennings, and M. Wooldridge, “Organizational Rules as an Abstraction for the Analysis and Design of Multi-Agent Systems,” Int'l J. Software Eng. and Knowledge Eng., vol. 11, no. 3, pp. 303-328, 2001.

Index Terms:
Mobility, agents, Internet computing, coordination, middleware, context-awareness.
Giacomo Cabri, Letizia Leonardi, Franco Zambonelli, "Engineering Mobile Agent Applications via Context-Dependent Coordination," IEEE Transactions on Software Engineering, vol. 28, no. 11, pp. 1039-1055, Nov. 2002, doi:10.1109/TSE.2002.1049403
Usage of this product signifies your acceptance of the Terms of Use.