Global network connectivity has enabled accessibility to a wide range of ge
ographically dispersed services. By encapsulating and representing such ser
vices as components, they can be effectively composed into sophisticated wi
de-area applications that otherwise would be much harder to build. This pap
er presents a component model for encapsulating such services and a composi
tion model for assembling encapsulated and possibly active services into ne
w applications, while preserving the administrative autonomy of sites and i
ndividual components. The component model is dynamically- and self-adaptabl
e, allowing for the adjustment of structure and behavior of autonomous comp
onents to changing or previously unknown contexts in which they need to ope
rate. The composition model includes a set of protocols that enable us to d
ynamically deploy live components into remote sites and to dynamically reco
nfigure the deployment scheme through reflective stubs termed Ambassadors.
The component and composition models have been fully implemented in Hadas,
which also includes a host of tools for the creation, deployment, and compo
sition of autonomous components.