Software components of mixed and uncertain provenance are the reality for l
arge software systems. As such, getting these components to work together t
o form an integrated software product is vital, but it is made enormously c
omplex by the aggregate system's uncontrolled heterogeneity. This paper foc
uses on a software integration strategy based on Sun Microsystems' Jini* co
nnection technology. Jini had initially been promoted as a technology for i
nterconnecting embedded devices. The ease with which we have been able to u
se it to accomplish software integration shows that software, whatever its
size or age, is really just another "device. " We discuss the reasons why w
e opted for distributed object technology over other enterprise application
integration (EAI) solutions and the advantages of Jini over other distribu
ted object platforms such as Common Object Request Broker Architecture (COR
BA*) and Distributed Component Object Model (DCOM). We then describe techni
ques for achieving interoperability between CORBA and Jini and integrating
generic "black-box" components. We also discuss the Dobos project, a Jini-b
ased platform for building large distributed applications, and we close wit
h examples showing how to use Dobos to integrate some historically stand-al
one applications.