artigo 1 “one world: experiências com uma arquitetura de computação pervasiva” robert grimm...

47
Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça serviços que possibilitem ao usuário mover-se livremente pelo mundo físico, utilizando diversos dispositivos diferentes e podendo acessar informações de qualquer

Upload: maria-fernanda-cavalheiro-arantes

Post on 07-Apr-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Artigo 1“One World:

Experiências com uma arquitetura de computação pervasiva”

Robert GrimmNew York University

Seu objetivo é ser uma plataforma que forneça serviços que possibilitem ao usuário mover-se livremente pelo mundo físico, utilizando diversos dispositivos diferentes e podendo acessar informações de qualquer lugar.

Page 2: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Motivação

Facilitar o desenvolvimento de aplicações pervasivas.

Page 3: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Objetivos

Oferecer mobilidade física ao usuário, permitindo que as aplicações se adaptem de acordo com o dispositivo que esta sendo utilizado.

Diferentes aplicações e dispositivos funcionaram juntos sem limitar o usuário a poucas interações.

Prover um fácil compartilhamento de informação entre os usuários do sistema

Page 4: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Proposta Arquitetura comum para a criação de

aplicações pervasivas:Virtual MachineTuplasEventos assíncronosAmbientes

Page 5: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Visão geral

Fornece serviços comuns Destaque para dois serviços:

DiscoveryMigration

Page 6: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Discovery

Localiza recursos através de sua descrição.

Servidor eleito automaticamente por todos os dispositivos

Page 7: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Migração

Responsável por mover o ambiente entre os dispositivos

Ocorre de forma atômica

Page 8: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Critérios de Avalição

Completude

Complexidade

Performance

Utilidade

Page 9: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Aplicações

Serviços de replicação

Gerenciador de usuários e aplicações

Chat

Labscape

Page 10: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Labscape

Page 11: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Resultados

CompletudeFuncionou bem para todas as aplicações Facilita o controle e fluxo dos programas

ComplexidadeO tempo de desenvolvimento foi similar a um

ambiente normal

Page 12: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Resultados

PerformanceMuito boa nos testes realizadosEscalabilidade limitada em um dos testes

UtilidadeDesenvolvimento 2 x mais rápido no caso de

Labscape Resultou em aplicações mais robustas

Page 13: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Lições aprendidas

Êxitos

Aninhamentos são bons para compor aplicações

A migração facilita o desenvolvimento e reduz a complexidade das aplicações

Page 14: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Lições aprendidas

Espaço de usuário vs kernel

Bom para melhorar a segurança do sistema

Necessidade de uma ferramenta para converter bibliotecas existentes

Page 15: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Lições aprendidas

Características superestimadasComunicação clássica via sockets não

utilizada explicitamente Usou-se apenas eventos

Armazenamento baseado em Banco de Dados Garantias desnecessárias para algumas aplicações Degradou a performance

Page 16: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Lições aprendidas

Limitações

Implementação das tuplas como classes Java Melhor usar um modelo centrado em dados (XML)

Facilitar a comunicação com serviços Web Não baseados em eventos

Page 17: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Conclusão

Definir protocolos para comunicação de sistemas pervasivos e Web

Abordagem voltada para declaração ao invés de programação

Page 18: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Artigo 2“Scripting Your home”

Mirko Knoll1, TorbenWeis1, Andreas Ulbrich2

and Alexander Brändle3

1 Universit¨at Stuttgart, Universitätsstrasse 38, Stuttgart2 Technische Universit¨at Berlin, Einsteinufer 17, 10587 Berlin

3 Microsoft Research Cambridge

Seu objetivo é ser um framework de fácil utilização, para que tanto usuários casuais

quanto profissionais de TI consigam interagir com o sistema e criar aplicações

que gerenciem suas casas.

Page 19: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Motivação

Desenvolver um ambiente de fácil utilização e poderoso o suficiente para que usuários leigos consigam utilizá-lo e usuários experientes possam fazer o que querem.

Page 20: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Objetivos

Afastar a complexidade de linguagens de programação dos usuários inexperientes

Prover alternativas mais simples para a definição de scripts

Page 21: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Proposta Criar uma linguagem que abstraia a

complexidade de linguagens de programação

Disponibilizar comandos avançados como laços e desvios (if/then/else)

Page 22: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Modelos de programação

Linguagens de propósito geralExtremamente poderosasDetectam erros apenas depois que são

cometidos

Page 23: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Modelos de programação

Ferramentas para usuários finais

Programação por demonstração

Físico: usuário mostra ao computador o que deve ser feito (monta diagramas que são capturados pelo computador)

Macro: usuário grava ações, semelhante a macros utilizadas por diversos programas

Page 24: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Modelos de programação

