This Article 
 Bibliographic References 
 Add to: 
Coordinating Multiagent Applications on the WWW: A Reference Architecture
May 1998 (vol. 24 no. 5)
pp. 362-375

Abstract—The original Web did not support multiuser, interactive applications. This shortcoming is being studied, and several approaches have been proposed to use the Web as a platform for programming Internet applications. However, most existing approaches are oriented to centralized applications at servers, or local programs within clients. To overcome this deficit, we introduce PageSpace, that is a reference architecture for designing interactive multiagent applications. In this paper we describe how we control agents in PageSpace, using variants of the coordination language Linda to guide their interactions. Coordination technology is integrated with the standard Web technology and the programming language Java. Several kinds of agents live in the PageSpace: user interface agents, personal homeagents, agents that implement applications, and agents which interoperate with legacy systems. Within our architecture, it is possible to support fault-tolerance and mobile agents as well.

[1] E. Ly, "Distributed Java Applets for Project Management on the Web," IEEE Internet Computing, vol. 1, no. 3, pp. 21-27, May/June 1997.
[2] J.-M. Andreoli, F. Pacull, and R. Pareschi, "XPECT: A Framework for Electronic Commerce," IEEE Internet Computing, Vol. 1, No. 4, 1997, pp. 40-48.
[3] E. Evans and D. Rogers, "Using Java Applets and Corba for Multi-User Distributed Applications," IEEE Internet Computing, Vol. 1, No. 3, May/June 1997, pp. 43-55.
[4] P. Ciancarini, A. Knoche, R. Tolksdorf, and F. Vitali, “Pagespace: An Architecture to Coordinate Distributed Applications on the Web,” Proc. Fifth Int'l World Wide Web Conf., May 1996.
[5] P. Ciancarini, "Coordination Models and Languages as Software Integrators," ACM Computer Surveys, vol. 28, no. 2, pp. 300-302, 1996.
[6] R.M. Adler, "Distributed Coordination Models for Client-Server Computing," Computer, vol. 29, no. 4, Apr. 1995, pp. 14-22.
[7] N. Carriero and D. Gelernter, "Linda in Context," Comm. ACM, vol. 32, no. 4, Apr. 1989, pp. 444-458.
[8] N. Carriero and D. Gelernter, "How to Write Parallel Programs: A Guide to the Perplexed," ACM Computing Surveys, vol. 21, no. 3, pp. 323-358, Sept. 1989.
[9] D. Gelernter and N. Carriero, "Coordination Languages and Their Significance," Comm. ACM, vol. 35, no. 2, Feb. 1992, pp. 96-107.
[10] S. Ahuja, N. Carriero, D. Gelernter, and V. Krishnaswamy, "Matching Language and Hardware for Parallel Computation in the Linda Machine," IEEE Trans. Computers, vol. 37, no. 8, pp. 921-929, Aug. 1988.
[11] N. Carriero and D. Gelernter, "Tuple Analysis and Partial Evaluation Strategies in the Linda Precompiler," Languages and Compilers for Parallel Computing, D. Gelernter, A. Nicolau, and D. Padua, eds., pp. 114-125.Cambridge, Mass.: MIT Press, 1990.
[12] Scientific Computing Associates, New Haven, Conn., Paradise 4. Reference Manual, 1996.
[13] W. Leler, “Linda Meets Unix,” Computer, vol. 23, no. 2, pp. 43-55, Feb. 1990.
[14] G.A. Geist and V.S. Sunderam, “Network-Based Concurrent Computing on the PVM System,” Concurrency: Practice and Experience, Vol. 4 No. 4 June 1992, pp. 293–311.
[15] Y. Gutfreund, J. Nicol, R. Sasnett, and V. Phuah, "WWWinda: An Orchestration Service for WWW Browsers and Accessories," Proc. Second Int'l World Wide Web Conf.,Chicago, Il., Dec. 1994.
[16] W. Schoenfeldinger, "WWW Meets Linda: Linda for Global WWW-Based Transaction," World Wide Web J., vol. 1, no. 1, pp. 259-276, Dec. 1995.
[17] M. Shaw and D. Garlan, Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, 1996.
[18] P. Ciancarini and D. Rossi, "Jada: Coordination and Communication for Java Agents," Mobile Object Systems: Towards the Programmable Internet, J. Vitek and C. Tschudin, eds., Lecture Notes in Computer Science 1,222, pp. 213-228.Berlin: Springer-Verlag, 1997.
[19] R. Tolksdorf, Coordination in Open Distributed Systems. Number Reihe 10, 362 in VDI Fortschrittsberichte. VDI Verlag, 1995, ISBN 3-18-336210-4.
[20] N. Carriero and D. Gelernter, "The S/Net's Linda Kernel," ACM Trans. Computer Systems, vol. 4, no. 2, pp. 110-129, May 1986.
[21] O. Rees, N. Edwards, M. Madsen, M. Beasley, and A. McClenaghan, "A Web of Distributed Objects," World Wide Web J., vol. 1, no. 1, pp. 75-88, 1995.
[22] A. Beitz et al., "Integrating WWW and Middleware," Proc. First Australian World Wide Web Conf., R. Debreceny and A. Ellis, eds., Lismore, NSW: Norsearch Publishing, 1995.
[23] M. Brown and M. Najork, "Distributed Active Objects," Computer Networks and ISDN Systems, vol. 28, nos. 7-11, pp. 1,037-1,052, 1996.
[24] N. Carriero, D. Gelernter, and S. Hupfer, "Collaborative Applications Experience with the Bauhaus Coordination Language," Proc. HICSS30, Sw Track,Hawaii, pp. 310-319, IEEE CS Press, 1997.
[25] J. Waldo et al., "Javaspace Specification—Revision 0.4," technical report, Sun Microsystems, JavaSoft Lab., June 1997.

Index Terms:
Distributed programming systems, Java, Linda, coordination, Internet, Web applications, open distributed systems.
Paolo Ciancarini, Robert Tolksdorf, Fabio Vitali, Davide Rossi, Andreas Knoche, "Coordinating Multiagent Applications on the WWW: A Reference Architecture," IEEE Transactions on Software Engineering, vol. 24, no. 5, pp. 362-375, May 1998, doi:10.1109/32.685259
Usage of this product signifies your acceptance of the Terms of Use.