|
Utvikling av distribuerte multimediaapplikasjoner med refleksiv mellomvare
15.12.2004
Abstrakt
Å lage applikasjoner i et distribuert og heterogent miljø er en utfordrende oppgave. Mellomvare har tradisjonelt vært brukt for å forenkle denne utviklingsprosessen. En måte å oppnå dette på har vært å skjule det meste av kompleksiteten som stammer fra distribusjon og heterogenitet slik at applikasjonsprogrammererene i større grad skulle kunne fokusere på problemdomenet.
Komponentbasert mellomvare forenkler utviklingen ytterligere. En komponentbasert applikasjon realiseres ved å sette sammen flere ulike komponenter. Koblingen mellom komponentene er løs, og bestemmes av veldefinerte grensesnitt. Når kompleksiteten brytes inn i mindre deler, blir den enklere å håndtere. Den løse koblingen mellom komponentene fører videre til økt fleksibilitet ved at komponentene enkelt kan byttes ut med nye, og at komponenter kan kjøpes inn fra eksterne leverandører i steden for å utvikles på egen hand.
Denne oppgaven baserer seg på en mellomvareplatform med navn Open Orb Python Prototype (OOPP). Tesen til OOPP bygger på at komponentbasert mellomvare ikke er fleksibel nok til å effektivt kunne tilby utvikling av distribuerte applikasjoner som kan tilpasse seg dynamiske og uforutsigbare omgivelser. Et eksempel på slike applikasjoner er distribuerte multimediaapplikasjoner for et mobilt og heterogent nettverk der håndtering av tjenestekvalitet er sentalt. I OOPP foreslås refleksjon som en løsning. OOPP er en refleksiv og komponentbasert mellomvareplatform der refleksjon kan brukes for inspisering og tilpassing av systemet under kjøretid. I tillegg kan refleksjon hjelpe til at generelle komponenter fra tredjepartsleverandører kan modifiseres for å passe inn i det mer spesifikke problemdomenet og det eksisterende systemet.
Oppgaven har som mål å teste denne tesen ytterligere ved å utvikle en applikasjon ved hjelp av OOPP. Applikasjonen som beskrives og til dels realiseres er et system for distribuerte forelesninger. Multimedia er en sentral del av applikasjonen. Det antas at båndbredde er en knapp og variabel ressurs, og forvaltning av tjenestekvalitet er derfor spesielt viktig. På grunn av kravet om forvaltning av tjenestekvalitet er systemet implementert for å være dynamisk rekonfigurerbart, ved at komponenter kan byttes ut med mer passende komponenter under kjøretid.
Utviklingen av applikasjonen har forsterket teorien om at refleksiv mellomvare og OOPP egner seg godt til utvikling av fleksible systemer som er utfordrende å utvikle med tradisjonell komponentbasert mellomvare.
|