Proxies: A software structure for accommodating heterogeneity
David S. Notkin · Software Practice and Experience · 1990
Abstract Handling heterogeneity in computer systems without decreasing user productivity and without increasing development costs demands special software structures. This paper presents a flexible software structure that has been used to construct heterogeneous remote procedure call, naming, electronic mail, filing and remote computation services. This structure captures the heterogeneous aspects of a service in a set of abstract interfaces. Clients of the service are built in terms of the abstract interfaces, but one of multiple implementations of those interfaces, called proxies, is dynamically selected to satisfy the demands of heterogeneity.