A system, method and computer program product are provided for dynamic
adaptation of a system in accordance with a contract with criteria
associated therewith. During operation, an interaction between a
plurality of components of a system is governed utilizing the criteria of
the contract. Further, it is determined whether the interaction between
the components of the system meets the criteria of the contract. Upon the
criteria of the contract not being met, the interaction between the
components of the system is adapted to conform to the criteria.