• Nenhum resultado encontrado

Where,What,Whye How: Uma abordagem prática para desenvolvimento de ambientes interativos

N/A
N/A
Protected

Academic year: 2021

Share "Where,What,Whye How: Uma abordagem prática para desenvolvimento de ambientes interativos"

Copied!
186
0
0

Texto

(1)

UMA ABORDAGEM PRÁTICA PARA

DESENVOLVIMENTO DE AMBIENTES

INTERATIVOS INTERNOS

Tese apresentada ao Programa Multiinstitucional de Pós-Graduação em Ciência da Computação da Uni-versidade Federal da Bahia, UniUni-versidade Estadual de Feira de Santana e Universidade Salvador, como requisito parcial para obtenção do grau de Doutor em Ciência da Computação.

Orientador: Dr. Celso Alberto Saibel Santos

Salvador 2016

(2)

Sistema de Bibliotecas da UFBA

Rehem Neto, Almerindo Nascimento

Uma Abordagem Prática para Desenvolvimento de Ambientes Interativos Internos. / Al-merindo Nascimento Rehem Neto. – Salvador, 2016.

186 f. : il. Inclui anexos

Orientador: Prof. Dr. Celso Alberto Saibel Santos.

Tese (doutorado) - Universidade Federal da Bahia. Instituto de Matemática. Uni-versidade Salvador. UniUni-versidade Estadual de Feira de Santana, 2016

1. Interaction Human-Computer - IHC. 2. Model for interactive enviroments. 3. In-teractive Environment. 4. Standardization. 5. User Centered Design. 6. Multimedia. 7. Framework. I. Santos, Celso Alberto Saibel. II Universidade Federal da Bahia. Instituto de Matemática. III Universidade Salvador. IV. Universidade Estadual de Feira de Santana. V. Título.

(3)

TERMO DE APROVAÇÃO

ALMERINDO NASCIMENTO REHEM NETO

UMA ABORDAGEM PRÁTICA PARA DESENVOLVIMENTO DE AMBIENTE INTERATIVOS INTERNOS

Esta tese foi julgada adequada à obtenção do tí-tulo de Doutor em Ciência da Computação e apro-vada em sua forma final pelo Programa Multi-institucional de Pós-Graduação em Ciência da Com-putação da UFBA-UEFS-UNIFACS.

Salvador, 25 de Abril de 2016

Professor e orientador Celso Alberto Saibel Santos, Ph.D. Universidade Federal da Bahia

Professor Rudinei Goularte, Dr. Universidade de São Paulo - USP

Professora Ivani Lúcia de Santana , Dra. Universidade Federal da Bahia - UFBA

Professora Vaninha Vieira, Dra. Universidade Federal da Bahia - UFBA

Professor Antônio Lopes Apolinário Junior, Dr. Universidade Federal da Bahia - UFBA

(4)
(5)

mostrarem que é possível encontrar força e fé em momentos que não se enxerga quaisquer tipo de possibilidades de ajuda. Almerindo N. Rehem Neto

(6)
(7)

Primeiramente gostaria de agradecer a meu professor, orientador e amigo Celso Alberto Saibel Santos pelo irrestrito apoio e confiança no meu trabalho. Aos amigos João Andrade, Claudio Silva e Tarcísio Valois pelo incentivo, apoio e orientação profissional.

Também sou muito grato aos meus alunos e amigos Lucas Aragão, Clebeson Canuto e Jesimon Barreto, que dedicaram tempo e confiança no meu trabalho durante esta jornada.

Ao professor e amigo Eduardo Freire, pelo apoio, confiança e tempo gasto nas sugestões e revisões dos trabalhos. À Estevão Bissoli pela cooperação nos trabalhos e publicações no IEEE em Hong-Kong.

Ao irmão de espírito Carlos Alberto Fraga Pimentel pelo apoio, incentivo, força e ajuda através de seu conhecimento e luz.

Eu também sou muito grato ao CNPq/CAPES pelo apoio financeiro a este trabalho.

Agradeço a Deus por toda a força e esperança que tem me mostrado em momentos difíceis. Aos meus irmãos Liana Dávila Rehem, Rodrigo Dávila Rehem, Rita de Cássia Dávila Bacelar, Urbano Emílio Dávila, pelo apoio e amizade.

Aos meus pais Delson Raimundo Sampaio Rehem e Amália Bastos Dávila Rehem, a quem dedico este trabalho, que mesmo em momentos difíceis estavam sempre incentivando a conti-nuar.

Por fim, agradeço a todos da minha família, em especial a Silvana Vieira Lima Rehem por ter aguentado tanto tempo me apoiando e por ter abdicado de tantas coisas importantes para me incentivar a continuar esta jornada. E, à Maria Eduarda Vieira Lima Rehem, minha filha, que teve por muitas vezes, que compreender minha falta de tempo durante esta jornada.

Salvador, 25 de Abril de 2016 Almerindo Nascimento Rehem Neto

(8)
(9)

“Há homens que lutam um dia e são bons. Há outros que lutam um ano e são melhores. Há os que lutam muitos anos e são muito bons. Porém, há os que lutam toda a vida. Esses são os imprescindíveis. ”

(10)
(11)

O advento do Kinect desencadeou o crescimento de aplicações voltadas à interação natural, reconhecimento de gestos e ambientes interativos. Com o tempo, percebeu-se que as soluções de interfaces baseadas nesses novos tipos de interação cresciam de maneira rápida e desor-denada, sem qualquer preocupação com a formalização de etapas de desenvolvimento. Além disso, questões relativas à forma de representar estas interações, ao contexto onde elas ocorrem e qual o comportamento do ambiente em resposta a estas interações tornaram-se relevantes. Neste sentido, esse trabalho traz como contribuição uma abordagem prática para o desenvolvi-mento de ambientes interativos através da abordagem Where-What-Why-How, ou simplesmente 3W1H. A solução teve como base uma compilação de tarefas comumente executadas neste tipo de desenvolvimento e relatadas em diversos trabalhos correlatos. A solução parte de três ques-tões principais: (I) quais reações devem ser disparadas no ambiente interativo; (II) quais as situações que disparam a execução destas reações no ambiente; e (III) qual o comportamento esperado uma vez que estas situações sejam reconhecidas. O comportamento esperado do ambi-ente pode ser visto como um conjunto de estados que definem o controle das reações e mudanças dentro do ambiente real ou virtual. A transição entre estes estados comportamentais é feita a partir da composição entre eventos associados, por exemplo, ao reconhecimento de gestos do usuário quando interage com o sistema. A validação da proposta é feita através de alguns estu-dos de casos completos, que contemplam todas as fases de desenvolvimento e a implementação física do ambiente interativo. Outra contribuição importante neste trabalho, foi a construção do framework Touch The Air - TTair, utilizado para agilizar a implementação e prototipagem dos ambientes interativos. Todos os estudos de caso foram construídos com o auxílio do TTAir. Palavras-chave: Modelos para Ambientes Interativos, Ambientes Interativos, Padronização, Design Centrado no Usuário, Interação Natural, Arquitetura Orientada a Eventos, Desenvolvi-mento de Software.

(12)
(13)

The advent of Kinect triggered the growth of applications related to natural interaction, ges-ture recognition and interactive environments. In the course of time, it was realized that the solutions of interfaces based on these new types of interaction grew quickly and disorderly manner, without any concern for the formalization of development stages. Moreover, questions about how to represent these interactions, the context in which they occur and what environmen-tal behavior in response to these interactions become relevant. In this sense, this work presents as contribution a pratical approach to the development of interactive environments through the Where-What-Why and How model.The solution is based on a compilation of commonly per-formed tasks in this kind of development and reported in several related works. The solution is based on three main issues: (I) what reactions must be performed in the interactive environ-ment; (II) the situations that trigger the execution of these reactions in this environenviron-ment; and (III) what is the expected behavior since these situations are recognized. The expected beha-vior is a set of states defining the management of the reactions and changes in the real or virtual environment. The transition between these behavioral states is made from the composition of events associated with, for example, the gesture recognition when the user interacts with the system.The validation of proposal is taken through some complete Case Studies that include all development steps and physical implementation of interactive environment. Another important contribution of this work was conception of TTAir framework. This framework was used to reduce the time of implementation and prototyping of interactive environments.

Keywords: Model for interactive enviroments, Interactive Environment, Standardization, User Centered Design, Natural Interaction, Event-Driven, Software Development.

(14)
(15)

Sumário xv

Lista de Figuras xvii

Lista de Tabelas xix

Lista de Códigos-Fonte xxi

Capítulo 1—Introdução 1

1.1 Motivações e Problemáticas . . . 3

1.2 Objetivos e Contribuições . . . 5

1.3 Estrutura da Tese . . . 6

1.4 Resumo . . . 7

Capítulo 2—Mapeamento Sistemático 9 2.1 Tarefas Comuns no Desenvolvimento de Ambiente Interativos Indoor: Um Ma-peamento Sistemático . . . 12

2.2 Método de Pesquisa Aplicado . . . 13

2.2.1 Planejamento . . . 13

2.2.1.1 Objetivo . . . 13

2.2.1.2 Definição dos Critérios de Seleção das Fontes . . . 14

2.2.1.3 Identificação da Pesquisa . . . 14

