Information Technology Reference
In-Depth Information
example, the PhoneMob company and a large insurance firm can federate to
provide a wider range of services to their individual customers. Each mem-
ber of a federation agrees by participating in the federation to be bound by
the contract and policies of the community (which may include obligations
to contribute resources or to constrain behaviour) so as to pursue the shared
objective. At the same time, a federation preserves the autonomy and inde-
pendence of the original participants.
1.3.5
Contracts
As a general concept, a contract defines the rules governing the collective
behaviour of a set of objects. It specifies obligations, permissions and prohi-
bitions that apply to these objects when they act as a group. These could
express, for example, quality of service constraints, indications of duration or
periods of validity, behaviour that invalidates the contract, or liveness and
safety conditions. 2
The contract concept can be used in any viewpoint. In the enterprise
viewpoint, we have community contracts (see chapter 2) reflecting a business
context for interactions. For example, the community contract representing a
repair organization expresses obligations on its service centres, their staff and
customers, as well as conditions about eciency, security, response times and
confidentiality to be met when delivering the repair services.
There are several uses of the concept of a contract in the computational
viewpoint. One example is its use to describe a service contract, which defines
the obligations that an object makes when providing an interface with which
arbitrary other objects will interact. Another is the binding contract which
captures the properties agreed upon when a particular binding is established
(this may be either a primitive or a compound binding; see chapter 4).
Finally, any computational object interacts within an environment repre-
senting its place in a configuration, and an environment contract states
non-functional properties of the interactions in which an object participates,
such as response time, throughput or resource consumption. These computa-
tional environment contracts reflect constraints on the corresponding objects
and interactions in the engineering viewpoint.
1.3.6
Policy Concepts
Policies provide a powerful mechanism for declaring business rules, and
also for specifying and implementing the structural and behavioural variability
required in any open distributed system. Policies serve to identify the pieces
of behaviour that can be changed during the lifetime of the system, as well as
2 Liveness is the property of a system that says it will eventually do what it is supposed
to do, and safety is the property that says it will never do something it is supposed not to
do.
 
Search WWH ::




Custom Search