CORBA Component Model (CCM)

Like dokumenter
Gruppe 11. Frank Petter Larsen Vegard Dehlen

Kapittel 13 Advanced Hypertext Implementation. Martin Lie Ole Kristian Heggøy

CORBA Objektmodell (Java RMI)

Distributed object architecture

OpenCOM. Del av et forskningsprosjekt ved Lancaster University, UK

2. HVA ER EN KOMPONENT?

Programvarekomponenter og distribuerte system. INF 5040 høst foreleser: Frank Eliassen

Distribuerte objekter og objekt-basert mellomvare

Model Driven Architecture (MDA) Interpretasjon og kritikk

Distribuerte objekter og objekt-basert mellomvare

Distribuerte objekter og objekt-basert mellomvare

A Study of Industrial, Component-Based Development, Ericsson

DCOM. 21. oktober Mai et al. Hva er egentlig en komponent?

Komponentarkitekturer. En historie om mellomvare

OptimalJ-kurs UIO Oppsummering av kurset. De ulike modellene egenskaper og formål

Distributed Component Object Model. Utvikling av distribuerte applikasjoner. Utvidelse av COM for støtte av distribuerte objekter

Komponentarkitekturer

Software installasjon og andre ettertanker

Scientific applications in distributed systems

1. Intro om System Center

CORBA & Java RMI & J2EE & CORBA CCM OMG & CORBA

Vedlegg 1: Oversikt over noen mulige leverandører

Java RMI (Remote Method Invocation) Gruppe 9: Ivar Steien Rasmussen Tom Anders Dalseng Andreas Petlund

Dynamisk konfigurering av komponentbaserte tjenester

Distributed object architecture

INF5120 Oblig 1c4 - Gruppe 19

Utfordringer til mellomvare: Multimedia

Oppsummering. Thomas Lohne Aanes Thomas Amble

Komponentbasert Systemutvikling - Hva, Hvorfor, Hvordan

AlgDat 10. Forelesning 2. Gunnar Misund

Forslag til løsning. Oppgave 1

Innledende Analyse Del 1.2

Systemarkitektur. INF1050: Gjennomgang, uke 07

Altinns nye tjenesteverksted. Lars Vegard Bachmann, produkteier portal og tjenester, Altinn

AlgDat 12. Forelesning 2. Gunnar Misund

Mobile Enheter med SCCM 2012 og Windows Intune. En presentasjon av Kristian Bendiksen

Stein Gjessing. Institutt for informatikk. Universitetet i Oslo. Institutt for informatikk

MPEG-7. Problemstilling:

Time-Independent Invocation(TII) and Interoperable Routing

6105 Windows Server og datanett Jon Kvisli, HSN Skriveradministrasjon - 1. Utskrift i nettverk

INF 5120 Obligatorisk oppgave Nr 2

OOT Seminar H-97 CORBA. Praktisk del

Bachelor E. Theodor Rove Nordgård, Chris Sonko HIST DRIFT AV DATASYSTEMER

Feilsøking i BO. Olav Syse, konsulent. Jan Terje Hansen, service manager. Be business intelligent

6105 Windows Server og datanett

System integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,

Overvåkning av Telenors Mobile internettportal

Hentet fra Suns Totorial:

InfoRed Publisering. - produktbeskrivelse. TalkPool WebServices Postboks Åneby

IN2000. Gjennomgang av tekniske oppgaver på prøveeksamen. Erlend Stenlund og Steffen Almås + innspill fra Gaute Berge

RM-ODP og Multimedia middleware (M3W):

Tekniske Krav Aditro Lønn

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11

Android- Programmering. Våren 2016

Navngivning av XML elementer

Utfordringer til mellomvare: Multimedia

J2EE. CMP Entity Beans, Transaksjoner, JSP

HP Easy Tools. Administratorhåndbok

Jini. Overblikk. Gruppe 1: Odd-Wiking Rahlff, Arnor Solberg og Finn Haukebøe

INF5120 Oblig gjennomgang

