Create "Application by Assembly" with K2 Assembly Tool


Today most of large and complex distributed applications tend to be built using existing components. This is critical for the success of componentization of business environment, as it increases productivity and promotes reusability of already developed components.

The EJB component model supports the concept of configuration, which is static for a deployment instance i.e. configuration can not be changed or customized after deployment. Extended CCM introduced the concept of ports to separate development concerns to assembly phase where component instances can be connected and configured during assembly. It also provides set of APIs to introspect component port and connection related information during runtime that can be used for dynamic re-configuration purposes.

Experience has shown that configuring re-usable components itself is a complicated process. Assembler needs to identify and interconnect components, that involves understanding of interfaces, component homes, ports, configuration, host and process allocation for building and deploying the application. This again deters most of the assemblers from attempting to create and deploy their applications on distributed environments.

K2 Assembly Tool enables an assembler to view a component as a building block of his application, and relieves him from complexities involved in connecting and configuring components while developing an application. With K2 Assembly Tool now available, assemblers can easily assemble their applications using existing CORBA components, and deploy it on K2 Component Server.


Key Benefits of assembly

The key benefits of assembly are:

  • Develop applications by assembly of components. This is critical for the success of componentization of business environment, as there is growing customer demand for personalized services.

  • Develop quality software and increase productivity as new services are developed from existing component warehouse.

  • The process of "Assembly" will replace the complex process of integration. The assemblers don't have to worry about the implementation details of the components such as language, location, OS etc and doesn't have to make any programming level changes.

  • Architects will have fine-grained control over the application. This will help architects to ensure that the components have been developed as per original design, quality check and simulate the environment of peak load requirement and make appropriate performance improvement measures.
Assembly Process

Assembly is a process wherein an assembler identifies and interconnects components to realize his application. The role of architects and developers is to develop component packages that are provided as input to assemblers. K2 Assembly Tool enables an assembler to create and edit an assembly. It also provides an integrated environment to deploy the assembly. The tool consists of an assembly wizard to build and deploy assembly in few easy steps.

The assembly process is explained below:

Assembler can create instance of components, configure properties and make connections among compatible ports offered by different components using K2 Assembly Tool.


Key feature of K2 Assembly Tool

The key features are listed below:

  • Develop applications by assembly of components

  • Assembly wizards to create, build and deploy assembly.

  • Configure default values of component attributes.

  • Easy configuration of connections between ports, using context panel that offers supporting compatible ports only (i.e. selection of event sink will display list of compatible event sources for configuring connections and vice versa).

  • Enables automatic registration of component home and instances to Trader service.

  • Build component assembly archive( .aar) file.

  • Editing of existing assembly archive.

  • Maintains mapping of assembly id and application name, for easier identification of assembly application.

  • Uses OMG's XML based formats for storing meta information for assembly archive, installation and deployment

  • Integrated with deployment tool for assembly deployment.

  • Managing active assembly application

  • Tearing down assembly application
Using K2 Assembly Tool

K2 Assembly Tool realizes assembly process in a very simple manner. It allows assembler to include component packages into tool, and interconnects and configures components as per application requirement in an easy and intuitive manner. K2 Assembly Tool can be used to:

  • Create a new assembly with "Assembly Wizard"

  • Edit exisiting assembly

  • View deployed assembly

  • Tear down a deployed assembly

Also, it is integrated with deployment tool to deploy a new or existing assembly.


Creating a new assembly with "Assembly Wizard"

Assembler can use "Assembly Wizard" to create a new assembly. This wizard will guide assembler throughout assembly process to interconnect component instances and configuring it for application specific use. It also allows assembler to deploy the application through wizard. Assembler can choose to continue configuring assembly without deploying it.

We will use the "Assembly Wizard" to create a new assembly called "Vending Machine". We will also use the wizard to deploy the "Vending Machine".

Example : Vending Machine application

A vending machine application is best illustrated by figure below

Vending Machine component

Defining Vending Machine Application

Vending machine is capable of supplying hot and cold drinks. The customer interacts with vending machine that accepts "coin" from customer and returns cold/hot drinks. The Vending Machine provider can add drinks and get the cash from the machine. The machine also notifies the customer when it is empty.


Steps for creating a new assembly

K2 Assembly Tool has abstracted seven easy steps to create and deploy a new assembly. They are

Step 1: Specify assembly package name and description
Step 2: Identify and add component packages needed for assembly
Step 3: Create instances of the components required for the assembly
Step 4: Make connections among the component instances
Step 5: Configure the component instance properties.
Step 6: Generate assembly descriptor file and build archive
Step 7: Deploy assembly archive

It allows creation of example "Vending Machine" assembly application by following above mentioned steps.

Connecting ports

Connection of vending machine component to watersupply, powersupply and observer components can be represented as in following figure

Above figure represents a simple scenario wherein one instance of vending machine is connected to one instances each of power supply, water supply and observer component.


Download K2 Assembly Tool NOW!
The evaluation version of K2 Assembly Tool is available for download along with K2 Component Server v1.5 Download here.
Copyright 2008 iCMG. All rights reserved.
Site Index | Contact Us | Legal & Privacy Policy