2.2.1.4 Critérios de Inclusão e Exclusão . . . 16

2.3 Execução do Protocolo . . . 17 2.3.1 Extração de Dados . . . 21 2.4 Resultados . . . 21 2.4.1 Fase de Captura . . . 24 2.4.2 Fase de Processamento . . . 26 2.4.3 Fase Ação . . . 27

2.4.4 Caracterização e Análise Crítica . . . 28

2.5 Discussão . . . 35

Capítulo 3—Abordagem 3W1H para o Desenvolvimento de Ambientes Interativos 39 3.1 Conceitos da abordagem 3W1H . . . 39

3.2 O Processo de Desenvolvimento . . . 42

3.2.1 Fase 1: Especificar Ambiente . . . 43

3.2.1.1 Identificar os Objetos em cena . . . 44 xv

(16)

3.2.1.1.1 Objetos Passivos . . . 45

3.2.1.1.2 Objetos Ativos . . . 47

3.2.1.2 Ambiente destino dos objetos e a topologia física . . . 47

3.2.1.2.1 Detalhamento do Processo da Fase 1 . . . 49

3.2.2 Fase 2: Identificar as Reações . . . 50

3.2.3 Fase 3: Identificar as Interações . . . 51

3.2.4 Fase 4: Compor Behavior Frames . . . 53

3.2.5 Fase 5: Compor Behavior Chain . . . 54

3.2.5.1 Processo da Fase 5 . . . 56

3.2.6 Fase 6: Implementar Ambiente Interativo . . . 58

3.2.7 Fase 7: Monitorar a Expectativa . . . 60

3.3 Considerações Finais . . . 61

Capítulo 4—Touch The Air Framework 63 4.1 A arquitetura TTAir . . . 66

4.2 Data Access Module . . . 67

4.2.1 Exemplo de Uso . . . 70 4.3 Presentation Module . . . 70 4.3.1 Layer Module . . . 70 4.3.1.1 Exemplo de Uso . . . 74 4.3.2 GUI Module . . . 75 4.4 Proccess Module . . . 76 4.4.1 Recognizer Process . . . 76

4.4.1.1 Modelos Pose Recognize e Pose Match . . . 77

4.4.1.2 Outros Modelos de Comparação . . . 79

4.5 Action Controller Module . . . 79

4.5.1 Exemplo de Uso . . . 80 4.6 Behavior Module . . . 81 4.6.1 Configuração por XML . . . 83 4.6.1.1 TTAirInteractionType . . . 84 4.6.1.2 TTAirActionType . . . 85 4.6.1.3 TTAirBehaviorFrameType e TTAirEventType . . . 86 4.6.1.4 TTAirExpectancyType . . . 87 4.6.1.5 BehaviorChainType e TTAirExpectancyTransitionType . . . 88 4.6.1.6 BehaviorType . . . 89 4.7 Exemplos de uso . . . 90

4.7.1 Visualização do skeleton tracking junto com o RGB . . . 91

4.7.2 TTAir Button . . . 92

4.8 Considerações Finais . . . 94

Capítulo 5—Estudos de Caso 97 5.1 TTAirTV: Um exemplo de TV Interativa . . . 98

5.1.1 Fase 1: Especificação do Ambiente . . . 98

5.1.2 Fase 2: Identificando as Reações . . . 99

5.1.3 Fase 3: Identificando as Interações . . . 100

5.1.4 Fase 4: Compor Behavior Frames . . . 102

(17)

5.1.6 Fase 6: Implementar o Ambiente Interativo . . . 106

5.1.7 Fase 7: Monitorar Expectativas . . . 107

5.2 TTAirLAMP - Interruptor Virtual . . . 107

5.2.1 Fase 1: Especificação do Ambiente . . . 108

5.2.2 Fase 2: Identificando as Reações . . . 109

5.2.3 Fase 3: Identificando as Interações . . . 109

5.2.4 Fase 4: Compor Behavior Frames . . . 110

5.2.5 Fase 5: Compor Behavior Chain . . . 110

5.2.6 Fase 6: Implementar o Ambiente Interativo . . . 112

5.3 TTAir House . . . 113

5.3.1 Concepção da TTAir House . . . 113

5.4 Ambiente Interativo com Efeitos Multisensoriais . . . 118

5.4.1 Fase 1: Especificação do Ambiente . . . 118

5.4.2 Fase 2: Identificando as Reações . . . 120

5.4.3 Fase 3: Identificando as Interações . . . 120

5.4.4 Fase 4: Compor Behavior Frames . . . 121

5.4.5 Fase 5: Compor Behavior Chain . . . 121

5.4.6 Fase 6: Implementar o Ambiente Interativo . . . 123

5.5 Avaliação da abordagem 3W1H . . . 127

5.5.1 Metodologia . . . 128

5.5.2 Análise dos Resultados . . . 130

5.6 Considerações Finais . . . 132 Capítulo 6—Conclusão 133 6.1 Contribuições . . . 135 6.2 Publicações . . . 135 6.3 Limitações . . . 137 6.4 Trabalhos Futuros . . . 138 Referências Bibliográficas 139

Apêndices

Apêndice A—TTAir Builder: IDE WEB para os arquivos XML 151 A.1 Preenchendo as Actions e Interactions . . . 152

A.2 Criando o conjunto de Behavior Frames . . . 152

A.3 Criando a Behavior Chain, os contextos e suas transições . . . 153

A.4 Considerações Finais . . . 156

Apêndice B—Texto e Formulário utilizados na avaliação da abordagem 3W1H 157 B.1 Estudo de Caso para Avaliação . . . 157

B.2 Questionário de análise de aceitação para abordagem 3W1H . . . 158

B.2.1 Utilidade Percebida (Perceived Usefulness − PU) . . . 159

(18)
(19)

2.1 Evolução do número de publicações por fonte, objeto de estudo e ano . . . 17

2.2 Áreas-chave de publicações e quantidade de artigos. . . 18

2.3 Quantidade de publicações por ano e por tipo . . . 20

2.4 Quantidade de publicações por ano e mapa de radar das principais contribuições 22 2.5 Tipos dos sensores utilizados em trabalhos relacionados à categoria Aplica-ção/Estudo de Caso. . . 22

2.6 Distribuição das categorias Captura, Processamento e Ação . . . 23

2.7 Quantidade de publicações por ano versus tipo de sensores utilizados . . . 25

2.8 Resumo da distribuição dos tipos de processamento versus sensores de captura 26 2.9 Resumo das quantidades de publicações relativas às dimensões: Contribuição Principal, Captura, Processamento e Ações. . . 29

2.10 a) Representação visual do fluxo de tarefas dividido em: Data Access, Proces-sing, and Action; b) Modelo Comando e Controle de Lawnson; e, c) Compara-ção do modelo de Lawnson [1] com o modelo de fluxo de tarefas encontrado. . 35

3.1 Fases do desenvolvimento de ambientes interativos. . . 42

3.2 Processo de desenvolvimento de ambiente interativo. . . 43

3.3 Espaço interativo Josevende . . . 45

3.4 Croqui do cenário, objetos e suas conexões físicas. . . 48

3.5 Topologia Espaço Interativo Josevende . . . 49

3.6 Processo para a Fase 01 - Identificação do Ambiente. . . 50

3.7 Processo para propor interações ao ambiente. . . 52

3.8 Processo da composição da Behavior Chain. . . 56

3.9 Os contextos e seus Behavior Frames. . . 57

3.10 Diagrama de Estado da Fase 5. . . 58

3.11 Diagrama de Caso de Uso com um alto nível de abstração. . . 59

3.12 Diagrama de Classes com um alto nível de abstração. . . 59

4.1 Visão geral da arquitetura do framework Touch The Air. . . 66

4.2 Diagrama com as principais classes do módulo de Acesso a Dados do fra-mework Touch The Air. . . 68

4.3 Exemplos de visualização de todas as Layers disponíveis na camada de apre-sentação. . . 71

4.4 Diagrama ilustrando as relações das Classes LayerManager,ALayer, AKinectU-serStreamLayere AKinectStreamLayer . . . 72

4.5 Diagrama com as principais classes do Layer Module do framework Touch The Air. . . 73

4.6 Resultado da execução do Trecho de Código 4.2. Utilização da Classe LayerU-serRGBpara detecção de usuário em cena . . . 74

4.7 Widgetssendo exibidos em ambiente visual misto, ilustrando os eventos OnFo-cuse OnClick em diferentes tipos de botões. . . 76

(20)

4.8 Etapas da camada de processamento, utilizada para reconhecimento de poses

de um usuário final. . . 78

4.9 Representação, através de coordenadas polares, de um segmento resultante da captura que representa um osso. . . 79

4.10 Principais classes do módulo de ações. . . 80

4.11 Diagrama de Classes do framework Touch The Air. . . 82

4.12 Estrutura do Arquivo XML Schema do comportamento do ambiente. . . 84

4.13 Representação visual do tipo TTAirInteractionType. . . 84

4.14 Representação visual do tipo TTAirActionType. . . 85

4.15 Representação visual do tipo TTAirActionType. . . 86

4.16 Representação visual do tipo TTAirExpectancyType. . . 87

4.17 Representação visual do tipo TTAirBehaviorChainType. . . 88

