Mellomvare for distribuert multimedia og mobilitet

Like dokumenter
Mellomvare for distribuert multimedia og mobilitet. Litteratur

Mellomvare for distribuert multimedia og mobilitet

RM-ODP og Multimedia middleware (M3W):

Mellomvarestøtte for mobilitet Reflektiv mellomvare

Utfordringer til mellomvare: Multimedia

Neste Generasjon Datanett

Gruppe 11. Frank Petter Larsen Vegard Dehlen

Oppsummering og pensumkommentarer. INF5040 høst forelesere: Frank Eliassen, Olav Lysne. Innhold og mål

Oppsummering og pensumkommentarer. INF5040 høst forelesere: Frank Eliassen, Olav Lysne. Innhold og mål

Utfordringer til mellomvare: Multimedia

CORBA Component Model (CCM)

CORBA Objektmodell (Java RMI)

OpenCOM. Del av et forskningsprosjekt ved Lancaster University, UK

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

Den europeiske byggenæringen blir digital. hva skjer i Europa? Steen Sunesen Oslo,

Uke 5. Magnus Li INF /

Distribuerte objekter og objekt-basert mellomvare

Confidence-based Data Management for Personal Area Sensor Nets

Distribuerte objekter og objekt-basert mellomvare

Distributed object architecture

Unit Relational Algebra 1 1. Relational Algebra 1. Unit 3.3

Server-Side Eclipse. Bernd Kolb Martin Lippert it-agile GmbH

A Study of Industrial, Component-Based Development, Ericsson

EXAM TTM4128 SERVICE AND RESOURCE MANAGEMENT EKSAM I TTM4128 TJENESTE- OG RESSURSADMINISTRASJON

Distribuerte objekter og objekt-basert mellomvare

Exercise 1: Phase Splitter DC Operation

Fleksibel støtte for tjenestekvalitet i mellomvare

Server-Side Eclipse. Martin Lippert akquinet agile GmbH

Itled 4021 IT Governance Fra IT-strategi til digital forretningsstrategi og plattformer

Mobil og allestedsnærværende databehandling. INF 5040 høst foreleser: Frank Eliassen

Sascha Schubert Product Manager Data Mining SAS International Copyright 2006, SAS Institute Inc. All rights reserved.

verktøyskrin Grafisk profil ved Norges teknisk-naturvitenskapelige universitet

Capturing the value of new technology How technology Qualification supports innovation

Hybrid Cloud and Datacenter Monitoring with Operations Management Suite (OMS)

Invitation to Tender FSP FLO-IKT /2013/001 MILS OS

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

ISO 41001:2018 «Den nye læreboka for FM» Pro-FM. Norsk tittel: Fasilitetsstyring (FM) - Ledelsessystemer - Krav og brukerveiledning

LAVA. Om LAVA prosjektet UNINETT96

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

Information search for the research protocol in IIC/IID

Virginia Tech. John C. Duke, Jr. Engineering Science & Mechanics. John C. Duke, Jr.

Innovasjonsvennlig anskaffelse

Hvordan komme i gang med ArchiMate? Det første modelleringsspråket som gjør TOGAF Praktisk

GeWare: A data warehouse for gene expression analysis

En praktisk anvendelse av ITIL rammeverket

Komponentbasert Systemutvikling - Hva, Hvorfor, Hvordan

API: Application programming interface, eller programmeringsgrensesnitt

EKSAMEN I FAG TDT MMI Lørdag 11. august 2012 Tid: kl

HONSEL process monitoring

Nytt biblioteksystem - prosjektet

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

Oppgave 1a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet.

Kanskje en slide som presenterer grunderen?

Risikofokus - også på de områdene du er ekspert

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

verktøyskrin Grafisk profil ved Norges teknisk-naturvitenskapelige universitet

EKSAMEN I FAG TDT4180 MMI Mandag 18. mai 2009 Tid: kl

Øystein Haugen, Professor, Computer Science MASTER THESES Professor Øystein Haugen, room D

buildingsmart Norge seminar Gardermoen 2. september 2010 IFD sett i sammenheng med BIM og varedata

Hvordan jobber reiselivsgründere med sine etableringer? Sølvi Solvoll Klyngesamling, Bodø

Call function of two parameters

Tom Røise IMT 2243 : Systemutvikling 1. Forelesning IMT Mars Designfasen i SU-prosjekter : Generelle steg i Designprosessen

Store og komplekse informasjonssystemer

Smart Grid aktiviteter og FoU

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

