Context: A Survey and Research Directions Universidade Federal de Pernambuco CIN – Centro de Informática Vaninha Vieira Orientadora: Ana Carolina Salgado.

Slides:



Advertisements
Apresentações semelhantes
Orientação a objetos identidade abstração classificação encapsulamento
Advertisements

A importância e o poder da informação.
José Claudio Vahl Júnior Janne Yukiko Yoshikawa Oeiras
Engenharia de Software
7130 – Adminstração de Sistemas de Informação
Redes de computadores I
(Unified Modeling Language)
Identificando requisitos
Projeto conceitual Mostra ao cliente exatamente o que o sistema fará
Engenharia de Software
Inteligência Artificial Alex F. V. Machado. Tecnologia de Processamento da Informação que envolve processos de raciocínio, aprendizado e percepção. Winston.
Centrado na arquitetura
Técnicas eTipos de Requisitos
Interação Homem-Máquina
Ontologia para Sistemas Configurarionais Urbanos
MODELO DE REFERÊNCIA OSI
Modelagem e simulação de sistemas
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
Engenharia de Software
Componentes: Jessica Rodrigues Carla Mattos Giovanna Dutra
Revisão de Conceitos Básicos Hardware (Parte 1)
Planejamento e Gerenciamento de Projetos
Autores Vanessa Gomes de Lima Ana Carolina Salgado 17/10/2012
Aluno: Lucas Bucci da Silveira Orientador: Carlos Roberto Lopes
Exame de Defesa de Mestrado
Sistemas Distribuídos
NBR ISO Diretrizes para planos de qualidade
MAS-ML Tool: Um Ambiente de Modelagem de Sistemas Multi-Agentes
Metodologias para construção de SMA
CoWS: Uma Abordagem de Escrita Colaborativa Multi-Síncrona usando Espaços de Tuplas para Ambientes Móveis Berthonio Lucena Flávio Rocha.
Referências: Booch, G. et al. The Unified Modeling Language User Guide
Software engineering, the software process and their support M.M. Lehman Apresentadora: Tarciana Dias da Silva.
UML – Engenharia de Software 1
Engenharia de Software
Hadautho Roberto Barros da Silva
Introdução ao aplicativo Lync da Windows Store Lync 2013.
Agentes Inteligentes e Sistemas Multi- agente (UD5) Construção de Sociedades de Agentes IST- 2004/2005.
RUP - Cap. 3 – Processo Dirigido por Caso de Uso
Processos do Design 27/09.
Requisitos de Software
Engenharia de Groupware: Desenvolvimento de Aplicações Colaborativas. Síntese FUKC, H. RAPOSO,A. B. GEROSA, M. A. Artigo apresentado em mini-curso do Congresso.
Integração de Ferramentas CASE
Plataforma para desenvolvimento de Aplicações baseadas em Ontologias para o projeto LAriisa Aluno: Taciano Pinheiro Orientador: Prof. Dr. Mauro Oliveira.
Controle de Acesso e Privacidade em Sistemas Sensíveis ao Contexto Carlos Eduardo Andrião.
Candidato: Lucas Santos de Oliveira Orientador: Marco Aurélio Gerosa
Engenharia de Software
Computação Sensível a Contexto Pesquisa desenvolvida pelo Georgia Institute of Technology.
Padrões de projeto M.Sc. Sílvio Bacalá Jr..
METHONTOLOGY Sandro Rautenberg
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.
CloudSim Um framework para modelagem e simulação de infraestrutura e serviços de Computação em Nuvem.
Serviços baseados em dispositivos pessoais móveis Seminários Taguspark Mobilidade 2005 Miguel Pardal 21 de Março de 2005.
Engenharia de Conhecimento
Engenharia de Software
Professora Michelle Luz
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Prof. Sidney Galeote. 2 www. prasabermais. com  Visão Geral sobre a dimensão de qualidade “performance”  Custo da qualidade  Como a performance deve.
Aula 02 de Eng. de Requisitos
1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados.
DESENVOLVIMENTO DE UM MODELO PARA SIMULAÇÃO DA DISTRIBUIÇÃO POPULACIONAL EM UMA REGIÃO URBANA DOUTORANDA: Christiane Wenck Nogueira ORIENTAÇÃO: Profa.
Soluções para universidades corporativas
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
TÉCNICAS DE ESTIMATIVAS
Lenylda Albuquerque ISO Processos de Ciclo de Vida de Software Universidade Federal de Pernambuco.
Técnicas e Tipos de Requisitos
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
Sincronização Lip Sync Sincronização cursor-voz Entre outras mídias.
Sistematizando Desafios de Pesquisa em Medicina Ubíqua Sérgio L. Rodrigues, Adenauer C. Yamin Universidade Católica de Pelotas - Pelotas/RS Programa de.
ONTOLOGIAS NO CONTROLE DA ADAPTAÇÃO AO CONTEXTO EM ESPAÇO UBÍQUO ONTOLOGIAS NO CONTROLE DA ADAPTAÇÃO AO CONTEXTO EM ESPAÇO UBÍQUO Nelsi Warken, Luiz A.
SENSIBILIDADE AO CONTEXTO NA COMPUTAÇÃO UBÍQUA UTILIZANDO WEB SEMÂNTICA Luthiano Venecian, Luis A. M. Palazzo, Adenauer C. Yamin Universidade Católica.
Transcrição da apresentação:

Context: A Survey and Research Directions Universidade Federal de Pernambuco CIN – Centro de Informática Vaninha Vieira Orientadora: Ana Carolina Salgado {vvs, Recife – PE – Brasil Outubro

Porque Contexto?

Context: A Survey and Research Directions : Out 8, Toda comunicação requer contexto  Nas mais diversas situações do mundo real, sempre fazemos uso de informações de contexto

Context: A Survey and Research Directions : Out 8, Interações “pessoa-pessoa”  Contexto amplia a qualidade da conversação ajudando a compreender certas situações, ações ou eventos Xuxa?

Context: A Survey and Research Directions : Out 8, Interações “pessoa-pessoa”  Contexto amplia a qualidade da conversação ajudando a compreender certas situações, ações ou eventos Abrir uma janela?

Context: A Survey and Research Directions : Out 8, Interações “pessoa-pessoa”  Contexto direciona as nossas ações e comportamentos

Context: A Survey and Research Directions : Out 8, Interações “pessoa-computador”  As aplicações convencionais, em geral, não levam em consideração o contexto atual do usuário Xuxa?

Context: A Survey and Research Directions : Out 8, Interações “pessoa-computador”  Utilizando-se o contexto pode-se aumentar as formas de troca de informações entre o usuário e o computador  A identificação do dispositivo usado pelo usuário pode permitir à aplicação habilitar/desabilitar determinadas funcionalidades, limitando ou expandindo recursos  Conhecendo a localização do usuário pode-se oferecer informações relativas ao seu local atual. Ex.: GPS

Context: A Survey and Research Directions : Out 8, Em Resumo...  Contexto ajuda a Ampliar a comunicação entre pessoas e entre pessoa e computador Diminuir ambiguidades e conflitos Aumentar a expressividade dos diálogos Ampliar os serviços oferecidos por uma aplicação Aumentar a satisfação do usuário Tornar as aplicações mais amigáveis, flexíveis, adaptáveis

Formalizando Contexto como um Conceito Computacional

Context: A Survey and Research Directions : Out 8, Diversas Áreas da Computação – n Definições  Interface Homem Máquina (HCI) “Contexto é qualquer informação que pode ser utilizada para caracterizar e interpretar a situação na qual um usuário interage com uma aplicação em um dado momento” [Brezillion, 2002]  Aplicações context-aware “Contexto é qualquer informação que caracteriza a situação de uma entidade. Entidade é uma pessoa, lugar ou objeto considerado relevante para a interação entre uma pessoa e uma aplicação” [Dey et al, 2001]  Inteligência Artificial “Contexto é o que restringe a solução de um problema, sem interferir nele explicitamente” [Brezillion, 2003]

Context: A Survey and Research Directions : Out 8, ? ? ? Surge uma nova categoria de aplicações Aplicações context-aware Ou, aplicações “cientes de contexto” ou aplicações “sensíveis a contexto” “Um sistema é considerado sensível a contexto se ele utiliza o contexto de uso para fornecer informações/serviços relevantes para o usuário” [Dey et al, 2001]?? ?

Context: A Survey and Research Directions : Out 8, Categorias de Informações de Contexto  Contexto primário (baixo nível) Identidade (quem é o usuário, de que grupo faz parte) Espacial (localização, orientação, velocidade) Temporal (dia, hora, estação do ano) Ambiente (temperatura, qualidade do ar, luz, som) Disponibilidade de recursos (bateria, largura de banda) Medidas fisiológicas (pressão sanguínea, batimento cardíaco, atividade muscular, tom de voz) Recursos próximos (dispositivos acessíveis, hosts) Atividade (falando, lendo, caminhando, correndo, escrevendo)  Contexto complexo (alto nível) Atividade atual (etapa de um processo, passo em um workflow) Situações sociais complexas (com quem está, pessoas próximas)  em uma reunião, ministrando aula, apresentação em workshop,... Agendas, calendários

Context: A Survey and Research Directions : Out 8, Informações de Contexto – 5Ws  Who Informações relativas a pessoas  When Informações temporais correntes e históricas  Where Informações sobre o ambiente  What Informações sobre atividades sendo desenvolvidas pelo usuário difícil detectar automaticamente  Why Informações sobre motivos associados às ações dos usuários mais difícil ainda

Contexto em Ação Exemplos de Aplicações Clássicas

Context: A Survey and Research Directions : Out 8, Microsoft Windows e Office  Help sensível ao contexto  Menu e desktop contextual (frequência de acesso)  Ajuste automático do idioma  Área de transferência “inteligente”  Agente Assistente “inteligente”

Context: A Survey and Research Directions : Out 8, Active Badge System -Olivetti Research Lab (1992)  Permite localizar pessoas em um escritório  As pessoas usam crachás que transmitem sinais IR (os active badges)  Uma rede de sensores espalhada pelo prédio coleta os sinais os quais são enviados a um servidor central  O recepcionista localiza onde a pessoa está e direciona a ligação para um ramal apropriado  Outros experimentos Direcionamento automático das chamadas Identificação de pessoas próximas  Privacidade Inicialmente um problema  Informações de contexto: Localização Pessoas próximas, Tempo

Context: A Survey and Research Directions : Out 8, The ParcTab System - Xerox Palo Alto (1992)   É um dispositivo móvel similar a um palm, conectado a um servidor central através de uma rede baseada em infra-vermelhos  Funciona como um assistente de escritório pessoal móvel  Dezenas de aplicações desenvolvidas para esse dispositivo  Alguns serviços oferecidos: Apresentar informações sobre o local onde o usuário está Auxiliar o usuário a encontrar um recurso próximo (ex. impressora) Localização de outras pessoas  Informações de contexto: Localização, Dispositivos próximos, Tempo

Context: A Survey and Research Directions : Out 8, The Context Toolkit - Georgia Tech (1999)    Tese de Doutorado de Anind Dey  Conjunto de classes desenvolvidas para facilitar a criação de aplicações sensíveis ao contexto  Feito em Java  Utiliza o mesmo conceito de widgets para GUI’s  Diversas aplicações de exemplo construídas para validação

Context: A Survey and Research Directions : Out 8, InOut Board - Georgia Tech (1999)  Aplicação Java que mostra se um usuário está ou não no escritório  Obtém informações sobre funcionários que entram e saem do prédio  Feito com a ajuda de iButtons  Informações de contexto: Identificação, tempo

Context: A Survey and Research Directions : Out 8, DUMMBO - Georgia Tech (1999)  Dynamic Ubiquitous Mobile Meeting Board  Usa iButtons para detectar a presença de pessoas em uma reunião  Quando duas pessoas indicam sua presença no iButton, o DUMMBO assume o início de uma reunião e começa a coletar o áudio e o que foi escrito no quadro  Informações de contexto: Identificação, localização do quadro, tempo de chegada e saída

Context: A Survey and Research Directions : Out 8, Conference Assistant - Georgia Tech (1999)  Auxilia participantes em conferências  Ao se inscrever na conferência o participante informa dados pessoais, áreas de interesse e colegas com interesses similares que estarão na conferência e recebe o Conference Assistant para instalar em seu notebook ou PDA  Funcionalidades: Exibe os eventos de interesse do usuário na conferência Ao entrar em uma sala onde está ocorrendo uma apresentação, ele exibe informações sobre o palestrante, e o material da apresentação (quando disponível), e permite que o usuário faça anotações  Informações de contexto: Localização, tempo, atividade em uma dada localização e preferências do usuário

Context: A Survey and Research Directions : Out 8, Análise das aplicações context-aware disponíveis  A maioria usa apenas uns poucos valores de contexto Localização Identificação Tempo  Em geral, são protótipos de pesquisa (não-comerciais)  Principal tipo de aplicação Serviços baseados em localização (guias, assistentes)  Dificuldade em obter e processar informações de contexto  Complexidade em desenvolver essas aplicações  Tendem a consumir muitos recursos (monitoramento contínuo e/ou cálculos e análises complexas)  Alto custo de desenvolvimento

Desafios na implementação de Aplicações Context-Aware

Context: A Survey and Research Directions : Out 8, Muitos são os desafios...  Captura (Aquisição)  Representação  Processamento  Segurança e privacidade  “Tunning”

Context: A Survey and Research Directions : Out 8, Automática Aquisição de Contexto Manual Identificação das informações de contexto a serem consideradas

Context: A Survey and Research Directions : Out 8,  Se tudo deve ser compreendido dentro de um contexto, como podemos compreender o contexto? Uma criança para falar precisa de uma referência  O contexto deve ser sólido o suficiente para não ser modificado com a chegada de novas informações  Definir que informação está em um determinado contexto  Múltiplos contextos Representação do Contexto

Context: A Survey and Research Directions : Out 8,  Armazenar o contexto junto às informações convencionais da aplicação?  Necessidade de um formato de representação comum do contexto que permita A transferência de informações de contexto Que diferentes aplicações utilizem a mesma informação de contexto Representação do Contexto

Context: A Survey and Research Directions : Out 8,  Pares chave-valor  Modelo orientado a objetos  Baseado em lógica : fatos/regras  Grafos contextuais [Brézillon, 1999]  Ontologia  Web Semântica (RDF)  Extensões à UML Alguns formatos de representação de contexto

Context: A Survey and Research Directions : Out 8,  Alguma “inteligência” deve ser utilizada para processar a informação de contexto e deduzir seu significado  Contexto geralmente é indireto ou é dedutível pela combinação de diferentes partes de informações de contexto  Provavelmente o mais desafiador!!  Exemplo: Se três pessoas se encontram em uma certa sala do escritório em um determinado horário, isso pode significar que é a reunião semanal estratégica  Agentes Inteligentes Processamento do Contexto

Context: A Survey and Research Directions : Out 8, Segurança e privacidade  Para aquisição do contexto é necessário a monitoração das ações dos usuários  Isso pode violar regras de privacidade  Garantia de segurança no uso dessas informações  Usuário deve ser capaz de intervir no que deseja ser monitorado

Context: A Survey and Research Directions : Out 8, “Tunning” das aplicações context-aware  Contexto consome muitos recursos da aplicação  Tendência a diminuir o desempenho  Necessário um ajuste fino Da granularidade das informações de contexto Da necessidade X satisfação do usuário em relação às reações do sistema ao contexto

Context: A Survey and Research Directions : Out 8, Outras Questões em Aplicações Context-Aware  Soluções reutilizáveis Frameworks  Framework Conceitual de Contexto em Groupware [Rosa et al, 2003] Toolkits  Context Toolkit [Dey et al, 2001] Componentes Middleware  Infra-estrutura Centralizado X Distribuído Computação móvel, ubíqua Sistemas multi-agentes

Context: A Survey and Research Directions : Out 8, Uma Classificação dos Trabalhos sobre Contexto  Estudo do Conceito de Contexto Formalização: definição, representação, modelagem, processamento, inferência de modo genérico  Inteligência Artificial, Banco de Dados  Estudo de Aplicações Context-Aware Definições, captura, processamento Ferramentas de apoio à construção de aplicações  Sistemas Distribuídos, HCI, Engenharia de Software  Utilização de Contexto Identificação, captura, representação, processamento e uso de informações de contexto em domínio específico  CSCW/CSCL, Computação Móvel e Ubíqua, HCI

Contexto no CIn

Context: A Survey and Research Directions : Out 8, Quem está trabalhando com Contexto  IA Patricia Tedesco  BD Ana Carolina Salgado  Sandra Siebra  Vaninha Vieira  Rosalie Belian  HCI Alex Sandro Gomes  Genesio  Sistemas Distribuídos Carlos Ferraz Nelson Rosa  Engenharia de Software (???)

Context: A Survey and Research Directions : Out 8, Projetos de Pesquisa  Projeto Integra Usando Contexto em Ambientes de Integração de Informações  Rosalie Belian e Ana Carolina Salgado  Projeto “Colabora” Usando Contexto em Ambientes de Aprendizado Colaborativo  Sandra Siebra, Ana Carolina Salgado e Patrícia Tedesco Modelagem de Aplicações Colaborativas Ciente de Contexto  Vaninha Vieira, Ana Carolina Salgado  HCI Integração entre Análise de Contexto e Engenharia de Requisitos  Genesio e Alex Sandro Gomes

Context: A Survey and Research Directions : Out 8, Projeto CAPES/COFECUB  Colaboração Contextual: Métodos e Ferramentas para o Apoio ao Trabalho em Equipe Contexto aplicado a CSCW e a CSCL  Parceria entre CIn / UFPE  Coordenadora: Ana Carolina Salgado NCE / UFRJ  Coordenador: Marcos Borges LIP6 / Paris VI / França  Coordenador: Patrick Brézillon  Status: Submetido e aguardando aprovação

Alguns Projetos de Pesquisa Envolvendo Contexto

Context: A Survey and Research Directions : Out 8, No Brasil  NCE/UFRJ Coordenador: Prof. Marcos Borges URL: Projeto: Chord  Inserindo Contexto em Groupware (M.Sc) Parceria com LIP6/Paris VI/França  USP / São Carlos Coordenadora: Profa. Maria da Graça Pimentel URL: Projeto: INCA/SERVE  Desenvolvimento de Aplicações Ciente de Contexto Parceria com Georgia Institute of Technology – EUA

Context: A Survey and Research Directions : Out 8, No Resto do Mundo  Patrick Brézillon - LIP6 / Paris VI, França Projeto: SYSDEF  Modelagem e representação de contexto  Gregory Abowd - Georgia Tech, USA Parceria projeto INCA/SERVE (USP-São Carlos)  Computação context-aware  Wolfgang Prinz – GMD, Alemanha Cooperative Media Lab  Contexto e Awareness em aplicações colaborativas

Quer saber mais?

Context: A Survey and Research Directions : Out 8, Referências  CONTEXT: International web site  Link para muitos papers sobre context-awareness  Coleção do Brézillon de Referências sobre contexto  Conferências específicas sobre contexto International and Interdisciplinary Conference on Modeling and Using Context [ Modeling and Retrieval of Context [ International Workshop on Software Aspects of Context [

Context: A Survey and Research Directions : Out 8, Mais Referências  Borges, M.R.S., Brézillon, P., Pino, J.A., Pomerol, J.C. “Bringing Context to CSCW”, Proceedings of the 8th International Conference on Computer Supported Cooperative Work in Design. CSCWD´2004, Xiamen, China, May  Siebra, S.A., Tedesco, P.C.A.R., Salgado, A.C., Brézillon, P., A Context-based Analytical Environment for CSCL, submetido ao CRIWG 2004 (2004).  Brézillon P., “Context in problem solving: A survey”. The Knowledge Engineering Review, vol. 14, n°1, 1999, pp  Dey, A. K., 2001, "Understanding and Using Context". In: accessed in May  Huang, Q., 2002, Supporting Context-Aware Computing in Ad Hoc Mobile Environments. Technical Report WUCS-02-36, Washington University, Department of Computer Science and Engineering, St. Louis, Missouri.  Rosa, M. G. P., Borges, M. R. S., Santoro, F. M., 2003, "A Conceptual Framework for Analyzing the Use of Context in Groupware". In: Proc. of CRIWG'03, v. LNCS 2806, pp , Springer-Verlag Berlin, Heidelberg.

” “A seleção natural gerou seres vivos capazes de se adaptar ao contexto (os que não se adaptam, não sobrevivem)” O mesmo tende a acontecer com o software (?) Frase de efeito

Context: A Survey and Research Directions : Out 8,  Formas de Utilização Aplicação apenas apresenta informação de contexto Aplicação executa serviços a partir do contexto Aplicação transforma contexto em informação  Ex.: anotações coletadas durante uma reunião Uso de Contexto

Context: A Survey and Research Directions : Out 8, Framework Conceitual de Contexto em Groupware  Um framework conceitual é representado por quadros conceituais, cujo objetivo é fornecer diretrizes para pesquisa e desenvolvimento  Proposto por Rosa et al (2003)  Objetiva a identificação e a classificação dos elementos contextuais mais comuns nas ferramentas de groupware

Context: A Survey and Research Directions : Out 8,  Similaridade Semântica  Aplicações colaborativas Contexto do usuário, do grupo, das tarefas sendo desempenhadas  Serviços Inteligentes GPS, Recomendação, Filtragem, etc.  Engenharia de Software Auxiliar o engenheiro de domínio ou de aplicação Busca de componentes Medidas de desempenho dos desenvolvedores Personal Software Process Outros ????? Alguns exemplos de uso de Contexto

Context: A Survey and Research Directions : Out 8,  Representação do contexto em vários níveis Individual Tarefa Equipe  Não processar apenas o contexto individual, mas também o contexto do grupo  Contexto do grupo envolve todo o conhecimento relativo ao grupo composição do grupo, regras, papéis, objetivos, estratégias, procedimentos de coordenação Exemplo: Contexto em Groupware (Borges et al, 2004)

Context: A Survey and Research Directions : Out 8, Processo para promover contexto 1) mapeamento de eventos a contextos de origem 2) mapeamento de usuários a contextos de trabalho, a partir de suas atividades atuais (contexto mais apropriado) 3) Verificação das preferências dos usuários

Context: A Survey and Research Directions : Out 8, Uma representação de contexto

Context: A Survey and Research Directions : Out 8, Outras Aplicações de Contexto  Contexto aplicado a Web Services Prover clientes com um comportamento customizado e personalizado [Keidl & Kemper, 2004]  Contexto aplicado a Web Services Prover clientes com um comportamento customizado e personalizado [Keidl & Kemper, 2004]

Context: A Survey and Research Directions : Out 8, Modelos de contexto em colaboração  Analisa a situação atual em que diferentes usuários se encontram  Compara a situação com as informações disponíveis  Provê o usuário com informações mais relevantes naquela situação  Estimula contatos, troca de informações e ajuda mútua entre os usuários em situações similares