4.18 Exemplo de XML com todos os elementos necessários para a configuração do ambiente. . . 90

4.19 Todo o código necessário para visualizar o skeleton tracking junto com sensor RGB e, ao lado, o resultado de sua execução. . . 92

4.20 Execução da aplicação utilizando a biblioteca TTAirButton. Na esquerda o bo-tão é exibido em seu estado inicial. No meio, o bobo-tão foi selecionado. Na direita, o botão é clicado. . . 93

5.1 Sala interativa com uma TV, Kinect, computador, ícone de navegação, um mo-nitor, emissor infravermelho e interações capturadas pelo Kinect. . . 98

5.2 ID e descrição de todas as reações mapeadas para o estudo de caso da TV interativa 99 5.3 Participantes escolhendo interações para ligar, desligar, aumentar e reduzir vo-lume da TV. . . 100

5.4 Utilização dos gestos por funcionalidades da TV. . . 100

5.5 Os 38 gestos mais sugeridos para acessar as funcionalidades listadas na Tabela 5.2.101 5.6 Representação visual da Behavior Chain e os contextos necessários a TV Inte-rativa. . . 105

5.7 Diagrama de Caso de Uso da TV interativa controlada por gestos. . . 106

5.8 Circuito para emitir sinais infravermelhos e o resultado final com o usuário controlando a TV com gestos. . . 106

5.9 Resumo da avaliação dos Behavior Frames . . . 107

5.10 Croqui do ambiente TTAirLamp exibindo todos os objetos, suas disposições em cena e o fluxo da comunicação dos dados. . . 108

5.11 Cadeia de comportamento do TTAirLamp. . . 111

5.12 Diagrama de Caso de Uso do TTAirLamp. . . 112

5.13 Resultado final do TTAirLAMP em execução. . . 113

5.14 1)Croqui da maquete e seus objetos ativos. 2) Croqui de todo o cenário do ambiente. . . 114

5.15 Maquete de uma casa com quatro cômodos . . . 114

5.16 Comparação do comportamento do ambiente. Esta imagem ilustra os diagramas das Behavior Chain´s e os trechos XML que foram modificados. . . 117

5.17 Usuário controlando a TV da maquete através de gestos manuais. . . 117

5.18 Personagem controlando a TV da maquete através de cliques na TV virtual. . . 118

5.19 Em cima, o croqui do ambiente com as disposições dos objetos. Em baixo, uma tabela descritiva de todos os objetos encontrados . . . 119

(21)

5.20 Composição das regras semânticas de comportamento e os três níveis de

expec-tativas no cenário proposto. [2] . . . 122

5.21 Diagrama de estados do cenário, representando os níveis de expectativas e as transições entre elas. [2] . . . 122

5.22 Cenário previsto para o ambiente com efeitos multissensoriais. [2, 3] . . . 124

5.23 Arquitetura da implementação do ambiente com efeitos multissensoriais . . . . 126

5.24 Ambiente de teste e seus componentes. . . 126

5.25 Alfabeto de interações utilizado na avaliação da 3W1H . . . 128

5.26 Reações para controlar a TV do quarto interativo . . . 129

5.27 Requisitos percebidos no modelo preliminar do grupo ”A”. . . 130

5.28 Resumo da comparação dos dois grupos de participantes na utilização da meto-dologia proposta. . . 131

A.1 Tela inicial do TTAir Builder. . . 152

A.2 Tela de criação do conjunto de Behavior Frames . . . 153

A.3 Tela de criação da Behavior Chains . . . 154

A.4 Tela de gerenciamento da Behavior Chain. . . 154

A.5 Imagem gerada pelo TTAir após a concepção do XML de comportamento Beha-vior Chains. . . 155

B.1 Alfabeto de interações utilizado na avaliação da 3W1H . . . 158

(22)
(23)

1.1 Frequência de atividades comuns nos trabalhos citados. . . 4 2.1 Relação de trabalhos e suas características relevantes agrupadas por etapa do

processo de construção . . . 11 2.2 Fontes de pesquisa e suas expressões de busca. . . 15 2.3 Prioridade de exclusão. . . 18 2.4 Quantitativo de trabalhos selecionados por etapa. . . 20 2.5 Características extraídas dos artigos pesquisados na Seção 2.4.1 . . . 25 2.6 Características extraídas dos artigos científicos na Fase de Processamento. . . . 27 2.7 Características extraídas dos artigos científicos na Fase Ação. . . 28 2.8 Outras estatísticas de características extraída dos artigos científicos. . . 31 3.1 Layout de Tabela apresentada como resultado final da Fase 01. . . 50 3.2 Layout de Tabela apresentada como resultado final da Fase 02. . . 51 3.3 Layout de Tabela apresentada como resultado final da Fase 03. . . 52 3.4 Layout de tabela apresentada como resultado final da Fase 04. . . 53 3.5 Layout de tabela complementar apresentada como resultado final da Fase 04. . 54 3.6 Tabela apresentada como resultado final da Fase 05. . . 57 3.7 Tabela apresentada como resultado final da Fase 05. . . 57 4.1 Tabela com métodos da Classe TTAirDevice . . . 69 4.2 Tabela com métodos da Classe DeviceManager . . . 69 5.1 Tabela com os objetos necessários para o ambiente da TV Interativa. . . 99 5.2 Tabela com as reações levantadas para o ambiente da TV interativa . . . 100 5.3 Gestos mais utilizados por funcionalidade. . . 101 5.4 Tabela com as interações levantadas para o ambiente da TV Interativa . . . 102 5.5 Descrição dos BehaviorFrames para a TV . . . 103 5.6 Todos os Behavior Frames da TV Interativa . . . 103 5.7 Atributos para funcionamento dos Behavior Frames . . . 104 5.8 Contextos da TV Interativa . . . 104 5.9 Tabela com todas as transições para a TV Interativa . . . 105 5.10 Objetos pertencentes ao cenário . . . 109 5.11 Tabela sugerida na fase 2 da abordagem 3W1H. . . 109 5.12 Interações pertencentes ao cenário TTAirLamp. . . 110 5.13 Behavior Frames do TTAirLamp . . . 110 5.14 Atributos dos Behavior Frames do TTAirLamp . . . 110 5.15 Contextos do TTAirLamp . . . 111 5.16 Transições para a TV Interativa . . . 111 5.17 Detalhamento de todos os objetos pertencentes ao cenário proposto no TTAirHouse.

. . . 115 xxiii

(24)

5.18 Tabela sugerida na Fase 2 da abordagem 3W1H ilustra as reações de todos os objetos ativos da maquete. . . 115 5.19 Interações utilizadas nos exemplos do TTAirHouse. . . 116 5.20 Tabela sugerida na Fase 2 da abordagem 3W1H ilustra as reações de todos os

objetos ativos. . . 120 5.21 Interações utilizadas no exemplo Multi-Sensory Effects to Interactive

Environ-ments. . . 121 5.22 Tabela resultados da avaliação do questionário respondido pelo grupo B. . . 131

(25)

4.1 Trecho de Código do método getStream. Este método recebe como parâmetro o tipo do sensor que se deseja conectar e retorna a stream de dados correspondente ao sensor do dispositivo. Os tipos de sensores possíveis são: RGB,DEPTH e IR 70 4.2 Trecho de Código de aplicação exibindo uma LayerUserRGB. A aplicação

uti-liza a LayerManager para criar uma camada visual de detecção de usuário, sendo esta camada como visível, e exibir em um container JFrame. . . 74 4.3 Trecho de Código de implementação de uma ação. Ao ser executada, será

uti-lizada a camada de acesso a dados para escrever na porta serial o valor 2. Esta classe é utilizada no estudo de caso da casa interativa. Este exemplo necessita do Arduíno para ler a porta serial e desligar a lâmpada do ambiente. . . 81 4.4 Trecho de Código XML exibindo instância do schema do elemento interaction 85 4.5 Trecho de Código XML exibindo um exemplo da instância do schema do

ele-mento action . . . 86 4.6 Trecho de Código XML exibindo um exemplo da instância do schema do

ele-mento BehaviorFrame . . . 86 4.7 Trecho de Código XML exibindo um exemplo da instância do schema do

ele-mento TTAirExpectancyType . . . 87 4.8 Trecho de Código XML exibindo um exemplo da instância do schema do

ele-mento TTAirBehaviorChainType. . . 88 4.9 Trecho do log do comportamento do framework exibindo momentos em que

ocorreram as interações esperadas e a mudança de estado do ambiente. . . 89 4.10 Trecho de código que extrai dados do sensor RGB do Kinect. . . 91 4.11 Trecho de código exemplificando a implementação de uma ação . . . 92 4.12 Trecho de código do TTAirButton para criar e associar uma ação ao estado do

botão. . . 92 5.1 Trecho de código XML descrevendo o comportamento para o ambiente. . . 123 5.2 Trecho de código XML, com as anotações no padrão MPEG-V, para a reação

ACT07 . . . 125

(26)
(27)

1

Este capítulo apresenta alguns conceitos introdutórios referentes a este trabalho. O seu principal foco é descrever as motivações e problemáticas relacionadas ao tema, bem como os objetivos gerais e específicos que norteiam esta tese.

INTRODUÇÃO

