Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

28
www.objectweb.org OpenCCM: The Open CORBA Components Platform OSMOSE WP3 CCM Meeting 14th November 2003, LIFL, Lille, France Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

description

OpenCCM : The Open CORBA Components Platform OSMOSE WP3 CCM Meeting 14th November 2003, LIFL, Lille, France. Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader. Outline. Objectives Supported environments Main features: From design to administration - PowerPoint PPT Presentation

Transcript of Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

Page 1: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org

OpenCCM: The Open CORBA Components Platform

OSMOSE WP3 CCM Meeting14th November 2003, LIFL, Lille, France

Philippe Merle

Jacquard ProjectINRIA Futurs – Lille

OpenCCM Project Leader

Page 2: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D2 - November 2003

Outline

Objectives

Supported environments

Main features: From design to administrationThe open production tool chainThe open packaging and assembling tool chainThe open distributed deployment infrastructureThe open container runtime frameworkThe open management framework

Perspectives

Page 3: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D3 - November 2003

Objectives

Become the reference implementation of the OMG CORBA Components specification

To design, define, implement, compile, package, assemble, deploy, install, instantiate, configure, execute, discover, introspect, manage, and reconfigure distributed CORBA component-based applications

Provide an Open CORBA Components platform Open source licensed under LGPLORB product independentFlexible, extensible and adaptable frameworks for CCM++

Become a world-wide used platform for R&D around CORBA component-based middleware and applications

Cadena from Kansas University, …

Page 4: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D4 - November 2003

Supported Environments

OpenCCM = Open CORBA Components Platform

SUN JDK 1.2.1, 1.3.x & 1.4.x

Operating systems Linux Solaris Windows Windows CE for PDA

ORBs Borland Enterprise Server (BES) 5.0.2 & 5.2 JacORB 2.0 The Community OpenORB 1.2.1, 1.3.0, 1.3.1 & 1.4.0 ORBacus 4.1.x

Page 5: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D5 - November 2003

Main Features:From Design to Administration

The open production tool chainDesign, define, implement, and compile CORBA components

The open packaging and assembling tool chainPackage and assemble CORBA components

The open distributed deployment infrastructureDeploy, install, instantiate, and configure CORBA components

The open container runtime frameworkHost and execute CORBA components

The open management frameworkDiscover, introspect, manage, monitor and reconfigure CORBA

components

Page 6: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D6 - November 2003

The Open Production Tool Chain

Front-end compilers forOMG Interface Definition Language 3.0 (OMG IDL)OMG Persistent State Definition Language (OMG PSS)OMG Component Implementation Definition Language (OMG CIDL)UML Profile for CORBA Components

Middle-end repositoryAbstract Syntax Tree (AST)CORBA 3.0.x Interface Repository

Back-end generators forClient and server equivalent OMG IDL 2.x mappingCIDL related Java container codePSDL related Java interfaces and implementations Java templates for implementing componentsOMG IDL 3.0, PSDL, CIDL, and UML pretty-printers

To doGeneration of XML CCD, CSD, and CPF from OMG CIDL

Page 7: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D7 - November 2003

Modular and Extensible Production Chain Architecture

XMLComponent descriptor

XMLComponent descriptor

XML CORBAComponent descriptors

Container code

OMGIDL/PSDL/CIDL

Front end

Implementationtemplates

XMI filesXMI filesXMI UML

IDL/CIDL files

IDL/CIDL files

OMG IDL/PSDL/CIDLIDL/PSDL/CIDL

GeneratorsIDL/PSDL/CIDL

Generators

Stubs/skeletonsGenerators

Container codeGenerators

XML CCDGenerators

XML CCDGenerator

XMIGenerators

XMI UMLGenerator

XMI UMLFront end

XMI UMLfiles

XMI UMLfilesXMI UML

IDLCIDL files

IDLCIDL files

OMG IDL/PSDL/CIDL

UML

OpenCCMRepository

Other Files

ComponentImplementation

Generators

ComponentImplementation

Generators

Other GeneratorsOther generators

Other Front endsOther Front ends

Other filesOther filesOther Notations

Page 8: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D8 - November 2003

Example of Use : Cadena = Eclipse Plug-in + OpenCCM

Page 9: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D9 - November 2003

The Open Packaging and Assembling Tool Chain

A stand-one packaging and assembling toolAll CCM XML descriptors and ZIP archives supported

Page 10: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D10 - November 2003

The Open Packaging and Assembling Tool Chain

A software framework for building customized packaging and assembling tools

Users can build their own P&A tool

4 DTD XMLdu CCM

4 DTD XMLdu CCM

4 DTD XMLdu CCM

CCM XML DTDs

Apollon+ Zeus

Browser Framework

XML Plug-in

Data Binding

