Dynamic composition of distributed applications from autonomous components is becoming attractive, and requires new composition models and infrastructures. In this paper, we address the problem of deploying components to remote sites as part of the dynamic composition process. In particular, we discuss the specification and allocation of resources to remotely deployed components. Satisfying the mutual needs of an autonomous component and the environment to which it was deployed suggests a negotiation-based approach. We present a model that allows programmers to specify the negotiation strategy as part of the component and a two-phase deployment protocol. The first phase involves negotiation between lightweight objects and results in either a contract or a failure. In the former case, the component can tailor itself according to the contract before the actual deployment, and in the latter case unnecessary deployment is avoided. The model has been implemented in Java as part of Hadas, an environment for the dynamic composition of distributed applications.
[1]
Israel Ben-Shaul,et al.
HADAS: A Network-Centric Framework for Interoperability Programming
,
1997,
Int. J. Cooperative Inf. Syst..
[2]
Sarit Kraus,et al.
DESIGNING AND BUILDING A NEGOTIATING AUTOMATED AGENT
,
1995,
Comput. Intell..
[3]
Israel Ben-Shaul,et al.
A reflective model for mobile software objects
,
1997,
Proceedings of 17th International Conference on Distributed Computing Systems.
[4]
Pattie Maes,et al.
Challenger: a multi-agent system for distributed resource allocation
,
1997,
AGENTS '97.
[5]
Pattie Maes,et al.
Kasbah: An Agent Marketplace for Buying and Selling Goods
,
1996,
PAAM.
[6]
B. Clifford Neuman,et al.
Kerberos: An Authentication Service for Open Network Systems
,
1988,
USENIX Winter.
[7]
Victor R. Lesser,et al.
Issues in Automated Negotiation and Electronic Commerce: Extending the Contract Net Framework
,
1997,
ICMAS.