A Interação Humano-Computador (IHC) [4] é domínio multidisciplinar que envolve áreas como a computação, psicologia e linguística, dentre outras. O conhecimento sobre as limi-tações da capacidade humana, restrições e evoluções das tecnologias (em termos de tipos de dispositivos, modalidades e poder de processamento) e do contexto deve ser levado em conta para oferecer aos usuários uma modo mais natural de interagir com plataformas computacio-nais, com objetivo de fazer com que as pessoas manipulem uma máquina sem perceber qual(is) artefato(s) é (são) utilizado(s) e sem necessariamente aprender um novo vocabulário correspon-dente ao conjunto de instruções desta interface. Uma das principais motivações da área de IHC é melhorar a adaptação dos sistemas computacionais às necessidades do usuário [5]. É exata-mente neste sentido que caminham as chamadas interfaces de interação natural. Neste mesmo sentido caminha a Computação Ubíqua [6], que tem o objetivo de tornar a interação do homem com o computador imperceptível para o usuário, de maneira que as pessoas não percebam que estão enviando comandos ao computador, mas se sintam como se estivessem em um processo de comunicação, conversando com alguém.

O primeiro passo para uma interação natural é utilizar a forma mais primitiva de interagir com algum ser humano. Por exemplo, fala, gestos, presença no ambiente ou até mesmo o movi-mento dos olhos, deixando, dessa forma, sem utilização as interfaces comuns, como o teclado e o mouse. O outro passo importante seria aplicar a ideia da computação sensível ao contexto [7], que tornaria possível uma adaptação das formas de comunicação levando em conta o contexto no qual ela ocorre. De fato, a mudança de contexto nesses ambientes pode representar uma mudança no significado da comunicação humano-computador. Logo, em ambientes interativos, as interfaces naturais e o contexto fazem parte de seu alicerce[7].

Neste trabalho, ambientes interativos, ou simplesmente AINTs, são entendidos como am-bientes internos, com espaços físicos delimitados, que reagem a interações de diversas fontes,

(28)

como, por exemplo, comandos de voz, movimentos das mãos, presença de usuários, etc. Salas interativas, teatros interativos, cenários com automação residencial, são alguns exemplos desses ambientes. A detecção e interpretação das interações dependem de análises e contextualizações extremamente rápidas dos sinais capturados do ambiente, normalmente utilizando agentes que percebem o estado do ambiente através de sensores, processam esses dados por meio de técnicas de IA e atuam de alguma maneira sobre o meio.

Para Heckel [8], a interface deve procurar reproduzir a linguagem natural do usuário de computador ou da máquina, tentando prover o uso de palavras e expressões conhecidas, den-tro daquele contexto, respeitando o vocabulário do usuário. Esta tentativa terá seus reflexos na redução do uso da memória e na diminuição do esforço cognitivo do usuário e, consequente-mente, influirá numa interação mais simples, agradável e natural. No entanto, a facilidade de utilização do ambiente está diretamente relacionada com a compreensão do contexto em que o usuário se encontra, uma vez que, em interações face a face, a percepção de eventos ocorre naturalmente pelos nossos sentidos como audição e visão. Porém, quando existe a mediação do computador todas essas informações precisam ser capturadas e transmitidas de maneira que não influenciem o contexto ou significado dessas informações [9, 10].

Em ambientes interativos, perceber significa ter conhecimento e compreender os eventos que ocorrem no meio. Os eventos que ocorrem no ambiente vão desde movimentos físicos de um indivíduo, como entrada e saída de uma sala até situações mais complexas como analisar expressões faciais. Estes ambientes exigem a mediação do computador para a captura e o pro-cessamento desses eventos de interação. Além disso, o contexto e o cenário desses ambientes auxiliam na imersão e percepção dos usuários e reduzem o esforço cognitivo e aprendizado de utilização, com o objetivo de fazer com que as interações com o meio sejam tão naturais quanto as interações face a face [9, 10].

Dentro do processo de percepção e aprendizado, Ciolfi [11] enfatiza a importância dos ele-mentos presentes no cenário e a maneira que este afeta a forma de percepção e utilização dos usuários. Neste mesmo sentido, Domingues[12, 13] ressalta a importância do cenário e suas instalações físicas para que o espectador ou usuário penetre no ambiente, apropriando-se do es-paço arquitetônico, incluindo-se entre os elementos que o compõem, aumentando sua imersão e percepção do ambiente. A característica principal desses ambientes é esperar por uma ação do usuário para acionar/modificar e construir o processo de comunicação entre o usuário e o ambiente.

Os sistemas tradicionais reagem às solicitações conforme informações fornecidas explici-tamente pelos usuários. Já os sistemas sensíveis ao contexto1, tipicamente presentes em ambi-entes interativos, consideram, além das informações fornecidas explicitamente pelos usuários, informações percebidas por meio do monitoramento do ambiente em que o usuário se

encon-1O termo “sensível ao contexto”, neste trabalho é considerado mais fiel ao aspecto “perceber+reagir” típicos

de sistemas que utiliza contexto para mudar o comportamento, adaptando os serviços e as informações que dispo-nibiliza.[9]

(29)

tra, tanto físico quanto virtual. Estas informações obtidas, explicitamente ou não, constituem o contexto. E, após o contexto identificado, os sistemas podem modificar seu comportamento para oferecer serviços e informações mais adequados às necessidades atuais do usuário [9].

Diante dos desafios impostos pelo constante crescimento dos ambientes interativos, como nas áreas de automação residencial, domótica, teatros interativos e pela ascensão da importân-cia de aspectos relevantes como o cenário, o contexto, as interações que exijam pouco esforço cognitivo, mostra-se pertinente um processo, uma arquitetura e a implementação de uma infra-estrutura adequada para a concepção desses ambientes. Tomando como base a relevância de estudos nesta área, o foco desta tese está voltado para a concepção de um modelo de autoria de ambientes interativos e na construção de uma arquitetura para implementação e sustentação de sistemas voltados para estes ambientes.

1.1 MOTIVAÇÕES E PROBLEMÁTICAS

Monitorar o ambiente e obter informações dos usuários por meio de componentes compu-tacionais, ampliado, muitas vezes, pela diversidade de tipos de sensores e fabricantes distintos, sempre foi um desafio [14, 15]. As limitações tecnológicas, a falta de padronização e o alto custo desses componentes represavam o crescimento em escala de pesquisas que envolvessem captura/reconhecimento de eventos de interações dos usuários em um ambiente interativo. A evolução dessas tecnologias para captura de dados do usuário e do contexto no qual ele está inserido, criou novos paradigmas para a IHC e UBICOMP. A partir de 2010, as pesquisas relacionadas a estes domínios ganharam um impulso extra com a popularização dos sensores RGB-D (Red, Green, Blue, Depth), em particular aqueles oriundos da plataforma Kinect. O fato é que a popularização desses sensores RGB-D, associada a grande quantidade de ferramentas de implementação disponíveis (OpenNI, KinectSKD, OpenKinect) tem gerado um crescimento rápido e desordenado de soluções, muitas vezes com tarefas repetitivas e sem padronização, para auxiliar a concepção e o desenvolvimento desses ambientes interativos [16].

Ao longo dos anos, diversos trabalhos [17–26] relatam pesquisas sobre a aplicação dos sen-sores, similares ao Kinect, utilizados como entrada de dados em ambientes interativos. Na tentativa de entender o processo de construção desses ambientes, foi observado o “modus-operandi”dos trabalhos selecionados. Em linhas gerais, as pesquisas propuseram algum tipo de processamento nos dados (em geral, imagens), obtidos a partir dos sensores disponíveis na-quela plataforma. Em sua maioria, é reconhecido um objeto, um gesto, uma localização, dentre outros, por meio dos dados processados. Quando o reconhecimento do padrão é realizado, al-guma ação é disparada, mudando o estado do ambiente e fornecendo um retorno (feedback) ao usuário final de que seu comando foi reconhecido. Os trabalhos que fugiram ao reconhecimento de algum tipo de padrão estão relacionados também ao processamento de dados dos sensores [22, 23]. Porém, nestes últimos trabalhos o foco está na melhoria do desempenho e da acurácia das informações obtidas, ou no suporte a novas formas de interação entre o usuário final e o

(30)

am-biente. E, em todos eles, é possível identificar um conjunto de tarefas comumente executadas no processo de construção do ambiente interativo. Estas tarefas podem ser organizadas em três categorias que agrupam por similaridade as atividades mais comuns dos desenvolvedores. São elas: Acesso a Dados, Processamento e Ação.Um maior aprofundamento sobre este assunto será visto no Capítulo 2.

Tabela 1.1. Quadro que exibe a frequência de atividades comuns nos trabalhos citados. As atividades são classificadas em três categorias. São elas: (i)Acesso a Dados: atividades relacionadas a conexão e captura de dados de sensores;(ii)Processamento: atividades relacionadas ao processamento das in-formações obtidas (extração de pontos representativos/detecção/reconhecimento/segmentação) e; (iii) Ação: Execução de atividades no mundo real ou virtual, geralmente causadas por algum evento.

