Tijdschrift voor Economie en Management Vol. L, 4, 2005
Ubiquitous Computing door C. DE BACKER and J MOONS
Carlos de Backer Universiteit Antwerpen, Departement Beleidsinformatica, Antwerpen
Jan Moons Universiteit Antwerpen, Departement Beleidsinformatica, Antwerpen
ABSTRACT De snelle technologische evolutie op het vlak van hardware en software enerzijds en computercommunicatie anderzijds heeft reeds meerdere malen geleid tot drastische wijzigingen bij het gebruik van de informaticatechnologie. In een periode van ongeveer 60 jaar kunnen reeds drie merkwaardige evoluties worden waargenomen: de mainframe evolutie, de personal computer (PC) evolutie en de Internet (r)evolutie. Na deze drie evoluties blijven computers nog steeds moeilijk toegankelijke objecten. Ubiquitous computing (Ubicomp) heeft als doelstelling om computers beter te integreren in het dagelijks leven van de mens. Computers zullen worden ingebouwd in allerhande gebruiksvoorwerpen en reageren onmiddellijk op wijzigende externe gebeurtenissen. In dit artikel bespreken we de evolutie naar ubiquitous computing en een aantal sociale risico’s van deze evolutie. Bovendien beschrijven we enkele belangrijke technologische uitdagingen en mogelijke oplossingen.
I. INLEIDING De term “ubiquitous computing” werd voor de eerste keer gebruikt in 1991 door Mark Weiser (1991): A less-travelled path I call the invisible, its highest ideal is to make a computer so imbedded, so fitting, so natural, that we use it without even thinking about it. (I have also called this notion Ubiquitous Computing, and have placed its origins in post-modernism.) In een ander artikel van Mark Weiser (1996) wordt de term “ubiquitous computing” geplaatst in een evolutie naar een grotere transparantie bij het gebruik van de informatietechnologie: The first wave of computing, from 1940 to about 1980, was dominated by many people serving one computer. The second wave, still peaking, has one person and one computer in uneasy symbiosis, staring at each other across the desktop without really inhabiting each other’s worlds. The third wave, just beginning, has many computers serving each person everywhere in the world. I call this last wave ubiquitous computing or ubicomp. Volgende werkdefinitie zal in de loop van dit artikel worden gebruikt: Ubiquitous computing verwijst naar de situatie waarbij mensen met minimale menselijke interventie communiceren met en ondersteund worden door meerdere al dan niet controleerbare (verwijderde) computers die zoveel mogelijk voor de mens verborgen blijven. De grootste uitdaging voor ubiquitous computing is volgens Lyytinen enYoo (2002) de integratie van “pervasive computers”, waarbij ingebouwde sensoren dynamisch reageren op de wisselende omstandigheden van de omgeving (zoals bijvoorbeeld bij intelligente kledij), en mobiele computerapparatuur (Figuur 1).
FIGUUR 1 Ubiquitous computing (Lyytinen and Yoo (2002))
Level of embeddedness high
Pervasive computing
Ubiquitous computing
low
high Traditional computing
Level of mobility
Mobile computing
low
Ubiquitous computing zoekt dus naar een evenwicht tussen de bouw van mensvriendelijke interfaces en mobiele gegevensverwerking. Heel wat onderzoeksdisciplines zijn hierbij betrokken: mobiele en gedistribueerde gegevensverwerking, draadloze netwerken, ontwikkeling van nieuwe sensoren, ontwikkeling van interfaces naar de gebruiker (human computer interaction (HCI)), artificiële intelligentie (AI), … In Figuur 2 worden een aantal van deze disciplines opgesplitst.
II. EVOLUTIE In een artikel van 1996 beschrijft Mark Weiser (1996) de evolutie naar ubiquitous computing. Hierbij onderscheidt hij 4 fasen. Deze fasen zijn samengevat in Tabel 1.
FIGUUR 2 Disciplines betrokken bij ubiquitous computing
AI Distributed computing HCI Interface design Miniaturization Mobile computing Sensor networks Wireless networking
mobility
interfacing
TABEL 1 Belangrijke trends in de informatieverwerking Evolutie
Kenmerken
Mainframe
Meerdere personen delen één centrale computer
Personal Computer
Elke persoon beschikt over zijn eigen computer
Internet
De gegevensverwerking wordt verdeeld tussen server en client (gedistribueerde verwerking)
Ubiquitous Computing
Meerdere computers delen elk van ons
A. Mainframe Het tijdperk van de mainframe wordt gekenmerkt door één “krachtige” computer die door heel veel mensen wordt gedeeld. De beschikbare
computercapaciteit is beperkt en duur. Het gebruik van deze computer wordt meestal toevertrouwd aan gespecialiseerde informatici.
B. Personal computer Het tijdperk van de personal computer(PC) is gestart in de jaren 1980. De personal computer is eigendom van één persoon en biedt reken- en opslagcapaciteit aan de eigenaar. Het gebruik van de personal computer wordt sterk vereenvoudigd door de ontwikkeling van gebruiksvriendelijke programma’s. Het succes van deze “goedkope” computer is dermate groot dat heel wat gebruikers reeds over meerdere personal computers beschikken (op kantoor, thuis, Personal Digital Assistant (PDA), ...). De problematiek om de integriteit van de data tussen deze verschillende computers te bewaren is bij heel wat gebruikers voldoende bekend. Het succes van de USB Memory Stick is ongetwijfeld hierdoor te verklaren.
C. Internet De Internet revolutie is de start van een aantal nieuwe communicatievormen (e-mail, web surfing, ...) tussen mensen. Nog steeds blijft de traditionele computerapparatuur echter noodzakelijk. Het Internet integreert namelijk de mainframe (webserver) met de personal computer (webclient). De verwerking van programma’s wordt nu verdeeld tussen de server en de client. Het Internet luidt op deze manier het tijdperk in van gedistribueerde verwerking (distributed computing). Elke persoon die op het Internet is aangesloten gebruikt nu reeds honderden “onzichtbare” computers. Hier is hij zich minder en minder van bewust. Weiser beschouwt deze evolutie als een logische tussenstap naar ubiquitous computing.
D. Ubiquitous computing Mark Weiser verwacht de start van het ubiquitous computing (UC) tijdperk vanaf 2005 (Weiser (1996)). Het UC-tijdperk wordt gekenmerkt door heel veel “onzichtbare” computers die door heel veel personen kunnen worden gebruikt. Het gebruik van dergelijke computers zal worden verborgen in allerhande gebruiksvoorwerpen zoals klokradio’s, GPS systemen, smartphones, MP3 spelers, ... Deze toestellen beschikken heel dikwijls nu reeds over krachtige reken- en opslagcapaciteit. Daarom zijn ze echter nog geen UC’s. Indien deze toestellen evenwel worden uitgebreid met functionaliteit waarbij bijvoorbeeld de klok sporadisch wordt gesynchroniseerd met een centrale atoomklok of waarbij de MP3 speler ook is uitgerust met een Internet connectie om rechtstreeks muziek af te laden of
rechtstreeks af te spelen van een legale muzieksite dan is de term UC van toepassing. UC integreert dus computercapaciteit ingebouwd in de meest diverse gebruiksvoorwerpen met de communicatiemogelijkheden (Internet, draadloos, …) die door de moderne technologie worden geboden. Kenmerkend voor UC is dat de communicatie adhoc verloopt: er is geen vaste verbinding beschikbaar maar er wordt een verbinding opgezet wanneer dit nodig blijkt te zijn (Stajano (2002)). De creativiteit van het menselijk brein is de enige belemmering bij het zoeken naar nieuwe toepassingen van ubicomp. Draagbare medische toestellen (bijvoorbeeld thermometers) kunnen worden ontworpen die rechtstreeks de gegevens van een patiënt overdragen naar een centrale computer, een digitale camera kan worden uitgerust met een GPS connectie zodat een foto kan worden aangevuld met de correcte geografische positie, een GPS in de auto kan voortdurend in connectie staan met computersystemen van kruisende wagens om de toekomstige verkeerstoestand te leren kennen, bij een te lage voorraad van stookolie kan een automatische bestelling worden geplaatst op basis van een maximale bestelprijs die door de gebruiker werd ingesteld, een video- en/of een DVD-recorder kan automatisch worden ingesteld op basis van de kanaal informatie die in het TV-toestel is opgeslagen en kan eenvoudig worden geprogrammeerd door een bevestiging van de gebruiker op een signaal dat wordt gestuurd bij de start van een programma. Weiser meent dat deze nieuwe evolutie zal leiden tot een tijdperk van rust (“The Age of Calm Technology”) waarbij de technologie op een eenvoudige en gebruikersvriendelijke manier ten dienste staat van de mens. Een aantal recente studies staan evenwel zeer kritisch ten opzichte van deze bewering.
III. DE SOCIALE GEVOLGEN VAN UBIQUITOUS COMPUTING De sociale gevolgen van ubiquitous computing worden door John Tang (2005) als volgt samengevat: • • •
De sociaal storende gevolgen van een slecht ontwerp. De beperkingen van de mens op het vlak van “multitasking”. Misbruiken in de communicatie.
Deze bevindingen van Tang zullen in deze paragraaf worden aangevuld met enkele bedenkingen rondom het mogelijk verlies van privacy.
A. Een slecht ontwerp van UC’s
Tang vergelijkt de mogelijke gevolgen van een slecht ontwerp van ubiquitous computers met de ervaringen bij het ontwerp van mobiele telefoons. De hoge graad van mobiliteit van deze telefoons heeft geleid tot storende effecten bij het gebruik van deze telefoons in vergaderingen, bioscopen, restaurants,… Het rinkelende geluid van deze telefoons wordt namelijk door de meeste mensen als storend ervaren. De GSM-industrie heeft daarop gereageerd door de meeste mobiele telefoons uit te rusten met een trilfunctie. Het storende geluid wordt op deze manier weggewerkt maar het gebruik van de telefoon in het bijzijn van andere personen wordt nog steeds niet geapprecieerd. Tang meent dat de technologie hier niet alleen ten dienste mag staan van het individu maar dat ook de sociale gevolgen van deze nieuwe technologie vooraf heel grondig moeten worden bestudeerd.
B. De multitasking beperkingen van de mens Een aantal studies heeft reeds aangetoond dat er beperkingen zijn aan de mogelijkheden van de mens om simultaan meerdere taken uit te voeren. Vooral in extreme omstandigheden (bijvoorbeeld in de cockpit van een gevechtsvliegtuig) werden de limieten van de mens reeds grondig bestudeerd. Sporadisch verschijnen er studies die de beperkingen van de mens meten bij de uitvoering van dagelijkse werkzaamheden. De studie van Strayer en Johnston (2001) bestudeert de beperkingen van de mens bij het gebruik van een mobiele telefoon in de wagen. Dit multitasking vraagstuk wordt nog belangrijker bij de overgang naar ubiquitous computing. Hoe eenvoudig de bediening van de apparatuur ook mag zijn toch zullen er steeds grenzen blijven aan de mogelijkheden die de mens simultaan aankan. Tevens kunnen de reacties van de mens op diverse externe signalen weer storende invloeden hebben op het sociaal gedrag van de mens.
C. Misbruiken in de communicatie De webtechnologie heeft geleid tot een overdaad aan berichtgeving. Heel vaak worden web pagina’s bijvoorbeeld aangevuld met ongewenste banners en pop-up windows. Ook spam is een belangrijk misbruik in het kader van het e-mail verkeer. Het gevaar van misbruiken op het vlak van communicatie wordt nog groter bij ubiquitous computing. Elke gebruiker staat nu individueel in de schijnwerper en kan worden bestookt met allerhande (gepersonaliseerde) berichtgeving.
D. Het verlies van privacy
De GSM- en GPS-technologie laten nu reeds toe om het pad van elk individu te volgen en/of te traceren. Ubiquitous computing gaat nog een stap verder en is in staat om diverse soorten individuele informatie te verzamelen, te groeperen en te verwerken. Lederer, Mankoff en Dey (2003) hebben in hun studie aangetoond dat vooral de identiteit van de instantie die de informatie verzamelt van primordiaal belang is bij de evaluatie van het risico op het gebied van privacy. Tevens is de nauwkeurigheid en de graad van detaillering van de informatie die men wenst te verstrekken sterk afhankelijk van de identiteit van de bevrager. Deze vaststellingen tonen duidelijk aan dat een (minimale) controlerende interactie van de gebruiker met de technologie toch noodzakelijk zal blijven. De onzichtbare computer blijft in dit geval een droom.
IV. DE TECHNISCHE UITDAGINGEN VAN UBIQUITOUS COMPUTING
A. Integratie Succesvolle ubiquitous computing toepassingen vereisen een verregaande integratie van systemen in de menselijke leefomgeving. Een van de belangrijkere evoluties in dit integratieproces is de opkomst van sensornetwerken – netwerken van uiterst kleine sensoren die informatie over de omgeving registreren en verspreiden. Deze informatie geeft toepassingen een idee van de context waarin ze worden uitgevoerd. Hierdoor kunnen ze bijvoorbeeld in real-time hun configuratie wijzigen of beter inspelen op de huidige noden van de gebruiker. Context in een informatica omgeving wordt in (Chen and Kotz (2000)) omschreven als volgt: Context is the set of environmental states and settings that either determines an application’s behavior or in which an application event occurs and is interesting to the user. Het begrip context kan worden opgedeeld in gebruikerscontext, IT context, fysieke context en tijdscontext. Onderstaande lijst geeft enkele voorbeelden van contextuele informatie. • • •
IT context: netwerkconnectiviteit, bandbreedte, aanwezige input- en outputapparatuur, ... Gebruikerscontext: gebruikersprofiel, locatie, andere gebruikers in de nabijheid, sociale situatie, ... Fysieke context: lichtniveau, geluidsniveau, temperatuur, luchtdruk, vochtigheid, ...
•
Tijdscontext: moment van de dag, seizoen, jaar, tijdstip, ...
Het is de taak van de sensoren om relevante data te registreren en te verspreiden, en de taak van software om met deze informatie iets nuttigs te doen. Het onderzoek naar sensor netwerken is momenteel nog volop in ontwikkeling. In Hill e.a. (2000) bijvoorbeeld wordt de ontwikkeling van TinyOS, een besturingssysteem voor draadloze netwerksensoren, beschreven. In Madden e.a. (2002) beschrijven de auteurs een architectuur om sensornetwerken te bevragen. Toepassingen die op een intelligente manier gebruik maken van contextuele informatie zijn de sleutel tot geslaagde rustige toepassingen. Deze toepassingen moeten de levenskwaliteit echt kunnen verbeteren door het nemen van beter geïnformeerde beslissingen met een minimum aan menselijke tussenkomst. Een van de meest voor de hand liggende voorbeelden is de ontwikkeling van een slim huis, waarin bijvoorbeeld het licht wordt ingeschakeld bij het betreden van een donkere ruimte door een gebruiker. De intensiteit van het licht kan dan afhangen van de intensiteit van het natuurlijke licht in de kamer en de voorkeuren van de geïdentificeerde gebruiker. Ook voor niet-informaticagerichte toepassingen, zoals toepassingen voor milieuonderzoek en -bescherming kunnen contextbewuste toepassingen nuttig zijn. Zo kunnen netwerken van temperatuursensoren gebruikt worden in de bestrijding van bosbranden, of kunnen netwerken van chemische sensoren gebruikt worden om water- of luchtverontreiniging te onderzoeken. De mogelijkheden zijn legio, maar voordat ontwikkelaars op grote schaal van de mogelijkheden gebruik kunnen maken is er nood aan standaardisatie en een verdere ontwikkeling van de basisinfrastructuur.
B. Mobiliteit Even belangrijk als de uitdagingen op het vlak van integratie zijn de uitdagingen op het vlak van mobiliteit. Hoewel sterk vereenvoudigd toont Figuur 3 de mogelijkheden tot mobiliteit van een informatiesysteem. Er zijn in principe twee grote strekkingen. Ofwel maak je de hardware mobiel inclusief alle software - ofwel maak je enkel de software mobiel. We concentreren ons in dit artikel op software mobiliteit, omdat de hardware waarop onze mobiele software moet draaien juist zoveel mogelijk geïntegreerd wordt in de leefomgeving. Software bestaat in essentie uit een gebruikersinterface, logica en data. Dit is het klassieke gelaagde softwaremodel, waarbij de lagen zoveel mogelijk onafhankelijk van elkaar moeten blijven. De huidige oplossingen maken ofwel enkel de gebruikersinterface mobiel, ofwel de volledige toepassing, inclusief data en statusinformatie.
FIGUUR 3 Computing model
Hardware Application user interface business logic
state
data
Een belangrijk onderscheid kan gemaakt worden tussen oplossingen die sterk afhankelijk zijn van een netwerkverbinding en oplossingen die minder afhankelijk zijn. Een van de belangrijkste eigenschappen van een geslaagd ubiquitous computing systeem is de afstemming op de mens. Hoe meer een toepassing past binnen onze sociale gewoonten of aansluit bij onze fysieke eigenschappen, hoe groter de kans op aanvaarding van de toepassing. Het is dan ook vreemd dat relatief weinig mobiele systemen gebruik maken van de verplaatsing van personen zelf als transmissiemedium – zowat alle systemen zijn volledig afhankelijk van een netwerkverbinding tussen het lokale en het verwijderde station. De laatste jaren komt hierin echter stilaan verandering. Eerst bespreken we de netwerkafhankelijke oplossingen, vervolgens de oplossingen die gebruik maken van persoonlijke mobiliteit.
1. Netwerkafhankelijke oplossingen
a. M o b i e l e g e b r u i k e r s i n t e r f a c e Mobiele gebruikersinterfaces kunnen ofwel tekstgebaseerd, ofwel grafisch van aard zijn. Tekstgebaseerde interfaces worden mogelijk gemaakt door eenvoudige communicatieprotocols zoals telnet en ssh. Wanneer je op een
lokaal station een ssh sessie start kan je volledige controle krijgen over software die op een ander systeem draait. Een andere benadering wordt gebruikt in het Virtual Network Computing (VNC) systeem (Wood e.a. (1997)). Het VNC systeem verplaatst de volledige grafische gebruikers interface van een lokaal station naar een verwijderd station. Gelijkaardig werk, maar dan gekoppeld aan een locatiebepalingssysteem, wordt beschreven in Richardson e.a. (1993). In essentie zijn de meer recente Internetgebaseerde software architecturen, zoals Sun J2EE en Microsoft .Net ook een voorbeeld van de mobiele gebruikersinterface. In deze client-server systemen wordt meestal een eenvoudige browsergebaseerde gebruikersinterface getoond aan het verwijderde station. De interactie tussen interface en logica gebeurt dan steeds over het netwerk. Een van de grootste nadelen van zowel de mobiele gebruikersinterfaces als de Internetgebaseerde client-server modellen is de afhankelijkheid van een permanente netwerkverbinding. Deze assumptie is niet zo vanzelfsprekend in een ubiquitous computing context. De toestellen die in de toekomst gebruikt zullen worden zullen wel beschikken over netwerkconnectiviteit, maar evenzeer zullen ze vaak communiceren over onbetrouwbare verbindingen. Bovendien zal een netwerkverbinding steeds trager blijven dan lokale communicatiebussen, waardoor de gebruikerservaring minder vlot zal lijken dan bij software die rechtstreeks op het lokale systeem wordt uitgevoerd.
b. M o b i e l e s o f t w a r e Men kan niet enkel de gebruikersinterface mobiel maken, maar ook de software zelf. In dit geval wordt zowel de data en de statusinformatie als de toepassingslogica verplaatst naar het verwijderde station. Je hebt nu geen behoefte meer aan client software om de gebruikersinterface te presenteren, maar wel aan een softwarelaag die het mogelijk maakt om toepassingen over het netwerk te ontvangen. Mobiele software heeft een belangrijk voordeel ten opzichte van een VNC systeem. In de meeste breedband systemen is bandbreedte namelijk een minder groot probleem dan vertraging. Het is dus vaak beter voor de responsiviteit van het softwaresysteem om de volledige software te downloaden, dan om vele kleinere vragen te stellen aan de verwijderde serversoftware. De echte verwerking van het mobiele programma kan dan rechtstreeks op het nieuwe station gebeuren, zonder netwerkvertraging. Bovendien is een netwerkverbinding niet permanent noodzakelijk, enkel gedurende de termijn nodig om de toepassing te verzenden. Mobiele software bestaat onder meer in de vorm van mobile agents, kleine software programma’s die taken uitvoeren voor de gebruiker. Een uitgebreide taxonomie van mobile agents is te vinden bij Franklin en Graessner (1996). Een van de interessantere toepassingen voor mobile agents
wordt beschreven door Halls (1997). In zijn doctoraatsthesis beschrijft Halls de koppeling van fysieke mobiliteit en software mobiliteit. Met behulp van een locatiebepalingssysteem kunnen computers de beweging van een gebruiker registreren. De mobiele software wordt dan getoond op het computersysteem dat het dichtst bij de gebruiker staat. Met dit systeem is er geen nood meer aan het opstarten en afsluiten van toepassingen, het systeem bepaalt zelf waar de software moet verschijnen. Een gelijkaardig systeem wordt beschreven in Want e.a. (1992). Onder andere de Aglet technologie van IBM en Voyager van Object Space werken volgens het mobile agent principe. De Java Applet technologie is ook een voorbeeld van mobiele software. Applets worden in hun geheel afgeladen naar de verwijderde stations, waar ze lokaal worden uitgevoerd. De Applets worden steeds uitgevoerd in een beschermde omgeving - de zogenaamde zandbak – zodat ze geen schade kunnen veroorzaken aan het uitvoerende station. Ook andere netwerkgerichte Java softwaremodellen, zoals JINI en OSGi passen binnen deze categorie. Nog een ander model wordt gebruikt in commerciële software zoals die beschikbaar is bij onder andere Softricity, Appstream en Microsoft. Eenvoudig gesteld verplaatsen de producten van deze leveranciers traditionele software van een server computer naar een client computer. Als een traditionele toepassing echter wordt uitgevoerd op een computer laat ze sporen na, onder ander in het register, een databank met programmainstellingen. Dit zorgt binnen afzienbare tijd voor een vervuild systeem dat minder responsief is en vaker zal vastlopen. Om dit te vermijden maken deze modellen gebruik van virtualizatie, waarbij niet enkel de software wordt afgeladen, maar ook een apart register. Na afsluiten wordt de toepassing verwijderd van het systeem, inclusief het extra register. Het host station blijft dan ongewijzigd achter.
2. Oplossingen die niet afhangen van netwerkconnectiviteit Het U3 systeem van M-Systems is een poging om draagbare applicaties te ontwikkelen met flash-geheugen als drager van de software. De toepassingen zullen dus zo geschreven zijn dat een gebruiker zich van PC naar PC kan bewegen en de toepassingen, compleet met statusinformatie en data, rechtstreeks vanaf het flash geheugen uitvoeren. De eerste toepassingen van dit systeem worden verwacht in de tweede helft van 2005. Onder andere de open-source projecten Mozilla Thunderbird en Mozilla Firefox staan op de lijst van U3-compatibele toepassingen. Ook het AirWRX framework van Network Improv gebruikt flashgeheugen als drager. Bij dit systeem bestaat een toepassing uit een server- en een client-gedeelte. De server draait op het flash-geheugen, en de client wordt verplaatst van het flash-geheugen naar het interne geheugen van het host systeem. Het AirWRX framework vereist wel een volledig aangepaste software-architectuur.
Eigenlijk is heel de Java taal ook op min of meer dezelfde principes gebaseerd. Een Java programma is niet afhankelijk van status-informatie uit het register, en kan in principe op dezelfde manier gebruikt worden als toepassingen uit het U3 systeem. Het grootste verschil is echter dat Java steunt op de aanwezigheid van een Java Virtual Machine op de individuele stations. Bovendien zijn er vele Java versies beschikbaar, voor platformen met verschillende eigenschappen. Zo is er de standaard editie voor gewone desktop platformen en de micro editie voor minder krachtige platformen. Toepassingen geschreven voor de ene editie zullen niet automatisch werken op Java Virtual Machines voor een andere editie. Beter zou zijn dat toepassingen gebruik maken van contextuele informatie om dynamisch hun configuratie aan te passen, zoals wordt beschreven in sectie IV.A. Toch zijn ook deze oplossingen niet ideaal. Zo zijn de flashgeheugens gekend voor hun klein aantal schrijfbeurten, en zijn ze erg duur bij grotere capaciteiten. Mini-harddisks, die als alternatief gebruikt kunnen worden, zijn dan weer minder robuust. Om de benodigde interventie door de gebruiker nog verder te reduceren zou een ubiquitous computing toepassing bovendien beter gebruik kunnen maken van een draadloos Personal Area netwerk ( Wireless Personal Area Network (WPAN) ), maar dat geeft dan weer problemen met batterijduur als er relatief veel informatie moet worden verzonden tussen de mobiele drager en het host station, zoals het geval is bij de voorgaande systemen. Een ander probleem stelt zich met de veiligheid van zulke systemen. Ze maken het veel eenvoudiger om toepassingen uit te voeren op hardware waar je zelf geen eigenaar van bent. Het moet niet gezegd worden dat dit tot ernstige veiligheidsrisico’s kan leiden. Op dit ogenblik is nog niet bekend hoe de oplossingen van M-Systems en Networkimprov hiermee zullen omgaan.
C. Mobiliteit en netwerkafhankelijkheid Figuur 4 plaatst de besproken systemen op een grafiek op basis van hun afhankelijkheid van netwerkconnectiviteit en op basis van de mate van mobiliteit (maken ze de volledige software mobiel, of enkel de gebruikersinterface). De projecten in de bovenste helft van de figuur sluiten beter aan bij de vereisten van een geslaagde ubiquitous computing toepassing. Deze projecten zijn immers het minst afhankelijk van een permanent netwerk omdat ze gebruik maken van de menselijke mobiliteit als medium.
FIGUUR 4 De systemen uitgezet tegen de mate van mobiliteit en de afhankelijkheid van netwerkcapaciteit
network dependency low U3
BEST AirWRX
low
high Applets hoog Mobile Agents virtualization
mobilitycompleteness
VNC Internet computing
high
In een eigen onderzoeksproject werken we aan een architectuur, Best Effort System Teleporting (BEST), waar we niet de volledige toepassing verplaatsen maar enkel de status en de data van de toepassing. Deze vorm van mobiliteit biedt een oplossing voor de veiligheidsproblematiek zoals besproken in IV.B.2, en stelt bovendien minder eisen aan opslagcapaciteit en aan netwerkverkeer. De keerzijde van de medaille is dat enkel toepassingen die reeds geïnstalleerd zijn op lokale machines kunnen uitgevoerd worden, maar dan wel gebruik makend van eigen data en statusinformatie.
V. BESLUIT Het ubiquitous computing concept bestaat nu bijna twee decennia, maar de realisatie ervan is nog maar nauwelijks merkbaar in de praktijk. Dit is niet te wijten aan het nut van ubiquitous computing toepassingen - de mogelijkheden worden eigenlijk enkel beperkt door de verbeelding van de ontwerpers - maar eerder aan de complexiteit van het ubiquitous computing concept. Het succes van ubiquitous computing hangt niet enkel af van technologische vooruitgang, maar ook van inzicht in sociale processen en de menselijke geest. De grootste uitdaging is eigenlijk de noodzakelijke fusie tussen sociale en psychologische wetenschappen enerzijds en ingenieurswetenschappen anderzijds. De sociale wetenschappers moeten zorgen voor inzicht in de menselijke houding inzake ubiquitous computing systemen, psychologen moeten zorgen voor inzicht in noden van de individuele mens en ingenieurs moeten deze informatie gebruiken in hun
ontwerpen. Enkel wanneer deze onderzoeksdomeinen echt samenwerken zal de toekomstvisie van Weiser worden gerealiseerd.
REFERENTIES Chen, G. and D. Kotz, 2000, A Survey of Context-Aware Mobile Computing Research, Technical Report TR2000-381, (Dept. of Computer Science, Dartmouth College), November. Franklin S. and A. Graesser, 1996, Is it an Agent, or Just a Program ?: a Taxonomy for Autonomous Agents, in Intelligent Agents, Agent Theories, Architectures and Languages (ATAL’96), Vol. 1193, , (Springer-Verlag, Berlin, Germany). Halls, D. A., 1997, Applying Mobile Code to Distributed Systems, PhD thesis, (University of Cambridge). Hill, J., R. Szewczyk, A. Woo, S. Hollar, D. E. Culler, and K. S. J. Pister, 2000, System Architecture Directions for Networked Sensors, in Architectural Support for Programming Languages and Operating Systems, pp. 93–104. Lederer, S., J. Mankoff, and A. K. Dey, 2003, Who Wants to Know What When? Privacy Preference Determinants in Ubiquitous Computing, in Proceedings of the 2003 Conference on Human Factors in Computing Systems, CHI 2003,( Ft.Lauderdale, Florida, USA), April 5-10, ACM. Lyytinen, K. and Y. Yoo, 2002, Issues and Challenges in Ubiquitous Computing, Communications of the ACM, December, 63–65. Madden, S., M. Franklin, J. Hellerstein, and W. Hong, 2002, Tag: a Tiny Aggregation Service for Ad-Hoc Sensor Networks. Richardson, T., F. Bennett, G. Mapp and A. Hopper, 1993, Teleporting in an X Window System Environment, technical report. Stajano, F., 2002, Security for Ubiquitous Computing, (John Wiley and Sons Ltd.). Strayer, D. L. and W. A. Johnston, 2001, Driven to Distraction: Dual-Task Studies of Simulated Driving and Conversing on a Cellular Telephone, Phsychological Science 12, 62–466. Tang, J. C., 2005, Ubiquitous Computing: Individual Productivity at the Expense of Social Good? in Proceedings of the First International Workshop on Social Implications of Ubiquitous Computing. Want, R., A. Hopper, V. Falcao, and J. Gibbons, 1992, The Active Badge Location System, 92, 1. Weiser, M., 1991, The Computer for the Twenty-First Century, Scientific American, September, 94–104. Weiser, M., 1996, Open House, Review, the Web Magazine of the Interactive Telecommunications Program of New York University, ITP Review 2, 0. Weiser, M. and J. S. Brown, 1996, The Coming Age of Calm Technology, Website, October. Wood, K. R., T. Richardson, F. Bennett, A. Harter, and A. Hopper, 1997, Global Teleporting with Java: Toward Ubiquitous Personalized Computing. IEEE Computer 30, 2, 53–59.