Moving Objects. We need to move our objects in 3D space.

Innovation at Redningsselskapet Martin Fuhr Bolstad. Redningsselskapet Ingen skal drukne

Smart High-Side Power Switch BTS730

Little Mountain Housing

HARP-Hybrid Ad Hoc Routing Protocol

Erfaringer fra en Prosjektleder som fikk «overflow»

Distributed object architecture

Brukers Arbeidsflate. Tjeneste Katalog. Hva vi leverer... Presentasjon Administrasjon Automatisering

Er du nysgjerrig på om det er mulig...

Fra sekvensielt til parallelt

Nettnøytralitet - regulering på jakt etter markedssvikt. Bjørn Hansen, Telenor Research Nettnøytralitetsforum 27. november 2014

A CONNECTED SOCIETY ENABLED BY VIRTUAL AGENTS. AI is the new UI. Hans Kristian Aas Nordic Futuretech lead, Financial Services Accenture

Referansearkitektur use cases. Kjell Sand SINTEF Energi AS NTNU Institutt for elkraftteknikk

Hvordan predikere sikkerhet mht. endring

Brukerkrav og use case diagrammer og -tekst 19. januar Agenda. Brukerkrav og use case. Diagrammer Tekst.

Tom Røise 24.Mars 2009

TTM4175 Hva er kommunikasjonsteknologi?

Nasjonale aktiviteter. Oslo,

Jini. Gruppe 1 Martin Skarsaune Bjørn Arne Dybvik Cuong Huu Truong. Definisjon

Multimedia in Teacher Training (and Education)

1. Explain the language model, what are the weaknesses and strengths of this model?

Fra sekvensielt til parallelt

Komponentarkitekturer

License Management Morten A. Steien EDB Business Partner Industri

Kost-nytte innen sikkerhet: Hva er prisen, hva er verdien, og hvordan prioritere blant tiltak?

Hva betyr tjenesteorientert arkitektur for sikkerhet?

Endringsdyktige og troverdige systemer

EN Skriving for kommunikasjon og tenkning

Fra tradisjonell komponentbasert overvåking 5l tjenestebasert overvåking. April 2017

Hvordan vokser informasjonsinfrastrukturer? Noen lærdommer fra Internetts historie

Internationalization in Praxis INTERPRAX

Passenger Terminal World Expo 2011 Copenhagen, Denmark. Steven B. Cornell Assoc. Vice President

Forelesning IMT Mars 2011

TTM4175 Hva er kommunikasjonsteknologi?

SIU Retningslinjer for VET mobilitet

Transkript:

Mellomvare for distribuert multimedia og mobilitet INF 5040 høst 2005 foreleser: Frank Eliassen SRL & Ifi/UiO 1 Litteratur!Tom Fitzpatrick, Gordon S. Blair, Geoff Coulson, Nigel Davies and Philippe Robin, Supporting Adaptive Multimedia Applications through Open Bindings (se kurssiden: Pensum)!Blair, Coulson, Robin, Papathomas: An architecture for next generation middleware (se kurssiden: Pensum)! Floch, Hallsteinsen, Stav, Eliassen, Gjørven, Lund: Beyond design time: using architecture models for runtime adaptability (se kurssiden: Pensum) SRL & Ifi/UiO 2 INF5040 høst 2005 Frank Eliassen 1

Utfordring fra multimedia og mobilitet til mellomvare! Programmeringsmodell og systemstøtte for kontinuerlige media! strømmer (enkle og sammensatte)! QoS forvaltning (management)! statisk og dynamisk! Kontekstoppmerksomhet og adaptivitet SRL & Ifi/UiO 3 Betydning for mellomvare!generelle bilde for konvensjonell mellomvare...!understøtter IKKE kontinuerlige media!tillater IKKE forvaltning av tjenestekvalitet!tillater IKKE sanntidssynkronisering!ingen eller begrenset støtte for kontekstoppmerksomhet og adaptivitet => Behov for forskning på dette området SRL & Ifi/UiO 4 INF5040 høst 2005 Frank Eliassen 2

Noen av dagens løsninger for multimedia!komponentrammeverk!ms DirectShow!Java Media Framework!Internet streaming (via nettleser)!quicktime!realnetworks!windows Media Player!Fullstendig nedlasting før avspilling!napster, Freenet SRL & Ifi/UiO 5 Streaming via nett-leser!basert på helper application : media player!dekomprimering!fjerning av jitter!feilretting (rekonstruksjon av tapte pakker - FEC) Web browser media player SRL & Ifi/UiO 6 INF5040 høst 2005 Frank Eliassen 3