Factory Patterns Interface Deklarerer at klassen skal bruke et interface (implements i Java) Definerer implementasjoner for alle metodene i interfacet

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus

UDDI norsk katalog for registrering av tjenester (WMS, WFS, WCS, WS) i Norge digitalt

GJENNOMGANG UKESOPPGAVER 9 TESTING

Evaluering av It-systemer i et forvaltningsperspektiv. Drift, vedlikehold og videreutvikling av IT-systemet

En ny generasjon standarder for bygging av geografisk infrastruktur Modellering av tjenester

COM. Hva er COM? The Component Object Model. Microsoft sitt rammeverk for å lage og bruke komponenter

// PRESENTASJONER FRA NJAVA

Stikkord: Java EE, EJB, JSF, JPA, SWT, klient/tjener, Glassfish server, Application Client.

NOVUG 3 februar 2009

Installasjonsveiledning Visma Avendo Lønn, versjon 7.60 Oktober 2011

Repitisjonskurs. Arv, Subklasser og Grensesnitt

SAS IN A SOA WORLD MARIUS SOMMERSETH TEAM LEAD TECHNICAL ARCHITECTURE

TTM4175 Hva er kommunikasjonsteknologi?

Hva betyr tjenesteorientert arkitektur for sikkerhet?

Generiske mekanismer i statisk typede programmeringsspråk

Presentasjon av: Erling Ringen Elvsrud Nils Fredrik Gjerull Håkon Torjus Bommen

Operativsystemer og grensesnitt

Frank Sandersen, EVRY 3. April Avansert integrasjon Saksbehandling med ephorte som arkiv

INF329,HØST

Scan Secure GTS PAS

Kapittel 5 - Advanced Hypertext Model Kapittel 6 - Overview of the WebML Development Process

Forord Dette er brukerdokumentasjonen skrevet i forbindelse med hovedprosjekt ved Høgskolen i Oslo våren 2010.

Læringsutbyttebeskrivelse, Fredrikstad FagAkademi

TTM4175 Hva er kommunikasjonsteknologi?

Innholdsfortegnelse. 1. Testing Feiltesting av koden Funksjonstesting: Kilder.10

Request for information (RFI) Integrasjonsplattform

Aleksander Thanem Bjøru Seniorkonsulent MCSE og Citrix CCIA

Installere JBuilder Foundation i Mandrake Linux 10.0

Web fundamentals. Web design. Frontend vs. Backend Webdesign 17. januar Monica Strand

Android-Programmering. Vår 2017

Message Oriented Middleware (MOM) Thomas Filip Andresen Arild Berggren Eivind Bøhn

Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004

Er du sikker? David Karlsen, Seniorkonsulent, Commercial Data Servers AS

Flere design mønstre. 19. september 2002, Tore Berg Hansen, TISIP

Programmeringsrammeverk som kan installeres på Windows Mobiloperativsystem

Implementering av caching ved hjelp av Spring. Christian Vestøl

Huldt & Lillevik Lønn og Personal - System 4. Installasjon. Microsoft SQL 2005 Express. Aditro HRM AS

Forprosjektrapport. Hovedprosjekt Gruppe 15

Saia PG Kjære kunde,

Transkript:

CORBA Component Model (CCM) INF5040 Høst 2005 Erlend Birkedal Jan Erik Johnsen Tore Ottersen Løkkeberg

Denne presentasjonen CORBA Svakheter ved CORBA Object Model Komponenter CORBA Component Model Hva er CCM? CCM i praksis CIDL, CIF, Container

CORBA - Motivasjon Distribuerte applikasjoner blir stadig mer utbredt Åpne standarder og spesifikasjoner Proprietære løsninger: Koster ofte mye penger Vanskeligere å integrere med andre løsninger i større systemer Mer tungvindt å lære en ny løsning for hvert utviklingsprosjekt, enn bare en felles standard

CORBA Object Management Group (OMG) Arbeidet startet i 1989 OMG Common Object Request Broker Architecture (CORBA) ferdig i 1991 CORBA 2.0 i 1996 CORBA 3 i 1999 CCM hører til CORBA 3, ferdig i 2001/02

