Abstract:
CORBA, Java RMI, and WebServices are among the most popular Object
Request Broker technologies. These technologies have allowed replacing message-based
network collaboration with method invocations through remote object calls over network
clusters. In this thesis, we propose several criteria for evaluating and comparing
distributed object computing technologies. Empirical criteria include performance,
memory management, scalability, load balancing, fault-tolerance, fail-over and
clustering. Qualitative criteria include maintainability, testability, repeatability, ease of
learning, and portability. We use these criteria to empirically and qualitatively evaluate
and compare CORBA, Java RMl, and WebServices. The results of the study indicate that
no technology can be used as a perfect solution to all problems in distributed object
software. For example, CORBA is superior when load balancing is used, while Java RMI
is the best technology to use when rapid deployment and development are required, while
WebServices are the best solution for scalability and portability.