Ferramentas para usuários finaisStoryboard

Descreve ações através de um conjunto de imagens

Limitada por não conseguir descrever eventos

Jigsaw Liga os dispositivos como quebra-cabeças Conecta a saída de um a entrada do outro

Page 25: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Modelos de programação

Linguagens de domínio específicoProgramação científica

Utilizada por um cientista de uma determinada áreaRobôs de brinquedo

Linguagem gráfica simples de usar Mais robusta que storyboards, jigsaw e macros

VRDK Linguagem gráfica de alto nível Semelhante as duas anteriores, porém em outro

domínio

Page 26: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

A Ferramenta

Criar scripts para casa

Uso de drag&drop ou escrita

Distribui os scripts para todos os dispositivos envolvidos

Page 27: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

E-Home Scripting Meio termo entre modelos de programação

complexos e os fáceis de usar

Baseia-se em cinco conceitos: Componentes Eventos Comandos Workflows Contexto

Page 28: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Componentes

Podem ser dispositivos ou serviços

Adicionam comandos e eventos próprios

Page 29: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Eventos

Emitidos e recebidos pelos componentes

Uma aplicação espera por eventos para executar

Page 30: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Comandos

Utilizados para controlar os dispositivos

São fornecidos ao VRDK pelo próprio dispositivo

Page 31: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Workflows Liga eventos e comandos

Utiliza estruturas avançadas Laços Condições (if/then/else) Processos Seleções

Usa eventos assíncronos para comunicar-se a outros workflows e processos

Page 32: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Contexto

Conjuto de locais, situações e/ou pessoas

Necessita de um servidor de contextos externo ao VRDK

Page 33: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Contexto

Fornece as seguintes informaçõesLocalização: associa funcionalidades a locais

Situações: se possível de detectar, então pode também ter funcionalidades associadas

Objetos físicos: fornece informações sobre localização e rastreamento de objetos, se disponível.

Page 34: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Arquitetura

Plug-ins: os dispositivos devem fornecer plug-ins para ser reconhecidos pelo VRDK

Interface com o usuário: permite a montagem de diagramas usando o mouse ou escrita manual (TabletPC)

Page 35: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Arquitetura

Interpretador de scriptsAvalia as expressões e executa o fluxo de

trabalhoPermite interagir com diversos dispositivos

através de plug-ins

Page 36: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Arquitetura

Geração do código

Diferentes linguagens, dependendo do dispositivo

Distribui o código Modelo mestre-escravo Modelo completamente descentralizado

Page 37: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Experiência

Avaliado em 4 feiras científicas (+500 pessoas)

Validou a interface de montagem dos diagramas

Uso de fórmulas causo problemas para metade das pessoasDevido a falta de conhecimento de

matemática, não pela ferramenta

Page 38: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Conclusão

Juntou diferentes dispositivos em uma mesma interface

Mostrou-se fácil de usar pelo público alvoProblemas encontrados não estavam

diretamente relacionados ao ambiente

Page 39: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Trabalhos Futuros

Implementação do comportamento de Macros

Integração a outras interfaces gráficas (como o Aero, no Windows Vista)

Convertê-lo para funcionar a partir de centrais multimídias.

Page 40: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Comparações

Page 41: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

One World

Middleware Fornece blocos de construção comuns

para diferentes aplicações Roda em diferentes dispositivos

Reconhece automaticamenteFacilita a troca de informações

Page 42: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

VRDK

Interface comum entre diferentes dispositivos

Permite a usuários leigos criarem programas

Objetiva facilidade de programação

Page 43: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Comparações

Possuem finalidades diferentesVRDK facilita a sua utilização

Usuários leigos ou profissionais de TIOne World facilita o desenvolvimento de

outras aplicações Desenvolvedores de sistemas pervasivos

Page 44: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Comparações

VRDK assume os dispositivos sempre presentes

One World possui protocolos para conectar e localizar os dispositivos

Page 45: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Comparações

VRDK utiliza plug-ins para se comunicar com os dispositivos

One World almeja ser executado por todos os dispositivos e facilita a comunicação entre eles

Page 46: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Comparações

A utilidade do VRDK está altamente voltada para seu objetivo: scripts para casas inteligentes (SmartHomes)

One World preocupa-se com ambientes gerais de computação pervasiva, com dispositivos e dados altamente dinâmicos

Page 47: Artigo 1 “One World: Experiências com uma arquitetura de computação pervasiva” Robert Grimm New York University Seu objetivo é ser uma plataforma que forneça

Notas

CritériosNotas

Artigo 1 Artigo 2

Motivação e estado da arte 5 4

Problemas a resolver e modelo 5 5

Resultados e comparação com trabalhos relacionados 3 3

Redação e formatação 3 5