9701973 Distributed object computing is a new computational paradigm in which independent software objects interact with each other over a distributed computing network. A key promise of distributed object computing is that it may greatly simplify the construction of distributed software systems. However, it also introduces enormous problems in ensuring the integrity of interactions between objects and the reliability of system execution. The objective of this research is to investigate mechanisms for ensuring the integrity of the computational interactions in distributed object systems. In particular, the design, implementation and empirical evaluation of two classes of mechanisms are investigated: (1) formal interface specifications, which allow precise definition of object interface semantics and provide a means for automatically checking conformance to interface semantics during execution; and (2) methods for systematically testing distributed object systems in a minimally invasive manner. The significance of this research is that it addresses those attributes of distributed object systems that make them ill-suited to the use of traditional software validation techniques. An additional objective of this project is to enhance the software engineering curriculum with content that teaches how the fundamental tenets of software engineering both influence and are influenced by the unique aspects of distributed object technology. ***