Oorspronkelijk opgezet als een open standaard voor ’thuisautomatisering’ worden de specificaties van het Open Services Gateway Initiative (Osgi) inmiddels ook geïmplementeerd in automobiele diensten, slimme telefoon toepassingen en zelfs de Eclipse ontwikkel- en applicatieomgeving. Een Osgi service platform is netwerkonafhankelijk, applicatieonafhankelijk, leveranciersonafhankelijk en vergt minimale gebruikersinterventie, maar is wel gebaseerd op Java.
‘Technisch directeur’ Peter Kriens ‘Technical Director’ van de Osgi Alliance ingenieur Peter Kriens is al vanaf het begin actief in het ontwerpen van de specificaties. Hij raakte er bij betrokken toen hij als expert consultant werkte voor de ‘Ericsson Wireless Internet Unit’ in Zweden. Daar werkte hij mee aan de E-Box, een eerste ‘residential gateway’. De Nederlander Kriens begon zijn loopbaan als oprichter van Array 80 dat redactionele systemen ontwierp voor diverse dagbladen. Na verkoop van dit bedrijf en een directeurschap bij een soortgelijke onderneming, Mediasystemen, vervulde hij diverse functies bij Ericsson. Dit bedrijf was ook, samen met Nokia en Motorola, oprichter van de Osgi Alliance. Vanaf 2001 is Kriens technical director en geeft, als zelfstandig consultant, leiding aan het specificatie team. Tussendoor assisteerde hij Deutsche Telecom met hun TeleHome project, dat op Osgi is gebaseerd, en hij is daarnaast eigenaar/directeur van aQute. |
Op de iPronto van Philips draait een Osgi service platform van ProSyst Software AG, en hiermee is dit product een van de eerste toepassingen voor eindgebruikers van de Osgi Alliance standaard.
De Osgi Alliance heeft als missie om de uitoefening van diensten mogelijk te maken vanuit een wan (wide area network) naar een lan (local area network) en de daarmee verbonden apparaten.
Diensten
Het begin lag zes jaar eerder, in 1998, toen enkele mobiele telefonie bedrijven een huis van de toekomst voorzagen waarin allerlei apparaten met elkaar verbonden zouden zijn. De potentiële markt voor applicaties zou zich echter, zo was de gedachte, alleen kunnen ontwikkelen als hiervoor een open standaard beschikbaar zou zijn. Hiertoe werd het Open Services Gateway Initiative opgezet en al snel sloten anderen zich er bij aan. Inmiddels is, om verwarring rond het woord ‘gateway’ te voorkomen, in de officiële terminologie alleen nog het acronym ‘osgi’ in gebruik. De Osgi Alliance heeft inmiddels 45 leden met als enkele bekende voorbeelden Ericsson, IBM en Philips.
De nieuw te ontwerpen standaard moest aan enkele welbepaalde eisen voldoen. Het ging in feite om een heterogeen gedistribueerd embedded netwerk met samenwerkende applicaties, voor de consumentenmarkt.
Verschillende applicaties van verschillende leveranciers zouden niet alleen naast elkaar moeten kunnen functioneren maar, en dat was zeer bijzonder, ook met elkaar moeten kunnen samenwerken. Verder moest de gebruiker zo min mogelijk te maken krijgen met allerlei ingewikkelde installatieprocedures, configuratie van instellingen en beheer van versies en aanpassingen. Osgi toepassing zou in dat opzicht duidelijk moeten verschillen van het gangbare pc gebruik. Uiteraard moesten alle diensten over allerlei netwerken geleverd kunnen worden, van Bluetooth tot HomeRF aan de lan zijde tot kabel modem en satelliet aan de wan kant, om er enkele te noemen. Tenslotte was voor dit alles een buitengewoon goede beveiliging vereist.
De ontwerpers van de Osgi Alliance die met het ontwikkelen van de specificaties waren belast besloten om hiervoor Java te gebruiken.
Java was een objectgeoriënteerde en geïnterpreteerde taal die al ver was doorontwikkeld en met een brede basis van programmeurs. Het is beschikbaar op allerlei verschillende platformen en voor allerlei netwerken. Java heeft ook sterke beveiliging in allerlei varianten en op allerlei niveaus. Tenslotte is in Java het concept van een ‘interface’ ingebouwd wat het geschikt maakt voor het schrijven van specificaties. Een interface geeft immers alleen de signatuur van methoden die vervolgens door de programmeur, op verschillende manieren, kunnen worden geïmplementeerd.
In technisch opzicht is een Osgi service dan ook slechts een Java object dat een aantal in de specificatie aangegeven interfaces implementeert. Een Osgi applicatie is een bundel van dergelijke diensten die in een jar (Java archive) bestand zijn samengebracht. Een Osgi applicatie heet dan ook, in de officiële terminologie, een ‘bundle’.
Internet-crisis In eerste instantie was Osgi bedoeld voor thuisautomatisering, maar, zoals Kriens vertelt, met de internet-crisis van 2000/2001 raakten de vooruitzichten daarvoor op de lange baan. Pas vrij recent, onder andere met de iPronto van Philips, zit daar weer meer beweging in. Vooral IBM is, ook in de magere jaren, de Osgi Alliance steeds blijven ondersteunen. “De osgi alliance heeft nu ongeveer 45 leden en het leuke is dat die heel divers zijn. Behalve Philips, Sony en Panasonic heb je BMW, Siemens VDO en Toshiba en Samsung, maar ook Deutsche Telecom en Electricité de France en France Telecom naast Cablevision Systems en Robert Bosch GmbH. De groep heeft een raad van bestuur van dertien personen, maar het ontwikkelen van de specificaties gebeurt door ongeveer veertig vertegenwoordigers van onze leden. Wij zitten verspreid over de hele wereld en ontmoeten elkaar zo eens in de twee maanden. Bijna alles gaat per email, telefonisch, of video conferenties, ook veel met ‘instant messaging’. Bijna elke dag is het van ’s middags vijf tot rond half acht ’s avonds bij mij thuis in Montpellier topdrukte, want dan houden we onze telefoonconferenties.” |
Een Osgi service platform is dus wel gebaseerd op Java maar heeft ook een aantal belangrijke nieuwe kenmerken. Ieder Osgi service platform kan echter op een standaard jvm (Java virtual machine) functioneren.
Specificaties
Op dit moment zijn de Osgi service platform release 3 specificaties (600 p) vrij beschikbaar en release 4 wordt nog dit jaar verwacht. De Osgi Alliance heeft ook een referentie implementatie en een test suite, maar die worden alleen aan leden geleverd. Wel zijn er een aantal open source implementaties, bijvoorbeeld Oscar. In de commerciële toepassing is met name IBM actief met het smf (service management framework), de websphere everyplace device manager en de websphere studio device developer.
Sinds 1998 is gebleken dat het principe van een wan-lan dienstenplatform met minimale gebruikersinterventie ook voor buitenshuis geschikt is, zoals voor automobiel telematica. De AMI-C groep (automotive multimedia interface collaboration) heeft dan ook de Osgi release 3 standaard als basis genomen voor haar eigen mobiele informatie en entertainment diensten. De nieuwe 5 serie van BMW beschikt al over een Osgi service platform.
Vrij onverwacht, zelfs voor de opstellers van de specificatie, was de toepassing in de Eclipse ontwikkel- en applicatieomgeving. Zoals bekend berust deze in Java geschreven omgeving op uitbreidbare plug-ins, maar in de eerdere versies moest voor het inschakelen van een plug-in ook eerst Eclipse zelf opnieuw opgestart worden. De ontwikkelaars zochten naar een mogelijkheid om plug-ins ook dynamisch te kunnen invoeren en ontdekten toen dat de Osgi specificaties al hierin voorzagen. In plaats van zelf iets te ontwikkelen werd er voor gekozen die te gebruiken en zij zijn dan ook geïmplementeerd in Eclipse 3.
Uiteraard zijn er tevens vernieuwingen en veranderingen ingevoerd en daarover is ook overlegd met de Osgi Alliance. Veel van wat in Eclipse 3 te vinden is wordt dan ook in Osgi release 4 opgenomen.
Een ander Osgi toepassingsgebied wordt mobiele telefonie. Nokia, Motorola en andere fabrikanten zullen de standaard gebruiken in nieuwe smartphones die allerlei multi-media en pda functies krijgen.
“In december 2003 zijn Nokia en Motorola binnen de alliantie begonnen met specificaties voor mobiele telefonie. Zo zou je op smartphones met een osgi service platform misschien een SAP-applicatie kunnen draaien”, licht ‘Technical Director’ van de Osgi Alliance, ingenieur Peter Kriens, toe.
“Een Osgi service platform is eigenlijk overal geschikt waar je een computer op een netwerk wilt hebben, maar dan zonder user interface. Daarbij is het eenvoudige versiebeheer ook een voordeel. Voor software ontwikkelaars is de laatste stap van een installatie proces, het laten samenwerken van allerlei bibliotheken en bestanden, vaak een eindeloos karwei. Voor de software ontwikkeling zal het zeker uitmaken dat onze standaard nu in Eclipse gebruikt wordt. De specificaties waren bedoeld voor ingebedde toepassingen, maar zijn nu ook geïntroduceerd in de wereld van de pc.”
De komende vijf jaar verwacht Kriens een consolidatie en geleidelijke invoering van Osgi applicaties op de consumentenmarkt. “Het zal echter altijd vrij onzichtbaar blijven voor de gebruiker en het is natuurlijk ook bedoeld om op de achtergrond te werken.”