A Tabela 1.1 mostra a presença de cada grupo de tarefas e sua relação com os trabalhos cien-tíficos que utilizem sensores RGB-D no período de 2010 a 2013. Na figura, é possível perceber que todos os trabalhos necessitam executar tarefas de acesso a dados e tarefas de processa-mento dessas informações. Em alguns dos trabalhos a existência das atividades relacionadas à categoria Ação não ficou clara. Porém, na maioria deles, foi percebida a existência de tarefas responsáveis por alterar o estado ou comportamento do ambiente interativo.

Um dos trabalhos de vanguarda, na época, em reconhecimento de interações do usuário com o ambiente, sem que o mesmo use qualquer tipo de sensor acoplado ao corpo (ideia oposta à chamada computação vestível), foi apresentado por Pinhanez [27] em sua tese de doutorado. O trabalho não só forneceu importantes conceitos nessa área, mas também os colocou em prá-tica através da implementação de ambientes interativos reais de forma pioneira. Dentre estes ambientes, pode ser destacado um projeto de peça teatral ”It/I” que visava verificar se um per-sonagem gerador de ações em um palco poderia ter seus gestos reconhecidos por um sistema computacional. Isso mantendo a eficácia de reconhecimento do sistema computacional em um enredo longo e considerado complexo para máquinas de reconhecimento.

Tanto o projeto ”It/I” de Pinhanez [27] quanto os trabalhos anteriormente citados, refle-tiam indícios de um “modus operandi” de atividades relacionadas com a criação e concepção de ambientes interativos. Isto é: (i) recepção de dados por meio de sensores diversos. (ii) pro-cessamento de dados obtidos com o objetivo de reconhecer os eventos de interações do usuário com o ambiente; e, (iii) uma ação a ser executada que, nesses casos, tinha como alvo o ambiente virtual (projeção de objetos no cenário) e também o ambiente real (como seleção de iluminação

(31)

diferente para uma determinada ação ou cena). Estas constatações até parecem óbvias, entre-tanto, diante de tantas tarefas comumente repetidas não existia indícios de uma arquitetura ou processo para reaproveitar/guiar o trabalho ou implementações já concebidas por outros.

Esses fatores aumentam a necessidade da formalização do comportamento desses ambientes e, atrelado a isso, a existência de um processo padronizado para construção do projeto do ambi-ente que contemplem as fases de análise e projeto do ciclo de vida do software e que envolvam aspectos como: (i) a importância do cenário, suas instalações físicas [12, 13] e os componen-tes computacionais necessários para captura de interações do usuário; (ii) a compreensão do contexto em que o usuário se encontra para facilitar a utilização desses ambientes [9] e (iii) a redução de esforço cognitivo para a interação humano-computador [8].

Desta maneira, levando em consideração o processo de construção de ambientes interativos e os aspectos anteriormente mencionados, esta tese visa responder à seguinte questão:

• É possível apresentar uma abordagem prática para concepção e desenvolvimento dos am-bientes interativos internos?

Em consequência, algumas outras questões relacionadas com a resposta da questão princi-pal, que vão da concepção à implementação de ambientes interativos, precisam ser respondidas. São elas:

i) Como abordar de maneira estruturada/sequencial os projetos que dependem da interação natural dos usuários para serem executados?

ii) Como simplificar o processo de desenvolvimento para sistemas focados em interações naturais de usuário (gestos ou comandos de voz, etc.)?

iii) Existe realmente um fluxo de atividades comumente executadas na implementação dos ambientes interativos?

iv) Como melhor reaproveitar esforços relacionados às tarefas e implementações dos ambi-entes interativos?

Tais questões são melhores evidenciadas através do mapeamento sistemático, descrito no Capítulo 2

1.2 OBJETIVOS E CONTRIBUIÇÕES

Diante dos problemas e motivações apresentados na seção 1.1 o principal objetivo desta tese é propor uma abordagem que possibilite a construção de ambientes interativos, de maneira sistemática, aplicando os conceitos de interação/reação e de comportamento estudados pelo Behaviorismo [28], na sua concepção, e o conceito de processamento orientado a eventos, na sua implementação.

(32)

As principais contribuições do trabalho são dois modelos, um de processo e o outro arqui-tetural, com conceitos e implementações necessários para evolução gradativa da concepção e prototipagem desses ambientes.

O Modelo de Processo apresenta uma nova abordagem prática para concepção e desenvol-vimento dos ambientes interativos internos. A proposta divide o processo em sete etapas bem definidas que procuram guiar o projetista/desenvolvedor a lembrar e levantar todos os requisitos necessários, levando em consideração os aspectos importantes já levantados na seção 1.1, como: (i) a importância do cenário, suas instalações físicas [12, 13] e os componentes computacionais necessários para captura de interações do usuário; (ii) a compreensão do contexto2 em que o usuário se encontra para facilitar a utilização desses ambientes [9] e (iii) a redução de esforço cognitivo para a interação humano-computador [8]. Ao final de todo o fluxo é possível mapear o comportamento desejado do ambiente, incluindo todos os seus contextos e as possíveis intera-ções em cada um deles. Este comportamento é representado através de um diagrama de estados adaptado para o problema.

O Modelo Arquitetural abrange a maioria das etapas proposta no processo de desenvolvi-mento aqui definido. Segue os conceitos de uma arquitetura orientada a eventos para receber e gerenciar os eventos de interações do ambiente. Porém, introduz as questões relacionadas ao contexto em que o ambiente se encontra no momento e propõe uma gerência, baseada no contexto, dos eventos de interações esperados. Além disso, apresenta requisitos necessários para a construção das cadeias de comportamentos, baseadas no sistema Estímulo/Resposta, ge-radas a partir da execução de todos os passos do modelo de processo proposto. Este Modelo Arquitetural, apresenta conceitos de camadas com tarefas semelhantes, pois agrupa as tarefas similares que estão relacionadas com: o acesso aos dispositivos, o processamento de dados e a atuação para alterar o estado do meio. As camadas foram extraídas a partir de estudos das atividades comumente executadas em diversos trabalhos relacionados com o tema da pesquisa. Para a implementação deste modelo, foi utilizada a linguagem Java e construído um framework com um conjunto de bibliotecas e funções predefinidas que auxiliam ao desenvolvedor na im-plementação/prototipação e reuso de código nos ambientes interativos.

1.3 ESTRUTURA DA TESE

Esta tese está estruturada em seis capítulos. Neste capítulo, foram apresentadas as moti-vações, as principais discussões referentes ao tema e os objetivos e contribuições do estudo. O Capítulo 2 discute alguns importantes trabalhos relacionados. Identifica etapas e atividades comuns em um processo de construção e tipos de sensores comumente utilizados para cada tipo de atividade. Este levantamento é embasado por meio de uma pesquisa sistemática. Por fim, introduz os principais conceitos utilizados neste trabalho. O Capítulo 3 apresenta formalização

2”Contexto é qualquer informação que pode ser utilizada para caracterizar a situação de uma entidade. Uma

entidade é uma pessoa, lugar, ou objeto que é considerado relevante para a interação entre um usuário e uma aplicação, incluindo o usuário e a aplicação em si.” [29]

(33)

e explica os estágios de desenvolvimento dos ambientes interativos. O Capítulo 4 apresenta um frameworkque agiliza a concepção e prototipagem de aplicações voltadas para ambientes inte-rativos. Além disso, é apresentada uma interface WEB que permite a criação dos arquivos XML de comportamento, necessários para configuração e execução do ambiente interativo através do framework TTAir. O Capítulo 5 demonstra resultados efetivos de alguns estudos de casos de ambientes interativos que foram concebidos através do auxílio da metodologia (Capítulo 3) e do framework TTAir(Capítulo 4). Por fim, o Capítulo 6, com as considerações finais, que conclui a pesquisa e mostra algumas direções para futuros trabalhos.

1.4 RESUMO

Os recursos tecnológicos atualmente disponíveis exigem metodologias inovadoras para cons-trução das soluções na área de IHC e Ubicomp. Na seção 1.1 são mostrados indícios de soluções [17–26] que envolva ambientes interativos, como realidade mista, realidade aumentada, ou sim-plesmente sistemas que quebrem o paradigma das interfaces comuns como o teclado e mouse, que não possuem um processo de desenvolvimento bem definido.

Muitas discussões em torno do assunto estão sendo promovidas pela comunidade cientí-fica, principalmente no que se refere a aspectos que devem ser levados em consideração na concepção desses ambientes (vide Capítulo 2). Três desses aspectos foram levantados como ne-cessários aos ambientes interativos. São eles: (i) a importância do cenário, suas instalações físi-cas [12,13] e os componentes computacionais necessários para captura de interações do usuário; (ii) a compreensão do contexto em que o usuário se encontra para facilitar a utilização desses ambientes [9] e (iii) a redução de esforço cognitivo para a interação humano-computador [8]. Além disso, não foi encontrada nenhuma ferramenta de autoria e prototipagem bem estabele-cida, nem sequer um processo sequencial para nortear a concepção e produção desses artefatos necessários para criação desses ambientes.

Dentro da área de IHC/Ubicomp, uma das barreiras a ser vencida é representar computa-cionalmente o comportamento desejado no sistema para que a comunicação seja mais efetiva possível. Assim, a criação e padronização de um processo de desenvolvimento que facilite a captura dos componentes da comunicação entre o sistema e o usuário (como por exemplo, os estímulos, as ações e os comportamentos) se torna uma importante contribuição.