CORBA Object Model

CORBA Object Model (v2.4) Begrensninger Ingen standardisert måte for å deploye objekter CORBA server-programmering var for vanskelig Utvidelse av objektfunksjonalitet kun mulig ved arv CORBA spesifikasjonen definerer ikke hvilke Object Services som er tilgjengelige ved kjøring Eksplisitt programmering av ikke-funksjonelle egenskaper, for eksempel objektenes livssyklus =>Disse begrensningene i CORBA Object Model kan føre til tett koplede, ad-hoc implementeringer av objekter som er vanskeligere å designe, deploye, gjenbruke, vedlikeholde og utvide.

Komponenter En komponent er først og fremst software som er enkapsulert som en egen enhet som: Kun har eksplisitte kontekst-avhengigheter Har klart definerte interface for bruk Kan settes i bruk uavhengig av andre komponenter Kan gjenbrukes Kan brukes sammen med andre komponenter - komposisjon En komponent kan sees på som en Lego-kloss!

Hva er CCM?

Hva er CCM? En utvidelse av CORBA object model. Språkuavhengig komponentmodell for tjenersiden. Understøtter implementasjon, forvaltning, konfigurering og utplassering av CORBA-applikasjoner.

Hva er CCM? Facets Provided interfaces Recepacles Object connections Event sources/sinks Listeners Attributes Configuration values

Hva er CCM? CCM komponenter er byggeklossene i et CCM system Veldig likt EJB, men CCM... bygger på CORBA object model er ikke bundet til et bestemt programmeringsspråk Siden det er så likt EJB har CCM mappinger som gjør at en CCM komponent kan opptre som en EJB bean i et java miljø og at en EJB bean kan opptre som en CCM komponent. CCM komponenter bor i containere som sørger for 1. Aktivere og deaktivere komponent implementasjonene 2. Videre klient forespørsler 3. Tilby tilpasningslag (adaption layers) for tilbakekall 4. Håndtere POA policies CCM spesifikasjonen er omfattende og kompleks.

CCM i praksis

CCM i praksis CCM utvider CORBA IDL for å støtte komponenter Utvikling av komponenter gjøres ved IDL-definisjoner for å spesifisere de operasjoner en komponent støtter CCM definerer flere interfaces for å støtte strukturen og funksjonaliteten til komponenter Mange av disse kan genereres automatisk CORBA Component Implementation Framework (CIF) Automatiserer komponent implementasjon

CCM i praksis

CCM i praksis Implementasjoner generert av CIDL kalles Executors Autogenerert Hook metoder Tillater utviklere å legge til egenutviklet komponent-spesifikk funksjonalitet Executors pakkes i Assembly Files Assembly Files installeres på en Component Server Windows Linux C++ Java

CCM i praksis CIDL er også ansvarlig for å generere Component Descriptors Beskriver komponentens Interfaces Threading policy Transaction policy Type servicer komponenten trenger

CCM i praksis Komponent implementasjoner Avhenger av standard CORBA Portable Object Adapter (POA) Sender innkommende forespørsler fra klienter til korresponderende servant CCM komponent modell implementasjonen Brukes til å lage og konfigurere POAs hierarki automatisk Brukes til å lokalisere de felles tjenestene som er definert av CCM Komponenter kan kreve å få beskjed via Callback når en spesiell hendelse inntreffer For å støtte denne funksjonaliteten brukes containers

CCM i praksis Hver Container styrer en komponent-implementasjon definert av CIF Hver Container lager sin egen POA for alle sine Interfaces

CCM i praksis Stor skala distribuert system Komponent implementasjoner kjøres på mange servere Implementert i forskjellige programmeringspråk Forskjellige operativsystemer Forskjellige kompilatorer Forenkling av komponent pakking, fordeling og kjøring Open Software Description (OSD) XML Document Type Definition (DTD)

CCM SPØRSMÅL