A Framework for Building Customised CORBA ORBs - Wiese, Hubertus (Trinity College Dublin. Department of Computer Science, 1998)
Recently, many distributed applications have been based on Common Object Request Broker Architecture (CORBA) compliant middleware. Such distributed computing middleware provides the components of a distributed application with a uniform view of local and remote application objects. It shields distributed application programmers from having to deal with network and protocol layers and lets them concentrate on the design of the distributed application itself. To date, most CORBA compliant Object Request Brokers (ORBs) have been based on monolithic implementations. Vendors typically offer the same ORB implementation for use in any number of different application scenarios. Recently, some ORB implementations have appeared that target specific application domains, for example real-time applications and fault-tolerant applications. These ORBs, however, focus on one specific application scenario. The purpose of this thesis is to explore the alternative approach of designing not a ?one size fits all? ORB, but rather an object-oriented framework that allows application developers to instantiate their own customised ORBs from components available in the framework. Thus, one user may, for example, use the framework to create a ?standard? ORB supporting mobile computing, or fault-tolerance. In order to understand the characteristics of ORBs in general, and of those aimed at specific application domains in particular, a number of freely available ORBs were studied. From this, it was possible to infer which components are commonly found in ORBs aimed at specific application scenarios. Based on this study, an object-oriented framework for CORBA ORBs was designed. Its design is described using the Unified Modeling Language (UML) to illustrate its principal components. To aid in its comprehension, the framework is also documented by describing which principal design patterns it implements. This dissertation also documents the design process that was employed. An actual implementation of the framework was not part of the project. Finally, a set of C++ header files is also provided to document the framework class definitions.
Keywords: Computer Science