Today, CORBA architecture brings the major industrial solution for achieving the interoperability between distributed software
components in heterogeneous environments. While the CORBA project attempts to federate distributed mechanisms within a unique
architecture, its internal model is not very flexible and seems not to be suitable for future evolutions. In this paper, we
present OpenCorba, a
reflective open broker, enabling users to adapt dynamically the representation and the execution policies of the software bus.
We first expose the reflective foundations underlying the implementation of OpenCorba: i) metaclasses which provide a better
separation of concerns in order to improve the class reuse; ii) a protocol which enables the dynamic changing of metaclass
in order to allow run-time adaptation of systems.
Based on this reflective environment, OpenCorba enables the adaptability of the internal characteristics of the broker in
order to change its run-time behavior (e.g. remote invocation, IDL type checking, IR error handling). OpenCorba gives a clear
example of the benefits of reflective middleware.