Between administrative domains, you may need interceptors to enforce security and thus act as a guard against invalid access. You might have noticed that the design of distributed systems has a lot in common with the design of object-oriented systems. One of the major tasks in object-oriented design is to partition a system into objects defined by classes. However, in order to facilitate reuse, you might want to combine the facilities in libraries provided by several different vendors. This turns out to be more difficult than it sounds, as different libraries can use different conventions, and have names that clash.
Federation is similarly difficult.
Interceptors When establishing a channel between two federated objects an optional interceptor may be placed between the corresponding protocol objects. This has a variety of purposes varying from protocol and data translation, to channel monitoring, and preventing security violations as for example an Internet firewall. Each specification in a viewpoint should state how implementations should be tested in order to show that they conform to the specification. It is important to assess that an implementation satisfies the requirements of the system. Thus an important part of ODP viewpoints is that they identify tests that must be carried out.