Aujourd’hui, de nombreux systèmes informatiques sont constitués d’applications réparties sur un réseau de type Intranet et au-delà sur l’Internet. La construction, le déploiement, l’exécution et l’administration de ces applications réparties nécessitent la mise en œuvre de couches de logiciels intermédiaires (appelées aussi « middleware »). Dans ce contexte, la norme Common Object Request Broker Architecture (CORBA) a pour objectif d’offrir un middleware ouvert, bâti sur un modèle client/serveur orienté objet. Cette norme est le fruit du travail de standardisation de l’Object Management Group (OMG), un imposant consortium de l’industrie informatique. Cependant, l’effort de l’OMG dépasse largement la simple problématique technique du middleware en visant la définition de standards ouverts pour l’intégration de logiciels hétérogènes et distribués dans tous les secteurs d’activité.
La première partie de cet article nous mène de la problèmatique des applications réparties et des middlewares à la vision globale proposée par l’OMG, l’Object Management Architecture (OMA), et les relations avec les solutions concurrentes proposées par le WWW, Java et Microsoft. Ensuite, nous détaillons progressivement les concepts fondamentaux de CORBA, à savoir le modèle client/serveur orienté objet, le langage OMG IDL, les composantes du bus d’objets répartis et l’interopérabilité entre bus. Le cœur de cet article étudie concrètement et en détail la mise en pratique de CORBA à travers la réalisation d’une application répartie écrite avec les langages de programmation C++, Java et CorbaScript (un langage de script dédié à CORBA). Finalement, nous concluons sur une synthèse des apports de l’approche CORBA et décrivons les fonctionnalités attendues dans la prochaine norme CORBA 3.0.