cuica – uma ferramenta para suportar a convergência da tv...
TRANSCRIPT
FUNDAÇÃO EDSON QUEIROZ UNIVERSIDADE DE FORTALEZA – UNIFOR MESTRADO EM INFORMÁTICA APLICADA - MIA
Pedro Henrique Seligmann Soares
CUICA – Uma Ferramenta para suportar a convergência da TV Digital com a WEB através da
criação de conteúdo digital
Fortaleza, CE - Brasil Julho / 2007
FUNDAÇÃO EDSON QUEIROZ UNIVERSIDADE DE FORTALEZA – UNIFOR MESTRADO EM INFORMÁTICA APLICADA - MIA
Pedro Henrique Seligmann Soares
CUICA – Uma Ferramenta para Suportar a convergência da TV Digital com a WEB através da
criação de conteúdo digital
Dissertação apresentada ao Curso de Mestrado em Informática Aplicada da Universidade de Fortaleza (UNIFOR), como requisito parcial para obtenção do Título de Mestre em Informática.
Orientadora: Profª. Drª. Maria Elizabeth Sucupira F urtado
Fortaleza, CE - Brasil Julho / 2007
Pedro Henrique Seligmann Soares
CUICA – Uma Ferramenta para Suportar a
convergência da TV Digital com a WEB através da
criação de conteúdo digital
Data de aprovação:
Banca Examinadora:
_____________________________________________________
Profª. Maria Elizabeth Sucupira Furtado, Docteur.
______________________________________________________
Prof. Fernando Antonio de Carvalho Gomes, Docteur
______________________________________________________
Prof. Antônio Mauro Barbosa de Oliveira, Docteur
Dedico esta dissertação a minha
família, amigos, colegas e a todos
que contribuíram na realização do
presente trabalho
VII
Agradecimentos
Manifesto reconhecimento a todas as pessoas que, de forma direta e indireta,
colaboraram para a realização deste trabalho. De forma particular, agradeço:
À minha mãe, pelos incentivos e apoio durante todo o meu estudo, sem os
quais não teria condições de levar a efeito esta dissertação;
Aos professores do Curso de Mestrado em Informática Aplicada da Unifor,
que,durante todo o curso, transmitiram seus conhecimentos e, portanto, tiveram um
papel fundamental em minha vida acadêmica. Que eles continuem motivados na
caminhada do ensino.
Aos colegas, companheiros de pesquisa, e, em especial, a Patrícia
Vasconcelos, Marília Mendes, Fabrício Fava, Daniel Macedo, Kelma Madeira, Albert
Schilling e Lana Nóbrega.
Aos amigos, presentes e ausentes, que me apoiaram nestes momentos de
pesquisa.
E um especial agradecimento à minha orientadora, Elizabeth Furtado, que
sempre me apoiou durante todo o desenvolvimento acadêmico. Obrigado pela
amizade, dedicação, profissionalismo e por tudo que aprendi e pude melhorar tanto
em minha vida profissional quanto pessoal.
VIII
Resumo
A Televisão Digital está prevista para chegar à casa de muitos brasileiros em até
dezoito meses após a liberação do pedido de concessão feito pelos radiodifusores.
De imediato espera-se desta TV uma imagem em alta definição e suporte à
multiprogramação. Em função deste último aspecto, a um curto prazo prevê-se uma
demanda considerável da produção de conteúdo, visto que mais conteúdos serão
necessitados. Além disto, prevê-se também uma mudança no modelo de negócios
existente, imaginando-se que o conteúdo poderá ser criado usando diversas mídias
(áudio, vídeo e dados) e tecnologias (como recursos da web), por diversas pessoas.
Diante desta necessidade “anunciadora”, este trabalho apresenta uma ferramenta
para suportar a convergência da Televisão digital com a Web. Esta ferramenta
permite aos usuários criarem seu conteúdo de forma rápida e simples usando um
browser web e acessarem o conteúdo criado na Televisão Digital. A ferramenta
apresentada foi utilizada para auxiliar no levantamento das necessidades, permitindo
aos usuários tomar conhecimento das possibilidades da criação de conteúdo para a
Televisão Digital. E, com os resultados obtidos a partir desta interação dos usuários,
uma nova versão foi elaborada, levando em conta as opiniões e necessidades dos
usuários.
IX
Abstract
The prediction for Digital Television to enter Brazilians’ lives is of up to eighteen
months after the liberation of the concession requested by broadcasters. The
immediate expectancy if of a high-definition TV and multi-programming support. Due
to this last aspect, it is foreseen in a short term period a considerable content
production demand, since more contents will be requested. Moreover, it is foreseen
also a change on the existing business model, imagining that the content will be able
to be created using several medias (audio, video, and data) and technologies (as
web resources), by several people. Facing this “annunciating” necessity, this work
presents a tool to support the convergence of Digital Television with the Web. This
tool allows the users to create their content in a fast and simple way, using a web
browser and accessing the content created on Digital Television. The tool presented
was used to assist on the gathering of needs, allowing the users to know the
possibilities of content creation for Digital Television. Thus, with the results obtained
from the users’ interaction, a new version was elaborated, taking in account users’
opinions and needs.
X
Sumário
Capítulo 1 - INTRODUÇÃO ............................................................................ 16
1.1 Visão Geral ................................................................................................................ 16
1.2 Motivação ................................................................................................................... 17
1.3 Objetivos .................................................................................................................... 21
1.4 Metodologia ................................................................................................................ 23
1.5 Estrutura do trabalho .................................................................................................. 24
Capítulo 2 - TELEVISÃO DIGITAL E A CONVERGÊNCIA TECNOLÓGICA .. 25
2.1 Introdução .................................................................................................................. 25
2.2 Televisão Digital ......................................................................................................... 26
2.2.1 DVB ......................................................................................................................... 29
2.2.2 ATSC ...................................................................................................................... 30
2.2.3 ISDB ........................................................................................................................ 31
2.2.4 GEM ........................................................................................................................ 32
2.2.5 ISDTV...................................................................................................................... 32
2.3 Desenvolvimento de aplicações para TVD ................................................................. 33
2.4 Conclusão .................................................................................................................. 36
Capítulo 3 - CRIAÇÃO E GERENCIAMENTO DE CONTEÚDO ..................... 37
3.1 Introdução .................................................................................................................. 37
3.2 Sistemas de gerenciamento de conteúdo ................................................................... 38
3.2.1 Criação de conteúdo ............................................................................................... 38
3.2.2 Gerenciamento de conteúdo ................................................................................... 39
3.2.3 Publicação ............................................................................................................... 39
3.2.4 Apresentação .......................................................................................................... 40
3.3 Ferramentas para gerência e compartilhamento de conteúdo .................................... 41
3.3.1 Google Page Creator ............................................................................................... 41
3.3.2 Weebly .................................................................................................................... 45
3.3.3 WordPress .............................................................................................................. 49
XI
3.4 SAPEC-WEB .............................................................................................................. 53
3.5 Análise comparativa ................................................................................................... 57
Capítulo 4 - ARQUITETURA E FUNCIONALIDADES .................................... 59
4.1 Introdução .................................................................................................................. 59
4.2 Arquitetura Proposta .................................................................................................. 60
4.2.1 Módulo de Gerenciamento de Conteúdo ................................................................. 61
4.2.2 Módulo de Interface ................................................................................................. 63
4.2.3 Módulo de Conversão ............................................................................................. 67
4.2.4 Visualização do conteúdo ........................................................................................ 68
4.3 Instanciação da arquitetura ........................................................................................ 70
4.3.1 Características para a instanciação ......................................................................... 70
4.3.2 Funcionamento ........................................................................................................ 71
4.3.3 Geração na WEB .................................................................................................... 72
4.3.4 Conversão ............................................................................................................... 73
4.3.5 Acesso na TVD ....................................................................................................... 73
4.3.6 Integração do conteúdo criado no CUICA com uma estrutura de aplicações de TVD
......................................................................................................................................... 76
4.3.7 Conclusão ............................................................................................................... 79
Capítulo 5 - APLICAÇÃO DA FERRAMENTA ................................................ 80
5.1 Introdução .................................................................................................................. 80
5.2 Metodologia Utilizada ................................................................................................. 80
5.3 Os usuários ................................................................................................................ 81
5.4 Ambiente de testes ..................................................................................................... 82
5.5 Os testes .................................................................................................................... 83
5.6 Análise e resultados dos testes .................................................................................. 84
5.7 Conclusão .................................................................................................................. 88
CONCLUSÃO .................................................................................................................. 89
6.1 Considerações finais .................................................................................................. 90
6.2 Trabalhos futuros ....................................................................................................... 91
XII
BIBLIOGRAFIA ................................................................................................................ 92
ANEXO I .......................................................................................................................... 96
ANEXO II ....................................................................................................................... 103
ANEXO III ...................................................................................................................... 104
XIII
LISTA DE ILUSTRAÇÕES
Figura 2.1 - Arquitetura de um Sistema de TVD ........................................................ 27
Figura 3.1 - Criação de conteúdo no Google Page Creator ...................................... 42
Figura 3.2 - Gerenciamento do conteúdo (páginas) no Google Page Creator. ......... 43
Figura 3.3 - Seleção de templates para aparência do Google Page Creator ............ 44
Figura 3.4 - opções de Layout para páginas do Google Page Creator. .................... 44
Figura 3.5 - Tela de seleção de gadgets do Google Page Creator. .......................... 45
Figura 3.6 - Edição de texto no Weebly. ................................................................... 46
Figura 3.7 - Gerenciamento de páginas no Weebly ................................................. 47
Figura 3.8 - Seleção de Template de apresentação do Weebly ................................ 48
Figura 3.9 - Exemplo de Layout criado pelo usuário no Weebly. .............................. 48
Figura 3.10 - Inserindo componente de vídeo no Weebly. ........................................ 49
Figura 3.11 - criação de conteúdo no WordPress. .................................................... 51
Figura 3.12 - Gerenciamento do conteúdo no Wordpress. ........................................ 52
Figura 3.13 - Seleção de templates no WordPress ................................................... 53
Figura 3.14 – Tela do SAPEC-WEB para edição de conteúdo.................................. 54
Figura 3.15 – Tela de construção do modelo de navegação do SAPEC-WEB. ........ 55
Figura 3.16 – Tela de cadastro de padrões de Interface do SAPEC-WEB. .............. 56
Figura 3.17 – Tela de construção da Interface do SAPEC-WEB............................... 56
Figura 4.1 - Visão de caso de uso do módulo de gerenciamento de conteúdo ......... 62
Figura 4.2 - Visão de caso de uso do módulo de Interface ....................................... 64
Figura 4.3 - Editor de templates da ferramenta CUICA ............................................. 65
Figura 4.4 - Modelo de classe do módulo de interface .............................................. 66
Figura 4.5 - Esquema organizacional do módulo de conversão ................................ 67
Figura 4.6 - Estrutura da aplicação de visualização .................................................. 69
Figura 4.7 - Fluxo da ferramenta CUICA ................................................................... 72
Figura 4.8 - Editor de texto da ferramenta ................................................................. 73
Figura 4.9 – Portal de Acesso, desenvolvido durante o projeto SBTVD. .................. 74
Figura 4.10 – Aplicação Portal de Notícias, integrada ao Portal de Acesso. ............. 74
Figura 4.11 - Visualização na TVD ............................................................................ 76
XIV
Figura 4.12 – Camadas de uma aplicação de TVD. .................................................. 77
Figura 5.1 - Detalhamento da atividade de definir a experiência do usuário. ............ 81
Figura 5.2 - Diagrama de tarefas da ferramenta, versão simplificada. ...................... 84
Figura 5.3 - Diagrama de tarefas do módulo de visualização, versão simplificada. .. 84
Figura 5.4 - Diagrama de tarefas para criar notícias na ferramenta, versão
melhorada. ................................................................................................................ 85
Figura 5.5 - Diagrama de tarefas do módulo de visualização, versão melhorada. .... 86
Figura 5.6 - Opções avançadas da ferramenta CUICA, módulo de gerenciamento de
conteúdo.................................................................................................................... 86
XV
LISTA DE TABELAS
Tabela 3.1 - Análise comparativa das ferramentas estudadas .................................. 58
Tabela 4.1 - Descrição dos casos de uso do módulo de gerenciamento de conteúdo
.................................................................................................................................. 62
Tabela 4.2 - Descrição dos casos de uso do módulo de interface ............................ 64
Tabela 4.3 – Diferenças entre as duas versões da ferramenta. ................................ 71
Capítulo 1 - INTRODUÇÃO
Neste capítulo relatamos os fatores que nos motivar am para a
realização deste trabalho, descrevendo uma visão ge ral do problema
abordado, bem como os problemas gerais e específico s que
pretendemos endereçar com a nossa proposta. Citamos ainda,
objetivos, metodologia e estrutura do trabalho.
1.1 Visão Geral
As novas tecnologias da Televisão Digital Interativa (TVDi) permitem aos
telespectadores realizar várias tarefas que não seriam possíveis com a TV
tradicional. O acréscimo da interatividade na televisão permite, por exemplo,
procurar por uma informação, personalizar suas escolhas de visualização, participar
de jogos interativos e votações. Tais possibilidades exigem do telespectador um
papel mais ativo, fazendo com que passe a ser um usuário de aplicações ao utilizar
a TV.
Hoje em dia, há muita discussão em torno das possibilidades que a Televisão
Digital vem a acrescentar para a convergência tecnológica. Por exemplo, o usuário
será capaz de acessar a Internet usando seu aparelho de televisão. Um dos
assuntos mais discutidos é a mobilidade. Utilizar dispositivos móveis para acessar a
informação em qualquer lugar, a qualquer tempo é uma prática que está se tornando
cada vez mais comum nos dias atuais, se tornando uma parte do modo de vida das
pessoas.
A Computação Ubíqua (Ubiquitious), também conhecida por Computação
Móvel, Nômade e Invisível ou computação pervasiva (SATYANARAYANAN, 2001), é
o resultado da convergência da computação com as tecnologias de comunicação
sem fio e caracteriza-se pelo acesso à informação utilizando diversos dispositivos,
em qualquer momento e lugar.
17
Com a crescente evolução da Computação Móvel, a possibilidade mais
acessível em se adquirir equipamentos móveis a custos aceitáveis pelo mercado e o
advento da Televisão Digital Interativa, é possível se falar em um acesso universal à
informação, permitindo que esta possa ser visualizada a qualquer momento. Dessa
forma, a disponibilidade de informação atualizada e acessível em diferentes
dispositivos oferece aos usuários maior satisfação, acessibilidade e aproveitamento
dos recursos tecnológicos existentes.
Porém, devido à grande variedade de tecnologias utilizadas, um dos principais
desafios da computação ubíqua é ter uma estrutura que permita o acesso às
informações utilizando tais tecnologias.
Mais importante que manter o mesmo visual, o foco deve ser em manter a
interatividade, focando nos serviços e conteúdos disponíveis, para que a mesma
funcionalidade esteja disponível através das mais variadas plataformas. (SEFFAH,
2004).
1.2 Motivação
No Brasil, 90% da população possui TV em casa, porém menos de 20% usam
computadores e a Internet, então integrar a interatividade à TV é uma forma para
promover inclusão digital e social para a população de baixa renda que não possui
acesso à tecnologia devido a seu alto custo. Para o mundo inteiro, a Televisão
Digital interativa representa uma ferramenta importante para resolver problemas
relacionados à Inclusão Digital, onde, em um mesmo país, fatores sociais (tais como
exclusão digital das populações mais idosas) e problemas geográficos (regiões
isoladas ou com má infra-estrutura) podem ser enfrentados através do uso de meios
digitais mais amigáveis e dispositivos que já estão presentes na maioria das casas.
Diante desta possibilidade de ter a TVDi como uma forma de melhorar a
inclusão digital, o governo brasileiro resolveu investir em soluções brasileiras
financiando projetos para TVD. Em 2005, várias instituições e companhias
participaram de um projeto do governo brasileiro, para pesquisar e desenvolver
aplicações e serviços, middlewares e hardware para o padrão brasileiro de televisão
digital, na época chamado de Sistema Brasileiro de Televisão Digital (SBTVD – mais
18
detalhes no anexo III). Durante este projeto, participamos no desenvolvimento de
aplicações para a TV Digital no projeto AIMCOR.
No desenvolvimento de aplicações interativas para TVD, ficou muito evidente
que para a TVD deveriam ser transmitidos áudio, vídeo e dados e não somente
áudio e vídeo como antes. Estes dados representam as aplicações e o próprio
conteúdo que o usuário interagirá através destas aplicações.
Assim, por exemplo, para o usuário de televisão ter acesso a um serviço de
votação pela TV, a emissora deverá enviar os seguintes dados à casa de tal usuário:
• As especificações da aplicação de votação (tais como: objetos de
interface que ficarão na tela da TV e o comportamento destes objetos ao
serem acionados pelo usuário através do controle remoto);
• O conteúdo que está associado aos objetos de interface descritos
acima.
Neste texto, quando falarmos de conteúdo, estaremos nos referindo ao
conjunto de informações adicionais que são repassadas ao usuário através da
aplicações, tais como textos e figuras.
Diante destes estudos e possibilidades, e considerando o uso da tecnologia
para aplicações de relevância social, percebemos que há uma necessidade de uma
maneira fácil de criar e entregar conteúdo para diversos fins, tais como avisos
importantes, socialização da informação, várias perguntas surgem:
• Como permitir aos usuários criar conteúdo de uma forma fácil e
integrada?
• Como dar oportunidades ao usuário para se organizarem?
• Como melhorar a satisfação do usuário ao acessar serviços de
TVDi?
Foi então que participamos da descrição de um novo projeto de TV Digital para
responder a estas perguntas. O projeto SAMBA (System for Advanced interactive
digital television and Mobile services in BrAzil), o qual estamos correntemente
realizando, se propõe a criar um framework que permita cidadãos e comunidades
locais(incluindo a população de baixa renda) ter acesso a um conteúdo produzido
19
pela população e pelos serviços dos canais da TV Digital Interativa. O Samba
também irá explorar os potenciais da utilização da TVDi em comunidades móveis
virtuais. Este projeto é desenvolvido por empresas e instituições do Brasil, Itália,
Finlândia e Alemanha, e financiado pela Comunidade Européia.
Do ponto de vista da produção de conteúdo e serviços, o SAMBA irá criar um
framework para o desenvolvimento de aplicações interativas de TVDi que
transmitam o conteúdo desejado. Do ponto de vista do usuário final, o SAMBA irá
levar em conta problemas de usabilidade relacionados à adoção de tecnologia para
usuários sem experiência. Assim, o framework do SAMBA permitirá que conteúdo
possa ser adicionado por membros da comunidade, além do conteúdo gerado pelas
emissoras e governo, podendo, inclusive, ser enriquecidos com informações
específicas da comunidade e acessível facilmente por seus diferentes usuários.
Nós, dentro desta pesquisa, propomos responder as perguntas levantadas da
seguinte maneira:
• Como permitir aos usuários criar conteúdo de uma forma fácil e
integrada? Através de ferramentas fáceis de usar, com suporte a
reusabilidade e convergência entre as tecnologias existentes.
• Como dar oportunidades ao usuário para se organizarem?
Através de recursos tecnológicos que possam ser distribuídos e
acessados em qualquer lugar, a qualquer tempo pela comunidade.
• Como melhorar a satisfação do usuário ao acessar serviços de
TVDi? Sabendo das opiniões e necessidades deles (através da
participação do usuário em diversos momentos) antes do
desenvolvimento da solução.
É preciso fornecer um suporte aos projetistas para que os mesmos possam ter
conhecimento do usuário, de forma que o mesmo possa expressar exatamente
quais são suas necessidades nesta convergência. Antes de implementar o produto
final, há a necessidade de identificar as expectativas do usuário para poder se fazer
um design da interação. A experiência do usuário atual na TV não requer
interatividade, então é necessário desenvolver uma solução rápida para que seja
20
possível mostrar ao usuário final as possibilidades da TV Digital Interativa, para que
o mesmo seja observado, e suas necessidades levadas em conta.
É dentro do contexto de suporte à criação de conteúdo para TV que este
trabalho se insere. Especificamente, objetivamos apoiar os usuários a produzir
conteúdo para a televisão digital através do desenvolvimento e implementação de
uma ferramenta. Como dito, realizar um projeto de desenvolvimento desta
ferramenta centrado no usuário é primordial para o sucesso e aceitação da
ferramenta. Mas existem muitos desafios para isto.
O desenvolvimento centrado no usuário implica em ter conhecimento das
motivações, dos desejos, do que satisfaz o usuário e do que lhe dá prazer, enfim de
suas experiências. Além disso, é necessário entender que a preferência por
determinado produto e a rejeição de outro estão relacionadas a questões subjetivas
do usuário, e não simplesmente ao atendimento as suas necessidades pragmáticas
de uso. Projetar para a experiência significa criar para o usuário um contexto
integrado de mídias e de situações onde ele possa ter contato com o tema tratado.
Desta forma, esta ferramenta foi desenvolvida de forma iterativa e evolutiva.
Primeiro, uma versão simplificada foi usada para levantar as necessidades dos
usuários em relação à criação de conteúdo para a TV (SOARES et al, 2007).
Usando a ferramenta, nós criamos oportunidades (situações de uso do futuro
sistema) que levaram o usuário a refletir, através da prática, sobre suas
necessidades de interação com a TVDi e mais especificamente, suas necessidades
de suporte à convergência entre a TVDi e a Web. Especificamente, este suporte foi
utilizado pelos desenvolvedores do projeto SAMBA como forma de verificar como o
usuário (qualquer cidadão que esteja envolvido em atividades da comunidade ou
que esteja interessado na informação produzida por eles) poderia participar de forma
mais ativa na comunidade através da TV e da Web. Segundo, este estudo apoiou o
desenvolvimento evolutivo da ferramenta proposta neste tratado, onde nós geramos
uma segunda versão.
21
1.3 Objetivos
O desenvolvimento de aplicações para a TV Digital é um campo relativamente
novo, com poucas ferramentas que permitam a um usuário sem conhecimentos
específicos colaborar com o conteúdo da TV produzido pela sua comunidade.
Este trabalho visa propor uma solução para facilitar a convergência da TV
Digital com a WEB. Para tanto, é necessário criar uma ferramenta que dê suporte à
geração do conteúdo para a TVD, oferecendo recursos interativos que possam ser
fáceis de usar para compor tal conteúdo. O resultado deste trabalho é a geração de
uma versão otimizada da ferramenta, chamada CUICA (Creation of Usable
Interactive Content for Advanced digital television), a qual oferece mecanismos que
facilitam a geração do conteúdo para a TVDi através da Web, contendo as seguintes
características:
i) Fácil de usar, com estruturas pré-definidas, para suportar melhor a
criação de conteúdo;
ii) Suporte à produção do conteúdo de forma independente do contexto
de uso em que será acessada, para suportar a criação de qualquer
conteúdo;
iii) Suporte à convergência cultural, onde os conteúdos produzidos na
Web pelo próprio usuário, ou por outro(s) usuário(s), que
pertence(m) a sua comunidade sejam visualizados na TVDi;
iv) Suporte às preferências e restrições dos usuários produtores de
conteúdo para desta forma melhorar a satisfação de acesso aos
serviços de TVDi pelos usuários telespectadores.
Para tanto, trabalhamos com os seguintes objetivos específicos:
1) Desenvolvimento de uma versão simplificada da ferramenta, com apenas
os recursos básicos;
2) Criação de cenários de interação para utilização da ferramenta
simplificada pelos desenvolvedores do projeto SAMBA para elicitação das
necessidades dos usuários finais do projeto;
3) Evolução da ferramenta, a partir da análise dos cenários vividos pelos
usuários utilizando a ferramenta;
22
4) Apresentação e discussão dos resultados da aplicação da ferramenta e
suas contribuições para as áreas de projeto centrado no usuário.
Quando a versão simplificada desta ferramenta foi usada no decorrer do
projeto samba, trabalhamos com a hipótese de que a versão simplificada desta
ferramenta auxiliará engenheiros de software e profissionais de IHC envolvidos no
projeto a entender melhor as expectativas e necessidades dos usuários pelos
recursos de TVDI.
Espera-se satisfação dos usuários, tanto o usuário que cria conteúdo quanto o
usuário que acessa o conteúdo criado. Ao usar esta ferramenta, espera-se que o
usuário final teria uma idéia do que realmente significará a interatividade da TV
Digital e, do usuário criador de conteúdo, espera-se que ele entenda mais facilmente
o que significará a convergência da TV com a Web e a produção de conteúdo dentro
deste contexto.
Também se espera a satisfação dos envolvidos por conseguir um recurso que
ajuda a seguir um projeto de desenvolvimento centrado no usuário, conseguindo
compreender os sentimentos e expectativas do mesmo em um ambiente próximo
das possibilidades reais.
E, por fim, a satisfação do gerente do projeto porque a ferramenta serve de
base para fazer avaliações antes da proposta propriamente dita, significando menos
risco para o projeto por ainda ser no inicio. Isto porque o projeto SAMBA deverá
construir uma ferramenta também de geração de conteúdo, porém mais completa
(como por exemplo, gerando para dispositivos móveis e com mais opções de
formatos de conteúdo suportados).
23
1.4 Metodologia
Este trabalho foi fundamentado em estudos e pesquisas que seguiram os
seguintes passos:
Vertente Teórica
• Leitura de publicações relacionadas à IHC e Engenharia de
Software, no que diz respeito à geração de interfaces para múltiplos
dispositivos e arquiteturas para integração de múltiplos dispositivos.
• Estudos de ferramentas e linguagens baseadas em xml, padrões
e modelos que apóiam o desenvolvimento de interfaces para múltiplos
dispositivos.
• Estudos sobre a personalização de interfaces rodando em
diversos dispositivos.
• Estudo sobre as diversas tecnologias de Televisão Digital
Interativa.
• Estudo sobre a convergência digital.
Vertente Prática
• Identificação dos problemas e definição dos objetivos do
trabalho.
• Desenvolvimento de protótipos das aplicações.
• Realização de testes com o usuário, recolhendo suas
expectativas.
• Criação de novos protótipos interativos, com base na análise dos
projetistas.
• Análise dos resultados de testes adicionais.
• Observação dos resultados das aplicações da ferramenta no
projeto.
24
1.5 Estrutura do trabalho
Este trabalho é composto por 5 capítulos, organizados da seguinte forma:
1. Nos capítulos dois e três apresenta-se o estado da arte
com o conhecimento bibliográfico utilizado. O capítulo dois trata de um
estudo sobre a convergência digital e a TV Digital. O terceiro capítulo
trata de ferramentas para geração de conteúdo.
2. No capítulo quatro, apresentamos a proposta da
ferramenta, com sua arquitetura, funcionalidades e características.
3. No capítulo cinco, apresentamos o projeto samba,
descrevendo o método utilizado para desenvolver a ferramenta, o
método utilizado para analisar as necessidades do usuário, o uso da
ferramenta durante o andamento do projeto e a análise resultante do
uso da ferramenta com todos os envolvidos.
4. Por fim, descrevemos as conclusões que obtivemos
durante o desenvolvimento deste trabalho, as contribuições para o
campo de IHC e para a convergência digital e os trabalhos futuros.
Capítulo 2 - TELEVISÃO DIGITAL E A CONVERGÊNCIA
TECNOLÓGICA
Neste capítulo descrevemos um estudo sobre a conver gência
digital e o papel da Televisão Digital Interativa, além de apresentar os
diferentes padrões de TVD.
2.1 Introdução
Weiser (1991) introduziu sua visão de computação ubíqua como sendo a
tendência para o século 21. Ele imaginou um mundo onde pessoas utilizariam
computadores sem perceber sua existência, pois os mesmos estariam integrados de
forma imperceptível no ambiente. Nos anos iniciais do século 21, nos encontramos
em um mundo onde computadores são menores, móveis, mais poderosos e baratos,
e estão sendo integrados no ambiente de forma que não são notados.
Como destaca o vice-presidente de inovação e estratégias técnicas da IBM,
Irving Wladawsky-Berger (2006) em seu blog, produtos eletrônicos estão sendo
construídos usando componentes de hardware comuns da indústria de
computadores, como por exemplo, microprocessadores, memória, armazenamento,
entre outros, e muitas das suas capacidades estão sendo projetadas como software.
Enquanto que há um progresso em direção à visão de Weiser, dois dos
termos-chaves utilizados para descrever a visão continuam a evoluir. Hoje em dia,
ambiente tem sido substituído por contexto. Enquanto que o termo ambiente leva as
pessoas a focarem no espaço físico no qual a tecnologia está sendo utilizada, o
termo contexto expande o foco para incluir não apenas o espaço físico, mas também
aspectos da situação social que podem influenciar no uso da tecnologia. Ao mesmo
tempo, a expressão computação pervasiva vem substituindo computação ubíqua
para enfatizar a forma que os dispositivos se encaixam e são utilizados nas
atividades diárias.
De acordo com Negroponte (1995), “Bits se entrosam sem esforço. Eles
começam a se misturar e podem ser usados e re-usados separadamente ou juntos.
26
A mistura de áudio, vídeo e dados é chamada de multimídia. Parece complicado,
mas não passa de bits entrosados.” (NEGROPONTE, 1995). Ou seja, para um
computador, não há diferença entre uma sinfonia, um livro, uma canção, um
programa de TV e uma lista de compras desde que todos estejam digitalizados.
Desta forma, podemos ter quatro setores da indústria, mais precisamente, os setores
de mídia/entretenimento, computação, eletrônicos e telecomunicações colaborando
um com o outro de forma próxima. Tal colaboração é uma das definições de
convergência digital, e está acontecendo ao redor de todos nós.
Dentre as tecnologias utilizadas no dia-a-dia, destacam-se as ferramentas de
comunicação e entretenimento como as mais utilizadas, tais como telefones
celulares e a televisão. Hoje em dia, os telefones celulares já se encontram
integrados com a web, sendo difícil encontrar um que não possua câmera,
mensagens instantâneas e navegador web. O impacto de dispositivos móveis tem
sido considerável nos últimos anos, e espera-se que o mercado para serviços de
dados móveis continue a crescer de forma significativa (WONG e JESTY, 2002).
Enquanto isso, a integração da televisão com as demais mídias, ou seja, a televisão
digital, principalmente no Brasil, ainda é um processo em andamento.
2.2 Televisão Digital
A televisão digital pode ser considerada como o ponto forte da convergência
digital, por permitir uma melhor visualização das informações que a tela pequena de
um celular, por exemplo. McLuhan (apud LEVINSON, 1999) define o processo de
assistir televisão como sendo mais envolvente que ler um livro ou assistir um filme
no cinema, proporcionando um envolvimento participante, que nasce do trabalho de
preenchimento e perscrutação do espectador. O autor concluiu que a televisão
tornaria o mundo uma aldeia global, porém, atualmente a Internet é algo que se
aproxima mais desta metáfora. Murray (1997) define como uma das mais claras
tendências do futuro o casamento da televisão com a internet, fator que concretizaria
ainda mais o conceito de aldeia global, no qual a mídia de massas terá ambientes de
informação que possibilitarão receptores a qualquer momento se tornarem
emissores de informação, e um imenso número de telespectadores poderão interagir
com a televisão e com outros membros da audiência.
27
Televisão interativa é um termo usado para cobrir a convergência da televisão
com tecnologias de mídia digital, como computadores, videogames e dispositivos
móveis, permitindo a interatividade do usuário (LU, 2005).
A capacidade de interatividade da TV digital se deve à presença de três
elementos: Gerador de Carrossel, Multiplexador e um Set-Top-Box (STB) Interativo
(BROADCAST PAPERS, 2004). O Gerador de Carrossel é capaz de transformar um
conjunto de arquivos de dados em um fluxo elementar, empregado um esquema de
transmissão cíclica de dados. O Multiplexador reúne um ou mais fluxos de dados
aos fluxos de áudio e vídeo que compõem os eventos e programas consumidos pela
audiência.
Figura 2.1 - Arquitetura de um Sistema de TVD
O STB Interativo consiste em um aparelho ligado na televisão, que, entre
outras coisas, pode converter o sinal digital em analógico. O STB funciona como um
computador simplificado, podendo executar e exibir aplicações para o usuário e
receber as interações do mesmo, desta forma tornando a TV Digital em TV Digital
Interativa.
Caso o resultado da interação entre o usuário e o STB fique restrito ao
subsistema local, sem comunicação entre o usuário e a Internet, o modelo é
Servidor de Vídeo
28
chamado de TV Digital Pseudo-Interativa. Uma expansão do modelo pseudo-
interativo permite que o STB envie e receba dados adicionais através de um canal
de interação (retorno), estabelecido via modem, por exemplo. Neste caso o
resultado da interação com o usuário pode ser avaliado em tempo quase real por um
provedor de serviços vinculado à rede de TVD, resultado no modelo chamado de TV
Digital Interativa.
Um sistema de televisão digital interativa deve adotar e integrar um conjunto
de diferentes tecnologias de hardware e software para implementar suas
funcionalidades. Conjuntamente, estas tecnologias permitem que fluxos de áudio,
vídeo e dados possam ser transmitidos para o STB e, então recebidos, processados
e apresentados aos usuários. As diferentes tecnologias permitem a fabricação de
STBs com diferentes arquiteturas de hardware e diferentes sistemas operacionais.
Neste cenário de hardware e software heterogêneos, os desenvolvedores de
aplicações devem escrever diferentes versões dos programas para cada
combinação de hardware e sistema operacional dos diversos tipos de STBs.
Conseqüentemente, os fabricantes e provedores de conteúdo adotaram
mecanismos que tornam portáveis as aplicações e os serviços nos diversos tipos de
STBs, definindo uma API (Application Programming Interface) genérica, padronizada
e bem definida, a qual deve abstrair as especificidades e heterogeneidades de
hardware e software dos diversos tipos de dispositivos receptores.
Para prover esta API genérica, uma camada de software adicional,
denominada middleware, foi incluída entre o sistema operacional e as aplicações. O
objetivo do middleware é oferecer um serviço padronizado às aplicações, abstraindo
as camadas de hardware e sistema operacional, que dão suporte as facilidades
básicas de um sistema de televisão digital. Oferecendo uma API padronizada, o
middleware incrementa a portabilidade das aplicações. Desta forma, as aplicações
não acessam diretamente as facilidades providas pelo sistema operacional e o
hardware do dispositivo, mas apenas os serviços oferecidos pela camada de
middleware. Conseqüentemente, sem qualquer tipo de modificação no código, as
aplicações podem ser diretamente executadas em qualquer STB que suporte o
middleware adotado no desenvolvimento das mesmas.
29
Considerando a diversidade de soluções tecnológicas que podem ser
adotadas para implementar um sistema de televisão digital interativa, diversos
órgãos de padronização concentraram esforços na especificação de padrões. Como
resultados destes esforços, atualmente, existem três padrões mundiais de sistema
de televisão digital interativa reconhecidos. Estes sistemas adotam diferentes
padrões para modulação do sinal de difusão; transporte de fluxos elementares de
áudio, vídeo, dados e aplicações; codificação e qualidade de áudio e vídeo; e
serviços de middleware:
1) DVB - Digital Video Broadcasting, adotando como padrão de middleware o
MHP - Multimedia Home Platform (ETSI, 2003);
2) ATSC - Advanced Television Systems Committee usando o padrão de
middleware DASE - DTV Application Software Environment (ATSC, 2003); e
3) ISDB - Integrated Services Digital Broadcasting com o padrão de
middleware ARIB - Association of Radio Industries and Businesses (ARIB, 2002).
Além destes padrões, está em desenvolvimento o ISDTV (International
Standard for Digital Television), baseado no ISDB com o acréscimo de inovações de
pesquisadores brasileiros, sendo adotado como o padrão brasileiro de TV Digital. A
camada de middleware adotada pelo ISDTV foi denominada Ginga.
A seguir apresentamos um breve resumo sobre cada padrão de TVDI.
2.2.1 DVB
O projeto DVB - Digital Video Broadcasting (DVB, 2007) é um consórcio
iniciado em setembro de 1993 e composto por mais de 300 membros, incluindo
fabricantes de equipamentos, operadoras de redes, desenvolvedores de software e
órgãos de regulamentação de 35 países. O objetivo do projeto DVB é especificar
uma família de padrões mundiais para sistemas de televisão digital interativa,
incluindo a transmissão do sinal e serviços de dados associados. A família de
padrões especificada pelo projeto DVB caracteriza o padrão de sistema de televisão
digital também denominado DVB, que é conhecido como o padrão europeu de
televisão digital. O padrão DVB é adotado nos países da União Européia e em
outros países como Austrália, Nova Zelândia, Malásia, Hong Kong, Singapura, Índia
30
e África do Sul. A Inglaterra é o país onde a adoção do padrão DVB está mais
consolidada, pois já possui mais de um milhão de receptores digitais instalados.
Na camada de middleware, o padrão DVB adota o MHP, cuja especificação é
denominada DVB-MHP (Digital Video Broadcasting – Multimedia Home Platform)
(ETSI, 2003). A plataforma MHP começou a ser especificada pelo projeto DVB em
1997. No entanto, a primeira versão (MHP 1.0) foi oficialmente lançada em junho de
2000. Após um ano do lançamento da primeira versão, em junho de 2001, foi
lançada uma nova especificação (MHP 1.1). Em junho de 2003, foi lançada a versão
1.1.1 do MHP.
O MHP define uma interface genérica entre as aplicações e o set-top Box
(hardware e sistema operacional), no qual as aplicações são executadas. Além
disso, o MHP define o modelo e o ciclo de vida das aplicações, como também os
protocolos e os mecanismos distribuição de dados em ambientes de televisão
pseudo-interativa e interativa. Nas versões 1.1 e 1.1.1, o MHP provê funcionalidades
adicionais em relação à versão inicial, incluindo, por exemplo, a possibilidade de
carregar programas interativos através do canal de retorno e o suporte opcional a
aplicações desenvolvidas usando uma linguagem declarativa. A partir da versão 1.1,
o MHP adota modelos de aplicações baseados em linguagens procedural e
declarativa. No modelo procedural, o MHP suporta a execução de aplicações Java
TV, denominadas DVB-J. No modelo declarativo, opcionalmente, o MHP suporta a
execução de aplicações desenvolvidas com tecnologias relacionadas à linguagem
HTML, denominadas DVB-HTML.
2.2.2 ATSC
O comitê ATSC (Advanced Television Systems Committee) (ATSC, 2007) é
uma organização de padronização americana iniciada em 1982 e composta por
cerca de 170 membros, incluindo fabricantes de equipamentos, operadores de
redes, desenvolvedores de software e órgãos de regulamentação. O objetivo do
comitê ATSC é especificar padrões para televisão digital. O conjunto de padrões
especificado pelo comitê ATSC caracteriza o padrão de sistema de televisão digital
também denominado ATSC, que é conhecido como o padrão americano de televisão
digital. Em funcionamento nos Estados Unidos desde novembro de 1998, o padrão
31
ATSC também já foi adotado pelo Canadá, Coréia do Sul, Taiwan e Argentina.
Nestes dois últimos países, existe uma sinalização que deverá ocorrer uma revisão
do padrão de sistema de televisão digital a ser adotado.
O padrão ATSC prevê diversos modos de transmissão com diferentes níveis
de resolução da imagem e formatos de tela. No entanto, o modelo de negócios
americano foi direcionado para a televisão de alta definição (HDTV). Em função do
alto custo dos aparelhos de televisão de alta definição, o sistema americano de
televisão digital ainda possui uma baixa adesão dos usuários.
Na camada de middleware, o padrão ATSC adota o DASE (DTV Application
Software Environment) (ATSC, 2003), definindo uma camada de software que
permite a programação de conteúdo e aplicações. O DASE adota modelos de
aplicações baseados em linguagens procedural e declarativa. No modelo procedural,
o DASE suporta a execução de aplicações Java TV. No modelo declarativo, o DASE
suporta a execução de aplicações desenvolvidas em uma versão estendida da
linguagem HTML.
2.2.3 ISDB
O padrão ISDB foi especificado em 1999 no Japão pelo grupo DiBEG – Digital
Broadcasting Experts Group (DiBEG, 2007), criado em 1997 e composto por várias
empresas e operadoras de televisão. O objetivo do grupo DiBEG é promover e
especificar o sistema de difusão terrestre de televisão digital japonês.
O padrão ISDB é também conhecido como o padrão japonês de televisão
digital. Até o momento, o padrão ISDB foi adotado apenas no Japão, porém é
amplamente divulgado que o mesmo é um sistema que reúne o maior conjunto de
facilidades: alta definição - HDTV, transmissão de dados e recepção móvel e portátil.
Embora seja baseado no sistema de transmissão europeu, o ISDB-T é
superior ao DVB-T quanto à imunidade a interferências, permitindo a convivência da
televisão de alta definição com a recepção móvel.
Na camada de middleware, o padrão ISDB adota a plataforma padronizada
pelo ARIB (Association of Radio Industries and Businesses) (ARIB, 2002), definindo
32
uma camada de software que permite a programação de conteúdo e aplicações. O
ARIB adota um modelo de aplicação baseado na linguagem declarativa denominada
BML (Broadcast Markup Language), que é baseada na linguagem XML (Extensible
Markup Language).
2.2.4 GEM
Apesar de alguns pontos em comum entre os três padrões internacionais, tais
como a adoção de JAVA-TV (SUN, 2000) e do padrão HAVi (HAVi, 2001), uma
aplicação desenvolvida para um middleware normalmente não pode ser executado
em outro. Para permitir a execução de aplicações MHP em outras plataformas de TV
Digital, o grupo DVB propôs uma especificação para os middlewares, denominada
GEM (Globally Executable MHP) (ETSI, 2005). O GEM inclui as características do
middleware MHP que não são específicas do sistema DVB. Esta especificação foi
adotada pelos padrões de middleware americano e japonês.
Seguindo a mesma linha para manter a compatibilidade, a União de
Telecomunicações Internacional (ITU) publicou um conjunto de recomendações
chamado ITU-T, que consiste em três documentos: J.200 (ITU, 2001), J.201 (ITU,
2004) e J.202 (ITU, 2003), o quais são equivalentes ao GEM. Estas recomendações
têm como objetivo harmonizar os sistemas de TV Digital em diferentes níveis.
2.2.5 ISDTV
Como resultado do projeto SBTVD, o governo brasileiro optou publicamente
pela adoção do padrão ISDB. Contudo, o mesmo deveria ser adaptado à realidade
brasileira e incluir inovações propostas pelos pesquisadores brasileiros que
participaram do projeto SBTVD, tendo em vista não apenas o desenvolvimento
tecnológico, mas também uma ferramenta para o contexto social brasileiro, que se
preocupa com a inclusão digital. Estas premissas e necessidades levaram à escolha
do middleware Ginga e à adoção de mudanças no padrão, criando um novo padrão
de TV digital, conhecido como ISDTV (International Standard for Digital Television).
O middleware Ginga foi concebido a partir de dois projetos anteriores: o
FlexTV (LEITE et al, 2005) e o MAESTRO (SOARES, 2006), respectivamente os
middlewares de referência procedural e declarativo concebidos durante o projeto
SBTVD. Apesar de haver inovações, um dos requisitos principais levados em conta
33
é a compatibilidade com outros padrões, executando aplicações desenvolvidas para
outros middlewares. Para tanto, o middleware foi desenvolvido de acordo com os
padrões da ITU, e, conseqüentemente, de acordo com o GEM.
O Ginga é dividido em duas partes: Ginga-J e Ginga-NCL. O Ginga-NCL é o
subsistema do middleware responsável por processar e apresentar documentos
NCL, que permitem a apresentação de aplicações desenvolvidas de forma
declarativa. Já o Ginga-J é responsável por definir todas as APIs Java, formatos de
dados e conteúdos, além de protocolos a nível de aplicação.
2.3 Desenvolvimento de aplicações para TVD
Segundo Gawlinski (2003), não existe um consenso para classificar os tipos
de aplicações interativas. Piccolo e Baranauskas (2006) propõem que as aplicações
sejam categorizadas de acordo com seu tipo de serviço:
• Comunicação: compreende as aplicações caracterizadas pela troca de
informações entre usuários ou entre usuários e emissora/provedor de serviços.
Exemplo: Email e Chat.
• Informação: compreende as aplicações que realizam busca e consulta a
bancos de informações. Por serem baseadas na apresentação de texto e
navegação, são consideradas de implementação mais simples, se comparadas com
as demais categorias. Exemplo: Guia Eletrônico de Programação (EPG), previsão do
tempo, acesso a Internet.
• Entretenimento: assim como as aplicações de informação, são baseadas em
apresentação de texto e navegação, porém com caráter lúdico. Exemplo: jogos do
tipo quiz ou aplicações de TV estendida, que trazem informações adicionais a um
conteúdo.
• Transação: são as aplicações que se caracterizam pela necessidade de um
ambiente seguro para transmissão e armazenamento de dados confidenciais.
Exemplos: comércio eletrônico e banco eletrônico (t-bank).
Algumas aplicações podem pertencer a mais de um grupo simultaneamente,
como é o caso de governo eletrônico e de aplicações de educação, que podem
trazer características técnicas de comunicação, informação e transação.
34
De um ponto de vista do desenvolvedor, o universo de aplicações para TVD
pode ser dividido em aplicações declarativas e aplicações procedurais. Uma
aplicação declarativa é uma aplicação cuja entidade inicial consiste em conteúdo
declarativo, como por exemplo, uma página HTML ou NCL. Uma aplicação
puramente declarativa é uma onde cada entidade que a compõe é do tipo conteúdo
declarativo. Uma aplicação puramente procedural é constituída de elementos que
dizem passo a passo o que a aplicação deve fazer. Já uma aplicação híbrida é
constituída de ambos os elementos, declarativos e procedurais. Aplicações
declarativas freqüentemente fazem uso de conteúdo em scripts, que são procedurais
por natureza. Além disso, uma aplicação declarativa pode fazer uma referência a
uma aplicação embarcada procedural.
Aplicações procedurais para a TVD são desenvolvidas geralmente usando a
linguagem de programação Java, incluindo bibliotecas de componentes específicos
para a TVD. Todo o processo de produção de aplicações para televisão digital é
semelhante ao desenvolvimento de qualquer aplicação para computador. A grande
diferença está na forma de distribuição e nas características dessa aplicação que,
depois de prontas, são transmitidas juntamente com o sinal de televisão e
executadas num set-top-box. Atualmente a baixa capacidade de armazenamento,
processamento e memória dos aparelhos existentes são fatores limitantes para
aplicações que precisem usar mais recursos, limitando as possibilidades de
extensão dos componentes.
Apesar de ser semelhante ao desenvolvimento de aplicações para
computador, o desenvolvimento de aplicações para TVD requer um cuidado
especial, pois existem muitas diferenças entre um computador e uma televisão. Por
exemplo, enquanto que no computador o usuário dispõe de teclado e mouse, e
senta próximo à tela, na televisão o principal dispositivo de interação será o controle
remoto, e, no melhor caso, um teclado sem fio, estando o usuário sentado a alguns
metros da tela, querendo relaxar. Levando em conta que o interesse principal do
usuário da televisão é assistir ao programa que está passando na televisão, o
principal foco durante o desenvolvimento das aplicações deve ser o conteúdo.
O design e implementação de software para computadores móveis e para
ambientes de computação pervasiva (WEISER, 1993) apresenta vários problemas.
35
Aplicações devem gerenciar em tempo de execução a heterogeneidade de
contextos de entrega da informação em termos de capacidades do dispositivo,
largura de banda de rede, sistemas operacionais, entre outros. De fato, um usuário
pode querer acessar seus dados e/ou aplicações usando dispositivos diferentes em
diferentes contextos de uso: de PCs a telefones celulares. Os problemas
relacionados ao acesso à informação pertencem tanto à entrega (pode o dispositivo
rodar o serviço?) quanto à interface de usuário (como o usuário interage com o
serviço através do dispositivo?). A disciplina de IHC deve lidar com diversos
aspectos, tais como tamanho de tela, cores e formas de entrada e saída de
informações. Além disso, quando as aplicações são móveis ou pervasivas,
normalmente não é possível determinar com antecedência quais dispositivos estarão
envolvidos. Isto dificulta, por exemplo, fornecer um preview para os desenvolvedores
de conteúdo.
Quando transformando uma interface de usuário de um ambiente para outro,
técnicas de desenvolvimento tradicionais requerem um reprojeto da interface do
usuário para poder levar em conta restrições específicas. Para endereçar este
problema, muito trabalho tem sido feito em relação à geração (semi) automática e
adaptação das interfaces de usuário em diferentes sistemas e plataformas
(EISENSTEIN, VANDERDONCKT e PUERTA, 2001; NICHOLS et al., 2002). Eles
provêm diferentes formas de descrever a interface do usuário em um nível
independente de plataforma. Esta descrição abstrata independente de plataforma
então deveria ser instanciada em uma UI concreta dependente de plataforma
através de um mecanismo de renderização (como por exemplo, um navegador que
renderiza conteúdo HTML). Tais abordagens geralmente são baseadas em modelos:
modelos diferentes são usados juntos para descrever uma interface de usuário
completa. Trabalhos recentes começam a trazer esta abordagem para a TV Digital.
36
2.4 Conclusão
Existem diversos padrões internacionais que podem ser utilizados para o
desenvolvimento de conteúdo para a TVD. Nossa solução foi desenvolvida seguindo
o padrão GEM, podendo, desta forma, ser utilizada normalmente pelo padrão
brasileiro e europeu, os dois diretamente envolvidos no projeto SAMBA. Optamos
em um momento inicial não envolver o Ginga-NCL, para manter a compatibilidade
com os demais padrões.
Considerando que há dificuldades em relação à interface da aplicação devido
à grande quantidade de possibilidades de dispositivos utilizados para acessar a
informação, decidimos fazer com que a ferramenta faça um tratamento da interface
de forma transparente ao usuário, permitindo que o mesmo concentre seu foco no
desenvolvimento do conteúdo propriamente dito.
Capítulo 3 - CRIAÇÃO E GERENCIAMENTO DE
CONTEÚDO
Neste capítulo descrevemos algumas ferramentas de g erência de
conteúdo, enumerando suas funcionalidades, com o ob jetivo de
mostrar como estas funcionalidades podem ajudar o u suário leigo a
criar e compartilhar conteúdo.
3.1 Introdução
Uma aplicação é um meio pelo qual um usuário realiza uma tarefa,
não uma peça de software que é escrita para explorar as capacidades de
um dispositivo. (Banavar et al. 2000)
Com estas palavras, queremos enfatizar que o foco do desenvolvimento de
aplicações para múltiplos dispositivos deve ser a Informação transmitida ao usuário
(conteúdo). Tudo pode ser resumido como informação e a interação com a mesma.
O desenvolvimento para múltiplos dispositivos foca em permitir o acesso a
informação e serviços usando diversas plataformas, oferecendo múltiplas visões da
mesma informação e a possibilidade de coordenação dos serviços providos a um
usuário ou grupo de usuários.
Com a evolução das tecnologias relacionadas com a internet, e o advento da
Web 2.0, qualquer pessoa com o mínimo de conhecimento necessário passa a
poder criar aplicações que ficam hospedadas na Internet e que podem ser
acessadas por um grande número de aplicações e plataformas. Um grande número
de aplicações e serviços para criação e gerenciamento de conteúdo que são
baseados no paradigma da Web 2.0 dá ao usuário a habilidade de facilmente criar,
compartilhar e recontextualizar informação para se adequarem às necessidades de
diferentes audiências em diferentes tempos. Tal abordagem dá ao usuário uma
forma fácil de reunir diferentes tipos de conteúdo (produzidos por ele mesmo em
38
vários serviços ou por outros usuários) em um único local online, adicionando
diversas micro-aplicações que ajudam a enriquecer o conteúdo apresentado,
adicionando valor e interesse aos visitantes da página Web.
3.2 Sistemas de gerenciamento de conteúdo
Um sistema de gerenciamento de conteúdo (Content Management System -
CMS) é um sistema que apresenta um conjunto de ferramentas projetadas para
permitir a criação, modificação, organização e remoção de informação de forma
rápida e fácil, geralmente sem exigir conhecimentos de HTML e programação para
poder criar novos conteúdos.
Um CMS normalmente é uma aplicação online usada como método para
gerenciar conteúdo web, tendo sua aplicação básica a criação de sites de notícias e
documentos para uma comunidade aberta ou fechada de usuários. A principal
característica de um CMS é a facilidade de uso, tendo como objetivo principal
auxiliar os usuários inexperientes.
O CMS pode ser dividido em quatro áreas de funcionalidades principais:
criação de conteúdo, gerenciamento de conteúdo, publicação e apresentação.
3.2.1 Criação de conteúdo
A criação de conteúdo é a principal funcionalidade utilizada pelos autores.
Sem um processo de criação de conteúdo efetivo, um CMS não funciona bem.
Algumas das principais características são:
• Ambiente de autoração integrado : O CMS deve fornecer um
ambiente de autoração para os criadores de conteúdo, de forma que
permita o acesso a todas as características providas pelo CMS.
• Separação do conteúdo e da apresentação : Não é possível publicar
para múltiplos formatos sem uma separação entre o conteúdo e a
apresentação. A criação de conteúdo deve ser baseada em estilos,
com toda a formatação aplicada durante a publicação.
• Múltiplos autores : O CMS terá múltiplos usuários simultâneos, cada
um podendo criar um mesmo conteúdo ao mesmo tempo.
39
• Criação de metadados : Capturar metadados, tais como autor,
assunto, palavras-chave de um conteúdo, é um fator crítico quando se
trata de gerenciar um repositório grande de conteúdo.
• Ligações poderosas : Os autores podem criar links entre conteúdos
previamente criados, e estes devem ser estáveis no caso de uma
reestruturação do sistema.
• Criação simplificada : Não se deve exigir dos autores o uso de HTML
ou qualquer outro conhecimento técnico específico quando criando
conteúdo.
• Facilidade de uso e eficiência : Para um CMS ser bem-sucedido, não
deve apresentar dificuldades ao usuário para criar e manter conteúdo.
3.2.2 Gerenciamento de conteúdo
O ponto-chave da maioria das soluções de CMS consiste em um repositório
central com o suporte de diversas ferramentas para manipular e gerenciar o
conteúdo. Algumas das características-chave incluem:
• Segurança : Níveis adequados de segurança deve ser implementados
para proteger a integridade do conteúdo.
• Integração com sistemas externos : Um CMS geralmente é apenas
um de diversos sistemas utilizados para apresentar a informação. Uma
integração fácil com os modelos de negócio deve existir.
• Relatórios : Um CMS deve prover uma grande quantidade de
relatórios, tanto para os usuários quanto para os administradores.
3.2.3 Publicação
O sistema de publicação recupera o conteúdo armazenado no repositório e
gera as páginas finais. Este processo pode ser feito de forma dinâmica, no momento
do acesso, ou de forma regular, convertendo todo o conteúdo gerado durante um
determinado período de tempo. Em ambos os casos, os requisitos-chave são:
• Folhas de Estilo : A aparência final é controlada através de modelos
definidos em folhas de estilo, o que provê flexibilidade e
expansibilidade ao sistema.
40
• Modelos de páginas : O layout geral da página é especificado via
templates, ou modelos de páginas. Uma interface simplificada deve ser
fornecida para gerenciar este aspecto.
• Extensibilidade : Deve ser simples integrar pedaços de código, tais
como plugins, de forma a prover funcionalidades adicionais de
publicação. O CMS deve suportar um processo de melhoria contínua
no design da interface.
• Suporte a múltiplos formatos : O CMS deve publicar para múltiplos
formatos, tais como HTML para web, impresso, PDF, móvel, e mais.
Também deve ser possível adicionar suporte a novos formatos, os
quais serão necessários à medida em que novos padrões sejam
desenvolvidos. Para poder conseguir alta qualidade em todo formato, é
crítico que o conteúdo seja separado da apresentação no momento da
criação, o que permite o uso de diferentes folhas de estilo para cada
formato utilizado.
• Personalização : Informações diferentes podem ser apresentadas
baseadas em perfis de usuário ou metadados do conteúdo.
3.2.4 Apresentação
As páginas publicadas devem atender a certos padrões para poderem ser
utilizadas e apreciadas pelos usuários. Tais requisitos são importantes, pois tratam
da forma como o usuário irá perceber a informação passada. Os elementos chave
são:
• Usabilidade : Este requisito cobre todos os aspectos relacionados à
facilidade de uso, aprendizagem e eficiência.
• Acessibilidade : O CMS deve atender aos padrões internacionais de
acessibilidade, tais como o WAI (W3C Web Accessibility Initiative), de
forma a permitir um acesso fácil para todos os usuários.
• Independência de aplicação : O conteúdo criado deve poder ser
acessado em todas as principais aplicações utilizadas para navegação
e visualização de conteúdo.
41
• Funcionalidades limitadas do lado do cliente : O conteúdo deve
publicado de forma a ser acessível mesmo que algumas das
tecnologias envolvidas não estejam presentes.
• Velocidade : O tamanho da página deve ser limitado de forma a
garantir que o tempo de carregamento seja aceitável para o usuário no
seu dispositivo.
• Conformidade com os padrões : Todo o conteúdo deve ser publicado
de acordo com os padrões existentes, de forma a garantir a máxima
compatibilidade entre plataformas e aplicações.
• Navegação efetiva : Os usuários devem ser providos com auxílios à
navegação consistentes, usáveis e compreensivos.
• Metadados : Todo o conteúdo deve prover metadados suficientes para
permitir uma indexação e busca eficientes.
3.3 Ferramentas para gerência e compartilhamento de conteúdo
Existem muitas plataformas de CMS comerciais e de código aberto que
permitem a criação rápida e fácil de serviços online e portais para criação e
gerenciamento de conteúdo. É difícil definir quais características que formam um
CMS “completo”. Cada tipo oferece funcionalidades específicas de acordo com a
necessidade, podendo variar de simples weblogs, utilizados por um único usuário ou
grupo para publicar seus textos, wikis, que consistem em um formato colaborativo de
publicação de textos, sendo o mais famoso a wikipedia, até grandes aplicações
voltadas para empresas, com controle completo de usuários, fluxo de trabalho e
conteúdo. Dentre estes, selecionamos para estudo, com foco na criação de
conteúdo e personalização da apresentação, alguns dos sistemas de gerenciamento
e criação de conteúdo existentes, considerados amigáveis ao usuário, que são
amplamente utilizadas pelos usuários leigos e podem ser acessados de forma
gratuita: Google Page Creator, Weebly e Wordpress. Além disto, destacaremos uma
ferramenta desenvolvida anteriormente no LUQS, o laboratório onde esta pesquisa
se decorre.
3.3.1 Google Page Creator
O Google Page Creator (GOOGLE, 2007) é uma ferramenta online que
permite criar e publicar conteúdo voltado para a web, criada pela Google com a
42
finalidade de auxiliar o usuário leigo a criar páginas com conteúdo enriquecido em
poucos minutos. As principais características da ferramenta são as seguintes:
Editor WYSIWYG (What You See Is What You Get): Como demonstrado na
figura 3.1, o sistema utiliza uma forma de edição que permite criar o conteúdo ao
mesmo tempo em que se visualiza aproximadamente como sua página será
apresentada ao usuário final. Por um lado, esta forma de visualização apresenta ao
criador de conteúdo exatamente como a página seria, caso acessada por outra
pessoa usando o mesmo navegador que o criador de conteúdo. Por outro lado,
outros navegadores e, principalmente, outros dispositivos podem apresentar
diferenças quanto a esta visualização. As opções de formatação são apresentadas
na barra lateral.
Figura 3.1 - Criação de conteúdo no Google Page Cre ator
Gerenciamento de Conteúdo : O gerenciamento do conteúdo criado se dá
através de um gerenciador de páginas que apresenta página por página, sendo
necessário ao usuário acessar individualmente cada página para poder visualizar e
editar o conteúdo, como demonstrado na figura 3.2. As opções apresentadas ao
43
usuário para organização e busca do conteúdo criado são apenas de apresentar em
forma de lista ou de grade, e listar por ordem alfabética ou por ordem da última
edição feita.
Figura 3.2 - Gerenciamento do conteúdo (páginas) no Google Page Creator.
Personalização da apresentação : As figuras 3.3 e 3.4 apresentam as
opções de personalização da apresentação disponibilizadas pelo sistema para o
usuário. Tal personalização se dá através das escolhas de templates de cores e
imagens ( figura 3.3) e de templates de layout (figura 3.4). A quantidade de escolhas
oferecidas ao usuário em relação ao visual e cores são bastante variadas, porém as
opções de layout limitam-se a quatro possíveis organizações do conteúdo. Um
layout de página pode ter vários templates associados. Por exemplo, todos os
templates da figura 3.3 são associados ao segundo layout da figura 3.4.
44
Figura 3.3 - Seleção de templates para aparência do Google Page Creator
Figura 3.4 - opções de Layout para páginas do Googl e Page Creator.
45
Seleção de serviços adicionais para enriquecimento do conteúdo: O
Google Page Creator possibilita ao usuário selecionar pequenas aplicações
(denominadas gadgets) para complementar o conteúdo criado. Estes gadgets
podem ser criados pela própria Google ou por usuários com conhecimentos de
linguagens de programação que disponibilizam seus códigos. A figura 3.5 apresenta
a tela de seleção dos gadgets. Através destes gadgets acontece a integração do
conteúdo criado com outros sistemas.
Figura 3.5 - Tela de seleção de gadgets do Google Pa ge Creator.
3.3.2 Weebly
O Weebly (WEEBLY, 2007) é outra ferramenta online que permite criar e
publicar conteúdo para a web, fortemente baseada em interface drag-and-drop, ou
seja, um elemento é adicionado à página quando o usuário clica no elemento e o
arrasta até a página utilizando o mouse. As principais características da ferramenta
são as seguintes:
Editor WYSIWYG : Assim como o Google Page Creator, o Weebly permite ao
usuário editar diretamente sobre a página, permitindo, desta forma, criar o conteúdo
46
ao mesmo tempo em que se visualiza aproximadamente como sua página será
apresentada ao usuário final que esteja usando o mesmo navegador que o criador
de conteúdo. As opções de formatação são exibidas em uma barra apenas no
momento em que se seleciona um texto para editar. A figura 3.6 apresenta a página
da aplicação no momento da edição de um texto.
Figura 3.6 - Edição de texto no Weebly.
Gerenciamento de Conteúdo : O gerenciamento do conteúdo criado se dá
através de uma tela própria para esta funcionalidade, demonstrada na figura 3.7.
Cada página criada pelo criador de conteúdo é automaticamente adicionada à lista
de links apresentada ao usuário final, sem a necessidade de preocupação por parte
do criador de conteúdo. Caso necessário, é possível determinar se a página criada
será inserida ou não na lista de links apresentada ao usuário final.
47
Figura 3.7 - Gerenciamento de páginas no Weebly
Personalização da apresentação : A personalização da apresentação no
Weebly se dá de duas formas. Através da escolha de um template, são definidas as
cores e figuras de fundo da aplicação, como demonstrada na figura 3.8. Já para o
layout, os elementos inseridos são automaticamente empilhados na página de forma
a preencher o topo do espaço destinado ao conteúdo, sendo que usuário pode
inserir um elemento “duas colunas”, que divide o espaço em dois, e pode ser
inserido novamente, dividindo o espaço disponível em tantos quanto forem
necessários. A figura 3.9 apresenta um layout criado pelo usuário, com duas colunas
de texto e três colunas de figuras logo abaixo.
48
Figura 3.8 - Seleção de Template de apresentação do Weebly
Figura 3.9 - Exemplo de Layout criado pelo usuário n o Weebly.
Seleção de serviços adicionais para enriquecimento do conteúdo: O
Weebly fornece uma API de programação para os usuários criarem seus próprios
componentes a serem adicionados no sistema. Tais componentes podem ser
reutilizados por outros usuários do mesmo sistema. Além disso, existe um
49
componente “código”, onde o usuário pode inserir sua própria programação, caso
tenha conhecimentos para tal. Dentre os serviços já criados para o Weebly,
destacamos a integração com o Google Maps, com o serviço de publicação de
imagens Flickr e a possibilidade de integrar vídeos publicados nos serviços de
compartilhamento de vídeo através da Internet Youtube e Google Video. A figura
3.10 apresenta um exemplo de vídeo do Youtube adicionado a uma página do
usuário.
Figura 3.10 - Inserindo componente de vídeo no Weeb ly.
3.3.3 WordPress
O WordPress (WORDPRESS, 2007) é uma das ferramentas de publicação de
conteúdo na web mais utilizadas pelos weblogs, totalmente escrita na linguagem
PHP, e distribuída com código aberto. Para um usuário utilizar o Google Page
Creator ou o Weebly, basta um cadastro e utilizar o navegador, enquanto que no
WordPress é necessária a instalação e configuração do ambiente para que o usuário
leigo possa utilizá-lo. Porém, como um dos sistemas mais utilizados pelos weblogs,
as empresas de hospedagem de páginas web oferecem formas automatizadas e
50
gratuitas para a instalação do WordPress, sem que o usuário precise se preocupar
com as partes técnicas.
O WordPress adota uma abordagem diferenciada dos outros sistemas
apresentados, sendo considerado uma opção intermediária entre os sistemas
utilizados por empresas e os sistemas para usuários leigos, porém ainda mantendo
certa simplicidade e intuitividade para o usuário leigo. Dentre as suas características,
podemos citar:
Separação entre conteúdo e apresentação : O conteúdo e a apresentação
são tratados de forma completamente separadas, sendo desta forma mais simples
de tratar a publicação para diversas plataformas.
Editor WYSIWYG : Apesar de não visualizar como o conteúdo editado ficará
apresentado juntamente com toda a parte visual, o criador de conteúdo utiliza um
editor que permite definir exatamente como o conteúdo deve ser apresentado ao
usuário final, ignorando-se as modificações feitas pelo sistema de publicação. Ou
seja, caso o criador de conteúdo especifique no editor que a cor da letra de uma
determinada palavra será vermelha, esta palavra será apresentada vermelha ao
usuário final, porém onde não houver especificação, serão levadas em conta as
regras do formato de apresentação escolhido. A figura 3.11 apresenta a tela de
criação de conteúdo do WordPress. Note que ao mesmo tempo em que o conteúdo
é criado, já é possível determinar as categorias a que ele pertence, ou até mesmo
criar uma nova categoria que seja adequada ao conteúdo criado.
51
Figura 3.11 - criação de conteúdo no WordPress.
Gerenciamento de Conteúdo : O gerenciamento do conteúdo no WordPress
permite ao usuário realizar uma filtragem de acordo com todos os dados do
conteúdo criado, podendo ser filtrados por Nome, data de criação, categoria e autor,
permitindo uma melhor organização no caso de uma grande quantidade de conteúdo
criada. A figura 3.12 apresenta a tela inicial de gerenciamento do conteúdo, onde
podem ser apresentados os últimos 15 criados (no exemplo, apenas 5 são
mostrados).
52
Figura 3.12 - Gerenciamento do conteúdo no Wordpres s.
Personalização : O WordPress permite ao usuário selecionar um tema que
define as regras gerais da apresentação do conteúdo, tais como cores e layout. Para
os usuários avançados, é disponibilizado um editor de código-fonte, onde os
mesmos podem modificar o tema para se adequar às suas necessidades. A figura
3.13 mostra a tela de seleção dos temas pré-definidos, sendo que o tema escolhido
(Current Theme) é mostrado em destaque, com as demais opções disponíveis logo
abaixo (Avaliable Themes).
53
Figura 3.13 - Seleção de templates no WordPress
3.4 SAPEC-WEB
O Sistema de Apoio à Publicação e Edição de Conteúdo na Web (SAPEC-
WEB) é uma ferramenta que tem como finalidade fornecer apoio a um processo
sistemático de construção de material didático destinado a cursos de Educação à
Distância (EAD) (MATTOS et al., 2003). O SAPEC-WEB foi desenvolvido baseado
em padrões para a gerência de conteúdo e sua publicação em diversos dispositivos
(SILVA, 2005). Suas principais características são:
Editor WYSIWYG : Apesar de não visualizar como o conteúdo editado ficará
apresentado juntamente com toda a parte visual, o criador de conteúdo utiliza um
editor que permite definir exatamente como o conteúdo deve ser apresentado ao
usuário final, ignorando-se as modificações feitas pelo sistema de publicação, como
demonstrado na figura 3.14.
54
Figura 3.14 – Tela do SAPEC-WEB para edição de conteúdo
Gerenciamento de Conteúdo : O SAPEC-WEB gerencia seu conteúdo de
duas formas: em primeiro lugar, o usuário pode separar o conteúdo por projetos,
navegando por ele através da barra de navegação do lado esquerdo da tela, e em
segundo lugar, para cada projeto, o criador de conteúdo pode criar um modelo de
navegação que especifica, através de padrões, como todos os conteúdos
específicos do projeto são interligados. A figura 3.15 mostra um exemplo do modelo
de navegação criado a partir do padrão de navegação por frames. Cada retângulo
azul representa um frame da tela do conteúdo, e cada retângulo verde representa
um conteúdo que se encontra ligado aos frames.
55
Figura 3.15 – Tela de construção do modelo de naveg ação do SAPEC-WEB.
Cadastro de padrões de interface: Os padrões de interface determinam
como o SAPEC-WEB apresenta o conteúdo ao usuário final. Para estes padrões
poderem ser utilizados, antes devem ser cadastrados no sistema com o auxílio de
um programador e de um especialista em IHC, em uma seção específica para isto,
como demonstrado na figura 3.16. Alguns exemplos de padrões podem ser: menu
superior fixo, menu lateral fixo, texto simples, botão e texto hipermídia, entre outros.
56
Figura 3.16 – Tela de cadastro de padrões de Interf ace do SAPEC-WEB.
Personalização : O SAPEC-WEB permite ao criador de conteúdo construir a
Interface da apresentação do conteúdo, selecionando e organizando os padrões de
Interface previamente cadastrados, como demonstrado na figura 3.17.
Figura 3.17 – Tela de construção da Interface do SAPEC -WEB
57
Geração de conteúdo para múltiplos dispositivos : No momento do
cadastro dos padrões, o SAPEC-WEB permite ao programador e ao especialista de
IHC especificar como o padrão será apresentado em navegadores de outros
dispositivos, um processo que fica totalmente transparente ao criador de conteúdo,
sendo que o mesmo só deverá se preocupar com a construção para a WEB, e a
ferramenta converte automaticamente para os demais dispositivos.
3.5 Análise comparativa
Com o objetivo de proceder a uma análise entre as soluções selecionadas e
estudadas neste capítulo, construímos uma tabela comparativa (tabela 3.1) com as
ferramentas destinadas à criação e gerenciamento de conteúdo por usuários com
pouco conhecimento de programação.
As ferramentas estudadas foram selecionadas por oferecerem a maior
abstração da necessidade de programação para geração do conteúdo. Duas delas
apresentam recursos visuais que facilitam muito ao usuário criar seu conteúdo de
forma visual, porém não separam o conteúdo da apresentação, ou seja, as
informações de conteúdo e de interface são armazenadas juntas no mesmo banco
de dados, o que dificulta a adaptação do conteúdo para outros dispositivos. A
terceira separa o conteúdo da apresentação, sendo que o conteúdo criado somente
é ligado à apresentação no momento do acesso, porém exige um nível de
conhecimento mais elevado caso o usuário decida fazer personalizações mais
avançadas e a instalação de plugins (através de mudanças no código) para poder
suportar a publicação para múltiplos dispositivos. A última apresenta uma edição do
conteúdo separada da interface, porém para criar o conteúdo o usuário antes deve
criar a interface através dos padrões, padrões estes que devem ser previamente
cadastrados e programados. Todas as soluções apresentam a possibilidade da
personalização da apresentação através de templates, em maior ou menor grau.
Nossa proposta pretende reunir as facilidades apresentadas pelas aplicações,
permitindo uma personalização de forma mais simplificada, e apresentando uma
separação entre conteúdo e interface, de forma a permitir a publicação para diversos
dispositivos, incluindo a Televisão Digital Interativa.
58
Tabela 3.1 - Análise comparativa das ferramentas es tudadas
Categoria Exige
programação
Apoio Visual
(Editor
WYSIWYG)
Personalização conteúdo p/
múltiplos
dispositivos
Page
Creator
Serviço
Online
Não Conteúdo
editado
diretamente na
apresentação
Escolha de
templates de
cores e Layout.
Não
Weebly Serviço
Online
Não Conteúdo
editado
diretamente na
apresentação
Escolha de
templates de
cores, criação
de Layout
Não
WordPress Aplicação Não exige
para a criação
de conteúdo,
porém
necessária
para recursos
avançados e
apresentação
Conteúdo
editado
separado da
apresentação
Escolha de
templates pré-
definidos.
Edição
avançada
diretamente no
código
Fornece
suporte, mas
apenas com
o uso de
Plugins
SAPEC-
WEB
Serviço
Online
Exige
programação
para a criação
dos padrões
que serão
utilizados pelo
criador de
conteúdo
Conteúdo
editado
separado da
apresentação
Montagem da
interface a partir
da seleção e
organização de
padrões
previamente
cadastrados.
Sim.
Capítulo 4 - ARQUITETURA E FUNCIONALIDADES
No presente capítulo descrevemos a proposta deste t rabalho que
consiste em um sistema de apoio à publicação e ediç ão de conteúdo
para diversos dispositivos. Neste capítulo, são exp licados as
funcionalidades do sistema, sua arquitetura e imple mentação.
4.1 Introdução
Existe um grande número de aplicações que são comuns em diversas
plataformas, que apresentam o conteúdo de forma dinâmica, variando de simples
rolagem de texto e jogos de múltipla escolha a camadas de animação em mapas e
aplicações mais complexas, como compras. Enquanto que algumas destas
aplicações podem ser apresentadas de maneira estática, elas são mais atrativas
para o usuário final se proverem feedback dinâmico. Um ponto em comum destas
aplicações é que elas usam em sua maior parte, conteúdo estático, acrescentando
apenas alguma interatividade através de módulos adicionais.
Neste contexto, a ferramenta CUICA é utilizada para criar conteúdo estático e,
através dos módulos disponíveis, acrescentar interatividade e personalização para
permitir uma maior participação do usuário final neste conteúdo. Para tanto, é
necessário definir uma forma de representar os componentes interativos de cada
uma das plataformas que podem ser utilizadas para acessar o conteúdo. A solução
adotada foi de utilizar uma linguagem baseada em XML para representar estas
formas de apresentação do conteúdo e implementar plug-ins específicos para cada
plataforma de forma a permitir a apresentação das informações em cada um dos
dispositivos utilizados.
A primeira versão da ferramenta CUICA foi bastante simplificada em termos
de funcionalidade, pois foi desenvolvida para usuários com pouco ou nenhum
conhecimento prévio das tecnologias da TVDi, a fim de permitir aos mesmos
tomarem conhecimento das possibilidades e expressarem suas opiniões. A versão
evolutiva da ferramenta CUICA, que será apresentada neste capítulo, foi
60
desenvolvida usando a tecnologia PHP seguindo as tendências atuais da Web 2.0
com o objetivo de criar, editar e publicar conteúdo para múltiplos dispositivos.
Também foi construído, um módulo de visualização para a TVDi na linguagem JAVA
que acessa o conteúdo criado pela ferramenta. Desta forma, o usuário pode criar
conteúdo utilizando a internet e interagir com tais informações na TV.
Para melhor entendimento das funcionalidades do sistema, segue uma
apresentação dos possíveis usuários do sistema:
• Conteudista (ou criador de conteúdo): O sistema foi idealizado tendo
como foco o conteudista. Uma de suas atividades é construir a
interface das aplicações de visualização do conteúdo. Além disso, o
conteudista insere o conteúdo nas páginas e as gera para os
dispositivos definidos para o projeto.
• Designer: O designer utiliza a ferramenta para cadastrar e alterar
templates de interface e serviços interativos para que os mesmos
possam ser utilizados pelo conteudista.
• Usuário final: É o usuário para o qual o conteúdo foi criado, aqueles
que irão acessar a aplicação criada através da ferramenta. Vale
salientar que os conteudistas também são usuários finais.
4.2 Arquitetura Proposta
A ferramenta de criação de conteúdo permite aos usuários criar “aplicações”
simples a partir de templates genéricos (que envolvem aspectos como cores, menus
e fontes) e plug-ins que adicionam interatividade (widgets).
A solução é composta basicamente por quatro módulos principais:
- Módulo de gerenciamento de conteúdo (Content Management System - CMS);
- Módulo de interface; - Módulo de conversão; - Módulo de visualização.
61
4.2.1 Módulo de Gerenciamento de Conteúdo
O sistema de gerenciamento de conteúdo é o módulo da ferramenta que
fornece as funcionalidades para o usuário criador de conteúdo criar e editar as
informações através de uma interface simples.
Este módulo oferece todas as funcionalidades básicas de um sistema de
gerenciamento de conteúdo tais como:
- Permitir a criação e manutenção do conteúdo sem intervenção dos
profissionais, ou seja, permitir inserir, atualizar e gerenciar conteúdo sem que
o usuário precise saber HTML ou qualquer outra linguagem de programação.
- Criar e editar textos usando um editor WYSIWYG (What You See Is What You
Get – editor gráfico que permite editar o texto sem necessidade de saber
código);
- Fazer upload de imagens;
- Manter um repositório dos conteúdos criados;
- Identificar os usuários e seus papéis dentro do gerenciamento do conteúdo
(por exemplo, autores, editores e revisores);
- Garantir a separação do conteúdo da visualização;
- Entregar a mesma informação em diversos canais (por exemplo, notícias na
Web, RSS, TVDi).
Além destas funcionalidades, o usuário criador de conteúdo poderá escolher
entre os templates de apresentação de dados disponíveis e selecionar widgets para
complementar a interação. O diagrama de caso de uso representado na figura 4.1
apresenta as funcionalidades principais deste módulo.
62
Figura 4.1 - Visão de caso de uso do módulo de geren ciamento de conteúdo
Na tabela 4.1 segue uma descrição detalhada de cada caso de uso
Tabela 4.1 - Descrição dos casos de uso do módulo d e gerenciamento de conteúdo
Caso de
uso
Descrição
UC 1.1 Neste caso de uso são detalhadas as atividades de construção de conteúdo,
assim bem como as atividades relacionadas, como upload de imagens e sons
pelo usuário criador de conteúdo.
UC 1.2 Este caso de uso cobre as atividades relacionadas com a consulta e edição
de conteúdos já criados
UC 1.3 Neste caso de uso são detalhadas as atividades necessárias para busca e
visualização do conteúdo, permitindo o preview do conteúdo pelo criador de
conteúdo, onde ele visualizará como o conteúdo ficará, independente do
dispositivo usado para visualizar, ou seja, antes da aplicação das regras
específicas do dispositivo.
UC 1.4 Este caso de uso detalha as atividades de seleção da apresentação do
conteúdo, onde o criador de conteúdo selecionará os templates de
apresentação e de serviços interativos para complementar o conteúdo criado.
Todo conteúdo criado usando a ferramenta é obrigatoriamente classificado
com a ajuda de tags. Tags são palavras-chaves escolhidas pelo criador do conteúdo
que podem ser utilizadas, em vários momentos, pelos usuários, tanto o criador de
conteúdo quanto o usuário final, para classificar, ordenar e filtrar informações. Por
exemplo, quando o conteudista cria um aviso de um jogo de futebol para uma
63
comunidade, ele pode classificar o conteúdo usando as tags “futebol” e “esportes”.
Um mesmo conteúdo pode receber várias tags, desta forma ajudando a organizar as
informações sobre diversos pontos de vista.
4.2.2 Módulo de Interface
Este módulo permite ao designer criar e modificar templates de apresentação,
e registrar novos templates de interação.
Como discutido antes, o criador de conteúdo poderá escolher templates para
poder melhorar a apresentação do conteúdo, adicionando serviços interativos,
inclusive. Os templates podem ser separados em dois tipos: os templates de
apresentação de dados, que definem como a informação será entregue ao usuário
final, determinando detalhes como cores, posições e menus; e os templates de
serviços interativos, que funcionam como complementos da apresentação dos
dados, oferecendo interação adicional, tais como animações e votações, entre
outros. Os templates de serviços interativos são similares a widgets da Web, que
são micro-aplicações que fornecem conteúdo enriquecido digitalmente que podem
ser inseridos diretamente em uma página web ou blog. Existem muitos widgets web
que estão disponíveis para uso imediato, com funções variadas, de jogos e
mascotes virtuais a aplicações mais funcionais, como mapas, bate-papo, votações
de leitores e notícias RSS.
O formato XML é amplamente usado para a definição destes widgets. Entre
as aplicações que usam widgets mais conhecidas, podemos citar o browser web
Opera, que apresenta mini-aplicações criadas em XML ao usuário, os serviços de
criação e personalização de páginas do Google e a barra lateral do Windows Vista.
Nossa proposta para poder reutilizar estes templates, integrando-os aos
conteúdos criados, consiste em realizar a construção dinâmica da interface do
usuário a partir do documento XML que descreve todo o posicionamento relativo dos
elementos de interface, permitindo, desta forma, que a representação da interface
seja independente do dispositivo utilizado. Para cada template utilizado, há um
correspondente em formato XML e um plug-in adequado para que cada dispositivo
final utilizado (como a TVD ou um browser web) possa interpretá-lo.
64
A figura 4.2 apresenta o diagrama de caso de uso com as funcionalidades
principais deste módulo e a seguir a tabela 4.2 apresenta a descrição detalhada de
cada caso de uso.
Figura 4.2 - Visão de caso de uso do módulo de Inter face
Tabela 4.2 - Descrição dos casos de uso do módulo d e interface
Caso de
uso
Descrição
UC 2.1 Neste caso de uso são detalhadas as atividades de consulta, inclusão,
alteração e exclusão dos templates.
UC 2.2 Este caso de uso cobre as atividades relacionadas com a consulta, inclusão,
edição e exclusão de objetos visuais que são utilizados pelos templates.
Este módulo permite criar e editar os templates a serem utilizados para
visualizar o conteúdo. Estes templates são compostos por elementos de interface
simples (widgets). Para facilitar a geração, o sistema apresenta uma ferramenta que
permite reorganizar os elementos da interface e acrescentar elementos interativos
utilizando drag-and-drop (arrastar e soltar), como representado na figura 4.3. Desta
forma para acrescentar um elemento ou serviço, basta arrastar o ícone até a área da
aplicação e soltar, que automaticamente será acrescentado o elemento. Após
reorganizar os elementos da interface, os dados são salvos automaticamente no
banco de dados para serem posteriormente acessados pelo módulo de conversão
de dados.
65
Além disso, o usuário pode definir alguns conjuntos de características que
podem ser personalizadas, tais como cor ou figura de fundo. Estas características
são armazenadas para poderem ser aplicadas de acordo com as preferências do
usuário final.
Figura 4.3 - Editor de templates da ferramenta CUICA
O diagrama de classes representado na figura 4.4 descreve a estrutura lógica
utilizada pelo módulo de interface para representar de forma genérica a interface do
usuário final.
66
Figura 4.4 - Modelo de classe do módulo de interfac e
As informações ficam organizadas em páginas (Page), que descrevem a
interface constituída de objetos visuais (widgets). Um widget é um representante
genérico de qualquer objeto que possa ser acrescentado à página, sendo que para o
desenvolvimento inicial foram definidos os objetos básicos: imagens (Picture
Widget), textos (LabelWidget), botões (Button Widgets), parágrafos (TextField
Widget) e botões liga-desliga (ToggleButtonWidget). Para acrescentar um novo
elemento à ferramenta, este elemento deve ser incluído no sistema como um novo
widget, podendo ser o resultado de uma composição de outros elementos ou um
objeto visual completamente novo. Todos os widgets, sejam de apresentação ou de
interação, derivam da classe genérica widget.
4.2.3 Módulo de Conversão
O módulo de conversão é responsável pela publicação do conteúdo, fazendo
as conversões adequadas para cada plataf
recuperado do banco de dados do sistema de gerenciamento de conteúdo e
necessário, convertido para a plataforma
filtragem. O objetivo de usar o filtro é permitir uma construção
apresentação do conteúdo de acordo com o dispositivo e aplicação utilizados pelo
usuário final, garantindo que o resultado final seja o mais adequado ao dispositivo
utilizado.
A figura 4.5 apresenta a organização do módulo de conversão. No mom
do acesso, o protocolo HTTP torna obrigatória a identificação do navegador utilizado
para acessar o servidor
sistema do usuário e das tecnologias suportadas pelo mesmo sistema. O filtro, de
posse das informações recuperadas, recupera as informações do banco de dados e
realiza as conversões necessárias para que o conteúdo seja acessado da melhor
forma possível. Caso o usuário se identifique, o filtro também pode realizar
personalizações específ
mesmo.
Figura
Para o acesso via televisão, o conteúdo é convertido para o formato DVB
HTML e enviado juntamente com um documento XML que descreve a interface da
Módulo de Conversão
O módulo de conversão é responsável pela publicação do conteúdo, fazendo
as conversões adequadas para cada plataforma-alvo específica. O conteúdo é
recuperado do banco de dados do sistema de gerenciamento de conteúdo e
necessário, convertido para a plataforma-alvo, usando para isto um mecanismo de
filtragem. O objetivo de usar o filtro é permitir uma construção
apresentação do conteúdo de acordo com o dispositivo e aplicação utilizados pelo
usuário final, garantindo que o resultado final seja o mais adequado ao dispositivo
apresenta a organização do módulo de conversão. No mom
, o protocolo HTTP torna obrigatória a identificação do navegador utilizado
(SHAH, 2002), desta forma possibilitando a identificação do
sistema do usuário e das tecnologias suportadas pelo mesmo sistema. O filtro, de
osse das informações recuperadas, recupera as informações do banco de dados e
realiza as conversões necessárias para que o conteúdo seja acessado da melhor
Caso o usuário se identifique, o filtro também pode realizar
personalizações específicas do usuário através das preferências cadastradas pelo
Figura 4.5 - Esquema organizacional do módulo de conversão
Para o acesso via televisão, o conteúdo é convertido para o formato DVB
nviado juntamente com um documento XML que descreve a interface da
67
O módulo de conversão é responsável pela publicação do conteúdo, fazendo
alvo específica. O conteúdo é
recuperado do banco de dados do sistema de gerenciamento de conteúdo e, caso
, usando para isto um mecanismo de
filtragem. O objetivo de usar o filtro é permitir uma construção dinâmica da
apresentação do conteúdo de acordo com o dispositivo e aplicação utilizados pelo
usuário final, garantindo que o resultado final seja o mais adequado ao dispositivo
apresenta a organização do módulo de conversão. No momento
, o protocolo HTTP torna obrigatória a identificação do navegador utilizado
, desta forma possibilitando a identificação do
sistema do usuário e das tecnologias suportadas pelo mesmo sistema. O filtro, de
osse das informações recuperadas, recupera as informações do banco de dados e
realiza as conversões necessárias para que o conteúdo seja acessado da melhor
Caso o usuário se identifique, o filtro também pode realizar
icas do usuário através das preferências cadastradas pelo
Esquema organizacional do módulo de conversão
Para o acesso via televisão, o conteúdo é convertido para o formato DVB-
nviado juntamente com um documento XML que descreve a interface da
68
aplicação utilizada para visualizar o conteúdo. O anexo I apresenta a especificação
do XML de Interface utilizado, que foi criado para ser fiel ao modelo de dados
especificado para o módulo de interface (figura 4.4). Para o acesso via web, a
informação é apresentada ao usuário sob a forma de uma página web dinâmica,
utilizando a tecnologia PHP para o conteúdo e Ajax para os serviços interativos.
Já para o acesso via dispositivos móveis, como celulares e palms, devido à
grande variação de tecnologias, o formato escolhido para representar o conteúdo
será escolhido automaticamente no momento do acesso. Através de um banco de
dados com as informações de dispositivos e browsers, é possível para o sistema
identificar quais as tecnologias suportadas pelo dispositivo e, desta forma, preparar
o conteúdo específico de forma adequada. Quando a tecnologia utilizada não puder
ser identificada, a escolha sugerida é seguir o contexto padrão determinado pela
W3C para independência de dispositivos (DIP) (W3C, 2007)
Este módulo funciona de forma independente dos usuários, sendo um
processo transparente para ele.
4.2.4 Visualização do conteúdo
Este módulo representa aplicações específicas utilizadas em cada dispositivo
final para renderizar e apresentar as informações e serviços interativos. Como
explicado na conversão de dados, para os casos específicos de dispositivos móveis
e desktops, a plataforma utilizada é a web, e, desta forma, qualquer navegador que
siga os padrões determinados pela W3C deverá ser suportado.
Para a TV Digital Interativa, a solução adotada consiste em uma aplicação
desenvolvida em JAVA, que, ao ser acessada, monta sua interface dinamicamente
em tempo de execução, o que facilita a aplicação das regras de personalização.
69
Figura 4.6 - Estrutura da aplicação de visualização
A figura 4.6 ilustra a estrutura organizacional da aplicação de visualização do
conteúdo desenvolvida para a TVDi, a qual é composta de 3 camadas: Camada de
Dados, Camada de Controle e Camada de Apresentação. A camada de dados
possui 2 pacotes: o gerenciador de dados, que é responsável por receber o
documento XML do middleware que apresenta a descrição dos dados que estão
presentes no carrossel, retirando as informações necessárias para instanciar objetos
(aplicações, objetos visuais e dados) que serão utilizados pelas camadas superiores;
e o gerenciador de armazenamento, o qual armazena localmente as informações
necessárias pelo sistema, tais como fontes e imagens, de forma a permitir um
acesso mais rápido.
A camada de controle apresenta 3 pacotes com funções diferenciadas:
O Gerenciador de Aplicações, o Integrador, e o Gerenciador de Interface. O
Gerenciador de Aplicações recebe e agrupa as aplicações da camada de dados,
fazendo uma verificação de segurança e integridade e passando uma descrição para
o Gerenciador de Interface. O Integrador recebe dados e objetos visuais da camada
de dados e verifica com o gerenciador de aplicações as informações necessárias
(imagens, fontes) no momento, requisita à camada de dados e repassa as imagens,
fontes e outros objetos necessários para o Gerenciador de Aplicações e/ou o
Gerenciador de Interface, de acordo com o contexto. O Gerenciador de Interface,
A imagem não pode ser exibida. Talvez o computador não tenha memória suficiente para abrir a imagem ou talvez ela esteja corrompida. Reinicie o computador e abra o arquivo novamente. Se ainda assim aparecer o x vermelho, poderá ser necessário excluir a imagem e inseri-la novamente.
70
que é o pacote responsável pela representação visual do sistema, cria um modelo
da interface, organizando as informações (dados, objetos visuais) que recebe do
Gerenciador de Aplicações e do Integrador e aplicando as regras de personalização.
A camada de apresentação é responsável por representar na tela o
modelo criado pela camada de controle, usando para isso o pacote apresentador.
4.3 Instanciação da arquitetura
A arquitetura proposta foi instanciada em uma versão simplificada, com
apenas os recursos básicos a fim de ser utilizada pelos designers do projeto SAMBA
para elicitação das necessidades dos usuários finais do projeto e, posteriormente,
evoluída a partir da análise das necessidades levantadas utilizando a ferramenta
simplificada.
4.3.1 Características para a instanciação
De acordo com Alan Cooper (2003), usuários podem ser iniciantes,
intermediários e especialistas e ele também diz que os usuários não permanecem
por muito tempo como iniciantes, tendo em vista que eles possuem a tendência de
se tornarem usuários intermediários. Por esta razão, ele sugere projeto de interação
para usuários intermediários.
Tendo em vista esta sugestão, na versão simplificada a ferramenta foi
desenvolvida mantendo-se a mentalidade de KIS (Keep It Simple), simplificando ao
máximo a interação, tendo em vista o foco na informação, como produzi-la e como
apresentá-la. No momento da inserção de informações, o produtor de conteúdo
somente seleciona uma categoria de uma lista pré-definida, e informa o título e o
conteúdo em formato texto, podendo acrescentar imagens no conteúdo. Recursos
avançados, como os serviços interativos, foram omitidos.
Considerando a preocupação dos designers em obter as necessidades dos
usuários, fazendo com que eles compreendam as possibilidades da TVDi,
eliminamos parte do processo para múltiplos dispositivos, tendo apenas visualização
do conteúdo na TVDi e na Web. Não houve o uso direto do módulo de interface,
considerando apenas um template fixo. A tabela 4.3 mostra as diferenças entre as
versões.
71
Tabela 4.3 – Diferenças entre as duas versões da fe rramenta.
Ferramenta CUICA Simplificada CUICA Evoluída - Recursos Básicos
Módulo Web
(Criação e
Edição do
conteúdo)
- Template único;
- Seleção de uma categoria
pré-definida;
- Conteúdo em formato
texto simples;
- Seleção de um template de
apresentação pré-definido ou criação
de um novo template;
- Criar categorias;
- Conteúdo com formatação de texto
(cor, fonte) e imagens;
Módulo TVD
(Visualização
do conteúdo)
- Navegação e visualização
do conteúdo pelas
categorias do portal;
- Navegação e visualização do
conteúdo de acordo com o modelo
mental do usuário;
4.3.2 Funcionamento
A figura 4.7 representa o fluxo do sistema, desde o momento da criação do
conteúdo até sua visualização no dispositivo. Em resumo, o criador de conteúdo
acessa a ferramenta CUICA (módulo de gerenciamento de conteúdo) via internet,
publica seu conteúdo, o qual é armazenado no banco de dados da ferramenta e
posteriormente convertido para o formato específico de cada dispositivo alvo. O
usuário final utiliza a rede para poder manter uma interação bidirecional com o
servidor. No caso específico da TV Digital, a rede é acessada via canal de retorno,
enquanto que os demais dispositivos utilizam a internet.
A seguir, descrevemos em detalhe dois momentos do sistema, mais
especificamente, a geração do conteúdo na Web e o acesso da aplicação gerada na
TVD.
72
Figura 4.7 - Fluxo da ferramenta CUICA
4.3.3Geração na WEB
A geração do conteúdo no sistema Web consiste em duas etapas: geração de
templates e criação/edição de conteúdo. Apenas a criação/edição será discutida
aqui, pois, como dito anteriormente, não houve o uso do módulo de interface.
Na criação e edição de conteúdo, o criador de conteúdo, ao utilizar o sistema,
escreve o conteúdo utilizando as ferramentas disponíveis para edição de textos e
imagens. O editor de texto disponível para o usuário, representado na figura 4.8,
apresenta várias funcionalidades através de botões para formatação de texto, como,
por exemplo: cor da fonte, tamanho da fonte, estilo da fonte, cor de fundo, links,
numeração, marcadores, negrito, itálico, sublinhado, alinhamento à esquerda,
alinhamento à direita, alinhamento justificado, diminuir recuo, aumentar recuo,
dentre outras opções de formatação de texto.
73
Figura 4.8 - Editor de texto da ferramenta
4.3.4 Conversão
As aplicações desenvolvidas utilizando a ferramenta possuem a mesma
estrutura da aplicação portal de acesso, desenvolvida durante o projeto SBTVD, e
são facilmente integradas às categorias do portal. No momento da conversão do
conteúdo para o formato adequado a ser visualizado na TVDi, a ferramenta de
conversão gera também os metadados específicos para que esta aplicação seja
descrita de forma adequada e acessada através do portal de acesso.
4.3.5 Acesso na TVD
Durante o experimento para ilustrar aos usuários do projeto SAMBA como o
conhecimento gerado por esta ferramenta simplificada iria ser visualizada na TV, nós
fizemos uso da aplicação portal de acesso (figura 4.9), desenvolvida durante o
projeto SBTVD. A aplicação portal de acesso segue a mesma arquitetura proposta
para o módulo de visualização e seus componentes foram reutilizados para o
desenvolvimento de uma aplicação portal de notícias (figura 4.10), posteriormente
integrada ao portal de acesso. Isto é, a aplicação portal de notícias mostrou ao
usuário final o conteúdo criado usando a ferramenta CUICA.
74
Figura 4.9 – Portal de Acesso, desenvolvido durante o projeto SBTVD.
Figura 4.10 – Aplicação Portal de Notícias, integra da ao Portal de Acesso.
75
O usuário final, navegando pelo portal, pode acessar qualquer uma das
aplicações disponíveis para ele. No momento do acesso da aplicação, o módulo de
visualização da CUICA, instalado no STB e enviado também via broadcast com o
conteúdo criado em XML, é responsável pela interação do usuário com a aplicação.
O pacote gerenciador de dados lê o documento XML, cria os objetos
correspondentes, separando objetos de aplicações, dados e objetos visuais,
repassando as aplicações para o gerenciador de aplicações e os demais objetos
para o gerenciador de armazenamento. O gerenciador de armazenamento recebe os
dados do gerenciador de dados, armazenando localmente, formando uma memória
local, e repassa para o integrador quando requisitado.
O gerenciador de aplicações recebe as aplicações do gerenciador de dados e
verifica o estado da aplicação, utilizando informações do pacote integrador. Por
exemplo, verifica se a aplicação possui uma assinatura digital confirmando sua
origem, ou se todas as informações necessárias estão presentes. Após a
verificação, se o resultado for positivo, classifica, agrupa e passa um resumo da
aplicação (grupo, conteúdo, imagem utilizada para representação) para a camada de
apresentação. Caso o resultado seja negativo, descarta a aplicação.
O integrador é responsável por instanciar os objetos visuais (botões, textos,
imagens) que sejam necessários para a interface, verificando com o gerenciador de
aplicações quais as informações necessárias e envia um pedido para o gerenciador
de armazenamento, solicitando estes dados armazenados, repassando para o
gerenciador de aplicação ou para o gerenciador de interface conforme solicitado.
O gerenciador de interface pega as descrições das aplicações passadas pelo
gerenciador de aplicações e os objetos visuais do integrador, aplica as possíveis
personalizações e cria um modelo representativo da interface. Finalmente, o pacote
apresentador recebe o modelo criado pelo gerenciador de interface e apresenta ao
usuário, como representado na figura 4.11.
76
Figura 4.11 - Visualização na TVD
4.3.6 Integração do conteúdo criado no CUICA com um a estrutura
de aplicações de TVD
Nesta seção estamos interessados em mostrar como será possível integrar
um conteúdo criado no CUICA via WEB com uma aplicação executada no Set-Top-
Box, que permitirá a interação do usuário com o conteúdo mostrado na tela da TV.
O funcionamento geral, baseado na estrutura de aplicações de TVD, que é
responsável pela interação do usuário com o conteúdo, poderá ser o seguinte (ver
estrutura ilustrada na figura 4.12):
77
Figura 4.12 – Camadas de uma aplicação de TVD.
1) Os dados criados pelo CUICA (como notícias, por exemplo) são enviados
via broadcast juntamente com as aplicações, que permitirão que o usuário interaja
com seus componentes visuais de interface até encontrar o conteúdo desejado.
2) O Middleware, responsável pela composição da informação que provém do
carrossel na forma de dados, deve prover as informações necessárias às aplicações
interativas, através da implementação de algumas APIS. Por exemplo, se a
aplicação que requer a informação é o portal de acesso, a API deveria fornecer as
informações sobre aplicações e programas disponíveis.
3) Também existentes no STB, estão as aplicações, que representam os
serviços que podem ser acessados pelo usuário e são responsáveis pela adequação
da informação a ser manipulada pelo usuário.
4) No exemplo estudado nesta pesquisa, o usuário deverá acessar as notícias
navegando através do portal de acesso e, em seguida, através do portal de notícias,
até visualizar a informação desejada.
Considerando esta estrutura, seguem duas observações sobre a
extensibilidade e adaptação desta proposta:
1) Integração com um middleware:
1
2 3 4
78
O funcionamento desta estrutura, desde a transmissão dos dados até a
interação com eles pode ser o mesmo com qualquer middleware, uma vez que ele
se baseia em uma estrutura modular entre dados, aplicações (controle) e interface.
Isto garante que alterações feitas na interface não afetarão a manipulação dos
dados, e estes poderão ser reorganizados sem alterar a interface do usuário, e
devemos destacar que grande maioria das mudanças de uma aplicação de um
padrão de middleware para outro consiste na forma como as aplicações acessam os
dados do carrossel. Isto facilita a adaptação da aplicação entre diferentes padrões
de middleware.
Outro fator positivo que facilitaria nesta extensibilidade seria o fato de que as
partes de aplicações (controle) e interface podem ser desenvolvidos seguindo o
padrão GEM, e, conseqüentemente, seguindo o Ginga-J. Isto garante que as
aplicações podem ser utilizadas nos padrões internacionais compatíveis com o
GEM.
2) Personalização das interfaces das aplicações:
Uma aplicação, para poder se beneficiar de recursos de personalização e
interface, deve construir sua interface de forma dinâmica. Para tanto, definimos
durante o projeto SBTVD uma proposta de construção de interface de aplicações de
TVD a partir de descrições armazenadas em documentos XML. Nesta proposta, a
interface das aplicações de TVD é construída apenas quando acessada pelo usuário
de acordo com as descrições em XML. Isto permite uma forma mais fácil de aplicar
regras de personalização, modificando a interface de usuário em tempo de execução
sem a necessidade de recompilar toda a aplicação. Este mesmo documento XML
pode ser utilizado futuramente para descrever a interface de usuário em todos os
demais dispositivos.
79
4.3.7 Conclusão
Apresentamos, neste capítulo, a proposta do presente trabalho, explicando a
arquitetura e funcionamento da ferramenta CUICA.
A proposta deste trabalho busca oferecer um apoio na criação e
gerenciamento de conteúdo para múltiplos dispositivos, com um foco em especial
para a Televisão Digital. Nosso objetivo é fornecer uma ferramenta simples, que
possa ser utilizada por um usuário sem conhecimentos específicos de programação.
No próximo capítulo, mostraremos a utilização da CUICA no projeto SAMBA
e as evoluções originadas desta aplicação.
Capítulo 5 - APLICAÇÃO DA FERRAMENTA
No presente capítulo descrevemos a aplicação da fer ramenta
CUICA no projeto SAMBA, discutindo os resultados ob tidos e suas
contribuições.
5.1 Introdução
A ferramenta criada foi utilizada durante a realização de uma pesquisa de
desenvolvimento de aplicações de TVDi no projeto SAMBA. Nesta pesquisa, um dos
objetivos era identificar as necessidades dos usuários para desenvolvimento de
aplicações de TVDi que mostrassem conteúdos criados em comunidades locais.
A equipe do projeto discutiu a melhor forma de realizar esta identificação e
decidiram criar oportunidades mais próximas do cotidiano dos sujeitos pesquisados,
buscando envolvê-los e estimulá-los a imaginar as variadas aplicabilidades da TVDi.
Especificamente, pretendia-se ativar a sensibilidade dos envolvidos para que
pudessem fazer reflexões e críticas sobre a convergência entre a TVD e a Web e
sobre a interatividade com a TVD.
5.2 Metodologia Utilizada
Durante a pesquisa realizada pela equipe do projeto SAMBA, foi utilizada uma
metodologia chamada UsE (VASCONCELOS et al, 2007), baseada na etnografia,
que consiste em um estudo do usuário, abordando a relação entre as pessoas no
seu dia-a-dia e o uso que as mesmas fazem da tecnologia, objetivando conhecer
suas reais experiências, onde os resultados obtidos podem contribuir para a
identificação de serviços mais apropriados às necessidades dos indivíduos.
A metodologia UsE objetiva realizar o estudo do usuário, focando em suas
experiências. Para tanto, são definidas atividades para guiar os designers a
conhecer os usuários. Estas atividades são: Realizar recrutamento; Definir
Experiência do Usuário; Identificar soluções existentes; Definir Projeto da Interação
e Avaliar Mockup. Dentre estas atividades, destacamos a atividade de definir a
experiência do usuário, onde deve ocorrer o real entendimento das experiências dos
81
usuários, destacando a compreensão de quem são os usuários e o que eles
esperam do produto a ser desenvolvido.
Figura 5.1 - Detalhamento da atividade de definir a experiência do usuário.
Para poder definir a experiência do usuário, alguns profissionais envolvidos
no projeto SAMBA (um designer, um engenheiro de usabilidade e um psicólogo),
seguiram o detalhamento das atividades expresso na figura 5.1. Em primeiro lugar
foi realizado um recrutamento, aplicando questionários e selecionando amostras da
população que atendam aos perfis de toda a comunidade. As amostras selecionadas
então foram observadas, para que os envolvidos no projeto obtivessem uma idéia do
uso da tecnologia que fazem no dia-a-dia. Como a TVD é uma tecnologia
relativamente recente no Brasil, fez-se necessário o uso de aplicações, incluindo o
CUICA, para que os usuários pudessem ter uma idéia do que é possível de ser feito
na TVD.
5.3 Os usuários
Os usuários, sujeitos desta pesquisa, são pessoas da cidade de Barreirinhas
(MA), a qual foi escolhida para o projeto por possuir um dos IDH (índice de
desenvolvimento humano) mais baixos do Brasil. Os cidadãos de Barreirinhas foram
classificados em dois tipos de usuários: o usuário final (representado pelos
indivíduos da comunidade como um todo) e o usuário produtor de conteúdo
(representado pelos indivíduos que por algum motivo produzam conteúdo para
comunidade).
82
Participaram deste experimento 26 (vinte e seis) pessoas, sendo 11 (onze)
usuários telespectadores e 15 (quinze) usuários produtores de conteúdo. O perfil
delas mostrou-se bastante diversificado, pois foram inclusos pessoas na faixa etária
a partir de 08 (oito) anos até oitenta (oitenta) anos de idade, com grau de
escolaridade variando entre ensino fundamental à pós-graduação e faixa salarial
situada entre menos de um salário mínimo até acima de 10 salários mínimos e
categorias profissionais diversas: 05 crianças (estudantes do ensino fundamental),
03 estudantes do nível médio, 06 professores, 05 funcionários públicos das áreas de
telecomunicação, saúde, instituição de apoio à infância e adolescência, 02
vendedores, 04 pessoas ligadas ao segmento de turismo e 01 líder comunitário.
5.4 Ambiente de testes
Como não havia um sistema de TVDi real no local de testes, foi necessário
criar um ambiente de testes simulando as funcionalidades de TVDi. Apesar de
ambientes como media centers estarem disponíveis, devido ao foco do projeto em
inclusão digital e social através da televisão e considerando a realidade brasileira,
onde menos de 10% da população possui computador [Ref. IBGE], era necessário
simular o ambiente em que uma TV analógica é ligada a um Set-Top-Box.
Um STB funciona basicamente da mesma forma que um computador
simplificado. Tendo em isso em consideração, para reproduzir a operação de
aplicações de TVDi, foi utilizado o software iTV – ambiente de testes, desenvolvido
durante o projeto SBTVD a partir do emulador open-source XleTView. XleTView é
um emulador para visualizar Xlets MHP em um computador. Com o XletTView, é
possível reproduzir as aplicações usadas normalmente na TV e as aplicações
produzidas pelo projeto. As informações do emulador são passadas para a TV
através de uma placa de vídeo com saída S-Video, apresentando o resultado ao
usuário como se fosse o STB.
Para poder reproduzir a interação com o controle remoto do STB, foi utilizado
um receptor infravermelho que captura os sinais do controle e converte em
comandos para o computador, que rapidamente são convertidos como comandos
para a aplicação através do software do receptor infravermelho.
83
5.5 Os testes
Durante dois dias, a equipe mencionada acompanhou os usuários realizando
cenários de interação com a ferramenta. Tratava-se de cenários de criação de
conteúdo via Web e de visualização do conteúdo via TV usando a ferramenta
CUICA. Os experimentos foram realizados em um laboratório montado para simular
o uso dos recursos em ambiente de TVDi, e cada usuário demorava de 20 a 30min
para realizar o cenário. Enquanto um membro da equipe ficava do lado do usuário, o
outro membro observava as interações e fazia as devidas anotações e gravações.
Com o objetivo de responder as perguntas investigadoras desta pesquisa, a
equipe que aplicou o experimento observou tanto os usuários produtor de conteúdo
quanto os usuários telespectador usando a versão simplificada da ferramenta. O
objetivo era que no final do experimento a versão melhorada da ferramenta servisse
como ponto de partida para a equipe do projeto escrever o documento de visão do
projeto SAMBA. Neste documento deveriam ser descritas as necessidades dos
usuários e especificações de requisitos funcionais e não funcionais [11] das
aplicações a serem desenvolvidas pelo projeto SAMBA (que são aplicações para
TVDi que garantam a interatividade com conteúdos televisivos).
Antes da realização de cenários pelos usuários, a equipe de pesquisadores
informou sobre o equipamento, seu funcionamento, as possibilidades de
transformação da TV analógica em TVDi e outros esclarecimentos que se fizeram
necessários.
Durante a realização do cenário a equipe procurou conhecer as expectativas
e preferências dos usuários quanto ao uso de aplicações de TV interativa e da Web,
bem como identificar a aceitação de uma ferramenta deste estilo pelo usuário, a fim
de definir uma proposta coerente de interação com aplicações de TVDi.
As fotos do anexo 2 ilustram um usuário criando conteúdo a partir da
ferramenta Web pelo computador e um membro da comunidade tendo acesso ao
conteúdo que foi criado via Web através do portal de notícias na TV. Em ambos os
casos, com um membro da equipe de pesquisadores explicando a organização da
aplicação.
84
Durante estes experimentos, nossa participação consistiu em ficar no LUQS,
apoiando a equipe durante a execução dos cenários, nos seguintes momentos:
conversas online, simulação de mensagens eletrônicas através da televisão,
geração de enquetes para votação e geração de conteúdos adicionais, além dos
criados pelos usuários testados, este último a fim de demonstrar a possibilidade de
mais de uma pessoa criando conteúdo ao mesmo tempo.
5.6 Análise e resultados dos testes
A versão da ferramenta utilizada nos testes em Barreirinhas foi a versão
simplificada. O diagrama de tarefas da figura 5.2 apresenta as funcionalidades
presentes na versão da ferramenta utilizada. Para isto, foi usado o formalismo CTT.
Os usuários apenas utilizavam a ferramenta para gerenciar notícias de forma
simplificada, informando título, categoria e conteúdo, este último composto por texto
sem formatação e figuras. Já o diagrama da figura 5.3 apresenta o modelo de
tarefas para o módulo de visualização na TV, descrevendo as atividades
necessárias para acessar as notícias criadas.
Figura 5.2 - Diagrama de tarefas da ferramenta, ver são simplificada.
Figura 5.3 - Diagrama de tarefas do módulo de visua lização, versão simplificada.
85
A partir da interação com o sistema, observações e anotações realizadas
durante os testes, algumas sugestões e dificuldades se destacaram. A primeira
observação foi de que os usuários gostariam de ter mais opções de como
apresentar o conteúdo, e, além disso, incluir suas próprias categorias, em vez de
ficar limitados a uma lista pré-definida. Um estudo dos sistemas existentes mostrou
que a forma mais comum de apresentação do conteúdo dá-se utilizando templates
pré-definidos. Assim, uma coleção das formas mais comuns de organização da
informação foi incluída na versão evoluída, sob a forma de templates. O modelo de
tarefas da figura 5.4 apresenta as alterações realizadas de acordo com estas
observações.
Figura 5.4 - Diagrama de tarefas para criar notícia s na ferramenta, versão melhorada.
Quando navegando pela aplicação para acessar as notícias publicadas
utilizando as teclas de navegação, a equipe notou que alguns usuários tentavam
passar pelas notícias como se passa por um canal, enquanto que outros
apresentavam dificuldades com o uso do controle remoto. A maioria das ferramentas
existentes para visualização de conteúdo conta com uma manipulação direta, como
o mouse, para poder facilitar o acesso às informações, o que não é possível usando
o controle remoto. Desta forma, o modelo de navegação da versão evoluída foi
modificado para levar em conta o modelo mental da TV que o usuário possui, com
uma navegação direta de anterior e próximo, de forma circular, onde a última notícia
leva à primeira, exatamente como acontece com a navegação dos canais, como
ilustrado na figura 5.5.
86
Figura 5.5 - Diagrama de tarefas do módulo de visua lização, versão melhorada.
Alguns dos usuários mais exigentes ofereceram como sugestão a
possibilidade da visualização do conteúdo como ficaria apresentado na TV.
Incluímos a funcionalidade avançada de preview, com uma simulação da aplicação
montada em Flash dentro do módulo de criação de conteúdo do CUICA. Além disso,
foi inserido como recurso avançado um editor de layout e um editor de código, que
permitem aos usuários mais criativos fazer sua própria organização das
informações. Tais recursos ficam ocultos do usuário intermediário, tendo que ser
explicitamente solicitados. Estes recursos avançados estão demonstrados no
diagrama da figura 5.6.
Figura 5.6 - Opções avançadas da ferramenta CUICA, módulo de gerenciamento de conteúdo.
Após o uso da ferramenta e da interação com o conteúdo na TV, os usuários
se sentiram mais confiantes para expressar suas opiniões e necessidades sobre a
TVDi, facilitando o levantamento dos requisitos para a documentação do projeto.
Os usuários vêm apresentando uma necessidade cada vez maior de realizar
suas tarefas diárias (trabalho, diversão, aprendizagem) enquanto estão se movendo,
87
em qualquer lugar, a qualquer hora. Este fato torna necessário o uso de dispositivos
móveis com uma interface mais usável (CEREIJO, 2002). Com a evolução da
computação móvel e o desenvolvimento de dispositivos móveis cada vez mais
acessível, fica claro que há uma necessidade de uma solução que permita uma
integração contínua de serviços, utilizando a TVDi e recursos de mobilidade para
oferecer serviços aos usuários e de uma forma fácil de desenvolver conteúdo para
ambas as tecnologias.
Com o levantamento das necessidades e a observação da interação dos
usuários com a ferramenta, foi possível definir e reforçar alguns princípios de
usabilidade ligados à TVD. Entre eles, podemos citar:
Para o usuário final:
KIS (Keep It Simple) – O desenvolvimento da TVDi envolve vários níveis
sociais e tecnológicos, então a interação com as aplicações deve ser a mais simples
possível.
Manter a coerência com o modelo mental de TV do usu ário (conservar a
mesma noção de TV) – Nossa pesquisa leva em consideração a seguinte base: o
usuário não sabe o que a TVDi pode fazer por ele, então ele irá tentar usá-la como
vem usando a TV normal.
Garantir a interação livre de contexto – Os usuários não devem aprender
uma linguagem para acessar a informação disponível e para interagir através da
TVD, apesar de que será necessário a eles usar mais recursos do controle remoto
que os que usam normalmente.
Do lado do usuário criador de conteúdo:
Focar na reusabilidade – É importante fornecer aos produtores de conteúdo
estruturas previamente preparadas (templates), assim bem como evitar que eles se
preocupem em como os usuários receberão esta informação.
Garantir a produção do conteúdo independentemente d o contexto de
uso no qual ele é acessado – O criador de conteúdo não deve se preocupar em
como o conteúdo será acessado pelo usuário final (ambiente, dispositivo e
características pessoais – preferências e restrições).
88
5.7 Conclusão
Esta seção apresentou a aplicação da ferramenta durante o projeto SAMBA,
apresentando ao usuário leigo as possibilidades da televisão digital.
Uma versão simplificada da ferramenta CUICA foi desenvolvida e utilizada para
recolher as expectativas da população de uma cidade brasileira com baixo IDH,
mostrando as possibilidades da criação de conteúdo para a TV Digital e
esclarecendo os usuários de forma a permitir que os mesmos expressem suas
necessidades com um maior conhecimento e, conseqüentemente, uma maior
confiança.
Assim, a própria ferramenta pôde servir de base para um maior
esclarecimento dos envolvidos no projeto, permitindo a melhor definição dos
requisitos e conceitos necessários, além de ajudar a definir os princípios de
usabilidade que podem vir a orientar todos os envolvidos no projeto durante o
desenvolvimento das aplicações. Com este maior conhecimento, uma evolução da
ferramenta CUICA foi projetada e desenvolvida, podendo vir a ser um auxílio em
fases posteriores do projeto.
CONCLUSÃO
Este trabalho iniciou apresentando as diferentes tecnologias e possibilidades
de aplicações para a Televisão Digital Interativa, apresentando as diferenças e
semelhanças entre os diversos padrões existentes de TVD, incluindo as soluções
adotadas para o padrão de TVD brasileiro. Como a TV tem uma aplicação doméstica
mais popular que os computadores, podemos prever que os aparelhos de televisão
poderão vir a ser integrados com a Internet, convergência tal que permite o acesso
ao conteúdo da Internet na TV.
Depois foi apresentado um estudo sobre sistemas de gerenciamento de
conteúdo em geral, e uma análise comparativa entre aplicações populares para a
geração de conteúdo para a Internet.
Este trabalho apresentou uma solução para geração de conteúdo para
múltiplos dispositivos, utilizando interfaces dinâmicas, permitindo, desta forma, um
passo adicional em direção à convergência tecnológica da TV Digital com a Web.
O uso da ferramenta no projeto é considerado inovador sob três pontos de
vista:
i) do desenvolvedor de aplicações para TVD, onde se demonstrou uma
estrutura de aplicações para TVD que possibilita o desenvolvimento de aplicações
dinâmicas, que podem ser adaptadas aos diversos padrões internacionais.
ii) do usuário, onde se trouxe para o usuário uma proposta prática e reflexiva
capaz de ajudá-lo a entender uma tecnologia e a expressar seus sentimentos em
contextos de interação. No experimento realizado fomos surpreendidos
positivamente por observar que proporcionar estes momentos aos usuários não
tolheu a criatividade deles para expressarem suas necessidades, pelo contrário,
ajudou para que eles conseguissem se ver em cenários futuros e sofisticados de
interação, anteriormente impossível de imaginar e;
90
iii) dos envolvidos no desenvolvimento de sistemas centrados no usuário, onde
se apresentou uma ferramenta inicialmente simples, que permitiu a equipe de
desenvolvimento explicar facilmente aos participantes do experimento os cenários a
realizar. Durante as realizações dos cenários, as possibilidades de convergência
tecnológica, e conseqüentemente culturais bem como os estudos realizados em
sistemas semelhantes ajudou a equipe a evoluir a ferramenta, servindo como base
para a especificação de requisitos nos produtos do projeto de pesquisa em estudo.
6.1 Considerações finais
Casos bem sucedidos de participação da comunidade existem em diversos
países (como a Inglaterra) quando os usuários interagem com esta tecnologia da
TVDi, muitos deles usando a Web em paralelo com a TV. Esta tecnologia ainda está
chegando para os países da América Latina e no Brasil, porém representa uma
ferramenta importante para solucionar problemas relacionados à Inclusão Digital. No
entanto a população ainda não sabe o que um sistema de TVDi real pode oferecer.
E, para um projeto que objetiva a inclusão digital e social, deve-se levar em
consideração o usuário desde o início.
O projeto SAMBA se propõe a criar um sistema para a inclusão digital e social
da comunidade, utilizando a televisão como um meio. Desta forma, os requisitos
devem levar em conta as necessidades da população local. Como especificado
anteriormente, poucas pessoas possuíam uma idéia definida do que era a Televisão
Digital Interativa, pensando que a televisão digital significava apenas uma melhor
qualidade de áudio e som. O uso da ferramenta neste cenário auxiliou a trazer uma
melhor compreensão dos conceitos da TVDi, e permitiu que os usuários
expressassem suas opiniões de forma mais segura.
Além da Convergência de mídias, esta pesquisa mostrou que a convergência
não será somente tecnológica. Através de ferramentas como esta, haverá espaços
de interação futuros para uma convergência cultural. Isto significa uma
independência de sistemas de comunicação, em direção a diversas maneiras de se
criar e disseminar o conhecimento, além de propiciar processos colaborativos de
produção de conteúdo e a democratização da TV. Percebe-se assim que estamos
vivendo um momento critico de transição em que as produtoras de conteúdo terão
que ser mais abertas e negociarem melhor seus relacionamentos como os
91
telespectadores, para, por exemplo, transmitirem os conteúdos locais feitos pela
própria comunidade.
6.2 Trabalhos futuros
Como possível trabalho futuro, tendo em consideração a convergência
cultural, apresentamos uma idéia que consiste em uma expansão da ferramenta de
forma a disponibilizar conjuntos de regras para movimentação de figuras e textos,
além de uma interface amigável e simples de usar, que incentive a criatividade do
usuário ao possibilitar ao mesmo criar e compartilhar histórias ou experiências
pessoais, um processo conhecido como digital storytelling (LAMBERT, 2004).
Adicionalmente, dentro do projeto SAMBA pretendemos aplicar a ferramenta
em um cenário real, com diversas comunidades produzindo e visualizando conteúdo.
Utilizando a estrutura fornecida pelo projeto, pretendemos demonstrar a flexibilidade
da aplicação, sendo adaptada e utilizada tanto pelos usuários europeus quanto
pelos usuários brasileiros.
Por fim, aplicaremos a ferramenta em outros dispositivos, tais como celulares
e outros sistemas existentes, desenvolvendo os módulos respectivos para cada um
dos formatos utilizados.
BIBLIOGRAFIA
ARIB. ARIB STD B24 - ARIB Standard: Data Coding and Transmission Specification for Digital Broadcasting, Revision 3.2. 2002. ATSC. Standard A/100 - DTV Application Software Environment – Level 1(DASE-1).2003 ATSC. Advanced Television Systems Committe, disponível em: <www.atsc.org>. Acesso em 15.06.2007. BANAVAR, G et al. Challenges: An Application Model for pervasive computing. MobiCom 2000, pp. 266-274. 2000 BROADCAST PAPERS. Interactive TV and Datacasting Papers. 2004. Disponível em: <http://www.broadcastpapers.com/data/data.htm>. Acesso em 01.06.2007 COOPER, A., REIMANN, R. About Face 2.0 - The Essentials of Interaction Design. John Wiley, 2003. DIBEG. Digital Broadcasting Experts Group. Disponível em <www.dibeg.org>. Acesso em 02.06.2007 DVB. Digital Video Broadcasting Project. Disponível em: <www.dvb.org>. Acesso em 02.06.2007 EISENSTEIN J., VANDERDONCKT J., & PUERTA A. R. Applying Model-Based Techniques to the Development of UIs for Mobile Computers. In IUI 2001 International Conference on Intelligent User Interfaces, 69-76. 2001 ETSI. ETSI TS 102 812 - Digital Video Broadcasting (DVB) – Multimedia Home Platform (MHP) Specification 1.1.1”. ETSI Standard, 2003. ETSI. TS 102 819 V1.3.1: Digital Video Broadcasting (DVB) Globally Executable MHP version 1.0.2 (GEM 1.0.2). ETSI Standard, 2005. GARRETT, J. The elements of user experience: user-centered design for the web. Indiana: New Riders, 2003. GAWLINSKI, M. Interactive Television Production. Oxford: Focal Press, 288p., 2003 GOOGLE. About Google Page Creator. Disponível em <http://pages.google.com/-/about.html>. Acesso em 10.06.2007 HAVI. HAVi v1.1 - Home Audio Video Interoperability Version 1.1, 2001. Disponível em <www.havi.org>. Acesso em 02.06.2007.
93
ITU. ITU-T Recommendation J.200: Worldwide common core – Application environment for digital interactive television services”, 2001. ITU. ITU-T Recommendation J.202: Harmonization of procedural content formats for interactive TV applications, 2003. ITU. ITU-T Recommendation J.201: Harmonization of declarative content format for interactive television applications, 2004. JORDAN, P.; GREEN, W. Pleasure With Products: Beyond Usability”, Taylor Francis, 2002. LAMBERT, J. In interview with the writer. Polverigi, Italy, 2004. LEITE, L. E. C., et al. FlexTV . Uma Proposta de Arquitetura de Middleware para o Sistema Brasileiro de TV Digital . In Revista de Engenharia de Computação e Sistemas Digitais, v. 2, pp 29-50, 2005. LEVINSON, P. Digital McLuhan: a guide to the information millennium. New York: Routledge, 1999. MATTOS, F., MAIA, M., FURTADO, E. Formação Docente em Processos Colaborativos Online: Em Direção a Novos “Círculos de Cultura”?. In: IX WIE - Workshop de Informática na Escola, SBC 2003, 2003. MURRAY, J. H. Hamlet on the Holodeck: the future of narrative in cyberspace. New York: The Free Press,1997. NEGROPONTE, N. A Vida Digital. São Paulo: Cia das Letras, 1995. NICHOLS J. et al. Generating remote control interfaces for complex appliances. In User Interface Software and Technology. 2002 NORMAN, D. The invisible computer: why good products can fail, the personal computer is so complex, and information appliances are the solution. Cambridge, Massachusetts: MIT, 1999. PICCOLO L. & BARANAUSKAS, M. Desafios de Design para a TV Digital Interativa. In IHC 2006 – VII Simpósio Sobre Fatores Humanos em Sistemas Computacionais. Anais... Natal:2006. ROIBAS A. Novel Scenarios for Pervasive Gaming. In: Proc. Researching User Engagement with Technology Workshop, Middlesex University.
SATYANARAYANAN, M. Pervasive computing: vision and challenges. In Personal Communications, IEEE, Pittsburgh: Carnegie Mellon Univ., 2001.
SEFFAH, A.; JAVAHERY, H. Multiple User Interfaces: Cross-Platform Applications
and Context-Aware Interfaces. England: John Wiley & Sons, Ltd, 2004.
94
SHAH, S. et al. Web Hacking: Attacks and Defense. Addison Wesley, 2002
SILVA, M. Sistema de apoio à publicação e edição de conteúdo web para diversos
dispositivos utilizando padrões. Fortaleza: Universidade de Fortaleza, 2005.
SOARES, L. F. G. MAESTRO: The Declarative Middleware Proposal for the SBTVD.
In Proceedings of the 4th European Interactive TV Conference, Athens, 2006.
SOARES, P. et al. CUICA – Uma Ferramenta para Suportar a convergência da TV
Digital com a WEB a partir de uma Análise de possíveis Situações de Uso. IN:
Congresso Latino-Americano de Informática – CLEI 2007, Costa Rica, 2007
SUN. Java TV 1.0 - Java TV API Technical Overview: The Java TV API White Paper.
Sun Microsystems, 2000.
SWICK, R.; ACKERMAN, M. The X Toolkit: More Bricks for Building User-Interfaces,
or, Widgets for Hire. USENIX Winter, 1988
VASCONCELOS P. et al. UsE - Investigational Ethnographic Methodology and
Evaluation to the Local Television Channel Creation that allow Interaction with the
Community. EuroTV’ 2007
W3C. Device Independence Principles, 2003. Disponível em:
<http://www.w3.org/TR/2003/NOTE-di-princ-20030901/>. Acesso em 07.06.2005
WEEBLY, About Weebly. Disponível em: <http://www.weebly.com/about.html>.
Acesso em 10.06.2007
WEISER, M. The Computer for the 21st Century. Scientific American, v. 265, 94-104.
1991
WEISER, M. Some Computer Science Problems in Ubiquitous Computing,
Communications of the ACM, pp. 75 -84. 1993
WLADAWSKY-BERGER, I. Some Thoughts on Digital Convergence. Disponível em;
< http://irvingwb.typepad.com/blog/2006/01/some_thoughts_o.html>. Acesso em
16.05.2007
WONG, R e JESTY, R. Wireless Internet: Applications Technology and Market
Strategies.ARC group, 2002.
95
WORDPRESS, Getting Started with WordPress. Disponível em:
<http://codex.wordpress.org/Getting_Started_with_WordPress>. Acesso em
10.06.2007
ANEXO I
XML de Interface – definição e exemplo.
O código a seguir descreve o documento de definição de tipo (DTD –
Document Type Definition) do XML de interface utilizado durante os protótipos.
1. <?xml version="1.0" encoding="UTF-8"?>
2. <!ELEMENT portal (system?, templates?, pages?)> 3. <!ELEMENT templates (buttontemplate | labeltemplate | listboxtemplate |
scrollbartemplate | textfieldtemplate | togglebuttontemplate | containertemplate)+> 4. <!ELEMENT containertemplate (buttontemplate | labeltemplate | listboxtemplate |
scrollbartemplate | textfieldtemplate | togglebuttontemplate)+> 5. <!ELEMENT pages (page)+> 6. <!ELEMENT page (container)+> 7. <!ELEMENT container (event | button | label | picture | listbox | scrollbar | textfield |
togglebutton | icon)+> 8. <!ELEMENT buttontemplate EMPTY> 9. <!ELEMENT labeltemplate EMPTY> 10. <!ELEMENT listboxtemplate EMPTY> 11. <!ELEMENT scrollbartemplate EMPTY> 12. <!ELEMENT textfieldtemplate EMPTY> 13. <!ELEMENT togglebuttontemplate EMPTY> 14. <!ELEMENT button (#PCDATA|event)*> 15. <!ELEMENT picture EMPTY> 16. <!ELEMENT label (#PCDATA)> 17. <!ELEMENT event (#PCDATA)> 18. <!ELEMENT scrollbar (event*)> 19. <!ELEMENT textfield (event*)> 20. <!ELEMENT togglebutton (event*)> 21. <!ELEMENT system (event)+> 22. <!ELEMENT listbox (event*)> 23. <!ELEMENT icon EMPTY >
24. <!ATTLIST portal
version CDATA #IMPLIED >
25. <!ATTLIST page
name ID #REQUIRED background CDATA #IMPLIED >
26. <!ATTLIST container
name ID #REQUIRED background CDATA #IMPLIED x CDATA #REQUIRED y CDATA #REQUIRED >
27. <!ATTLIST containertemplate
name ID #REQUIRED background CDATA #IMPLIED >
97
28. <!ATTLIST buttontemplate name ID #REQUIRED width CDATA #IMPLIED height CDATA #IMPLIED x CDATA #IMPLIED y CDATA #IMPLIED image CDATA #IMPLIED captionx CDATA #IMPLIED captiony CDATA #IMPLIED captiondropx CDATA #IMPLIED captiondropy CDATA #IMPLIED selectedimage CDATA #IMPLIED pressedimage CDATA #IMPLIED disabledimage CDATA #IMPLIED font CDATA #IMPLIED fontsize CDATA #IMPLIED fontcolor CDATA #IMPLIED fontfocuscolor CDATA #IMPLIED fontdisabledcolor CDATA #IMPLIED fontpressedcolor CDATA #IMPLIED >
29. <!ATTLIST button
name ID #IMPLIED x CDATA #IMPLIED y CDATA #IMPLIED width CDATA #IMPLIED height CDATA #IMPLIED caption CDATA #IMPLIED captionx CDATA #IMPLIED captiony CDATA #IMPLIED captiondropx CDATA #IMPLIED captiondropy CDATA #IMPLIED template CDATA #IMPLIED image CDATA #IMPLIED selectedimage CDATA #IMPLIED pressedimage CDATA #IMPLIED disabledimage CDATA #IMPLIED font CDATA #IMPLIED fontsize CDATA #IMPLIED fontcolor CDATA #IMPLIED fontfocuscolor CDATA #IMPLIED fontdisabledcolor CDATA #IMPLIED fontpressedcolor CDATA #IMPLIED action CDATA #IMPLIED enabled (true | false | 0 | 1) "true" >
30. <!ATTLIST icon
name ID #IMPLIED x CDATA #IMPLIED y CDATA #IMPLIED width CDATA #IMPLIED height CDATA #IMPLIED image CDATA #REQUIRED selectedimage CDATA #IMPLIED action CDATA #IMPLIED enabled (true | false | 0 | 1) "true" >
98
31. <!ATTLIST picture name ID #IMPLIED x CDATA #REQUIRED y CDATA #REQUIRED image CDATA #REQUIRED >
32. <!ATTLIST labeltemplate name ID #REQUIRED width CDATA #IMPLIED height CDATA #IMPLIED x CDATA #IMPLIED y CDATA #IMPLIED font CDATA #REQUIRED fontsize CDATA #IMPLIED fontcolor CDATA #IMPLIED textalign (left | right | center) "left" autosize (true | false | 0 | 1) "false" wordwrap (true | false | 0 | 1) "false" >
33. <!ATTLIST label
name ID #IMPLIED x CDATA #IMPLIED y CDATA #IMPLIED width CDATA #IMPLIED height CDATA #IMPLIED template CDATA #IMPLIED font CDATA #IMPLIED fontsize CDATA #IMPLIED fontcolor CDATA #IMPLIED textalign (left | right | center) "left" autosize (true | false | 0 | 1) "false" wordwrap (true | false | 0 | 1) "false" >
34. <!ATTLIST listboxtemplate
name ID #IMPLIED width CDATA #IMPLIED height CDATA #IMPLIED font CDATA #IMPLIED fontsize CDATA #IMPLIED fontcolor CDATA #IMPLIED background CDATA #IMPLIED backgroundfocus CDATA #IMPLIED backgroundstyle (normal | tiled) "normal" selitembackground CDATA #IMPLIED selitembackgroundfocus CDATA #IMPLIED selitembackgroundstyle (normal | tiled) "normal" selitemfontcolor CDATA #IMPLIED scrollbar CDATA #IMPLIED scrollbarbackground CDATA #IMPLIED scrollbarbackgroundstyle (normal | tiled) "normal" scrollbarknob CDATA #IMPLIED scrollbarwidth CDATA #IMPLIED borderx CDATA #IMPLIED bordery CDATA #IMPLIED itemborderx CDATA #IMPLIED itembordery CDATA #IMPLIED itemheight CDATA #IMPLIED
99
>
35. <!ATTLIST listbox name ID #IMPLIED x CDATA #REQUIRED y CDATA #REQUIRED width CDATA #IMPLIED height CDATA #IMPLIED template CDATA #IMPLIED font CDATA #IMPLIED fontsize CDATA #IMPLIED fontcolor CDATA #IMPLIED background CDATA #IMPLIED backgroundfocus CDATA #IMPLIED backgroundstyle (normal | tiled) "normal" selitembackground CDATA #IMPLIED selitembackgroundfocus CDATA #IMPLIED selitembackgroundstyle (normal | tiled) "normal" selitemfontcolor CDATA #IMPLIED scrollbar CDATA #IMPLIED scrollbarbackground CDATA #IMPLIED scrollbarbackgroundstyle (normal | tiled) "normal" scrollbarknob CDATA #IMPLIED scrollbarwidth CDATA #IMPLIED borderx CDATA #IMPLIED bordery CDATA #IMPLIED itemborderx CDATA #IMPLIED itembordery CDATA #IMPLIED itemheight CDATA #IMPLIED >
36. <!ATTLIST scrollbartemplate
name ID #IMPLIED width CDATA #IMPLIED height CDATA #IMPLIED background CDATA #IMPLIED backgroundstyle (normal | tiled) "normal" knob CDATA #IMPLIED knobfocus CDATA #IMPLIED reversed CDATA #IMPLIED maximum CDATA #IMPLIED minimum CDATA #IMPLIED pagestep CDATA #IMPLIED >
37. <!ATTLIST scrollbar
name ID #IMPLIED x CDATA #REQUIRED y CDATA #REQUIRED width CDATA #IMPLIED height CDATA #IMPLIED template CDATA #IMPLIED background CDATA #IMPLIED backgroundstyle (normal | tiled) "normal" knob CDATA #IMPLIED knobfocus CDATA #IMPLIED reversed CDATA #IMPLIED maximum CDATA #IMPLIED minimum CDATA #IMPLIED pagestep CDATA #IMPLIED
100
>
38. <!ATTLIST textfieldtemplate name ID #IMPLIED width CDATA #IMPLIED height CDATA #IMPLIED maxlength CDATA #IMPLIED validchars CDATA #IMPLIED font CDATA #IMPLIED fontsize CDATA #IMPLIED fontcolor CDATA #IMPLIED background CDATA #IMPLIED backgroundfocus CDATA #IMPLIED backgroundstyle (normal | tiled) "normal" borderx CDATA #IMPLIED bordery CDATA #IMPLIED >
39. <!ATTLIST textfield
name ID #IMPLIED x CDATA #REQUIRED y CDATA #REQUIRED width CDATA #IMPLIED height CDATA #IMPLIED template CDATA #IMPLIED maxlength CDATA #IMPLIED validchars CDATA #IMPLIED font CDATA #IMPLIED fontsize CDATA #IMPLIED fontcolor CDATA #IMPLIED background CDATA #IMPLIED backgroundfocus CDATA #IMPLIED backgroundstyle (normal | tiled) "normal" borderx CDATA #IMPLIED bordery CDATA #IMPLIED >
40. <!ATTLIST togglebuttontemplate
name ID #REQUIRED width CDATA #IMPLIED height CDATA #IMPLIED normalimage CDATA #IMPLIED normalfocusimage CDATA #IMPLIED checkedimage CDATA #IMPLIED checkedfocusimage CDATA #IMPLIED >
41. <!ATTLIST togglebutton
name ID #IMPLIED x CDATA #REQUIRED y CDATA #REQUIRED width CDATA #IMPLIED height CDATA #IMPLIED template CDATA #IMPLIED normalimage CDATA #IMPLIED normalfocusimage CDATA #IMPLIED checkedimage CDATA #IMPLIED checkedfocusimage CDATA #IMPLIED action CDATA #IMPLIED enabled (true | false | 0 | 1) "true"
101
checked (true | false | 0 | 1) "false" >
42. <!ATTLIST event
type CDATA #REQUIRED wait (true | false | 0 | 1) "false" >
Através da combinação destes elementos, podemos definir a interface da
aplicação. O exemplo a seguir define a interface de uma aplicação Portal, com seus
elementos definidos de acordo com o DTD descrito anteriormente.
1. <?xml version="1.0" encoding="UTF-8"?> 2. <!DOCTYPE portal SYSTEM "interface.dtd"> 3. <portal> 4. <templates> 5. <!-- template de botão, x e y são relativos ao container em que está inserido --
> 6. <buttontemplate name="templateBotao" captionx="5" captiony="55" x="15"
y="5" 7. font="Tireasias" fontcolor="white" fontfocuscolor="yellow"/> 8. <!-- template de label, x e y são relativos ao container em que está inserido --> 9. <labeltemplate name="templatehint" font="Tireasias" fontcolor="cyan" x="5"
y="85" 10. fontsize="20" height="300" width="150"/> 11. </templates> 12. <pages> 13. <page name="PaginaInicial" background="pics/shape.png"> 14. <container name="comunicacao" x="335" y="45">
a. <button caption="Comunicação" name="btComunic" image="pics/comunic_up.png"
b. selectedimage="pics/comunic_over.png" template="templateBotao"> c. <event type="FocusGained"> labelComunic.setVisible(true); </event> d. <event type="FocusLost"> labelComunic.setVisible(false); </event> e. <event type="onClick"> page.comunicacao(); </event> f. </button> g. <label name="labelComunic" template="templatehint">Envie e receba
mensagens pela sua h. TV</label>
15. </container> 16. <container name="informacao" x="485" y="45">
a. <button caption="Informação" name="btInfo" image="pics/info_up.png" b. selectedimage="pics/info_over.png" template="templateBotao"> c. <event type="FocusGained"> labelInfo.setVisible(true); </event> d. <event type="FocusLost"> labelInfo.setVisible(false); </event> e. <event type="onClick"> page.informacao(); </event> f. </button> g. <label name="labelInfo" template="templatehint">Leia as principais
notícias do dia</label> 17. </container> 18. <container name="educacao" x="35" y="275">
a. <button caption="Educação" name="btEduc"
102
image="pics/educ_up.png" b. selectedimage="pics/educ_over.png" template="templateBotao"> c. <event type="FocusGained"> labelEduc.setVisible(true); </event> d. <event type="FocusLost"> labelEduc.setVisible(false); </event> e. <event type="onClick"> page.educacao(); </event> f. </button> g. <label name="labelEduc" template="templatehint">Leia e assista aulas
pelo seu h. televisor</label>
19. </container> 20. <container name="acessorios" x="185" y="275">
a. <button caption="Acessórios" name="btAces" image="pics/aces_up.png"
b. selectedimage="pics/aces_over.png" template="templateBotao"> c. <event type="FocusGained"> labelAces.setVisible(true); </event> d. <event type="FocusLost"> labelAces.setVisible(false); </event> e. <event type="onClick"> page.acessorios(); </event> f. </button> g. <label name="labelAces" template="templatehint">Tenha sempre
vários acessórios à h. mão</label>
21. </container> 22. <container name="entretenimento" x="335" y="275">
a. <button caption="Entretenimento" name="btEntret" image="pics/entret_up.png"
b. selectedimage="pics/entret_over.png" template="templateBotao"> c. <event type="FocusGained"> labelEntret.setVisible(true); </event> d. <event type="FocusLost"> labelEntret.setVisible(false); </event> e. <event type="onClick"> page.entretenimento(); </event> f. </button> g. <label name="labelEntret" template="templatehint">Divirta-se com
músicas, jogos e h. fotos</label>
23. </container> 24. </page> 25. </pages> 26. </portal>
ANEXO II
Aplicação da ferramenta na comunidade de Barreirinh as.
Figura Anexo 1 - Usuário criando conteúdo usando a ferramenta Web
Figura Anexo 2 - Usuário acessando conteúdo via TVDi
ANEXO III
O Projeto SBTVD e a participação do Ceará.
O projeto SBTVD reuniu pesquisadores de várias universidades e centros de
pesquisa, envolvendo a todos para compor um sistema de televisão digital, além do
desenvolvimento de novas características que se adequassem ao contexto da
realidade brasileira.
No lugar da simples escolha de um dos padrões existentes
(americano, europeu e japonês), o atual governo teve a visão de instituir o
SBTVD (Sistema Brasileiro de TV Digital), um consórcio de pesquisa
comissionado para o estudo e desenvolvimento de um modelo que
atendesse aos interesses sociais, tecnológicos, culturais e econômicos da
nação. O interesse social estaria contemplado por um modelo que
privilegiasse a interatividade, permitindo o uso de serviços digitais,
possivelmente a internet, promovendo uma ação efetiva de inclusão digital
sem precedentes. O econômico vai desde a independência de um padrão e
seus royalties associados à possibilidade de um modelo exportável de TV
digital interativa, capaz de interessar grandes mercados emergentes com
condição geográfico-sociais semelhantes às do Brasil. O tecnológico estaria
na valorização da competência nacional, dando-lhe chance de se
consolidar, por exemplo, no campo do software (midlleware e aplicativos) e
o cultural no estímulo à produção de conteúdo pela criação de um mercado
próprio. (Prof. Dr. Mauro Oliveira, em artigo publicado no Jornal “O POVO”
de Fortaleza)
O principal objetivo do SBTVD foi reunir as informações necessárias para que
o governo brasileiro pudesse tomar uma decisão em relação ao modelo aberto do
sistema de TV Digital brasileiro. No Ceará, o consórcio AIMCOR (Aplicações
Interativas para o Modelo Comercial e de Referência do Sistema Brasileiro de
Televisão Digital), composto por UNIFOR, UFC, CEFET-CE e Instituto Atlântico, foi
responsável pela pesquisa e desenvolvimento de aplicações para a Televisão digital,
mais especificamente as aplicações de Portal de Acesso, Guia de Programação
Eletrônica (EPG), Votação Eletrônica (T-VOTO) e Comunicação Eletrônica (T-MAIL).
Por muito tempo, principalmente no final do projeto, houve uma preocupação
de que haveria a adoção integral de um dos padrões internacionais, sem considerar
105
as pesquisas que foram desenvolvidas pela sociedade acadêmica brasileira. Tal
medida seria um erro, pois, como destacado pelos professores Luiz Fernando
Gomes Soares da PUC-Rio e Guido Lemos de Souza Filho, da UFPB:
É nas inovações brasileiras que reside a certeza de criação de
empregos de alta qualificação no país, onde o domínio da tecnologia de
ponta é imperativo. A relevância social da definição de um Sistema
Brasileiro de TV Digital, cujo domínio da tecnologia, trazida pelas
contribuições da academia, é essencial para a independência tecnológica
do Brasil, inclusive para sua indústria de produção de conteúdos e de
software. (Luis Fernando Gomes Soares e Guido Lemos de Souza Filho, em
carta aberta à sociedade)
Como resultado do projeto SBTVD, um novo padrão, denominado ISDTV-T foi
criado e adotado no Brasil, adotando as inovações que foram introduzidas durante o
SBTVD.
O SBTVD, ao contrário do SIVAM, decidido à revelia da inteligência
nacional, é um sucesso de planejamento e implementação que seduziu a
academia de norte a sul do país de Monteiro Lobato. Foram envolvidos mais
de 1.500 pesquisadores e 80 instituições de P&D que laboraram por uma
solução para a TV digital brasileira, sem xenofobia, mas também com
competência, orgulho e soberania. Tal solução poderia envolver os sub-
padrões internacionais estabelecidos, o que é próprio da tecnologia
globalizada, a exemplo do que ocorre com os aviões da Embraer que se
valem de turbinas, parafusos e o que mais seja preciso, fabricados alhures,
sem que percam com isso sua decisiva nacionalização. No mundo
contemporâneo, o mercado das comunicações é tão ou mais importante
que o da aviação, assim como é o da tecnologia da informação e da
comunicação. O advento da TV digital é o que se chama de uma janela de
oportunidade. Na lógica da sociedade do conhecimento, tão ou mais
importante que o produto é a competência tecnológica que se adquire ao
desenvolvê-lo. (Prof. Dr. Mauro Oliveira, em artigo publicado no Jornal “O
POVO” de Fortaleza)