Desta forma, na tentativa de contribuir com um novo paradigma de concepção de sistemas, relacionados com ambientes interativos, esta tese pretende oferecer subsídios para capturar e gerenciar os componentes de interações entre o usuário e o computador, bem como possibilitar formas de representar computacionalmente tais comportamentos e interações, inspirados pelos conceitos de estímulos-resposta estudados pelo Behaviorismo.

Com a abordagem proposta, pretende-se reduzir o tempo de concepção de ambientes inte-rativos, mitigar erros e ampliar as possibilidades de construções de ambientes mais adequados aos objetivos perseguidos pelas áreas de IHC e Ubicomp, tornando as interações com o meio,

(34)

mais naturais possíveis para o usuário. Esta pesquisa mescla diversos conceitos e constatações práticas, mapeia as etapas necessárias na concepção desses ambientes, detalha o processo a ser seguido e propõe entregáveis mínimos em cada uma dessas etapas. E, por fim, coloca em prática toda a abordagem através de experimentos realizados com profissionais de mercado e mostra casos reais de aplicação da metodologia e do framework construído.

(35)

2

Este capítulo trata dos principais conceitos que embasaram a motivação desta pesquisa. Nele, são abordadas as lacunas no processo de construção e identificadas as atividades com características comuns por meio de uma revisão de literatura e um mapeamento sistemático nos anos de2004 a março de 2015. Ao final, é sugerida a pesquisa de uma metodologia/processo prático para a construção de ambientes interativos indoor e um meio de facilitar a implementação, o reuso de código e a prototipação de aplicações voltadas para esses ambientes. Estas duas sugestões fornecem os alicerces para os Capítulos 3 e 4, respectivamente.

MAPEAMENTO SISTEMÁTICO

Um dos grandes desafios para os analistas de projeto é concentrar os esforços nos aspectos mais importantes da concepção sem perder o foco nos inúmeros detalhes da implementação. Projetos orientados a eventos que dependem da interação, por exemplo, são projetos centra-dos no usuário que necessitam de uma abordagem estruturada/sequencial para serem execu-tados [30]. Por outro lado, não é possível detectar uma sequência ou metodologia formal na maneira em que o processo de construção dos ambientes interativos são apresentados, como, por exemplo, nos trabalhos [31–37]. Embora estes artigos estejam relacionados a ambientes interativos, em geral os autores deixam em aberto uma série de questões importantes, tais como os critérios de escolha dos sensores, as conexões dos sensores com os sistemas, os objetos que irão compor o cenário, as situações a serem reconhecidas e as reações a serem executadas pelo ambiente em resposta às situações reconhecidas.

Desta forma, a utilização de modelos que possam nortear a captura de aspectos relevantes e o incremento da complexidade das implementações durante a análise se tornam importantes. Os trabalhos de Puerta [30], Jung et. al [38], Kopriva [39] e Fleer et al. [33] apresentam algumas soluções neste sentido.

Puerta [30] apresenta uma preocupação quanto à necessidade de uma abordagem estrutu-rada para executar projetos orientados a eventos centrados no usuário. No paradigma Mobi-D apresentado por Puerta [30], uma série de modelos declarativos, como user-task, dialog e pre-sentation, estão interrelacionados para fornecer uma representação formal de um design de interface interativa. Isto contrasta com o model-based systems, que usa apenas um ou dois modelos de forma isolada e não tem noção explícita quanto à organização de seus diversos ele-mentos estruturais. Puerta [30] define um ciclo de desenvolvimento de projeto com os seguintes

(36)

passos: elicitação das tarefas, modelagem do domínio, modelagem das tarefas, integração das tarefas de domínio, projeto de apresentação e diálogo e teste de usuário. Embora tenha sido am-plamente utilizado pela comunidade, alguns aspectos considerados importantes em ambientes interativos, como a composição do cenário e a possibilidade do uso de diferentes modalidades de interações, não são abordados. A interação na época era feita através de caixas de edição e botões nas janelas de trabalho do sistema.

Jung et. al [38] propõe uma abordagem através do modelo BIM para desenvolver um mo-delo virtual em que os usuários possam interagir com as tecnologias inteligentes e configurar o layout conforme suas preferências. Ao invés de adicionar a tecnologia inteligente ao final do desenho espacial, os autores propõem utilizá-la durante a construção do projeto. Um sistema CAD-Computer Aided Design baseado em tarefas nas quais os usuários finais podem interagir com o ambiente e objetos inteligentes para responder às atividades domésticas típicas. Embora este modelo se aprofunde na composição do cenário e na interatividade do ambiente, aspectos relacionados a como mapear as melhores interações para um determinado contexto e o próprio contexto do ambiente não são o seu foco.

O trabalho de Kopriva [39] apresenta um framework metodológico para a concepção de pro-jetos interativos. Dentro de cada etapa o autor sumariza muitas técnicas diferentes que podem ser utilizadas. O framework é dividido em quatro etapas informativas para design interativo: A. Análise; B. Geração de Conceito; C. Simulação; e D. Avaliação. Para a etapa de análise, podem ser utilizadas as técnicas User-based Analysis, Time-based Analysis, Function-based Analysis, Object-based Analysis, Cost-based Analysis. As técnicas para geração de conceito, são Iden-tify Design Drivers, Frame Design Drivers, System View, Design for Emergence, Design by Component, Technology Framing, Performative Design, Design Principles e User Experience. Para a etapa de simulação, as técnicas são Animation, Physics-based Simulation, Performance Simulation, Prototype-based Simulation. Já para a Avaliação, onde é feita a comparação entre a simulação e os requisitos identificados, as técnicas propostas são: Requirements Comparison, User-client Assessment, Persona-based Evaluation. O trabalho de Kopriva [39] apresenta eta-pas que devem estar presentes no início e durante o processo, deixando à escolha do usuário as técnicas que devem ser utilizadas sem associar ao domínio do problema. Ou seja, apenas cita as técnicas sem detalhar o seu uso.

Fleer et al. [33] apresenta um modelo de ação baseado em máquinas de estados finitos para um sistema de objetos inteligentes que utiliza o gesto de apontar com o dedo para selecionar o objeto enquanto utiliza gestos manuais para atuar sobre tal objeto. Embora promissor com relação ao reuso no processo de mapeamento das ações e dos objetos do ambiente, a contribui-ção se restringia à classificacontribui-ção/deteccontribui-ção de gestos. No trabalho não apresentado como foram determinadas as interações, nem a montagem do ambiente e seus contextos.

Baseada na divisão das etapas do trabalho de Kopriva, a Tabela 2.1 tenta fazer um agru-pamento de características (A. Análise/Geração de Conceito; C. Simulação; e D. Avaliação.) consideradas relevantes no processo de design para ambientes interativos. Na Tabela 2.1 é

(37)

possível notar que embora muitos dos trabalhos estejam presentes nas três etapas do processo, algumas das tarefas comuns e necessárias para construção do ambiente interativo são deixadas de lado. Dentre as tarefas que foram consideradas relevantes e normalmente executadas na con-cepção dos ambientes interativos estão: (i) Composição do cenário; (ii) Elicitação das tarefas executadas no ambiente interativo; (iii) Modelagem das tarefas; (iv) Integração das tarefas ao domínio/contexto; (v) Identificação de melhor interação para uma determinada tarefa/contexto; (vi) Método de apresentação/prototipagem do ambiente; e (vii) Avaliação do resultado final com a participação do usuário.

Tabela 2.1. Relação dos trabalhos e suas características relevantes agrupadas por etapas no processo de construção de um ambiente interativo.

Características Relevantes Agrupamento de etapas no processo de construção

Permite / Possibilita / Aborda

Análise / Geração de Con-ceitos

Simulação Avaliação

1- Composição do cenário conforme o contexto

Jung et. al [38]

2- Elicitação das tarefas Puerta [30], Jung et. al [38], Kopriva [39]

3- Modelagem das tarefas Kopriva [39], Puerta [30], Fleer et al. [33]

4- Integração das tarefas de domínio

Puerta [30] 5- Identificar melhores

inte-rações conforme o cenário/-contexto

Karen Ho [40]

6- Prototipagem/Apresenta-ção/Diálogo

Puerta [30], Jung et. al [38], Kopriva [39]

7- Validação com o usuário Puerta [30], Jung et. al [38],

Kopriva [39]

Após a análise da Tabela 2.1 pode-se observar que somente nas pesquisas de Jung et. al [38] existe uma preocupação com a composição do cenário. Outro aspecto relevante é que nenhum dos trabalhos pesquisados demonstra interesse com as escolhas das interações para o ambiente. Os trabalhos na literatura focados nestes aspectos geralmente não estão preocupados ou não abordam o processo de construção do ambiente como um todo. Estão focados sempre em pontos específicos. O trabalho de Karen Ho [40], é um dos exemplos. Nele, é proposta uma aplicação para identificar as interações mais naturais para controlar eletrodomésticos através de pesquisas com a participação de usuários. Entretanto, outros aspectos, tais como a composição do cenário conforme o contexto são desconsiderados pelos autores. Este trabalho de Karen Ho [40] será melhor detalhado na Seção 2.4

