Arquitetura da Informação Pervasiva: desvendando as heurísticas ...
Universidade Federal do Rio Grande do Sul Programação Distribuída e Paralela Aura Computação...
-
Upload
otavio-bermudes -
Category
Documents
-
view
217 -
download
0
Transcript of Universidade Federal do Rio Grande do Sul Programação Distribuída e Paralela Aura Computação...
Universidade Federal do Rio Grande do Sul
Programação Distribuída e Paralela
Aura
Computação Ubíqua/Pervasiva
Valter Rehn
Computação PervasivaComputação Pervasiva
Dispositivos devem ser portais em um espaço de aplicação e dados
Uma aplicação é um meio pelo qual um usuário realiza uma tarefa
Ambiente computacional é o espaço físico com informações avançadas
Recurso mais precioso: atenção do usuário
CaracterísticasCaracterísticas
O foco do usuário está na atividade, não no computador
Dispositivos devem estar espalhados pelo ambiente
Tarefas duram dias, envolvem muitos dispositivos, pessoas, lugares
Necessidades de tarefas se alternarem todo o tempo
Recursos degradam frequentemente
DesafiosDesafios
Invisibilidade: Como tornar o ambiente computacional de fato ubíquo, requerendo a menor intervenção humana possível?
Consciência de Contexto: Como gerenciar de forma pró-ativa localização e mobilidade? Como implementar a percepção?
Gerência de Contexto do Usuário: como monitorar e interpretar no contexto que é importante para o usuário? Como modelar informações que determinam as preferências e intenção do usuário?
DesafiosDesafios
Escalabilidade: Como gerenciar a proliferação de usuários, aplicações, dispositivos de redes e suas interações distribuídos em larga escala?
Heterogeneidade: Como lidar com as diferenças de infraestrutura, de rede e de aplicações usualmente desenvolvidas para dispositivos e sistemas específicos?
Integração: Como integrar os vários componentes já existentes nos diversos ambientes? Como tratar com as diversas implicações envolvidas, tais como: confiabilidade, qualidade de serviço e segurança?
Pesquisas necessáriasPesquisas necessárias Task-driven ComputingTask-driven Computing
Capture of high-level user intentCapture of high-level user intent Suppression of low-level details from userSuppression of low-level details from user Intelligent suspend/resumeIntelligent suspend/resume Seamless transitions to alternative platforms and applicationsSeamless transitions to alternative platforms and applications Proactive interactions with userProactive interactions with user
Energy-aware AdaptationEnergy-aware Adaptation Dynamic change of application fidelity for reduced energy useDynamic change of application fidelity for reduced energy use Battery life extension to user-specified goalBattery life extension to user-specified goal Tools for mapping energy use to software structureTools for mapping energy use to software structure Graceful integration with hardware-level power managementGraceful integration with hardware-level power management Energy localityEnergy locality
Intelligent NetworkingIntelligent Networking Rich API for expressive QoS specificationsRich API for expressive QoS specifications Bidirectional notification capabilityBidirectional notification capability Proactive application and user notificationProactive application and user notification Decentralized coordination of corrective actionsDecentralized coordination of corrective actions Network weather serviceNetwork weather service
Resource OpportunismResource Opportunism Ability to “live off the land”Ability to “live off the land” Discovery of compute servers and data staging serversDiscovery of compute servers and data staging servers Anticipatory data staging to reduce entry latencyAnticipatory data staging to reduce entry latency Adaptive policies for local vs. remote executionAdaptive policies for local vs. remote execution
Speech Recognition,Speech Recognition,Language Translation,Language Translation,Augmented RealityAugmented Reality
Footprint reduction for mobile hardwareFootprint reduction for mobile hardware Multi-fidelity techniques for reduced resource usageMulti-fidelity techniques for reduced resource usage Offloading on compute serversOffloading on compute servers
Pesquisas necessáriasPesquisas necessárias Multimodal User InterfacesMultimodal User Interfaces
Hands-free operationHands-free operation Distraction minimizationDistraction minimization Speech-driven interfacesSpeech-driven interfaces Gesture recognitionGesture recognition Eye-trackingEye-tracking
Nomadic Data AccessNomadic Data Access Disconnected operationDisconnected operation Bandwidth adaptive, weakly-connected operationBandwidth adaptive, weakly-connected operation Transparent switching of overlay networksTransparent switching of overlay networks Conflict detection and resolutionConflict detection and resolution Robustness, reliability, rapid failoverRobustness, reliability, rapid failover
Wearable computersWearable computers Rapid prototypingRapid prototyping Design for wearabilityDesign for wearability User-centric designUser-centric design
User Interface AdaptabilityUser Interface Adaptability Multimodal input-outputMultimodal input-output Dynamic switching of modalityDynamic switching of modality Platform-specific considerationsPlatform-specific considerations Small-screen display techniquesSmall-screen display techniques
Data and Network AdaptabilityData and Network Adaptability API for application-aware adaptationAPI for application-aware adaptation Tolerance windows and asynchronous notificationTolerance windows and asynchronous notification Low-overhead resource monitoringLow-overhead resource monitoring Transcoding for fidelity changesTranscoding for fidelity changes Network QoSNetwork QoS
Software CompositionSoftware Composition Typed object managersTyped object managers Dynamic discovery of modulesDynamic discovery of modules
Pesquisas necessáriasPesquisas necessárias Proxies/AgentsProxies/Agents
Proactive notification and triggersProactive notification and triggers Mobile codeMobile code JavaJava
CollaborationCollaboration Virtual whiteboardsVirtual whiteboards Intelligent workspacesIntelligent workspaces
Wireless networkingWireless networking WaveLANWaveLAN BluetoothBluetooth InfraRedInfraRed Overlay networkingOverlay networking
Security and privacySecurity and privacy Caching trust rather than contentCaching trust rather than content Establishing trust in surrogatesEstablishing trust in surrogates Selective control of location informationSelective control of location information
User/Virtual Space InteractionUser/Virtual Space Interaction Interaction techniques for mobile usersInteraction techniques for mobile users Suite of interfaces with the Virtual Information Space (VIS)Suite of interfaces with the Virtual Information Space (VIS) Output modes for differentiating informationOutput modes for differentiating information Context sensitive computingContext sensitive computing Integrated system enabling users to run through sample scenarios that demonstrate our interaction conceptsIntegrated system enabling users to run through sample scenarios that demonstrate our interaction concepts
Evaluation Metrics and MethodologiesEvaluation Metrics and Methodologies Measures of user distractionMeasures of user distraction Benchmark problems for system adaptationBenchmark problems for system adaptation
AuraAura
Protótipo de Ambiente Integrado Protótipo de Ambiente Integrado para desenvolvimento da pesquisa para desenvolvimento da pesquisa em computação ubíqua.em computação ubíqua.
Plataforma para execução de Plataforma para execução de tarefas em ambientes variados.tarefas em ambientes variados.
Aura - ArquiteturaAura - Arquitetura
ArquiteturaArquitetura
Suppliers: Cada um dos serviços Suppliers: Cada um dos serviços abstratos dos quais as tarefas são abstratos dos quais as tarefas são compostas. Na prática, APIs de compostas. Na prática, APIs de encapsulamento para aplicações. encapsulamento para aplicações. Controlam as aplicações e Controlam as aplicações e informam ao EM da capacidade e informam ao EM da capacidade e disponibilidade de cada uma. disponibilidade de cada uma.
ArquiteturaArquitetura
Environment Manager: Gerencia a Environment Manager: Gerencia a disponibilidade de Suppliers, faz a disponibilidade de Suppliers, faz a comunicação com outras comunicação com outras instalações Aura, Escolhe qual é o instalações Aura, Escolhe qual é o Supplier mais apropriado para Supplier mais apropriado para atender a tarefa do usuário.atender a tarefa do usuário.
ArquiteturaArquitetura
Task Manager (Prism): Gerencia as Task Manager (Prism): Gerencia as tarefas do usuário. Recebe a tarefas do usuário. Recebe a interação direta do usuário quando interação direta do usuário quando não houver automação. não houver automação. Usuário vai para outro ambiente.Usuário vai para outro ambiente. Mudanças no ambiente (QoS).Mudanças no ambiente (QoS). Troca de tarefas.Troca de tarefas. Mudanças de contextoMudanças de contexto (ex: privacidade) (ex: privacidade)..
ArquiteturaArquitetura
Context Observer: Estruturas Context Observer: Estruturas opcionais de automação do opcionais de automação do ambiente, informam o Prism e o EM ambiente, informam o Prism e o EM de eventos no ambiente real.de eventos no ambiente real.
(Wireless APs, Leitores RFID, (Wireless APs, Leitores RFID, Leitores Cartões/Crachás, Leitores Leitores Cartões/Crachás, Leitores Biométricos, Catracas Ponto, etc).Biométricos, Catracas Ponto, etc).
Arquitetura / ExemploArquitetura / Exemplo