Seminário - Arquitetura de software para computação ubíqua
-
Upload
rubens-matos-junior -
Category
Documents
-
view
2.492 -
download
1
description
Transcript of Seminário - Arquitetura de software para computação ubíqua
Arquitetura de software para computação ubíqua
Rubens de Souza Matos Jr.
Arquitetura de software para computação ubíqua
Conceitos de computação ubíqua
Desafios principais dos softwares ubíquos Modelos existentes Problemas abertos Referências
Arquitetura de software para computação ubíqua
Conceitos de computação ubíqua Vislumbrada por Mark Weiser.
Designa a possibilidade de acesso ao ambiente
computacional independente da localização do
usuário.
Intimamente ligada à computação pervasiva: a
informática presente nos objetos mais triviais.
Sistemas que se adaptam aos mais diferentes
dispositivos e condições computacionais.
Arquitetura de software para computação ubíqua
Desafios principais dos sistemas ubíquos Muitos dos problemas comuns aos sistemas
distribuídos. Ex: escalabilidade,
heterogeneidade, integração e segurança.
Mobilidade.
Qualidade de software.
Consciência e gerência de contexto.
Invisibilidade.
Interface com o usuário: usabilidade.
Arquitetura de software para computação ubíqua
Desafios principais dos sistemas ubíquos Muitas preocupações para os projetistas,
desenvolvedores, etc.
É preciso ''esconder'' essa complexidade,
para os desenvolvedores, assim como para o
usuário.
Arquitetura de software para computação ubíqua
Modelos existentes Mudança de paradigma:
Modelo proposto por Guruduth Banavar (2000).
Um dispositivo é um portal, num espaço de dados e
aplicação. Não um repositório de software
customizado. Uma aplicação é um meio pelo qual o usuário realiza
uma tarefa. Explorar todas as capacidades do hardware
não deve ser prioritário. O ambiente computacional é o próprio espaço físico,
otimizado pelas informações. Não é virtual.
Arquitetura de software para computação ubíqua
Modelos existentes Divisão do ciclo de vida da aplicação em 3
partes: Tempo de projeto Tempo de carga Tempo de execução
Arquitetura de software para computação ubíqua
Modelos existentes Atividades do Tempo de projeto:
Modelo de programação Identificação dos elementos abstratos de
interação. Linguagem de descrição de serviço. Modelo baseado em tarefas e na navegação
entre as tarefas. Metodologia de desenvolvimento
Que tarefa o usuário quer realizar? Quais ações ele precisa tomar? De quais informações ele precisa pra fazer a
tarefa?
Arquitetura de software para computação ubíqua
Modelos existentes Atividades do Tempo de carga
Descoberta dinâmica.
Negociação de capacidades e requisitos.
Seleção, adaptação e composição da
apresentação.
Arquitetura de software para computação ubíqua
Modelos existentes Atividades do Tempo de execução
Monitoramento e redistribuição
Operação desconectada
Detecção e recuperação de falhas
(COSTA;GEYER,2006)
Arquitetura de software para computação ubíqua
Modelos existentes One.world (GRIMM,2004)
Serviços básicos do “núcleo” do sistema: Máquina virtual : JVM tem sido uma opção
comum. Tuplas: Armazenamento simplificado. Eventos assíncronos: notificação explícita
de uma mudança de contexto. Ambientes: Containers para cada aplicação
e seus respectivos dados.
Arquitetura de software para computação ubíqua
Problemas abertos Definição de padrões de engenharia do
software mais adequados MVC é usado em dispositivos móveis, mas...
Aumenta tamanho do código. Não muda o modelo da aplicação, limitando
a adaptabilidade. Tratamento de interfaces das mais variadas:
Wearable computing Toda gama de resoluções de tela, etc.