Swing Binding

XML Plug-in

ZIP ArchivesCode

Page 11: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D11 - November 2003

The Open Distributed Deployment Infrastructure

All CCM XML descriptors and ZIP archives supported

CosNaming, CosTrading, and HomeFinder services supported

All Components::Deployment API supported

Component-based deployment infrastructureIST COACH Distributed Computing Infrastructure (DCI)

As hosted by CCM containers, possible injection of non functional properties as persistency, transactions, security, etc.

Transactional distributed deployment

Rollback deployment when failures

Page 12: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D12 - November 2003

COACH Distributed Computing Infrastructure

Page 13: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D13 - November 2003

OpenCCM DCI Components

DCIManager = a deployment domain Provides AssemblyFactory and HomeFinder

NodeManager = a virtual host Provides ComponentInstallation and ServerActivator

ComponentServerManager = a component server Provides ComponentServer

ContainerManager = a container Provides Container

AssemblyManager = an assembly deployment controller Provides Assembly

Each component provides other ports for management and supervision purposes

Page 14: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D14 - November 2003

Permanent DCI Components

Node_1 Node_2 Node_3

COACHCOACH MiddlewareMiddleware

NodeManager NodeManager NodeManager

DCIManager

Page 15: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D15 - November 2003

Assembly Installation

Node_1 Node_2 Node_3

COACHCOACH MiddlewareMiddleware

NodeManager NodeManager NodeManager

DCIManager

Installed Assembly

AssignedAssembly

XML+ Code

Page 16: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D16 - November 2003

Assembly Instantiation

Node_1 Node_2 Node_3

AssemblyMgr

COACHCOACH MiddlewareMiddleware

NodeManager NodeManager NodeManager

DCIManager

Installed Assembly

instantiate

Page 17: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D17 - November 2003

Assembly Instantiation

Node_1 Node_2 Node_3

AssemblyMgr

COACHCOACH MiddlewareMiddleware

NodeManager NodeManager NodeManager

DCIManager

Installed Assembly

Page 18: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D18 - November 2003

Interconnexion and Running Components

Node_1 Node_2 Node_3

AssemblyMgr

COACHCOACH MiddlewareMiddleware

NodeManager NodeManager NodeManager

DCIManager

Installed Assembly

Running Assembly

Page 19: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D19 - November 2003

The Open Container Runtime Framework

Built on top of CORBA 2.4 and provided services

Scripts to start / stop servicesCosNaming, CosTrading, and CosTransactions

Runtime library for session componentsSet of classes inherited by generated container code

OMG Persistent State Service (PSS) implementationBuilt on top of Java Data Object (JDO)Currently Kodo productSoon ObjectWeb Speedo

Flexible Container Framework soonIST COACH Extensible Container Architecture (ECA)

Page 20: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D20 - November 2003

Runtime Architecture

CORBA ComponentsDCI Components

CosNamingService

CosTransactionsService

CosTradingService

CORBA 2.4 or higher

OpenCCM Flexible Container Framework

OpenCCM PSS Runtime

Data Stores

JDO Runtime

Plugin Plugin

Domain Node Server

CosPersistentStateService

Philosopher Observer Fork

Page 21: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D21 - November 2003

The Open Management Framework

A software framework to build graphical UI management browser

Extensible by plug-ins

Various browser plug-ins forCORBA Object, Component and HomeInterface RepositoryCosNamingCosTradingDCI

IST COACH monitoring and testing infrastructure

Page 22: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D22 - November 2003

The OpenCCM Browser

Page 23: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D23 - November 2003

IST COACH Monitoring and Testing Infrastructure

OpenCCM component servers

Portable Interceptors for monitoring

CORBA

CORBA Components

InterfaceRepository

Actor GUI

LoggingComponents

Web Browser

Page 24: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D24 - November 2003

IST COACH Monitoring and Testing Infrastructure

Page 25: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D25 - November 2003

IST COACH Monitoring and Testing Infrastructure

Page 26: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D26 - November 2003

IST COACH Monitoring and Testing Infrastructure

Page 27: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D27 - November 2003

Perspectives for OpenCCM 1.0

Improve and complete current features

Provide full container supportCORBA Component Descriptor generatorService, Process, and Entity containersAll CCM container APIServices injected in containers

Persistency, transaction, security, notification

IST COACH Extensible Container Architecture

Open Model-Driven CORBA Components platformDesign components, implementations, and assemblies with UMLGenerate OMG IDL, CIDL, implementations, CAD filesReady to be deployed and managed

Page 28: Philippe Merle Jacquard Project INRIA Futurs – Lille OpenCCM Project Leader

www.objectweb.org ObjectWeb - D28 - November 2003

Thanks You – Q/A

http://openccm.objectweb.org