The European CORBA Components Open Source Initiative
by Marc Born, Andreas Hoffmann, Axel Rennoch, Julia Reznik, Tom Ritter and Alain Vouffo
The building of distributed applications is going to become easier, faster, more efficient and even cheaper. The CORBA Component Model (CCM) standard [formal/02-06-65] of the Object Management Group (OMG) has been a first milestone on this road. The European Commission adopted this programming approach and investigates it in the Open Source project COACH that realises a flexible and complete component framework based on the CCM standard.
CCM is the first non-proprietary, and language and platform independent component architecture. It allows application programmers to design and implement a distributed application independent of specific programming languages, operating systems or vendor-specific communication infrastructures. With CCM it's even easier to build such applications than with plain CORBA.
In the past software developers of CORBA servers had to know about using POA (Portable Object Adapter) or have been restricted to one interface per CORBA object. CCM brings innovations like IDL 3.0, component containers and the new CCM deployment features. Now you can define several configurable attributes as well as provided and requested interfaces (facets and receptacles). Furthermore asynchronous event communication can be introduced due to the definition of event sources and sinks. Developers can concentrate on the business logic instead of reinventing technical infrastructure. They can think about where to place executables instead of how to couple and combine the software. Reusing existing components is simple and reduces development costs and time to market.
The European Commission had already identified these challenges and set up the R&D project Component Based Open Source Architecture for Distributed Telecom Applications (COACH). The COACH project provides the CCM infrastructure to the Open Source community and brings the benefits of component programming to everybody who is interested in independency from vendor or programming constraints.
COACH allows the rapid transformation of architecture and design level component to execution level ones. In order to automate and improve CORBA component software developments, COACH provides a complete CCM tool chain supporting the latest version of OMG Interface Definition Language (IDL), the Component Implementation Definition Language (CIDL), components packaging and assembling and XML descriptors.
The complete Open Source CCM platform will consists of IDL/CIDL compilers, code generators for Java and C++, a new flexible runtime container technology, packaging and assembling tools, and a distributed deployment infrastructure. Furthermore, telecom specific CCM adaptations and a support for multiple ORB products will be developed.
As part of COACH, a component test environment and a new security architecture is addressed. The component test environment includes a test framework for test specification, test implementation and test execution, runtime visualization of component interactions and interactive or scripted component testing. The Security architecture covers platform independent definition of security policies, policy definition language, and platform specific enforcement for CCM.
Two distributed telecommunication applications, a Network Management Framework and a Parlay Platform are going to be implemented to evaluate the suitability of the COACH framework. The use of CORBA components for network management should bring a common solution for integrating the different network management legacy in terms of switching technology (different suppliers) of network nature (terrestrial, submarine) and of network management standards. Taking into account the Parlay Platform will allow the consideration of secure application requirements, access control and usage policy schemes.
The project has a duration of two years and will end in March 2004. You can even benefit today from the COACH working results that are offered with the (Java-based) OpenCCM or the (C++-based) QEDO CCM infrastructure implementations. Furthermore COACH has a great impact on OMG standardization due to several proposals and drafts for new specification standards, eg on Deployment and Configuration of Components, the Unified Modelling Language (UML) profile for CCM, and the UML profile for Modelling
QoS and Fault Tolerance Characteristics and Mechanisms
The availability of a full CCM platform in open source will increase the general know-how in Europe on this technology. Furthermore, it allow SMEs, which typically do not have the means to invest in large developments, to start from the open source for developing business components and finding new markets.
Industry, research labs and universities from five EU countries do work together in COACH: T-Systems Nova (D), Humboldt-University (D), Intracom (GR), Lucent Technologies (NL), Thales Communications (F), LIFL (F), ObjectSecurity (UK), University Paris 6 (F), CNRS (F), and Fraunhofer (D). ERCIM is represented by its German member Fraunhofer Institute for Open Communication Systems (FOKUS) which participates with its two competence centers for Distributed Object Technology, Platforms and Services (PLATIN) and for Testing, Interoperability, and Performance (TIP).
CCM implementation websites:
Marc Born, Fraunhofer FOKUS
Tel: +49 30 3463 7235