Applikasjoner for mobile omgivelser!mobil databehandling krever spesielle løsninger på mange områder pga stadig og dynamisk endring i eksekveringsomgivelsene! kontekstoppmerksomme applikasjoner! adaptive applikasjoner mobile user user s needs provided quality preferred quality affect operation noise positio n SRL & Ifi/UiO 7 light Adaptable application user context monitors monitors battery computing resources network QoS system context Adapts itself Ekstern adaptasjonskontroll forenkler utvikling av mobile applikasjoner mobile user required QoS required QoS provided QoS Provided QoS Application Adaptation aims aims at improving at optimizing service service quality quality adapts adapts Context changes may Context impair changes service may quality impair service quality Influence influences user user needs affects Affects operating operating conditions conditions Adaptation middleware Manager monitored by by light noise position battery shared devices network: QoS Changing context SRL & Ifi/UiO 8 INF5040 høst 2005 Frank Eliassen 4

Ekstern adaptasjonskontroll krever at mellomvaren har tilgang til en modell av applikasjonen user s needs noise position user context light preferred quality mobile user adaptable application provided quality adapts affect operation system context monitors adaptation middleware monitors battery resources used to reason on application configuration alternatives network QoS describes dependency describes dependency application model SRL & Ifi/UiO 9 Mobil mellomvare krever støtte for heterogene datanett!mobile enheter kan bevege seg mellom ulike teknologidomener med ulike karakteristika mhp bl.a. båndbredde, forsinkelse, og tap!tilpasse seg endring!på operativsystemnivå!i mellomvareplattformen!i applikasjonen SRL & Ifi/UiO 10 INF5040 høst 2005 Frank Eliassen 5

Betydning for mellomvare!mellomvaren må tilby en åpen arkitektur som tillater at den kan tilpasses dynamisk til endringer i den operasjonelle omgivelse!generelle bilde for konvensjonell mellomvare...!tilbyr generelt en svart-boks arkitektur!begrenset (ad hoc) åpenhet CORBA: Åpenhet i essens kun uttrykt ved IIOP, POA og interceptors!tilbyr ikke dynamisk tilpassing SRL & Ifi/UiO 11 Støtte for mobilitet: Løsningen?!Konfigurerbar mellomvare og applikasjon!både mellomvaren og applikasjonen er komponent-baserte jfr DCOM, EJB, CCM!Re-konfigurerbar mellomvare og applikasjon!muliggjør inspeksjon av viktige hendelser (monitorering)!muliggjør adaptasjon (tilpassing) Endre adferden til eksisterende komponenter (parameterkonfigurering) legge til nye komponenter, bytte ut komponenter,... SRL & Ifi/UiO 12 INF5040 høst 2005 Frank Eliassen 6

Distribusjonstransparens!Tradisjonelle rolle til mellomvareplattformer!filtrere bort problemer i forb. med distribusjon gjennom. selektive transparens funksjoner!den nye rollen!mellomvare som en informasjonsleverandør i stedet for informasjonsskjuler!mellomvare som en katalysator for adaptasjon SRL & Ifi/UiO 13 Eksempel på adaptasjon: I kommunikasjonssystemet!endre valg av protokoller!rekonfigurer stakken til å passe nye/endrede betingelser i nettverket!endre. protokoll parametre!endre transmisjonsrate, policy for retransmisjon, buffer allokering, pakkestørrelse, etc.!andre optimimaliseringer!optimalisere multicast ved å avbilde til ny nettverksteknologi... SRL & Ifi/UiO 14 INF5040 høst 2005 Frank Eliassen 7

Eksempel på adaptasjon: I mellomvare!sett inn nytt filter i datastrømmen!f.eks. MPEG komprimering for multimedia!endre. parametre til et filter!f.eks. miks av I-, P- and B-rammer!Andre strategier!bruk pre-fetching eller on-demand caching!endre prioritering/ schedulering av data!sett inn delay-buffer for å redusere jitter SRL & Ifi/UiO 15 Eksempel på adaptasjon: På høyere nivå!restrukturer applikasjon!avlast prosessering til fjerne maskiner!bruk av proxy tjenere/filtre.!velge nye tjenester!f.eks. basert på nærhet!endre arbeidsmodus!f.eks. fra RMI til mer asynkron interaksjon SRL & Ifi/UiO 16 INF5040 høst 2005 Frank Eliassen 8

