Objects as a modeling concept.

The Object model derives from the discipline of Software Engineering: The unit of modularisation appropriate for a system is derived from the data structures appropriate for its implementation. This is highly appropriate in distributed systems since it is immediately apparent that one level of modularisation is defined by the address space of each machine in the system. [See later - Objects versus Processes] For type safety and consistency of the system, Objects are implementations of Abstract Data Types (ADT) [i.e. there is an algebra of the types in the system which can be checked]. In a distributed system, it will be necessary to extend this concept to include notion of temporal ordering of operations and also the order of failures.