CIAO - Component-Integrated ACE ORB

The most exciting project (to me at least :) that I'm currently working on is architecting the Component-Integrated ACE ORB (CIAO) which is a CORBA Component Model (CCM) implementation built on top of TAO.

Component middleware is gaining popularity in the past few year as it addresses several limitations of object-oriented middleware by defining a higher leverl of abstraction. Through this abstraction, component model defines exactly the virtual boundary of a component and how a component advertise how it interacts with other components/clients. Component middleware also defines the supporting runtime environment, packaging and deployment mechanisms and standards. All these mechanisms and standards make reusing software component much easier.

Using component middleware, systems can be developed thruough "assembly" instead of the conventional "engineering" approach. We can, therefore, distinguish the software developers' roles in a system's lifecycle. These roles include:

CIAO is currently aiming to provide component-oriented paradigm to the distributed, real-time, embedded (DRE) system developers by abstracting DRE-critical systemic aspects, such as QoS requirements, RT policies, as installable/configurable units supported by the component framework. Promoting these DRE-critical aspects as first-class metadata disentangles code for controlling these non-function aspects from application logic and makes DRE system development more flexible. Since mechanisms to support various DRE-critical non-functional aspects can be easily verified, CIAO will also make configuring and managing these aspects easier.


CIAO Architecture

CIAO will be the default platform-specific model supported by CoSMIC which is a set of tools for supporting model-integrated computing (MIC) and OMG's Model-Drivern Architecture (MDA). As many of the non-functional aspects can be configured and "programmed" by specifying them in the component composition metadata (or, "component assembly descriptors" in CCM nomenclature,) it allows CoSMIC to realize the non-functional aspects of an application easily and correctly without worrying about verifying the correctness of synthesized code that managed multiple DRE-critical aspects.

The combination of CoSMIC and CIAO will offer the next-generation software development paradigm.

CIAO Related Info

CCM and QoS realted OMG documents:

Various component middleware related Info


Home Nanbor Wang, <nanbor at cse wustl edu>
Last modified 10:56:09 CDT May 27 2004