Beslutning om adaptasjon kan forårsakes av at QoS-kontrakter ikke overholdes!kontekst/qos overvåking ved monitorering QoS kontrakt Komponent Monitor Eksempel: Applikasjon eller adaptasjonsmellomvare Signal (QoS violation) Signal (e.g. current delay value) Data Komponent Eksempel: binding SRL & Ifi/UiO 17 Adapsjon pga brudd på QoS kontrakt!monitorering og adapsjon (tilpassing) Adapsjon (increase buffer size) Component Eksempel: Applikasjon eller adaptasjonsmellomvare Signal (overflow too often) Monitor Signal (buffer overflow) Data Component Eksempel: Buffer SRL & Ifi/UiO 18 INF5040 høst 2005 Frank Eliassen 9

Adaptasjonsmellomvare krever åpne implementasjon!hva er en åpen implementasjon?!et system/en komponent med en åpen implementasjon tilbyr (minst) to grensesnitt, et basis-nivå grensesnitt til. systemets/komponentens funksjonalitet, og et metanivågrensesnitt som avdekker aspekter av hvordan basisnivå grensesnittet er implementert f.eks. i form av komponenter og bindinger mellom dem!adapsjon gjennom åpne implementasjoner!meta-nivågrensesnittet tillater endring av aspekter av implementasjonen under kjøretid F.eks bytte ut komponenter eller endre deres adferd SRL & Ifi/UiO 19 Case: ADAPT prosjektet Lancaster University The main aim of the Adapt Project is to investigate the development of distributed systems support to manage the differing levels of connectivity a mobile user will experience. More specifically, the Adapt Project will investigate the required support for adaptive multimedia applications which are capable of intelligently adapting to QoS fluctuations (e.g. through QoS re-negotiation, media scaling, etc). Tom Fitzpatrick et al, Supporting Adaptive Multimedia Applications through Open Bindings SRL & Ifi/UiO 20 INF5040 høst 2005 Frank Eliassen 10

Case: MULTE prosjektet UiT,UiO! Goal:! develop flexible and adaptable middleware that supports a broad range of Quality-of-Service (QoS) requirements of distributed multimedia applications. continuous media streams, enhanced interoperable stream multicast for heterogeneous environments, flexible connection management, and constrained latency high throughput! Approach:! flexible/(re)configurable protocol system (Da CaPo) as basis for new ORB! F. Eliassen, T. Plagemann et al: QoS management in the MULTE-ORB, IEEE distributed systems online, March 2002, http://dsonline.computer.org/middleware/ articles/dsonline-multe-orb.html SRL & Ifi/UiO 21 ADAPT og MULTE interaksjonsmodell!tre typer interaksjon mellom objekter [RM-ODP]:!operasjonelle grensesnitt klient objekter anroper operasjoner i grensesnittene til tjener objekt (jfr. RPC & RMI)!strømgrensesnitt kontinuerlige strømmer av dataflyter mellom produsent og konsument grensesnitt (jfr. multimedia)!signalgrensesnitt grensesnitt for å produsere eller konsumere sanntidshendelser SRL & Ifi/UiO 22 INF5040 høst 2005 Frank Eliassen 11

Eksplisitte bindinger i ADAPT og MULTE! Eksplisitte bindinger i form av bindingsobjekt kan opprettes mellom kompatible grensesnitt (i motsetning til CORBA s implisitte bindinger)!tre typer bindinger Operasjonelle bindinger mellom operasjonelle grensesnitt Strømbindinger mellom strømgrensnitt Signalbindinger mellom signalgrensesnitt! Statisk QoS forvaltning (forhandling, adgangskontroll og ressursreservering) innkapsles i operasjonen som oppretter bindingsobjektet! Dynamisk QoS forvaltning (monitorering, vedlikehold og kontroll, reforhandling) understøttes gjennom bindingsobjektets kontrollgrensesnitt (dets metanivågrensesnitt) SRL & Ifi/UiO 23 Etablering av eksplisitt binding create (IfRef1, IfRef2,QoSreq>) local binding Stream binding factory static QoS management Control interfaces dynamic QoS management O 1 O 2 Stream binding object IfRef1 IfRef2 SRL & Ifi/UiO 24 INF5040 høst 2005 Frank Eliassen 12