A partir das observações acima, é percebida uma carência de solução prática centralizando os diversos aspectos que, nos trabalhos anteriores, foram resolvidos em pontos específicos ou de maneira generalizada e que não servem como guia prático de reprodução. De fato, os pes-quisadores economizariam muito tempo e retrabalho se existisse um guia para tarefas como a

(38)

modelagem e o tratamento de quais dispositivos e objetos formam o ambiente (Linha 1 da Ta-bela 2.1), quais as interações possíveis para os usuários (Linhas 5, 6 e 7 da TaTa-bela 2.1), e quais as reações e comportamentos do ambiente em resposta a estas interações (Linhas 2, 3 e 4 da Tabela 2.1). Deste modo, faz-se necessário um melhor embasamento no processo de construção de AINTs para a identificação dos sensores mais utilizados e das tarefas comumente executa-das no processo de construção. Também é importante entender os padrões e as possibilidades de reuso do código, melhor aproveitamento do tempo e trabalho por parte dos desenvolvedo-res dentro desta área. Com esse objetivo, a Seção 2.1, relata um mapeamento sistemático de publicações, nos anos de 2004 a março de 2015, para extrair o processo, identificar e classifi-car as tarefas comumente repetidas pelos pesquisadores durante a construção desses ambientes. Pelo fato dos AINTs serem uma área muito ampla, a mapeamento se limitou a procurar traba-lhos relacionados com ambientes interativos internos, fisicamente delimitados, como teatros ou residências.

2.1 TAREFAS COMUNS NO DESENVOLVIMENTO DE AMBIENTE INTERATIVOS INDOOR: UM MAPEAMENTO SISTEMÁTICO

O desenvolvimento e implantação de um ambiente interativo indoor exige um grande es-forço e tempo de implementação para integrar todos os componentes de software e dispositivos de entrada de dados (sensores RGBD, RFID, acelerômetros, dentre outros). Somado a isso, di-versos sensores multimodais ou com alta tecnologia embarcada que possuíam preços altamente restritivos têm sido difundidos e popularizados devido ao ganho em escala que a indústria de jogos proporciona.

Conforme é visto no decorrer deste capítulo, apesar do impulso de soluções tecnológicas nesta área, com a larga difusão de sensores e de componentes de software, a integração destes sensores com outros dispositivos para captura de dados (multimodais) dos usuários e o pro-cesso de construção do ambiente onde o usuário está imerso ainda são questões em aberto. Basicamente, as publicações voltadas para AINT’s apresentam preocupações com (i) melhorar o desempenho e/ou a acurácia das informações obtidas a partir do processamento dos dados sensores e (ii) procurar interações que executem ações do cotidiano de maneira automatizada ou mais intuitivas.

Este mapeamento sistemático explora a história de 10 anos de publicações na área de ambi-entes interativos indoor, limitados a casas ou teatros, para investigar como esse ramo da ciência lida com as questões referentes à metodologia/processo na construção, melhor aproveitamento de trabalho, tempo e reuso de código. Assim, esta pesquisa foi realizada para identificar as técnicas e padrões utilizados em (i) Como obter os dados do sensor de entrada; (ii) que tipo de tratamento é realizado nos dados obtidos; e, (iii) que tipos de ações são tomadas após o processamento das informações.

(39)

Como contribuição principal, este mapeamento traz uma análise detalhada e crítica de tra-balhos que exploram essa área da ciência e oferece uma compilação de tarefas comumente executadas em AINTs baseados no reconhecimento de interações do usuário. Essas tarefas são classificadas em três categorias que reúnem as atividades mais comuns dos desenvolvedores por semelhança. São elas: Acesso a Dados; Processamento e Ação. Em seguida, é apresentado um fluxo comum dessas atividades para a construção dos AINTs. Por fim, são identificadas algumas lacunas e formuladas algumas perguntas norteadoras para futuros trabalhos neste domínio.

Este mapeamento sistemático está organizado da seguinte maneira: a Seção 2.2 fornece o método utilizado para realizar um mapeamento sistemático; a Seção 2.3 mostra os resultados do método utilizado, trazendo uma análise quantitativa da bibliografia; e a Seção 2.4 apresenta uma análise crítica dos resultados, seguida pela Seção 2.5, com as conclusões deste mapeamento.

2.2 MÉTODO DE PESQUISA APLICADO

O método de pesquisa utilizado está baseado na busca em abrangência e em profundidade1 dos trabalhos científicos que, de alguma forma, estão relacionados a ambientes interativos com espaços físicos delimitados (indoor). O processo do mapeamento sistemático [41, 42] foi divi-dido nas seguintes etapas: (i) planejamento da pesquisa (protocolo); (ii) definição/execução da busca; (iii) seleção/extração de dados e; por fim, (iv) a análise dos resultados.

Na fase de análise dos resultados da busca, uma caracterização, avaliação, comparação e síntese dos trabalhos científicos encontrados são providas com o objetivo de fornecer, como resultado final, um grupo de soluções que apresenta a criação de algum tipo de AINTs indoor. Nas subseções seguintes o método será detalhado com o intuito de ser passível de reprodução.

2.2.1 Planejamento

A fase de planejamento diz respeito à sintaxe e semântica da pesquisa, ou seja, o contexto em que o mapeamento é aplicado e a questão de estudo que deve ser respondida. Esta fase produz como resultado um protocolo que identifica o objetivo principal da pesquisa e define os critérios para seleção das fontes de pesquisa (bibliotecas digitais) e para a seleção dos resultados (critérios de inclusão e exclusão). Além disso, são definidas algumas questões chaves para serem utilizadas em um formulário de extração das informações dos trabalhos selecionados.

2.2.1.1 Objetivo

O objetivo principal desta pesquisa sistemática é identificar, dentro do período de 10 anos, as tarefas comumente executadas no processo de construção dos AINTs que possuam as seguintes características: (i) ser ou possuir um estudo de caso que contenha um ambiente interativo com

1Busca em abrangência e busca em profundidade consistem, respectivamente, em buscas feitas por strings e

(40)

espaço fisicamente delimitado, como por exemplo, sala, casa, teatro, carro etc; e, (ii) estar relacionado com interações provocadas por um usuário final.

2.2.1.2 Definição dos Critérios de Seleção das Fontes

Neste mapeamento, foram consideradas somente bases de dados eletronicamente indexadas, diretamente relacionadas com a área da pesquisa e amplamente reconhecidas por profissionais e pesquisadores da área de ciência da computação. Além disso, alguns outros critérios também foram adotados, tais como possuir uma base de dados com acesso irrestrito e permitir o uso de strings de busca com expressões lógicas de palavras nos metadados referentes ao título (title), resumo (abstract) e palavras-chave (keywords). Baseado nesses critérios, as bibliotecas digitais selecionadas foram: IEEE Xplore2, ACM Digital Library3, Scopus4, Engineering Village5e Science Direct6.

2.2.1.3 Identificação da Pesquisa

No processo de identificação dos estudos, algumas questões norteadoras foram definidas com base no objetivo principal da pesquisa sistemática (Seção Objetivo). O foco destas ques-tões é auxiliar na concepção da expressão lógica utilizada como string de busca. Tal string de busca será submetida aos motores de pesquisas das bases de dados de artigos científicos digitais (bibliotecas digitais definidas em Definição dos Critérios de Seleção das Fontes). As questões são:

• Que tipos de sensores de entrada são utilizados para capturar as interações?

• Quais as técnicas e/ou padrões usados para processar os dados capturados dos sensores? • Quais interações (gestos ou comandos de voz, por exemplo) são reconhecidas?

• Quais ações são executadas, após o processamento dos dados, em objetos reais ou virtu-ais?

Diante da definição das questões, diversas combinações de strings foram avaliadas até que fosse encontrada uma expressão lógica apropriada ao propósito da pesquisa em termos de abrangên-cia e precisão. A busca com a expressão lógica deveria trazer como resultado uma quantidade maior do que mil trabalhos científicos e ainda retornar trabalhos representativos para o estudo, em particular as referências [35,43–46]. As palavras são relacionadas às interfaces de interações naturais, avançadas ou multimodais com usuários, que são capturadas por sensores, sistemas ou

2http://ieeexplore.ieee.org/ 3http://dl.acm.org/ 4http://www.scopus.com/

5http://www.engineeringvillage.com/ 6http://www.sciencedirect.com/

(41)

dispositivos que estejam localizados em um ambiente "indoor", fisicamente delimitado, como, por exemplo, casas ou teatros. Os textos selecionados devem possuir, no mínimo, título, resumo e palavras-chave em inglês. A expressão utilizada foi:

(natural or advanced or multimodal) AND

(interaction or "user interaction"or interactive) AND

(environment or space or theatre or home or indoor) AND

(sensor or sensed or device or system) AND

(recognizer or recognition )

Para utilizar a expressão anteriormente definida, são necessárias algumas adaptações con-dizentes com a sintaxe exigida para cada um dos motores de busca das fontes selecionadas. A Tabela 2.2 exibe a expressão modificada para cada fonte de pesquisa. Importante notar que para todas as expressões modificadas foi mantido o contexto da busca.

(42)

2.2.1.4 Critérios de Inclusão e Exclusão

