CORBA
Agenda ë L ’OMG ë Object Management Architecture (OMA) ë Le langage IDL ë Architecture CORBA ë Intéropérabilité : CORBA 2 ë Les composants de l ’OMA (les services) ë L ’évolution : CORBA 3 ë Conclusion
Objets Distribués 3 technologies CORBA : Common Object Request Broker Architecture de l’OMG ActiveX de Microsoft JavaBeans / RMI de SUN
Fondé en 1989, consortium regroupant plus de 700 membres International : 66% USA, 34% Europe et Asie Corba 1.0 en 1991, Corba 2.0 en 1994 CorbaServices CorbaFacilities en cours Domain Services en cours UML 1.1 en Octobre 1997 Object Management Group
Appels d’offres rédigés par des Task Forces Les membres de l’OMG répondent, avec des technologies/produits existants Votes des comités techniques Votes du directoire, Adoption
OMA Object Management Architecture
Un modèle d’objets Interface Definition Language (IDL) Une infrastructure de distribution d’objets ( CORBA ) Services génériques : CORBAServices Composants génériques : CORBAFacilities Composants verticaux : Domain Services OMA Object Management Architecture
OMA vue d’ensemble Object Request Broker (ORB) Nommage Notification d’événement Securité Transaction Persistance des objets Cycle de vie Annuaire Relation Externalisation Concurrence d’accès Interrogation Temps Propriétés Gestion des Licences Objets applicatifs DomainServices Santé Finance Télécom CORBAFacilities Interface utilisateur Administration du système CORBAServices Services orientés système Gestion des tâches
IDL Object Request Broker (ORB) Objet AObjet B CLIENT SERVEUR Description IDL
IDL - syntaxe interface Compte { readonly attribute float balance; void credit (in float f); void debit (in float f); };
IDL interface bank { exception reject {string reason;}; Account newAccount (in string Name) raises (reject); CurrentAccount newCurrentAccount (in string Name, in float limit) raises (reject); void DeleteAccount (in Account a); };
IDL source IDL Compilateur IDL Source client stub Source serveur skeleton Code clientCode serveur Compilateur C++ Compilateur C++ Bibliothèques Orb Exécutable CLIENTExécutable SERVEUR
Qu’est-ce que CORBA? ë CORBA est une spécification d’architecture ë CORBA spécifie un middleware ë CORBA distribue les objets (bus à objets) ë CORBA est hétérogène ë CORBA est interopérable (IIOP)
CORBA : Principe de base Objet AObjet B Object Request Broker (ORB) CLIENT SERVEUR IOR Description IDL
Objet Client Objet Serveur Description IDL Implementa tion Repository Interface Repository CORBA en détail Noyau de l’ORB Interface de l’ORB IOR Mécanisme d’invocation statique Adaptateur d’objet Squelette statique DSI Souche Client Mécanisme d’invocation statique Mécanisme d’invocation dynamique Souche Client DII
Interface Statique ou Dynamique Interface Statique : –Plus facile à programmer –Sécurisé –Efficace –Lisible Interface Dynamique : –Plus souple –Ajouter de nouvelles classes sans recompilation du client –pour écrire du code très générique : Browsers, débuggers, ponts entre ORBs,...
Intéropérabilité : CORBA 2 Architecture générale d’interopérabilité entre différents ORBs Passerelles entre ORBs distincts Protocoles de communication entre ORBs è Corba2 atteint aujourd’hui une maturité commerciale (IIOP)
Composants de l’OMA Object Request Broker (ORB) Nommage Notification d’événement Securité Transaction Persistance des objets Cycle de vie Annuaire Relation Externalisation Concurrence d’accès Interrogation Temps Propriétés Gestion des Licences Objets applicatifs DomainServices Santé Finance Télécom CORBAFacilities Interface utilisateur Administration du système CORBAServices Services orientés système Gestion des tâches
CorbaServices Services de base d’une informatique distribuée Spécifiés en IDL dans la norme implémentation laissée libre
CorbaServices Naming, Trader Event Lifecycle, Relationship Persistent Object, Externalization Transaction, Concurrency Property, Query Security, Licensing
CorbaFacilities Interface utilisateur : OpenDoc Administration de l ’information (génie logiciel) : UML (adopté en Nov. 97) Administration de systèmes Automatisation des tâches et des flux de documents (workflow)
Domain Services Collaboration avec les organismes de standardisation : –Télécommunications –Finance –Manufacturing –Santé
L ’évolution de CORBA : CORBA 3 Intéropérabilité CORBA Ö DCOM Mapping Java Les agents mobiles Messagerie de type MOM Interfaces multiples pour un objet Passage par valeur des objets Finalisation de services (Trader service)
Conclusion Maturité des produits CORBA du marché Les acteurs du marché : IBM, IONA, BEA, VISIGENIC L ’avenir è les OTM
Conclusion En 2000, OTM dominant en 2001, 90% des nouvelles applications C/S seront multi-tiers En 2001, 3 ou 4 plate-formes OTM couvriront 90% des développements d ’applications en entreprise : –IBM Component Broker –ORACLE NCA –BEA (??)... mais aussi Microsoft MTS (si, si !!)