Åpne bindinger! En binding med en åpen implementasjon. Kontrol-grensesnittet er bindingens metanivågrensesnitt Eks. på operasjoner: getgraph() addcomponent( ) removecomponent( ) replace( ) localbind( )... setattribute( )... getqos_values() lokal binding Open binding control interface Component ctrl i/f indre binding interface mapping SRL & Ifi/UiO 25 Implementasjon av Adapt og MULTE plattformer Applications Extended CORBA API Open Bindings Comms Infrastructure (Da CaPo/Ensemble) Standard CORBA Platform (COOL-ORB) Underlying Operating System (Chorus/Solaris/Windows-NT) SRL & Ifi/UiO 26 INF5040 høst 2005 Frank Eliassen 13

Eksempel åpen binding og adapsjon The MPEG encoder component's Control Interface can be used to dynamically change video bitrate, quality etc. RTP Binding Video Source MPEG encoder RTP sender UDP/IP Binding RTP receiver MPEG decoder Video Render Data H.263 encoder An MPEG video encoder component object could be REPLACED by an H.263 encoder for much lower bandwidth operation. Delay buffer A delay buffer object could be inserted between two bound objects in order to counteract the detrimental effects of jitter on video playback. SRL & Ifi/UiO 27 Begrensing ved adaptasjon gjennom åpne implementasjoner! Resonnering omkring adapsjon (f.eks. inspeksjon av applikasjonen eller systemet) skjer direkte på implementasjon via meta-nivå-grensesnittet! Vanskelig å garantere integritet og konsistens når endringen allerede er gjort (mye kan gå galt)! En bedre tilnærming synes å være å resonnere omkring adaptasjon på en modell av applikasjonen/systemet og ikke gjennomføre adaptasjonen før de foreslåtte endringene er kontrollert for korrekthet og integritet! Reflektivitet synes å kunne tilfredsstille en slik tilnærming SRL & Ifi/UiO 28 INF5040 høst 2005 Frank Eliassen 14

Adaptasjon gjennom reflektivitet!fra åpen implementasjon til reflektivitet Reflection = Open Implementation + Causally Connected Self Representation (CCSR) + Completeness!Grensesnittet til meta-nivået kalles gjerne meta-objekt protokollen (MOP) SRL & Ifi/UiO 29 Reflektivt system: begrepsmessig model introspection intercession reification A self representation MOP Structural and behavioural model Meta level absorption A system Base level SRL & Ifi/UiO 30 INF5040 høst 2005 Frank Eliassen 15

Hvorfor reflektivitet?!støtte for introspeksjon (introspection)!muligheten til å inspisere strukturen eller adferden til et system. F.eks. dynamisk monitorering eller accounting!støtte for adapsjon (intercession, absorption)!dynamisk re-konfigurering (kort tidshorisont) F.eks. endre protokoll konfigurasjon!evolusjon (lang tidshorisont) F.eks. legge til ny multimediatjeneste SRL & Ifi/UiO 31 Open-ORBv1 reflektiv mellomvare: kombinerer refleksjon og komponenter! Refleksjon! Bruk av refleksjon til å aksessere strukturen og adferden til den underliggende mellomvareplattformen! Komponenter.! Anvender komponent-orientert programmering på basis- og metanivå Compile/Load Time SRL & Ifi/UiO 32 INF5040 høst 2005 Frank Eliassen 16

Open-ORBv1 Arkitekturen: En multi-model tilnærming. SRL & Ifi/UiO 33 Strukturell (structural) refleksjon i Open-ORBv1! Interface meta-model!støtter introspeksjon og adapsjon av den eksterne representasjon av en komponent Required/provided interfaces!architectural meta-model!støtter introspeksjon og adapsjon av den underliggende programvarearkitektur Programvarearkitektur = komponentgraf + arkitektoniske begrensninger SRL & Ifi/UiO 34 INF5040 høst 2005 Frank Eliassen 17

Adferdsmessig (behavioural) refleksjon i Open-ORBv1!Interception meta-model!støtter dynamisk innsetting av interceptors rundt komponentgrensesnitt Pre-, post- og wrapper- metoder!resources meta-model!en per adresserom!støtter introspeksjon og adapsjon av allokering av ressurser og relatert ressurs forvaltning basert på begreper som tasks og resources SRL & Ifi/UiO 35 Eksempel på QoS forvaltning i OpenORBv1 [Andersen, 2002] Monitoring Event Collector Observe behaviour of underlying functional components and generate relevant QoS events. Monitor Collect QoS events and report abnormal behaviour to interested parties. Control Strategy Selectors Select an appropriate adaptation strategy (i.e. strategy activator) based on feedback from monitors. Strategy Activators Implement a particular strategy, e.g. by manipulating component graph. Dynamisk innsetting av management komponenter og binding til eksisterende (protokoll)komponenter Protokollkomponenter adapteres dynamisk til å kunne interagere med management komponenter [Andersen,2002] Anders Andersen, OOPP: A Reflective Middleware Platform including Quality of Servicxe Management, PhD thesis, University of Tromsø, 2002 SRL & Ifi/UiO 36 INF5040 høst 2005 Frank Eliassen 18