Esta seção apresenta os critérios pelos quais os trabalhos serão avaliados, para auxiliar na decisão de seleção dos artigos dentro do contexto deste estudo. Faz-se necessária a defini-ção desses critérios porque, em geral, as pesquisas executadas através de motores de busca da web encontram uma grande variedade de artigos que não respondem à questão norteadora da pesquisa. A razão da definição destes critérios é evitar que sejam selecionados artigos com palavras-chave de diferentes significados ou que estejam fora do contexto da pesquisa. Assim, baseado nos critérios de inclusão e exclusão definidos a seguir, serão selecionados os trabalhos candidatos em potencial ou serão excluídos do mapeamento.

Foram incluídos na amostragem os trabalhos que possuíam uma das características a seguir:

• Executa algum tipo de ação em objetos do mundo real ou virtual;

• Possui sensores como câmeras ou microfones para capturar entrada dos dados; • Possui interação com um usuário final;

• Possui mecanismos/algoritmos de reconhecimento de interações. Por exemplo, comandos de voz ou gestos;

• Seja um ambiente interativo com espaço físico bem definido, como casa ou teatro.

Já os critérios de exclusão que foram utilizados para retirar os trabalhos da amostra a ser analisada foram:

• Possui interação com robô e não com usuário final;

• Escrito em linguagens diferente de inglês, português ou espanhol; • Trata de computação afetiva (Affective Computation);

• Possui título/ano/autor em branco ou nulo;

• Possui meios físicos de interação (teclado/mouse/óculos/joystick);

• Trata somente de processamento de sinais, sem possuir a descrição ou estudo de caso com um ambiente interativo;

• Não é um artigo completo;

• O texto completo do trabalho não se encontra disponível na totalidade, apesar de estar indexado.

(43)

2.3 EXECUÇÃO DO PROTOCOLO

Após a definição do protocolo de pesquisa, foram coletados trabalhos e dados primários como: títulos, palavras-chave e resumo. Esta fase de execução do protocolo foi dividida em três etapas que devem ser executadas de maneira sequencial para que os resultados sejam refinados gradativamente, até alcançar um conjunto de trabalhos relevantes.

Na primeira etapa, foi submetida a expressão de pesquisa, conforme a Tabela 2.2 ilustrada na Seção Identificação da Pesquisa, a cada um dos motores de busca das fontes selecionadas. O resultado das buscas retornou um conjunto total de 1.457 trabalhos científicos.

O ano de 2015 foi retirado dos gráficos a seguir por falta de representatividade, pois somente três trabalhos foram encontrados neste ano.

A Figura 2.1 exibe na esquerda a quantidade total e o percentual de resultados retornados para cada motor de busca. À direita, é exibida a distribuição, por ano, da quantidade de trabalhos selecionados em cada uma das fontes de pesquisa, desde o ano de 2004 à dezembro de 2014. Através do gráfico é possível evidenciar um crescimento de trabalhos científicos relacionados a ambientes interativos, para cada biblioteca digital pesquisada. Outra evidência forte é que existe uma tendência no comportamento do crescimento dos trabalhos, coincidindo muitas vezes os picos de quantitativos em períodos semelhantes, porém, em fontes de dados diferentes.

Figura 2.1. Evolução do número de publicações, por fonte pesquisada, referente ao objeto de estudo para cada ano

Na segunda etapa, todos os trabalhos são colocados em uma única base de dados. Poste-riormente, é iniciada uma filtragem para rejeição dos trabalhos duplicados, indisponíveis, com informações nulas ou em branco. Tal filtragem é baseada nas informações contidas no título, ano, resumo e palavras-chave. Um exemplo de filtragem realizada é a exclusão de artigos com títulos ou ano de publicação em branco. Com o decorrer da segunda etapa, é encontrado um montante de 339 trabalhos duplicados e 307 com informações relevantes nulas, indisponíveis ou em branco, restando um conjunto de 811 artigos para serem filtrados conforme os critérios de inclusão e exclusão7. Para a automatização da detecção de trabalhos duplicados, foi elabo-rada uma função PLSQL que procurava por registros que possuíam títulos idênticos e os excluía conforme as prioridades ilustradas na Tabela 2.3.

(44)

Tabela 2.3. Tabela com a prioridade de exclusão. Trabalhos com títulos duplicados são excluídos de acordo com o tipo da publicação, seguindo a ordem de prioridade definida nesta tabela. Maior valor deve ser excluído primeiro

Objetivando um melhor entendimento do universo dos dados resultantes da busca, foi exe-cutada uma pesquisa nos trabalhos que possuíam a categoria da contribuição principal indicada nos metadados do bibtex. Dos 811 trabalhos, 309 informavam a categoria da sua principal área de contribuição. As categorias que tinham menos do que três trabalhos foram excluídas da análise por não ter representatividade na classificação. A Figura 2.2 ilustra todas as categorias mapeadas e a quantidade de trabalhos publicados em cada uma delas. Importante notar que, de todas as categorias, as quatro maiores contribuições são relacionadas a (i) interação humano computador, com um total de 35 trabalhos científicos; (ii) Reconhecimento de voz, com um total de 26 artigos; (iii) Reconhecimento de gestos, com um total de 21 trabalhos científicos; e, (iv) Realidade virtual, com um total de 13 artigos.

Figura 2.2. Áreas-chave de publicações e quantidade de artigos. Neste gráfico é possível notar que os tra-balhos possuem contribuições relacionadas com: (i)interação humano computador; (ii) reconhecimento de voz; (iii) realidade virtual e (iv) reconhecimento de gestos.

(45)

Os resultados ilustrados na Figura 2.2 respaldam alguns dos critérios de inclusão/exclusão previamente definidos, como, por exemplo, a exclusão de trabalhos relacionados à computação afetiva ou relacionados à robótica. Estas duas categorias não aparecem destacadas no gráfico da Figura 2.2. Por outro lado, as categorias em destaques estão bem relacionadas com os critérios de inclusão referentes a trabalhos que (i) executem ações no mundo real/virtual; (ii) que pos-suam sensores como câmeras ou microfones ou mecanismos/algoritmos de reconhecimento de voz/imagens (reconhecimento de voz ou gestos); e, (iii) que possuam interação com um usuário final (interação humano computador).

O principal foco desta pesquisa está associado a ambientes interativos internos (AINT’s), com espaços fisicamente definidos e que tenham o escopo delimitado a casas ou teatros. Por este motivo, somente foram selecionados trabalhos que foquem esse tipo de ambiente e que, de alguma maneira, estejam relacionados a uma das quatro categorias ilustradas na Figura 2.2. Desta forma, os 811 trabalhos passaram por dois grupos de filtragens: (i) uma filtragem automa-tizada, elaborada através de linguagem SQL, com filtros aplicados aos metadados dos títulos, abstracte palavras-chave de cada artigo científico que resultou em 67 artigos selecionados; e, (ii) uma filtragem manual, onde foram observados os títulos e abstract dos trabalhos, resul-tando em 66 artigos selecionados. Por fim, restou um conjunto de 133 trabalhos científicos para a próxima etapa e leitura completa.

A terceira etapa exigiu a leitura completa dos artigos a fim de determinar se ele deveria ou não fazer parte do grupo final de trabalhos selecionados. Para cada artigo aceito, através do preenchimento de um formulário, foram extraídas as informações relevantes para este mape-amento sistemático. Foram rejeitados 49 dos 133 artigos obtidos na segunda etapa. A maior parte das rejeições era relacionada a trabalhos que não estavam disponíveis para leitura, não se caracterizavam como ambientes interativos ”indoor” ou se restringiam a processamento de sinais. Ao final deste estágio, um total de 63 artigos8foram considerados relevantes por apre-sentarem alguma informação relacionada com sensores de captura de dados, processamento e reconhecimento de interações, e ações executadas em objetos reais ou virtuais nos ambientes interativos.

8todos as referências para os 63 artigos podem ser encontradas em <http://www.touchair.com.br/AMBIENTE_

Referências

Documentos relacionados

Em pesquisa realizada pelo Instituto Brasileiro de Opinião Pública e Estatística (IBOPE), em 2011 o consumo de artigos infantis movimentou cerca de R$26,2 bilhões, sendo que mais

Para além deste componente mais prático, a formação académica do 6º ano do MIM incluiu ainda disciplinas de cariz teórico, nomeadamente, a Unidade Curricular de

O relatório encontra-se dividido em 4 secções: a introdução, onde são explicitados os objetivos gerais; o corpo de trabalho, que consiste numa descrição sumária das

Finally,  we  can  conclude  several  findings  from  our  research.  First,  productivity  is  the  most  important  determinant  for  internationalization  that 

O que a lei não pode suportar, o que ela sente como uma ameaça intolerável, é a existência de uma violência que lhe seja exterior, ao contrário da violência (Gewalt) que vem de

Thus, due to the difficulty entailed by the lack of normative objectivity of the exception articles, since there is no indication of what the adaptation of the child to the

Dentro de uma estrutura atuarial, a plataforma do Tesouro Direto é utilizada como fundamento para a implementação de um sistema apto a proteger os valores dos participantes,

Como já foi dito neste trabalho, a Lei de Improbidade Administrativa passa por uma releitura doutrinária e jurisprudencial, visando delimitar de forma precisa os tipos ímprobos,