It is almost as if each object had its own operating system and middleware, and is managed in those terms. Moreover ANSA explains how to have a systems interface for applications programmers to use that is neutral to the particular selection of transparencies that apply. This allows transparency requirements to be changed, or for alternative transparency implementations to be substituted without having to rebuild applications from scratch. The point here is that by looking at systems in terms of enterprise-oriented services rather than technical components one gets a more direct understanding of what the system is for, and if systems are programmed at this level, the software becomes less committed to the underlying technology than in traditional approaches. Essentially this is a stylized use of object orientation.
Every object has one or more well-defined interfaces at which it provides services.
Since objects are fully defined by their interfaces it is possible to provide tools that automatically grow interfaces to add the extra code needed to drive communications, transactions and all the other machinery of distribution. The benefits of abstraction and automation can be applied to existing code. Modular Engineering Distribution assumes some sort of infrastructure or middleware which provides the baseline communications and management for distributed objects. The advantage of ANSA is that we have worked on these three interfaces simultaneously and have a good understanding of how they interact, and thus we can predict how the standards will evolve to meet the architecture. This service manages the mission-critical data and its flow into and out of other systems, be they backend databases or frontend PCs.