EksmpelpåQoS forvaltningi OpenORBv1 (OOPP) Interception meta-object Strategy activator Strategy selector Strategy activator Resources meta-object producer binding monitor buffer adder pre-metode til buffer.additem metode. Pre-metoden sjekker buffer og sender evt overflow signal consumer Overflowtoo-often signal overflow signal Signalinterface til buffer adderes dynamisk SRL & Ifi/UiO 37 Arkitektur-baserte tilnærminger! Basert på ideen om ekstern adapsjonskontrol! Ekstern adapsjonskontrol krever en passe modell av det adaptive systemet for å resonnere om det dynamiske adferd! Bruk av arkitekturmodeller som beskriver et systems overordnede komposisjon av komponenter, forbindelsene mellom dem, og andre egenskaper av interesse! Ideen er å gjøre modeller fra design-tid tilgjengelige for mellomvaren under kjøretid! Eksempler på lokale systemer ved UiO: QuA, MADAM! Skiller seg fra reflektive systemer ved at absorption ikke utføres automatisk av det reflektive systemet, men av generelle mellomvare-tjenester (QuA: Student-presentasjon) SRL & Ifi/UiO 38 INF5040 høst 2005 Frank Eliassen 19

MADAM: Arkitektur-basert adaptasjonsmellomvare Context model Runtime application models (old and new) MW plug-ins Context manager context change Adaptation 1 3 manager 2 model of selected variant find models and impls, derive and evaluate application variants Configurator 4 remove, load and bind components Core http://www.ist-madam.org SRL & Ifi/UiO 39 Context-aware platform-managed service (re)configuration in MADAM!The user requests the type of service needed (specifying logical functionality) and requirements to non-functional properties (such as QoS).!Adaptation middleware!discovers and selects the service type implementation that best meets the end-users requirements given the current context (initial configuration)!detects context changes, discovers alternative application or service implementations and reconfigures application and service implementations accordingly to maintain user satisfaction SRL & Ifi/UiO 40 INF5040 høst 2005 Frank Eliassen 20

Application and service development in MADAM! Application and service developers publish Implementation Plans (or just Plans) and components to the middleware platform! A plan:! Associates a component type and non-functional properties with an implementation! May specify a design (composition of component types) as well as code (an atomic component) as an implementation.! Specifies a property predictor function The properties (may) depend on context (including resource dependencies) and the properties of the constituent components if a composite component! Different implementations of the same component type are published as different plans to the middleware platform:! Same functional properties, but different non-functional properties SRL & Ifi/UiO 41 Derivation of MADAM application variants! Plans are recursively discovered and selected and the corresponding implementations configured by the MADAM middleware during initial configuration and during dynamic reconfiguration! An application variant results from recursively resolving each component type to an implementation down to atomic components OR Plan Plan Plan Implementation Type 2 Type 3 Plan Impl Impl Impl Impl Variants: Type 1 OR Plan Plan Impl Impl Impl Impl OR Implementation... SRL & Ifi/UiO 42 INF5040 høst 2005 Frank Eliassen 21

MADAM application variant evalution is based on utility functions! Utility! Measure of how well an application variant fits a given context! Generally a function of application properties, user requirements and current context! Specified by the developer! An application is essentially specified as a service type and utility function method call ContextAccess getcontext() Application evalutility() Type 1 Plan property_predictor() Implementation Plan property_predictor() Impl Type 2 Type 3 Plan property_predictor() Impl method call SRL & Ifi/UiO 43 Oppsummering! Behov for effektiv mellomvare som kan understøtte et vidt spekter av krav inklusive multimedia og mobilitet! Løsningen ligger i mer åpne og adaptive arkitekturer! Konfigurerbare.! Re-konfigurerbare! Eks: ADAPT (& MULTE)! En rolle for refleksjon (eks: OpenORB)! Relatert: arkitekturbaserte tilnærminger (eks: MADAM) SRL & Ifi/UiO 44 INF5040 høst 2005 Frank Eliassen 22