After creating the component logic and writing the business logic, we can use the component from a simple client program. A big advantage of the CORBA component model is the ability to connect components together to form larger structures called component assemblies.
A component assembly is a set of components (with their component descriptors) and a Component Assembly Descriptor (CAD). Based on the CAD we can generate an assembly object that instantiates components and connects them together to form a component assembly.
Figure 1.2 provides a diagram of the assembly tools in the CCM Tools. These tools include:
The component descriptor files are the base for the higher-level assembly descriptor, which describes the components of the assembly and their connections. That means that all information of the assembly descriptor comes from the component descriptors of the related components (and some additional data from a GUI).
At runtime a managing object is needed that can establish an assembly instance. The assembly object creates the component instances and connects their receptacles and facets. All information for generating an assembly object comes from the assembly descriptor (or its DOM model in memory). Note that this object must eventually be able to create local or local/remote assembly instances.
As with components, there should be a way to define component assemblies in a UML diagram. Therefore we need a UML parser that reads the UML-XMI file and translates the data into the DOM model used by the assembly descriptor. The OMG has not yet defined a mapping between UML and CCM assemblies.
After generating the component assembly and its descriptor file we have to package these files into a zip file called a component assembly package. The assembly packaging tool provides these functionalities to the assembly developer.
On the target host the component assembly package must be unzipped, and the assembly must be deployed in the application server. The assembly deployment tool provides these functionalities to the assembly deployer.
2003-11-09