proposta de um modelo de interacao humano-computador … bonifacio da silva... · interação...

66
UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA - DEPARTAMENTO DE INFORMÁTICA ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB PROPOSTA DE UM MODELO DE INTERAÇÃO HUMANO-COMPUTADOR PARA DEFICIÊNTES VISUAIS EM WEBSITES Winsley Bonifácio da Silva Prof. Dr. Sérgio Roberto Pereira da Silva Orientador Maringá - 2006

Upload: buituyen

Post on 30-Nov-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA - DEPARTAMENTO DE INFORMÁTICA

ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB

PROPOSTA DE UM MODELO DE INTERAÇÃO HUMANO-COMPUTADOR

PARA DEFICIÊNTES VISUAIS EM WEBSITES

Winsley Bonifácio da Silva

Prof. Dr. Sérgio Roberto Pereira da Silva Orientador

Maringá - 2006

UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA - DEPARTAMENTO DE INFORMÁTICA ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB

PROPOSTA DE UM MODELO DE INTERAÇÃO HUMANO-COMPUTADOR

PARA DEFICIÊNTES VISUAIS EM WEBSITES

Winsley Bonifácio da Silva

Trabalho submetido à Universidade Estadual de Maringá

Como requisito para obtenção do título de

Especialista de Desenvolvimento de Sistemas para Web.

UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA - DEPARTAMENTO DE INFORMÁTICA ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB

Winsley Bonifácio da Silva

PROPOSTA DE UM MODELO DE INTERAÇÃO HUMANO-COMPUTADOR

PARA DEFICIÊNTES VISUAIS EM WEBSITES

Profa. Ms. Josiane Melchiori Pinheiro Ferreira Ass.: __________________ Profa. Ms. Raqueline Ritter de Moura Penteado Ass.: __________________ Prof. Dr. Sérgio Roberto. Pereira da Silva (Orientador) Ass.: __________________

DEDICATÓRIA

Consagro este trabalho a Deus e o dedico a meus

familiares e amigos que me deram total ajuda e

carinho para que eu pudesse realizar esta

Monografia e especialmente a minha esposa

Viviane e minha filha Eloísa, que foram as mais

penalizadas com a minha ausência por horas de

dedicação a esta Monografia.

AGRADECIMENTOS

Agradeço este trabalho primeiramente a

Deus por ter me capacitado com

inteligência e sabedoria para que pudesse

realizar esta Monografia. Também

agradeço a minha amada, paciente e

apoiadora esposa Viviane e minha filha

Eloísa, a minha mãe Pascoalina que a vida

inteira fez tudo que estava ao alcance para

me ajudar e para que eu chegasse até aqui,

a meu querido e estimado irmão Roniés que

sempre foi uma referência e exemplo para

mim e que sempre me ajudou e apoiou, e ao

meu orientador, Professor Sérgio Roberto

Pereira da Silva, e também a todos aqueles

que direta ou indiretamente contribuíram

para a conclusão desta Monografia.

1

RESUMO

Recentemente podemos perceber um crescente interesse do governo dentre outras

instituições, na inclusão social e digital de pessoas portadoras de deficiências físicas. Um

fato relevante nesse sentido foi a promulgação da Lei Federal N°5.296 que favorece os

portadores de deficiências físicas em várias regulamentações. Em seu capítulo VI – que

trata do acesso a informação e à comunicação – fica determinado a obrigatoriedade de

acessibilidade nos portais e sítios eletrônicos da administração pública para pessoas

portadoras de deficiências visuais, garantindo-lhes o pleno acesso às informações

disponíveis. Neste contexto, diferentes tecnologias estão sendo empregadas para permitir

a interação de deficientes visuais. Porém, uma característica desses sistemas é a

necessidade de instalação no computador do usuário de softwares específicos para

permitir a acessibilidade. O presente estudo tem o propósito de propor um modelo de

interação humano-computador para pessoas portadoras de deficiências visuais em

websites que não requerem a instalação adicional de softwares específicos para

estabelecimento da interação. Neste estudo, foi desenvolvido e implementado um

software protótipo para a criação e ativação de websites com interface para deficientes

visuais, que possibilitou constatar se os objetivos inicialmente propostos para o modelo

de interação foram alcançados.

2

SUMÁRIO

RESUMO ............................................................................................................. 1

1 INTRODUÇÃO....................................................................................................

3

2 Fundamentação teórica ..................................................................................... 52.1 Conceituação de sistema e seus componentes ...................................................... 5

2.2 Usabilidade ........................................................................................................... 6

2.3 Ergonomia ............................................................................................................ 7

2.4 Design de interfaces de software .......................................................................... 9

2.5 Padrões web (web standards) e padrões de acessibilidade ................................... 13

2.6 Avaliação de Acessibilidade ................................................................................. 16

2.7 Avaliadores e validadores automáticos de acessibilidade .................................... 17

2.8 Desenho de Padrões (Design Patterns) ................................................................ 19

2.9 Lei de acessibilidade ............................................................................................. 35

2.10 Sintetizadores e leitores de voz ............................................................................ 38

2.11 CMS – Content Management System .................................................................. 39

2.12 Considerações finais ............................................................................................. 41

3 RESULTADO DA PESQUISA ......................................................................... 423.1 A forma de organização das informações na aplicação ........................................ 43

3.2 Funcionamento do software aplicativo protótipo ................................................. 45

3.3 O modelo de interação proposto ........................................................................... 48

3.4 Exemplos de interação utilizando a interface para deficientes visuais ................. 50

4 CONCLUSÕES ................................................................................................... 56

5 CONSIDERAÇÕES FINAIS ............................................................................. 58

Referências Bibliográficas ................................................................................. 60

3

1 – INTRODUÇÃO

Recentemente, iniciativas em diversas áreas buscam promover a inclusão social e

digital de pessoas portadoras de deficiências. Por consciência humanitária, ou por força

da imposição de leis, algumas ações positivas tem beneficiado a vida de portadores de

deficiências, por meio de guias rebaixadas nas ruas, edificações e veículos adaptados

entre diversas outras providências que, apesar de simples, podem viabilizar a locomoção,

facilitar a realização de atividades profissionais, educacionais e de laser, ou simplesmente

proporcionar algum tipo de conforto.

Atualmente existem tecnologias que permitem a navegação na internet por

deficientes visuais, porém, de forma geral, elas são pagas e/ou requerem a instalação de

programas acessórios, ou seja, o portador de deficiência visual para ter acesso de forma

satisfatória à internet pode ter a necessidade de comprar softwares específicos para essa

finalidade. Por outro lado, as organizações ou empresas que desejam se comunicar com

deficientes visuais via internet precisam desenvolver seus websites de forma já

direcionada especificamente para funcionarem com os softwares que os usuários deverão

adquirir, ou produzir os websites utilizando padrões que permitam a leitura das telas,

mas, não permitem apoiar de forma assistida o usuário visitante durante sua navegação.

O fato de se ter que adquirir ou instalar softwares para ter acesso a navegação em

websites, pode dificultar ainda mais o acesso de deficientes visuais a internet, ou os

obriga, algumas vezes, a instalar de forma ilegal tais softwares.

O objetivo geral desta monografia é apresentar uma alternativa para inclusão

digital de deficientes visuais por meio do desenvolvimento de um modelo de website

com características de interação humano-computador que possibilite o acesso e

navegação sem a necessidade de software específico para essa finalidade. Ao mesmo

tempo, espera-se ofertar à organizações/empresas uma forma de se comunicar com

portadores de deficiências visuais sem que isto os obrigue a comprar ou instalar nenhum

software além do próprio Microsoft Windows em suas máquinas.

Esta pesquisa se justifica pelos potenciais benefícios sociais dela resultantes

como, por exemplo, a colaboração à promoção da inclusão digital de deficientes visuais.

Além disso, também são importantes os benefícios à organizações/empresas que

pretendem divulgar seus produtos e serviços, ou simplesmente se comunicar também

com deficientes visuais.

4

Como objetivos específicos temos a intenção de identificar formas e padrões

existentes para navegação na web de pessoas portadores de deficiências visuais, levantar

alternativas para pessoas portadoras de deficiências visuais navegarem e interagirem na

internet e propor um modelo de iteração humano-computador para websites capaz de

proporcionar navegabilidade para pessoas portadoras e não portadoras de deficiências

visuais.

O presente estudo não objetiva a discussão sobre as formas existentes de interação

e acessibilidade para pessoas portadoras de deficiências visuais, nem a avaliar ou

comparar as formas existentes.

Esta monografia está organizada da seguinte forma. No capítulo 2 descrevemos a

fundamentação teórica onde abordamos conceitos e definições sobre sistemas,

usabilidade, padrões web, design patterns e padrões de acessibilidade entre outros temas

relevantes ao nosso trabalho; no capítulo 3 apresentamos o resultado da pesquisa, neste

capítulo expomos como se dá a interação na interface para usuários/visitantes portadores

de deficiências visuais e como é o funcionamento do software aplicativo desenvolvido;

no capítulo 4 apresentamos as conclusões sobre o trabalho e no capítulo 5, as conclusões

finais sobre a monografia.

5

2 – FUNDAMENTAÇÃO TEÓRICA

Neste capítulo veremos de forma resumida o resultado das pesquisas

bibliográficas e das leituras realizadas sobre alguns temas e assuntos relevantes ao

desenvolvimento da pesquisa em questão.

2.1 - Conceituação de sistema e seus componentes

Ao iniciar a revisão sobre este assunto, é necessário primeiramente conhecer

algumas definições de sistema como apresentado nos Quadro 1:

QUADRO 1: CITAÇÕES SOBRE DEFINIÇÃO DE SISTEMA

Teoria e Autor Conceito

SistemaOliveira (1992;p.23)

“Sistema é um conjunto de parte interagentes e interdependentes que,conjuntamente, formam um todo unitário com determinado objetivo eefetuam determinada função.”

SistemaBertalanffy (1977;p.84)

“...um complexo de elementos em interação.”

SistemaChurchman (1972;p.50)

“...é um conjunto de partes coordenadas para realizar um conjunto definalidades.”

SistemaPolloni (1992;p.15)

“Sistema é um conjunto de elementos independentes em interação,com vistas a atingir um objetivo.”

SistemaO`Brien (2002;p.17)

“Um sistema é um grupo de componente inter-relacionados quetrabalham juntos rumo a uma meta comum recebendo insumos eproduzindo resultados em um processo organizado de transformação.”

Fonte: Elaboração do autor da Monografia a partir de citações dos autores

O conceito de sistema pode ser complementado conhecendo alguns termos como:

dado, informação, sub-sistema e conhecimento, conforme definições apresentadas no

Quadros 2 a seguir:

6

Quadro 2: Citações sobre definições sobre os Componentes do SistemaTeoria e Autor Conceito

DadoGil (1996;p.13)

”Dado é a matéria-prima com que o sistema de informações vaitrabalhar e a informação é o produto final do sistema de informação edeve ser apresentada em forma, prazo e conteúdo adequado aousuário.”

DadoOliveira (1992;p.34)

“Dado é qualquer elemento identificado em sua forma bruta que por sisó não conduz a uma compreensão de determinado fato ou situação”.

InformaçãoOliveira (1992;p.34)

“Informação é o dado trabalhado que permite ao executivo tomardecisões.”

Sub-SistemaBio (1985;p.18)

“Um sistema pode compor-se, sucessivamente, de subsistemas(também conjunto de partes interdependentes) que se relacionam entresi, compondo o sistema maior”. Portanto, pode-se afirmar quesubsistema é um sistema menor que pertence a um sistema maior.”

ConhecimentoDavenpor&Prusak (1998;p.6)

...”Conhecimento é uma mistura fluída de experiência condensada,valores, informação contextual e “insight” experimentado, a qualproporciona uma estrutura para a avaliação e incorporação de novasexperiências e informações. Ele tem origem e é aplicado na mente dosconhecedores”

Fonte: Elaboração do autor da Monografia a partir de citações dos autores

Conforme as citações apresentadas nos Quadros 1 e 2, sistema é um conjunto de

componentes que se interagem para atingir um objetivo comum, e o conhecimento pode

ser definido com a experiência extraída de inferências sobre dados e informações.

2.2 – Usabilidade

A usabilidade é definida na revisão da ISO 9126 como a capacidade do sistema

ser entendido, aprendido, usado e satisfatório para o usuário, quando usado sob condições

especificadas (BEVAN, 1999).

A usabilidade é regulamentada inicialmente na norma ISO-9126 e explorada de

forma exclusiva na norma ISO-9241 como um conjunto de atributos da qualidade de

software que afetam o esforço necessário para o uso, e a avaliação individual de tal uso,

por um grupo de usuários declarados ou implícitos. Tal conjunto de atributos é composto

por:

“- (i) inteligibilidade: esforço do usuário em compreender o conceito lógico e sua

aplicabilidade;

7

- (ii) apreensibilidade: esforço do usuário em aprender a usar a aplicação do

software;

- (iii) operacionalidade: esforço do usuário para operar e controlar a operação, e;

- (iv) atratividade: evidencia a satisfação subjetiva do usuário durante o uso.”

SOUZA relaciona o conceito de usabilidade de um sistema à sua qualidade de

interação com os usuários (SOUZA, et al.), e também destaca alguns aspectos a se

considerar na interação, são eles:

“- (i) facilidade de aprendizado do sistema: tempo e esforço necessários para

que os usuários atinjam um determinado nível de desempenho, e;

- (ii) facilidade de uso: avalia o esforço físico e cognitivo do usuário durante o

processo de interação, medindo a velocidade de e o número de erros cometidos

durante a execução de uma determinada tarefa, e;

- (iii) satisfação do usuário: avalia se o usuário gosta e sente prazer em

trabalhar com este sistema, e;

- (iv) flexibilidade: avalia a possibilidade de o usuário acrescentar e modificar

as funções e o ambiente iniciais do sistema. Assim, este fator mede também a

capacidade do usuário utilizar o sistema de maneira inteligente e criativa,

realizando novas tarefas que não estavam previstas pelos desenvolvedores, e;

- (v) produtividade: se o uso do sistema permite ao usuário ser mais produtivo

do que seria se não o utilizasse.”

2.3 – Ergonomia

Segundo o dicionário Aurélio, ergonomia está relacionado entre a comunicação

produtiva entre o homem e a máquina (FERREIRA, 1986);

“Ergonomia é um conjunto de estudos que visam à organização metódica do

trabalho em função do fim proposto e das relações entre o homem e a

máquina”.

Já BONNATO (acesso em 2007), complementa o conceito de ergonomia

destacando elementos que podem facilitar e economizar tempo na interação homem-

computador (BONNATO, acesso em 2007);

8

“A ergonomia estuda o diálogo homen-computador, busca economia de tempo,

diminuição da carga cognitiva e rapidez de decisões. Considera o design de

interfaces, estilos cognitivos, domínios de conhecimento, estruturação da

navegação, localização de programas. A interação homem computador, tema

que trata de usabilidade de programas informatizados multimídias, hipertextos,

páginas, sistemas de venda via internet, homebanking, buscando a facilitação

do uso desses sistemas por um número cada vez maior e mais diversificado de

usuários. Considera-se, por exemplo, o design das telas (diagrama básico,

legibilidade, iconografia), zonas de salto, navegação e retronavegação, os

sistemas de busca, os sistemas de ajuda, indicadores de localização.”

Em agosto de 2000, a IEA - Associação Internacional de Ergonomia adotou a

seguinte definição oficial para o termo ergonomia (ABERGO);

“A Ergonomia (ou Fatores Humanos) é uma disciplina científica relacionada

ao entendimento das interações entre os seres humanos e outros elementos ou

sistemas, e à aplicação de teorias, princípios, dados e métodos a projetos a fim

de otimizar o bem estar humano e o desempenho global do sistema. Os

ergonomistas contribuem para o planejamento, projeto e a avaliação de tarefas,

postos de trabalho, produtos, ambientes e sistemas de modo a torná-los

compatíveis com as necessidades, habilidades e limitações das pessoas.”

A Associação Brasileira de Ergonomia (ABERGO), ainda classifica os domínios

de especialização da ergonomia em três tipos, ergonomia física, ergonomia cognitiva e

ergonomia organizacional (ABERGO);

“- Ergonomia física: está relacionada com às características da anatomia

humana, antropometria, fisiologia e biomecânica em sua relação a atividade

física. Os tópicos relevantes incluem o estudo da postura no trabalho,

manuseio de materiais, movimentos repetitivos, distúrbios músculo-esqueletais

relacionados ao trabalho, projeto de posto de trabalho, segurança e saúde.

- Ergonomia cognitiva: refere-se aos processos mentais, tais como percepção,

memória, raciocínio e resposta motora conforme afetem as interações entre

seres humanos e outros elementos de um sistema. Os tópicos relevantes

incluem o estudo da carga mental de trabalho, tomada de decisão, desempenho

9

especializado, interação homem computador, stress e treinamento conforme

esses se relacionem a projetos envolvendo seres humanos e sistemas.

- Ergonomia organizacional: concerne à otimização dos sistemas

sociotécnicos, incluindo suas estruturas organizacionais, políticas e de

processos. Os tópicos relevantes incluem comunicações, gerenciamento de

recursos de tripulações, projeto de trabalho, organização temporal do trabalho,

trabalho em grupo, projeto participativo, novos paradigmas do trabalho,

trabalho cooperativo, cultura organizacional, organizações em rede, tele-

trabalho e gestão da qualidade.”

Em nosso trabalho consideraremos mais fortemente o conceito de ergonomia

relacionando-o à facilidade, agilidade, simplicidade e conforto na operacionalização de

websites pelos usuários/visitantes. Destacando o uso da ergonomia física no que se refere

à mídia utilizada pela interface (áudio), mas principalmente a ergonomia cognitiva no

que se refere aos processos mentais, percepção, raciocínio, interpretação e respostas do

usuário no modelo de interação proposto para websites.

2.4 Design de interfaces de software

A interface é a parte do software que permite a interação entre usuários e

desenvolvedores (SOUZA et al, 2002), podendo ser o seu design uma das mais

importantes etapas em projetos voltados para portadores de deficiências visuais. Uma das

definições de SOUZA et al (2002), sobre interface é;

“A interação é um processo que engloba as ações do usuário sobre a interface

de um sistema e suas interpretações sobre as respostas reveladas por esta

interface”.

SOUZA et al. (2002) também apresenta a definição de interface como;

“a parte de um artefato que permite a um usuário controlar e avaliar o

funcionamento deste artefato através de dispositivos sensíveis às suas ações e

capazes de estimular sua percepção”.

10

Em outras palavras, as interfaces de software podem ser entendidas como

mecanismos de comunicação entre o computador e os usuários de softwares e que

funcionam conforme definições estabelecidas pelos desenvolvedores. O design de

interfaces busca criar leiautes eficazes e eficientes, com o maior facilidade, agilidade e

conforto possível. Segundo SOUZA et al. (2002), entre os princípios de projetos de

interface de software, destacam-se as seguintes diretrizes (SOUZA et al. apud RIOS,

2002);

“- os cuidados com a interação, como consistência, oferecer feeback

significativo, procurar eficiência em diálogos, categorizar atividades por

função, etc;

- a apresentação de informações ao usuário (somente mostrar informações

significativas, não sobrecarregar o usuário de informações, usar cores

previsíveis, manter o contexto visual, utilizar janelas para compartimentar

informações, utilizar o espaço geográfico visual da tela de forma eficiente,

etc);

- a entrada de dados de forma otimizada, com o menor número possível de

entradas, respeitar as preferências do usuário, deixar o usuário controlar o

fluxo de informação, eliminar formatos de entrada de dados irrelevantes, etc;

- Controle do usuário: a iniciativa de realizar ações deve sempre partir da

vontade do usuário, não do computador. O aprendizado sempre é mais rápido

quando o usuário é personagem ativo no uso do computador;

- Retorno e diálogo: as operações realizadas pelo computador devem sempre

ser informadas ao usuário, para que este possa acompanhar e interferir, quando

necessário. Indicadores visuais e/ou de áudio devem fazer parte do processo de

comunicação com o usuário, além de outras informações complementares,

como a expectativa de tempo de um processamento;

- Reversibilidade: o usuário nem sempre possui certeza sobre o resultado de

suas ações, e a garantia da reversibilidade das ações executadas pelo usuário

lhe dá a possibilidade de experimentar alternativas.

- Estabilidade de pensamento (perceived stability): a existência de um ponto

de referência familiar ao usuário pode reduzir sua dificuldade na aceitação e

utilização de um software. A interface de um software deve estar de acordo

11

com o “mundo” do usuário, facilitando o seu aprendizado e uso por parte

deste;

- Modularidade: características modulares são desejáveis para permitir ao

usuário realizar suas atividades conforme sua necessidade. É desejável ao

usuário poder controlar o processamento em execução no computador, na

ordem especificada.

- Integridade estética: a organização visual da interface com o usuário deve

ser cuidadosamente avaliada. Uma tela simples, com número limitado de

elementos, e o seu comportamento auxiliam na usabilidade.”

Segundo WILLIAMS (1995), quatro elementos podem colaborar com

integridade estética um design de sistema, são eles;

“- Contraste: se dois itens não forem exatamente os mesmos, diferencie-os

completamente. O leitor deve ser capaz de compreender instantaneamente a

maneira através da qual as informações estão estruturadas, o fluxo lógico de

um item para outro. Os elementos contrastantes nunca devem confundir o

leitor ou criar um foco que não seja o correto;

- Repetição: alguns aspectos do design devem se repetir no material inteiro. O

elemento repetitivo pode ser uma fonte, algum sinal de tópico, um elemento do

design, algum formato específico, relações espaciais, etc. Pode ser qualquer

item que se reconheça visualmente.

- Alinhamento: nada deve ser colocado arbitrariamente em uma página. Cada

item deve ter uma conexão visual com algo na página.

- Proximidade: itens relacionados entre si devem ser agrupados e aproximados

uns dos outros, para que sejam vistos como um conjunto coeso, e não como

um emaranhado de partes sem ligação.”

Ainda segundo SOUZA et al. (2002), pode-se utilizar questionários para avaliar

projetos de uma interface de software e medir a satisfação dos usuários sobre essas

interfaces, observando os seguintes parâmetros;

“- Número de tarefas completas por tempo de uso;

- Freqüência de uso dos comandos;

- Seqüências de comandos;

12

- Tempo de busca por informação;

- Número de erros; Tipos de erros; Tempo de correção do erro;

- Tempo de uso da ajuda (on-line e/ou impressa);

- Freqüência de uso da ajuda.”

Algumas diretrizes para os resultados de interação apresentados por SILVA

(2005):

“- Use o vocabulário do domínio do usuário. Evite termos técnicos;

- Resultados devem fazer referência às informações passadas no comando;

- Advertências e avisos devem ser colocados em primeiro plano para chamar a

atenção do usuário;

- Cores fortes e diferenciadas de outros elementos chamam a atenção. Sons

também pode ser usados;

- Os resultados de função devem ser destacados de outros elementos da página

( banners, menus, ...).”

SILVA (2005) destaca as seguintes diferenças entre designs de interação que

podem interferir no nível de interatividade nas interfaces dos softwares;

“- Quantidade de controle que o usuário tem sobre as ferramentas, ritmo ou

conteúdo e o feedback por elas fornecido;

- Quantidade de escolhas que este controle oferece;

- A habilidade no uso das ferramentas ou conteúdo para ser criativo e

produtivo;

- Capacidade de adaptação ao comportamento do usuário.”

Souza et al. 1999 conceitua como comunicabilidade a capacidade dos usuários

em entender o design dos softwares tal como foi concebido pelos projetistas. Em outras

palavras, se um usuário conseguir entender as decisões que o projetista tomou para

construir a interface, ele terá mais chances de fazer um bom uso do sistema. Em sistemas

com alta comunicabilidade, os usuários são capazes de responder (Souza et al. 1999);

“- para que o sistema serve

- qual é a vantagem de utilizá-lo

- como funciona

13

- quais são os princípios gerais de interação com o sistema.”

Em interfaces de software o design da interação é o componente mais crítico para

o sucesso de produtos interativos, ele deve enfatizar a criação de experiências

convincentes aos usuários. Segundo SILVA (2005), “o coração do design é a

comunicação”, e o equilíbrio entre forma e função no design de interação é que pode

permitir uma boa experiência ao usuário.

2.5 – Padrões Web (Web Standards) e padrões de acessibilidade

O World Wide Web Consortium (W3C), órgão que regulamenta a internet, trata os

temas relacionados a acessibilidade em um departamento denominado WAI (Web

Accessibility Initiative), que é o responsável pelo documento WCAG (Web Contents

Accessibility Guidelines), no qual são elencadas as diretrizes, regras e padrões de

acessibilidade para internet.

O WCAG recomenda que as páginas de internet devem, preferencialmente, ter

seu conteúdo separado de sua estrutura de apresentação, podendo o conteúdo ser

disponibilizado em linguagem de marcação HTML (Hypertext Markup Language), e sua

estrutura de apresentação pode ser definida com emprego de CSS (Cascading Style

Sheets). O desenvolvimento das páginas com o conteúdo separado da estrutura é uma

recomendação importante dentre os padrões para web (Web Standards) estabelecidos

pela W3C e seu emprego pode tornar o acesso a essas páginas mais rápido, e no caso de

utilizar aplicativos para acessibilidade permitir que o browser ou aplicativo “chame”

apenas o arquivo com os dados (conteúdo), o que tornará o processamento mais ágil. A

versão oficial das normas está publicado na língua inglesa, versões traduzidas das

especificações podem ser encontradas em http://www.w3.org/WAI/GL/WAI-

WEBCONTENT-TRANSLATIONS.

A aparência e formato de apresentação das páginas, tamanhos, cores dos textos,

cor do fundo e bordas, segundo a recomendação, devem ser definidas separados do

conteúdo no CSS e “montado” em tempo de execução das páginas, com a união das

informações (conteúdo) no computador do usuário visitante no momento em que este

acessar a página. Páginas em conformidade com o padrão CSS podem ser identificadas

com selo conforme ilustra a Figura 1 abaixo.

14

Figura 1 – Selo de conformidade com o padrão CSS

O padrão XHTML pode ser considerado como a base para futuros padrões da

família de HTML estendido. Ele é o mais recente e o mais rigoroso padrão da W3C. Um

website desenvolvido sobre a sintaxe XHTML pode ser apresentado em qualquer

interpretador XML (eXtended Markup Language) e deverá ser aberto em qualquer

navegador web, mesmo em navegadores antigos pode-se acessar seu conteúdo

desabilitando as folhas de estilo (CSS). Páginas validadas para o formato XHTML

podem utilizar o selo ilustrado na Figura 2 abaixo.

Figura 2 – Selo de conformidade com o padrão XHTML

A WCAG define quatorze regras ou diretivas, a serem consideradas para

avaliação de acessibilidade, as diretivas são descritas detalhadamente e identificadas por

números de um a quatorze. Cada diretiva tem descrito claramente seus pontos de

verificação, que são os critérios de avaliação para cada ponto de verificação. Cada ponto

de verificação de cada diretiva, pode ser classificado em 3 níveis de prioridade, da

seguinte forma;

- Pontos de prioridade “1” – os desenvolvedores de conteúdo web tem

obrigatoriamente de satisfazer. Caso não satisfação, um ou mais grupos de

usuários não poderão acessar as informações do website. O atendimento aos

pontos de prioridade “I” são básicos e fundamentais para acesso de usuários;

- Pontos de prioridade “2” – os desenvolvedores devem satisfazer, porém, caso

não satisfaçam, determinados grupos de usuários podem ficar sem acesso ao

site. Por outro lado, caso sejam atendidos os pontos de prioridade “2”, o nível

de acessibilidade aumenta significativamente em relação ao atendimento

apenas das prioridades tipo “1”;

- Pontos de prioridade “3” – os desenvolvedores podem satisfazer, porém, caso

não satisfaçam, grupos de usuários podem não ter acesso ao site, mas é

15

considerado o nível mais satisfatório de adequação e representa a melhor

preparação de acessibilidade possível segundo as classificações da W3C.

Na tabela 1, é apresentado as 14 diretivas, sendo descrito também a quantidade de

pontos de verificação com seus respectivos níveis de prioridade;

Tabela 1 – Diretivas para a acessibilidade de conteúdo WebFonte: Elaborado pelo autor da monografia com base no site:http://www.w3.org/TR/WAI-WEBCONTENT

Tabela de Diretivas de AcessibilidadePontos de

VerificaçãoNúm

Diretiva Título da Diretiva

P1 P2 P3 PV

1 Fornecer alternativas ao conteúdo sonoro e visual 4 0 1 52(img) Não recorrer apenas à cor – para imagens 1 1 0 22(txt) Não recorrer apenas à cor – para texto 1 0 1 2

3 Utilizar corretamente anotações e folhas de estilo 0 7 0 74 Indicar claramente qual a língua utilizada 1 0 2 35 Criar tabelas passíveis de transformação harmoniosa 2 2 2 66 Assegurar que as páginas dotadas de novas tecnologias sejam

transformadas harmoniosamente3 2 0 5

7 Assegurar o controle do utilizador sobre as alterações temporais doconteúdo

1 4 0 5

8(imp)

Assegurar a acessibilidade direta de interfaces integradas ao navegador– se a funcionalidade for importante

1 0 0 1

8(n_imp)

Assegurar a acessibilidade direta de interfaces integradas ao navegador– se a funcionalidade não for importante

0 1 0 1

9 Pautar a concepção pela independência face a dispositivos 1 2 2 510 Utilizar soluções de transiçao 0 2 3 511 Utilizar as tecnologias e as diretivas da W3C 1 2 1 412 Fornecer contexto e orientações 1 3 0 413 Fornecer mecanismos de navegação claros 0 4 6 1014 Assegurar a clareza e a simplicidade dos documentos 1 0 2 3

Os pontos de verificação é constituído de um conjunto de sessenta e oito

“critérios” utilizados para se aferir o grau de acessibilidade de determinado website, e

estão distribuídos nas quatorze diretivas e em 3 níveis de prioridade conforme Tabela 1

acima.

16

2.6 – Avaliação de Acessibilidade

A validação da acessibilidade pode ser feita por meio de ferramentas automáticas, ou

manualmente com a análise direta. Métodos automáticos são geralmente rápidos, mas,

normalmente, não são capazes de aferir com precisão todos os critérios e pontos de

verificação, principalmente os de avaliação mais subjetivas.

Os métodos de validação que se seguem são abordados com mais profundidade na

seção de validação do documento de técnicas do WCAG:

1. Utilizar uma ferramenta de acessibilidade automatizada. Note-se que as

ferramentas automáticas não incidem sobre todas as questões da acessibilidade

como, por exemplo, a clareza de um texto, a aplicabilidade de um equivalente

textual, etc;

2. Validar a sintaxe (por ex., HTML, XML, etc., em: validador HTML do W3C -

http://validator.w3.org). Essa validação do código, é importante para que sua

interpretação pelo navegador seja mais rápida e eficiente, já que estará em contato

com um código totalmente correto;

3. Validar as folhas de estilo (por ex., CSS, valide em: Validador Css do W3C -

http://jigsaw.w3.org/css-validator). Pelo mesmo motivo que se deve validar o

código do html, se deve fazer o mesmo com o do CSS;

4. Utilizar um navegador só de texto (Lynx ou Webvox) ou um emulador;

5. Para se averiguar se o conteúdo está completo, utilizar vários navegadores

gráficos na verificação do conteúdo, com: o som e os gráficos ativos; sem

gráficos; sem som; sem mouse; sem carregar frames, programas interpretáveis,

folhas de estilo ou applets;

6. Utilizar vários navegadores, antigos e recentes, para verificar a consistência dos

dados entre eles;

7. Utilizar um navegador de emissão automática de fala, um leitor de tela, software

de ampliação de tela, uma tela de pequenas dimensões, etc. Este item é difícil de

ser realizado, mas importantíssimo para uma página realmente acessível;

8. Utilizar corretores ortográficos e gramaticais. Uma pessoa que, para ler uma

página, se sirva de um sintetizador de voz, pode não ser capaz de decifrar a

melhor aproximação do sintetizador a uma palavra que contém um erro de

17

ortografia. A eliminação dos problemas gramaticais aumenta o grau de

compreensão da página;

9. Rever o documento, verificando-lhe a clareza e a simplicidade. O melhor é pedir

a um revisor literário experiente que reveja o conteúdo escrito e avalie a clareza

da redação; e

10. Peça a pessoas com deficiências que revejam os documentos. Estes usuários, com

ou sem experiência, são uma fonte inestimável de informações sobre o estado dos

documentos, no que diz respeito ao seu grau de acessibilidade e de facilidade de

utilização.

A adequação aos pontos de verificação de acordo com os níveis de prioridades em

um website definem seus níveis de conformidade e consequentemente os grupos de

usuários que poderão se beneficiar de acordo com o grau de conformidade aferido. Os

níveis de conformidade que demonstram o grau de adequação aos pontos de verificação

são classificados da seguinte forma;

- Nível de conformidade “A”: satisfazem todos os pontos de verificação de

prioridade 1;

- Nível de conformidade “AA”: satisfazem todos os pontos de verificação de

prioridades 1 e 2;

- Nível de conformidade “AAA”: satisfazem todos os pontos de verificação de

prioridade 1, 2 e 3.

Figura 3 – Símbolos que representam os níveis de conformidade segundo prioridades segundo a W3C

2.7 - Avaliadores e validadores automáticos de acessibilidade.

Os validadores ou avaliadores de acessibilidade, são ferramentas que realizam

automaticamente pesquisa no código de uma página emitindo relatórios que indicam os

erros de acessibilidade, segundo as prioridades sugeridas nas Diretrizes para a

Acessibilidade dos Conteúdos da Web.

18

É altamente recomendável que as páginas sejam testadas em mais de um desses

softwares de teste de acessibilidade para obter um bom resultado, já que as ferramentas

de avaliação podem ter diferentes níveis de aderência aos padrões web (Web Standards).

Em muitos casos é importante realizar para determinados pontos de verificação, a

avaliação manual, pois certos critérios eventualmente não podem ser aferidos

automaticamente via ferramentas de avaliação de acessibilidade, devido a subjetividade

do ponto de verificação.

Uma avaliação que é feita somente por pessoas com deficiência incorre no erro da

página ficar acessível somente àquela deficiência, ou à tecnologia assistiva que ela esteja

utilizando. Acessibilidade é se fazer algo o mais universal possível, para todas as pessoas

com deficiência, para todos os tipos de acesso (rápidos ou lentos, banda larga ou discado)

e para todos os tipos de dispositivos (laptops, celulares, de tecnologias assistivas, etc.).

A seguir é destacado alguns avaliadores entre os mais conhecidos e utilizados:

• WebXact (Bobby) - http://webxact.watchfire.com - é o mais utilizado

internacionalmente, somente em lingüa inglesa.

• Hera (em português) - www.sidar.org/hera - um dos mais completos e inteligente

validadores de acessibilidade – disponível em ligua portuguesa.

• Examinator (em português) - www.acesso.umic.pt/webax/examinator.php – tão

bom quanto o Hera, mas ele também produz um incentivo didático de dar uma

nota avaliadora da acessibilidade. O profissional se constrange em produzir uma

página com uma nota baixa. Além disso, possui um relatório qualitativo

ensinando como produzir a acessibilidade que falta, e dando os parabéns para os

itens de acessibilidade já existentes na página.

• Cynthia (em inglês) - www.cynthiasays.com – validador também conhecido

internacionalmente.

• DaSilva (em português) - www.dasilva.org.br - Atualmente possui versões para a

avaliação segundo as diretrizes brasileiras de acessibilidade do governo

Eletrônico - EMAG, mas possui também a possibilidade de uma avaliação

segundo o W3C, baseado no WCAG, o que pode ser bastante interessante para as

pessoas que estejam iniciando no entendimento de como se faz acessibilidade.

Não é, no entanto, um avaliador muito rígido.

• Lista completa de avaliadores de acessibilidade cadastrados no W3C/WAI (em

inglês) - www.w3.org/WAI/ER/tools/complete

19

2.8 Desenho de Padrões (Design Patterns)

Destacando a opção de desenvolver um protótipo de software para testar o

modelo de interação proposto, foi necessário realizar um levantamento sobre Design

Patterns, para reconhecer os padrões de desenho mais conhecidos com objetivo de

considerá-los ou evitá-los no desenvolvimento de nosso protótipo. Sobre a utilização de

desenhos de padrões ou design patterns PONCE (acesso em 2007), destaca;

“O desenho de padrões faz possível que os desenhos e arquiteturas sejam

reusáveis. Ajuda na escolha das alternativas de desenho que fazem um sistema

reusável e evita alternativas que comprometam reusabilidade. Desenho de

padrões ainda pode melhorar o processo de documentação e manutenção de

sistemas existentes fornecendo uma especificação explicita de classes e

interações de objetos e seus objetivos fundamentais. Em resumo, desenho de

padrões ajuda a obter um desenho de software ‘correto’ e rápido.”

A seguir veremos alguns Design Patterns mais comuns;

Pattern Abstract Factory ou Fábrica Abstrata

Propósito do pattern “Abstract Factory” ou “Fábrica Abstrata” é “prover uma

interface para a criação de familias de objetos relacionados ou dependentes sem

especificar suas classes concretas.” (UFRJ_LCG).

Este pattern é usado quando (UFRJ_LCG);

“- um sistema deve ser independente de como seus elementos são criados,

compostos e representados;

- um sistema deve ser configurado para trabalhar com uma única família dentre

múltiplas famílias de produtos;

- uma família de produtos relacionados é projetada para ser usada em conjunto,

e há a necessidade de reforçar essa restrição;

- se se quer criar uma biblioteca de classes de produtos, revelando apenas suas

interfaces e não suas implementações.”

Característica do pattern “Abstract Factory” (UFRJ_LCG);

20

“- ele isola as classes concretas;

- facilita a troca de famílias de produtos;

- prove consistência entre produtos;

- facilita o suporte a novos tipos de produtos.”

Patterns relacionados ao pattern “Abstract Factory” (UFRJ_LCG);

“- As classes ‘Abstract Factory’ normalmente são implementadas com

‘Factory Methods’, mas elas também podem ser implementadas usando o

‘Prototype’;

Pattern “Builder” ou “Construtor”

Propósito do pattern “Builder” ou “Construtor” (UFRJ_LCG);

“Este pattern tem como propósito separar a construção de um objeto complexo

de sua representação, de modo que o mesmo processo de construção possa

criar diferentes representações.

Este pattern é usado quando (UFRJ_LCG);

“- o algoritmo para a criação de um objeto complexo deve ser independente das

partes que o compõem e de como estas são conectadas entre si;

- o processo de construção deve permitir a criação de diferentes representações

do objeto construído.”

Características do pattern “Builder” (UFRJ_LCG);

“- Possibilita variar a representação interna de um produto;

- Isola o código de construção e representação aumentando a modularidade;

- Possibilita um grande controle sobre o processo de construção.”

Patterns Relacionados ao pattern “Builder” (UFRJ_LCG);

“- O ‘Abstract Factory’ é similar ao ‘Builder’ pelo fato de, com ele, também se

poder construir objetos complexos. A principal diferença é que o pattern

‘Builder’ objetiva a construção de objetos complexos passo a passo. A ênfase

do ‘Abstract Factory’ é em famílias de objetos produto (tanto simples quanto

complexos). O ‘Builder’ retorna o produto como um passo final, mas no que

21

diz respeito ao pattern ‘Abstract Factory’, o produto final e retornado

imediatamente.

- Uma ‘Composite’ é o que o ‘Builder’ freqüentemente constrói.”

Pattern Factory Method ou Método Fábrica

Propósito do pattern “Factory Method” ou “Método Fábrica” (UFRJ_LCG);

“definir uma interface para criação de um objeto, mas deixa as subclasses

definirem que classe instanciar. O pattern "Factory Method" permite a uma

classe delegar a instanciação às subclasses.”

Este pattern é usado quando (UFRJ_LCG);

“- uma classe não pode antecipar a classe de objetos que deve ser criada;

- uma classe quer que suas subclasses especifiquem os objetos que ela cria;

- classes delegam responsabilidades para uma dentre várias subclasses

auxiliares, e se deseja localizar o conhecimento de qual subclasse auxiliar

implementa a delegação.“

Entre as principais características do pattern “Factory Method” destaca-se que o

mesmo “Provê ganchos para as subclasses, e; conecta hierarquias de classes paralelas

quando há delegação.” (UFRJ_LCG).

Patterns relacionados ao pattern “Factory Method” (UFRJ_LCG);

“- ’Abstract Factory’ é freqüentemente implementada com ‘Factory Methods’;

- ‘Factory Methods’ são usualmente chamados de dentro de ‘Template

Methods’.

- O pattern Prototype não requer a criação de subclasses do Creator. Contudo,

ele freqüentemente requer uma operação de inicializacão na classe Product. O

Creator usa Initialize para inicializar o objeto. ‘Factory Method’ não requer tal

operação.”

22

Pattern “Prototype” ou “Protótipo”

O propósito do pattern “Prototype” ou “Protótipo” é, “...especificar os tipos de

objetos a criar usando uma instância prototípica, e cria novos objetos através da copia

deste protótipo.” (UFRJ_LCG).

Este pattern é usado quando (UFRJ_LCG);

“- um sistema deva ser independente de como seus produtos são criados,

compostos e representados, e;

- quando as classes a instanciar são especificadas em tempo de execução, ou;

- para evitar a construção de uma hierarquia de classes de fabricação paralela a

uma hierarquia de classes de produtos por elas fabricados, ou;

- quando instâncias de uma classe podem ter uma de algumas poucas

combinações de estado diferentes. Pode ser mais conveniente instalar um

número correspondente de protótipos e cloná-los, ao invés de instanciar as

classes no estado apropriado manualmente, toda vez que for necessário.“

Características do pattern “Prototype“ (UFRJ_LCG):

“- adicionar e remover produtos em tempo de execução;

- especificar novos objetos pela variação de valores;

- especificar novos objetos pela variação de estruturas: utilizar objetos

compostos (Composites) como protótipos;

- redução do número de subclasses (hierarquia);

- configurar uma aplicação com classes dinamicamente.”

Patterns relacionados ao pattern “Prototype” (UFRJ_LCG);

“- ’Abstract Factory’ e ‘Prototype’ são patterns que podem vir a competir em

algumas situações, porém também podem ser usados juntos. Um ‘Abstract

Factory’ poderia armazenar um conjunto de ‘Prototypes’ que seriam clonados

para retornar os objetos produto;

- Projetos que fazem grande uso dos patterns ‘Composite’ e ‘Decorator’

freqüentemente também podem ser beneficiados com o uso do ‘Prototype’.”

23

Pattern “Singleton”

Propósito do pattern “Singleton”: O propósito deste pattern é “garantir que uma

classe tenha apenas uma instância, e prover um ponto de acesso global a ela.”

(UFRJ_LCG).

Este pattern é usado quando (UFRJ_LCG);

“- deve haver exatamente uma única instância de uma classe, e ela deve estar

disponível a todos os clientes de um ponto de acesso bem definido;

- quando se desejar que a única instância possa ser estendida por herança, e os

clientes serem capazes de utilizar essa instância estendida sem terem de

modificar o seu código.”

Características do pattern “Singleton” (UFRJ_LCG);

“- acesso controlado à única instância;

- espaço de nomes reduzido;

- permite refinamento de operações e representação via especialização;

- permite um número variável de instâncias;

- maior flexibilidade do que em operações de classes.”

Muitos patterns podem ser relacionados ao pattern “Singleton”. Como exemplo o

"Abstract Factory", o "Builder" e o "Prototype", podem ser implementados usando o

pattern "Singleton" (UFRJ_LCG).

Pattern “Adapter” ou “Adaptador”

Propósito do pattern “Adapter” ou “Adaptador” (UFRJ_LCG);

“...converter a interface de uma classe em outra interface esperada pelo cliente.

Permite que classes que não poderiam interagir devido a incompatibilidades

nas interfaces possam trabalhar em conjunto.”

Este pattern é usado quando (UFRJ_LCG);

“- se quer usar uma classe já existente e sua interface não combina com a

esperada pelo cliente;

24

- se quer criar uma classe reutilizável que coopera com classes não

relacionadas ou não previstas, isto é, classes que não necessariamente tenham

interfaces compatíveis.

- (apenas para o objeto adapter) se necessita usar várias subclasses existentes,

mas é impraticável adaptar suas interfaces fazendo um subclassing de cada

uma. Um objeto adapter pode adaptar a interface da super classe.”

Os patterns relacionados ao pattern “Adapter” (UFRJ_LCG);

“- O pattern ‘Bridge’ tem uma estrutura similar a de um objeto ‘Adapter’, mas

‘Bridge’ tem um propósito diferente: separar uma interface de sua

implementação de forma ambas possam variar de modo fácil e independente.

Um ‘Adapter’ tem a intenção de compatibilizar a interface de um objeto

previamente existente;

- ‘Decorator’ agrega funcionalidades a outro objeto sem alterar sua interface.

Por isso, o "Decorator", é mais transparente para a aplicação do que um

Adapter. Como a interface se mantém, o ‘Decorator’ suporta composição

recursiva, algo que não se aplica a objetos ‘Adapter’;

- ‘Proxy’ define uma representação ou um substituto para outro objeto e não

modifica a sua interface. “

Pattern “Bridge” ou ”Ponte”

O propósito do pattern “Bridge” ou “Ponte” (UFRJ_LCG) é, “desacoplar uma

abstração de sua implementação de tal modo que ambos possam variar

independentemente.”

Este pattern é usado quando (UFRJ_LCG);

“- se quer evitar uma ligação permanente entre uma abstração e sua

implementação. O que ocorre, por exemplo, quando a implementação deve ser

selecionada ou trocada em tempo de execução;

- tanto a abstração quanto sua implementação devem ser extensíveis por

especialização. Neste caso, o pattern Bridge deixa você combinar estas

diferentes abstrações e implementações e estendê-las independentemente;

- mudanças na implementação de uma abstração não devem ter impacto nos

clientes, isto é, seu código não deve ter que ser recompilado;

25

- quando se quer esconder completamente a implementação dos clientes,

evitando que a representação de uma classe seja feita através da interface dessa

classe.

- há um tipo de hierarquia de classes onde ocorre generalizações aninhadas,

indicando a necessidade de se dividir um objeto em duas partes;

- se quer compartilhar uma implementação entre vários objetos, e este fato

deva estar oculto para os clientes. “

Características do pattern “bridge” (UFRJ_LCG);

“- Desacopla interface e implementação;

- Melhora a extensibilidade;

- Oculta detalhes de implementação do cliente.”

Patterns relacionados ao pattern “bridge” (UFRJ_LCG);

“Um ‘Abstract Factory’ pode criar e configurar um determinado ‘Bridge’. O

pattern ‘Adapter’ objetiva fazer com que classes não relacionadas trabalhem

juntas. Ele é usualmente aplicado a sistemas depois que eles já estão

projetados. O ‘Bridge’, por outro lado, é usado no durante a fase de análise e

projeto para permitir que as abstrações e implementações variem

independentemente.“

Pattern “Composite” ou “Composição”

Propósito do pattern “Composite” ou “Composição” (UFRJ_LCG);

“Compor objetos em estruturas de árvore para representar hierarquias do tipo

todo-parte. O Composite deixa os clientes tratarem objetos individuais e

composições de objetos do mesmo modo. “

Este pattern é usado quando (UFRJ_LCG):

“- se quer representar hierarquias de objetos do tipo todo-parte;

- se quer que os clientes ignorem a diferença entre composições de objetos e

objetos individuais. Os clientes, numa estrutura composite, irão tratar todos os

objetos uniformemente.”

Características do pattern Composite (UFRJ_LCG);

26

“- define uma hierarquia de classes que consiste de objetos primitivos (Leaf) e

objetos compostos (Composite). Objetos primitivos podem ser compostos em

objetos mais complexos, que, por sua vez, também podem vir a ser compostos

também, e assim por diante. Em qualquer ponto do código cliente em que se

espera um objeto primitivo, ele também poderá manipular um objeto

composto;

- torna o cliente simples. O cliente pode tratar estruturas compostas e objetos

individuais uniformemente. Os clientes normalmente não sabem (e não devem

se preocupar) se eles estão tratando com um componente individual ou

composto. Isto simplifica o código do cliente, porque ele evita ter que escrever

funções que tenham que testar o tipo das classes que definem a composição;

- se torna mais fácil adicionar novos tipos de componentes. Novas definições

das subclasses "Leaf" ou "Composite" trabalham automaticamente com as

estruturas existentes e código do cliente. Os clientes não precisam ser

modificados devido a criação de novas classes "Component";

- pode tornar o projeto, como um todo, mais geral. A desvantagem de tornar

mais fácil adicionar novos componentes, é que isso torna mais difícil restringir

que tipo de componentes podem fazer parte de uma composição. Algumas

vezes pode-se querer uma composição que tenha apenas certos componentes.

Com o "Composite", não se pode confiar no sistema de verificação de tipos

para garantir que essas restrições sejam respeitadas. Ao invés disso, terão que

ser feitas checagens em tempo de execução.”

Patterns relacionados ao pattern “Composite” (UFRJ_LCG);

“- Freqüentemente o link do componente para o pai é usado para o pattern

‘Chain of Responsibility’;

- ‘Decorator’ é freqüentemente usado com ‘Composite’. Quando usados

juntos, eles usualmente irão ter uma classe mãe ‘Component’ em comum,

portanto, ‘Decorators’ deverão suportar a interface do ‘Component’ com

operações como Add, Remove e GetChild;

- O ‘Flyweight’ permite o compartilhamento de componentes, mas eles não

poderão mais se referir diretamente a seus pais;

- o ‘Interator’ pode ser usado para percorrer composições;

27

- o ‘Visitor’ localiza operações e comportamentos que de outra forma estariam

distribuídos através das classes ‘Leaf’ e ‘Composite’. “

Pattern “Decorator” ou “Decorador”

Propósito do pattern “Decorator” ou “Decorador” é (UFRJ_LCG);

“agregar responsabilidades adicionais a um objeto dinamicamente. O

decorator provê uma alternativa flexível à criação de subclasses para extender

funcionalidades (troca herança por delegação).”

Este pattern é usado quando (UFRJ_LCG);

“- para adicionar responsabilidades a objetos individuais de forma dinâmica e

transparente, isto é, sem afetar outros objetos;

- para responsabilidades que podem ser retiradas;

- quando extensões através de subclasses é impraticável. Algumas vezes um

grande número de extensões independentes é possível e produziria uma

explosão de subclasses para suportar cada combinação. Ou ainda a definição de

uma classe pode estar oculta ou indisponível para se criar subclasses.”

Características do pattern “Decorator” (UFRJ_LCG);

“- maior flexibilidade do que herança estática;

- evita sobrecarga de características em classes de alto nível da hierarquia;

- um "Decorator" e seu componente não são idênticos, não confie na

identidade de objetos ao usá-lo;

- multidão de pequenos objetos: fácil de configurar, difícil para compreender e

debugar.”

Patterns Relacionados ao pattern “Decorator” (UFRJ_LCG);

“- um ‘Decorator’ é diferente de um ‘Adapter’ porque ele apenas modifica as

responsabilidades de um objeto, não a sua interface; um ‘Adapter’ irá dar a um

objeto uma interface completamente nova;

- um ‘Decorator’ poderia ser visto como um ‘Composite’ simplificado que tem

apenas um ‘Component’. Contudo, ele adiciona novas responsabilidades - ele

não tem como intenção a agregação de objetos;

28

- um ‘Decorator’ permite agregar uma mudança à ‘superfície’ de um objeto;

um ‘Strategy’ permite uma mudança no seu funcionamento interno. Essas são

as duas maneiras de mudar o comportamento de um objeto.

Pattern “Façade” ou “Fachada”

Propósito do pattern “Façade” ou “Fachada” (UFRJ_LCG);

“Prover uma interface unificada para um conjunto de interfaces em um

subsistema. Define uma interface de mais alto nível que torna mais fácil o uso

do subsistema.”

Este pattern é usado quando (UFRJ_LCG);

“- se quer oferecer uma interface simples para um subsistema complexo.

Subsistemas freqüentemente ficam cada vez mais complexos conforme

evoluem. Muitos patterns, quando usados, resultam em um maior número de

classes de menor tamanho. Isto faz com que o subsistema seja mais reutilizável

e fácil de configurar, mas também torna o seu uso mais difícil para clientes que

não precisam configurá-lo. Um ‘Façade’ pode disponibilizar uma vista padrão

simples do subsistema que é boa o suficiente para a maioria dos clientes.

Apenas clientes que precisem de maiores peculiaridades é que necessitariam

olhar além do Façade;

- existem muitas dependências entre clientes e as classes de implementação de

uma abstração. A introdução um ‘Façade’ irá desacoplar o subsistema dos

clientes e dos outros subsistemas, promovendo desse modo a independência e

portabilidade desses subsistemas;

- quando se deseja subsistemas em camadas. Use um ‘Façade’ para definir um

ponto de entrada para cada nível do subsistema. Se os subsistemas são

dependentes, então pode-se simplificar a dependência entre eles fazendo com

que eles se comuniquem uns com os outros unicamente através dos seus

‘Façades’.”

29

Características do pattern “Façade” (UFRJ_LCG);

“- Ele isola os clientes dos componentes do subsistema, reduzindo, desse

modo, o número de objetos com que o cliente interage e fazendo com que o

subsistema seja muito mais fácil de se usar;

- Ele promove um fraco acoplamento entre o subsistema e seus clientes.

Geralmente os componentes de um subsistema estão fortemente acoplados. Um

baixo acoplamento permite que se varie os componentes de um subsistema sem

afetar seus clientes;

- Ajuda a estruturar em camadas não só o sistema como as dependências entre

objetos;

- Podem eliminar referências complexas ou circulares entre objetos, o que é

fundamental quando cliente e subsistema são implementados separadamente.

Outra conseqüência é a redução das dependências de compilação, algo vital em

sistemas de porte, pois limita o tempo de recompilação necessário, devido a

uma pequena alteração em um subsistema importante;

- Simplifica portar sistemas para outras plataformas já que é pouco provável

que a compilação de um subsistema vá implicar na necessidade de compilar

todos os outros;

- Não impede as aplicações de usarem um subsistema de classes se elas

precisarem. Assim pode-se escolher entre facilidade de uso e generalidade.”

Patterns relacionados ao pattern “Façade” (UFRJ_LCG);

“- ‘Abstract Factory’ pode ser usado com o ‘Façade’ para prover uma interface

para criação dos objetos de um subsistema de um modo independente do

subsistema. ‘Abstract Factory’ também pode ser usado como uma alternativa

ao ‘Façade’ para esconder classes referentes a plataformas específicas;

- O ‘Mediator’ é similar ao ‘Façade’ no modo de abstrair a funcionalidade das

classes existentes. Contudo o propósito do ‘Mediator’ é abstrair a comunicação

entre objetos que participam de um mesmo conjunto, freqüentemente

centralizando funcionalidades que não estão em qualquer um deles. As classes

que participam de uma estrutura que contém o ‘Mediator’ estão cientes de que

a comunicação deve ser feita através dele e não entre elas diretamente. Ao

contrário, um ‘Façade’ meramente abstrai a inteface dos objetos de um

30

subsistema para fazê-lo mais fácil de ser usado. Ele não define novas

funcionalidades, e as classes de um subsistema não o conhecem;

- Normalmente apenas um objeto ‘Façade’ é requerido. Assim objetos

"Façade" freqüentemente são ‘Singletons’.”

Pattern Flyweight

Propósito do pattern “Flyweight” (UFRJ_LCG);

“Usar compartilhamento para suportar eficientemente um grande número de

objetos de fina granularidade. Para um resultado efetivo, o pattern Flyweight

depende fortemente de como é onde ele é usado.”

O pattern Flyweight é usado quando todas as seguintes características são

verdadeiras (UFRJ_LCG);

“- uma aplicação usa um grande número de objetos;

- custos de armazenamento são grandes por causa da grande quantidade de

objetos;

- a maior parte do estado dos objetos podem se tornar extrínsica;

- muitos grupos de objetos podem ser substituídos por relativamente poucos

objetos que possam ser compartilhados, uma vez que o estado extrínsico é

removido deles e colocado em outro lugar;

- a aplicação não depende da identidade do objeto. Uma vez que objetos

‘Flyweight’ podem ser compartilhados, testes de identidade irão retornar true

para objetos conceitualmente distintos.”

Características do pattern “Flyweight” (UFRJ_LCG);

“O ‘Flyweight’ pode introduzir alguns custos em tempo de execução

associados a transferência, procura e/ou computação de estados extrínsicos,

especialmente se eles forem formalmente armazenados como estados

intrínsicos. Contudo, tais custos são sobrepujados pela economia de espaço que

aumenta conforme cresce o número de ‘Flyweights’ compartilhados. A

economia de armazenamento é função de diversos fatores:

31

- a redução do número total de instâncias que se obtém com o

compartilhamento;

- a quantidade de estado intrínsico por objeto;

- se o estado extrínsico é computado ou armazenado;

- O pattern ‘Flyweight’ normalmente é combinado com o pattern ‘Composite’

para representar uma estrutura hierárquica com nós ‘Leaf’ compartilhados.

Uma conseqüência do compartilhamento é que essas folhas não podem

armazenar uma referência para seus pais. Esta referência deve ser repassada ao

‘Flyweight’ como parte do seu estado extrínsico. Isso provoca um forte

impacto em como os objetos na hierarquia se comunicam uns com os outros.”

Patterns relacionados ao pattern "Flyweight" (UFRJ_LCG);

“- O pattern Flyweight é freqüentemente combinado com o pattern

"Composite" para implementar uma hierarquia logicamente estruturada com

nós folhas ("Leaf") compartilhados. Geralmente é melhor implementar objetos

"State" e "Strategy" como "Flyweights".”

Pattern Proxy

Propósito do pattern “Proxy” (UFRJ_LCG);

“Prover um substituto ou um receptáculo para um objeto, com o objetivo de

controlar como esse objeto é acessado. É indicado sempre que for necessária

uma referência mais versátil ou sofisticada para um objeto do que

simplesmente um ponteiro.”

Existem várias situações comuns onde esse pattern é utilizado (UFRJ_LCG);

“O pattern Proxy introduz um nível de intermediação para acessar um objeto.

Essas intermediações adicionais tem vários usos, dependendo do tipo do

Proxy:

- um ‘remote proxy’ provê um representante local para um objeto em um

espaço de endereçamento diferente;

- um ‘virtual proxy’ cria objetos custosos, por consumirem grande número ou

quantidade de recursos, sob demanda;

32

- um ‘protection proxy’ controla o uso do objeto original. Muito útil quando

clientes devem ter diferentes permissões de acesso ao objeto;

- um ‘smart reference’ é uma substituição por um ponteiro simples que faz

ações adicionais quando um objeto é acessado.

- Tanto o ‘protection proxy’ quanto o ‘smart proxy’ permitem que sejam feitas

tarefas adicionais quando um objeto é acessado. “

Patterns Relacionados ao pattern “Proxy” (UFRJ_LCG);

“- Um ‘Adapter’ provê uma interface diferente para o objeto que ele adapta. Já

o objetivo do ‘Proxy’ é prover a mesma interface de seu ‘Subject’. Contudo, o

’Proxy’, quando usado para proteger o acesso a um objeto, pode se recusar

executar uma operação que a classe ‘Subject’ executaria, de forma que a sua

interface poderia ser, efetivamente, um subconjunto da classe Subject;

- Embora o ‘Decorator’ tenha implementações similares as dos ‘Proxies’, ele

tem um propósito diferente. O ‘Decorator’ adiciona uma ou mais

responsabilidades ao objeto, enquanto o proxy controla o acesso ao objeto;

- ‘Proxies’ variam o grau em que eles são implementados como o ‘Decorator’.

Um ‘protection proxy’ deve ser implementado exatamente como um

‘Decorator’. Já um ‘remote proxy’ não deverá conter uma referência direta a

sua classe ‘Subject’, apenas uma referência indireta. Um ‘virtual proxy’ deverá

se iniciar com uma referência indireta, tal como um nome de arquivo, mas

eventualmente irá obter e usar uma referência direta.”

Pattern “Mediator” ou “Mediador”

Propósito do pattern “Mediator” ou “Mediador” (PONCE);

“Usa um objeto para coordenar mudanças de estado entre outros objetos,

pondo a lógica num objeto para ministrar mudanças de estado de outros

objetos, em vez de distribuir a lógica sobre os outros objetos. O resultando é

uma implementação coesiva da lógica e deminui o acoplamento entre os outros

objetos.”

Patterns relacionados ao pattern “Mediator” (PONCE);

33

“- Adaptador. Uma classe mediador freqüentemente usa objetos adaptador para

receber notificações de mudanças de estado.

- Interface. É usado pelo padrão Mediador para manter as classes coligadas

independentes da classe Mediador.”

Pattern “Command” ou “Comando”

Propósito do pattern “Command” ou “Comando” é encapsular comandos em um

objeto de forma a permitir controlar sua seleção, seqüencia, enfileiramento, entre outros

tipos de manipulação de comandos (PONCE).

Patterns relacionados ao pattern “Command” (PONCE);

“- Método Fábrica. Pode ser usado para prover uma camada indireta entre uma

interface de usuário e classes comando.

- Template. Pode ser usado para implementar a lógica de desfazer do último

nível.

- Composição. Pode ser usado para criar macro-comandos.

- Memento. Pode manter o estado do Comando, o que é necessário para

desfazer seu efeito.”

Pattern Observador

Propósito do pattern “Observador” (PONCE);

“Permite que objetos registrem dinamicamente dependências entre objetos, de

forma que um objeto pode notificar esses objetos que são dependentes neles

quando seus estados mudam.”

Patterns relacionados ao pattern “Observador” (PONCE);

“- Adaptador. Pode ser usado para permitir que objetos que não implementam

a interface requerida participem no padrão Observador.

- Delegador. É usado pelo padrão Observador

- Mediador. Algumas vezes é usado para coordenar mudanças de estado

iniciadas por múltiplos objetos a um objeto observável.”

34

Pattern “Iterador”

O propósito do pattern “Iterador” é “Definir uma interface que declara métodos

para acessar seqüencialmente objetos numa coleção.” (PONCE).

Patterns relacionados ao pattern “Iterador” (PONCE);

“- Adaptador. O padrão iterador é uma forma especializada de um adaptador

para acessar seqüencialmente ao conteúdo da coleção de objetos.

- Método Fábrica. Alguma coleção de classes pode usá-las para determinar que

classe de iterador instanciar.

- Memento. É freqüentemente usado junto ao padrão Iterador.”

Pattern “Memento”

O propósito do pattern “Memento” é, “Capturar e restabelecer o estado de um

objeto sem violar a encapsulação. Implementa pontos de verificação e mecanismos para

desfazer” (PONCE).

Patterns relacionado ao pattern “Memento” (PONCE);

“- ‘Comand’. Pode usar o padrão ‘Memento’ para manter um estado para

operações a desfazer.

- ‘Iterador’. Mementos podem ser usados para iterar.”

Dentre os patterns analisados, destacamos a necessidade de considerar o pattern

proxy na operacionalização de websites produzidos pelo software, pois o conceito deste

pattern pode estar sendo empregado na prática no casos em que usuários/visitantes

necessitam do uso de “serviços proxy” para o funcionamento dos browsers navegadores.

O emprego de “serviços proxy” pelo usuário/visitante pode limitar o uso de transmissões

de áudio e vídeo por streams, e como a base da interação de nosso modelo requer

freqüente uso de áudio, devemos então dar atenção especial ao pattern proxy no

desenvolvimento e uso do software.

Alguns paterns relatados nesta monografia podem ser seu conceito empregados

parcialmente e outros podem também ser empregados de forma combinada no

desenvolvimento do software ou no modelo de interação proposto.

35

2.9 – Lei de acessibilidade

A lei federal DECRETO Nº 5.296 de 2 de dezembro 2004 - DOU de 3/12/2004,

que regulamenta, estabelece normas gerais e critérios básicos para a promoção da

acessibilidade das pessoas portadoras de deficiência. A lei no capítulo dois determina que

seja dado prioridade nos órgãos da administração pública direta, indireta e funcional, as

empresas prestadoras de serviços públicos e as instituições financeiras, para pessoas

portadoras de deficiências.

No capítulo dois parágrafo primeiro, a lei categoriza as pessoas portadoras de

deficiências da seguinte forma:

a) deficiência física: alteração completa ou parcial de um ou mais segmentos

do corpo humano, acarretando o comprometimento da função física,

apresentando-se sob a forma de paraplegia, paraparesia, monoplegia,

monoparesia, tetraplegia, tetraparesia, triplegia, triparesia, hemiplegia,

hemiparesia, ostomia, amputação ou ausência de membro, paralisia cerebral,

nanismo, membros com deformidade congênita ou adquirida, exceto as

deformidades estéticas e as que não produzam dificuldades para o desempenho

de funções;

b) deficiência auditiva: perda bilateral, parcial ou total, de quarenta e um

decibéis (dB) ou mais, aferida por audiograma nas freqüências de 500Hz,

1.000Hz, 2.000Hz e 3.000Hz;

c) deficiência visual: cegueira, na qual a acuidade visual é igual ou menor que

0,05 no melhor olho, com a melhor correção óptica; a baixa visão, que

significa acuidade visual entre 0,3 e 0,05 no melhor olho, com a melhor

correção óptica; os casos nos quais a somatória da medida do campo visual em

ambos os olhos for igual ou menor que 60o; ou a ocorrência simultânea de

quaisquer das condições anteriores;

d) deficiência mental: funcionamento intelectual significativamente inferior à

média, com manifestação antes dos dezoito anos e limitações associadas a duas

ou mais áreas de habilidades adaptativas, tais como:

1. comunicação; 2. cuidado pessoal; 3. habilidades sociais; 4. utilização dos

recursos da comunidade; 5. saúde e segurança; 6. habilidades acadêmicas; 7.

lazer; e 8. trabalho;

36

e) deficiência múltipla - associação de duas ou mais deficiências;”

O governo federal na lei n.5.296 capítulo três no artigo oitavo, define

acessibilidade como:

“condição para utilização, com segurança e autonomia, total ou assistida, dos

espaços, mobiliários e equipamentos urbanos, das edificações, dos serviços de

transporte e dos dispositivos, sistemas e meios de comunicação e informação,

por pessoa portadora de deficiência ou com mobilidade reduzida”

O artigo oito também conceitua as barreiras à acessibilidade classificando-as de

quatro formas; barreiras urbanísticas, barreiras nas edificações, barreiras nos transportes

e barreiras nas comunicações:

“ II - barreiras: qualquer entrave ou obstáculo que limite ou impeça o acesso, a

liberdade de movimento, a circulação com segurança e a possibilidade de as

pessoas se comunicarem ou terem acesso à informação, classificadas em:

a) barreiras urbanísticas: as existentes nas vias públicas e nos espaços de uso

público;

b) barreiras nas edificações: as existentes no entorno e interior das edificações

de uso público e coletivo e no entorno e nas áreas internas de uso comum nas

edificações de uso privado multifamiliar;

c) barreiras nos transportes: as existentes nos serviços de transportes; e

d) barreiras nas comunicações e informações: qualquer entrave ou obstáculo

que dificulte ou impossibilite a expressão ou o recebimento de mensagens por

intermédio dos dispositivos, meios ou sistemas de comunicação, sejam ou não

de massa, bem como aqueles que dificultem ou impossibilitem o acesso à

informação;”

No capítulo 3 artigo oitavo da lei, é citado o termo “desenho universal” definido

como:

“desenho universal: concepção de espaços, artefatos e produtos que visam

atender simultaneamente todas as pessoas, com diferentes características

37

antropométricas e sensoriais, de forma autônoma, segura e confortável,

constituindo-se nos elementos ou soluções que compõem a acessibilidade.”

O prazo para atendimento à lei é de até vinte quatro meses a contar da data de

publicação do decreto, ou seja, até dezembro de 2007 torna-se obrigatório por lei a

acessibilidade aos portadores de deficiências visuais em websites e portais de todos os

órgãos da administração pública, e passa a condicionar determinados tipos de

financiamento do governo à regularidade em relação ao cumprimento desta lei. Capítulo

seis, artigo quarenta e sete define:

“Art. 47. No prazo de até doze meses a contar da data de publicação deste

Decreto, será obrigatória a acessibilidade nos portais e sítios eletrônicos da

administração pública na rede mundial de computadores (internet), para o uso

das pessoas portadoras de deficiência visual, garantindo-lhes o pleno acesso às

informações disponíveis.

§ 1o Nos portais e sítios de grande porte, desde que seja demonstrada a

inviabilidade técnica de se concluir os procedimentos para alcançar

integralmente a acessibilidade, o prazo definido no caput será estendido por

igual período.

§ 2o Os sítios eletrônicos acessíveis às pessoas portadoras de deficiência

conterão símbolo que represente a acessibilidade na rede mundial de

computadores (internet), a ser adotado nas respectivas páginas de entrada.

§ 3o Os telecentros comunitários instalados ou custeados pelos Governos

Federal, Estadual, Municipal ou do Distrito Federal devem possuir instalações

plenamente acessíveis e, pelo menos, um computador com sistema de som

instalado, para uso preferencial por pessoas portadoras de deficiência visual.

Art. 48. Após doze meses da edição deste Decreto, a acessibilidade nos portais

e sítios eletrônicos de interesse público na rede mundial de computadores

(internet), deverá ser observada para obtenção do financiamento de que trata o

inciso III do art. 2o.”

O texto do DECRETO Nº 5.296 pode ser consultado na integra em

http://www81.dataprev.gov.br/sislex/paginas/23/2004/5296.htm.

38

2.10 - Sintetizadores e leitores de voz

Os sintetizadores e leitores de voz são softwares que interpretam os textos escritos

ou telas de computadores narrando-os em voz audível, de forma a permitir que o usuário

ouça o conteúdo escrito nos documentos, as teclas pressionadas no teclado ou as palavras

formadas na digitação, além de leitura de conteúdos exibidos em telas do sistema

operacional e em páginas da internet. A tecnologia de sintetização de voz pode ser

utilizada também para reconhecer comandos de voz emitidos pelo usuário disparando

ações do sistema operacional, ou simplesmente escrever em documentos, textos narrados

pelo usuário. A seguir descrevemos alguns dos mais conhecidos e utilizados sistemas

sintetizadores específicos para usuários portadores de deficiências visuais.

DOSVOX – Conjunto de sistemas desenvolvido por pesquisadores do Núcleo de

Computação Eletrônica da Universidade Federal do Rio de Janeiro (UFRJ), com

finalidade de permitir a comunicação homem-máquina de usuários portadores de

deficiências visuais. A comunicação é viabilizada com a utilização combinada dos

softwares do projeto, com o qual o usuário pode interagir com o computador via

comandos de reconhecimento de voz do usuário, sintetização (leitura) de teclas

pressionadas no teclado, leitura de textos e páginas da internet. O projeto DOSVOX pode

ser configurado para utilização em outros idiomas e já possui milhares de usuários no

Brasil e no exterior. (DOSVOX).

Virtual Vision - Com objetivos similares ao do projeto DOSVOX o sistema

desenvolvido e comercializado, pela empresa brasileira Micropower permite que

deficientes visuais possam navegar no ambiente Windows e utilize aplicativos como

editores de texto, planilhas eletrônicas, naveguem pela internet, leia e redija e-mails,

utilizando recursos de sintetização de voz. O sistema possui recursos avançados que

facilitam a redação de textos com a leitura por tecla, palavra, por frases entre diversas

outras formas programáveis que proporciona facilidade e agilidade para o usuário

portador de deficiências visuais. (www.micropower.com.br)

Jaws for Windows – Conhecido mundialmente, o software desenvolvido para empresa

americana Freedom Scientific é composto por um conjunto de módulos que permite ao

39

usuário portador de deficiências visuais utilizar o sistema operacional Windows, além de

diversos aplicativos como, editores de texto, planilhas eletrônicas, agendas, ler e redigir

e-mails, e também permite o acesso para navegação na internet. Pode ser utilizado em

diversas línguas incluindo o português do Brasil. (www.lerparaver.com/jaws/).

2.11 – CMS – Content Management System

Sistema de Gerenciamento de Conteúdo é o conceito que permite aos usuários

de negócio gerenciarem os conteúdos de seus websites, portais corporativos, intranets ou

aplicações web, sem a necessidade de conhecimentos técnicos (programação) e através

de um software gerenciador de conteúdo também conhecido como CMS (Content

Management System) (NAVITA).

Existem alguns tipos de softwares de gerenciamento de conteúdo (NAVITA):

“- Publicadores: são softwares simples que não separam a camada de

apresentação do conteúdo e exigem um alto esforço de customização; ou seja,

podem ser bem aproveitados em pequenos projetos, como hotsites, porém se

necessitar algo mais avançado, é necessário customizar com alto esforço. São

simples e geralmente gerenciam conteúdos de páginas.

- Content Management Systems, Web Content Management, Gerenciadores de

conteúdo ou apenas CMS: são softwares mais robustos que permitem a

construção de grandes projetos, com funcionalidades avançadas, incluindo,

mas não se limitando a personalização, busca e indexação, workflow de

conteúdo, etc. A principal diferença entre um CMS e um publicador de

conteúdo é que o primeiro separa o conteúdo de sua forma de apresentação e

não se limita ao gerenciamento de conteúdo baseado em páginas, é possível

gerenciar objetos de conteúdo, documentos, etc.

- Enterprise Content Management: esta é a definição utilizada para os

grandes CMSs. A principal diferença é que este tipo de software permite

gerenciar conteúdo web e também outros conteúdos digitais, como documentos

em diversos formatos e também arquivos digitais como imagens e vídeos.”

40

Entre os mais conhecidos softwares CMS, destacamos ; CPG-Nuke, Drupal,

Joomla, Mambo, Moodle, MOZIS WebSystem, Php-Nuke, PHP-Flu, Plone, olgodi,

Typo3, Xoops, Loomla,

Entre as vantagens que um sistema de gerenciamento de conteúdo pode oferecer

MILLARCH destaca:

“- Estruturação do processo de autoria, no qual toda a sua equipe poderá

contribuir, cada um na sua área de atuação e conhecimento;

- Diminuição do tempo necessário para a criação de novas páginas e

atualizações das já publicadas;

- Harmonia estética com o resto do site e demais conteúdos;

- Melhor estruturação da navegação, mantendo a coerência com projeto inicial

de arquitetura da informação;

- Maior flexibilidade, para acrescentar ou editar conteúdos de forma

descentralizada e em qualquer lugar, dia ou noite, dentro ou não do escritório;

- Permissão granular de acesso às informações publicadas;

- Maior segurança;

- Gerenciamento de versão dos conteúdos;

- Escalabilidade;

- Diminuição dos custos de manutenção;

- Em termos simples, um CMS permite que a empresa tenha total autonomia

sobre o conteúdo e evolução da sua presença na internet e dispensa a

assistência de terceiros ou empresas especializadas para manutenções de

rotina. Nem mesmo é preciso um funcionário dedicado (o famoso webmaster),

pois cada membro da equipe poderá gerenciar o seu próprio conteúdo, diluindo

os custos com recursos humanos;

- A habilidade necessária para trabalhar com um sistema de gerenciamento de

conteúdo não vai muito além dos conhecimentos necessários para editar um

texto no Word.”

Segundo MILLARCH, embora possa parecer complexo, os CMS sob o ponto de

vista do usuário final é bastante simples. Ele oferece ferramentas que podem ser

acessadas via internet em qualquer navegador (Internet Explorer, Netscape, Firefox), e

41

permite realizar todo o processo de gerência, desde a criação até o arquivamento do

conteúdo, e é comum estar incorporado aos gerenciadores de conteúdo a possibilidade de

cuidar desde a aparência do site até mesmo os menus de navegação.

2.12 – Considerações finais

Neste capítulo, foi mostrado conceitos e definições sobre assuntos pertinentes a

nossa pesquisa, entre eles destacamos temas relacionados à interação humano-

computador como; usabilidade, ergonomia, acessibilidade, design de interfaces e

sintetizadores/leitores de voz. Outros temas abordados neste capítulo relacionam-se a

padrões web (web standards da W3C) e padrões de desenvolvimento (design pattern,),

ressaltamos porém que apesar de investirmos esforços para utilizá-los e/ou atendê-los,

inicialmente daremos prioridade a questões de ergonomia e usabilidade podendo deixar a

aderência a esses padrões para serem atingidas em aprimoramento de versões futuras do

software protótipo.

No próximo capítulo apresentaremos o resultado da pesquisa com o modelo de

interação proposto e o funcionamento do software protótipo desenvolvido.

42

3 - RESULTADO DA PESQUISA

Com o objetivo de aferir o sucesso do modelo proposto para interação de pessoas

portadoras de deficiências visuais em websites, desenvolvemos um software aplicativo

protótipo capaz de produzir websites com características adaptativas, que permite o

acesso tanto de pessoas com visão normal quanto pessoas portadoras de deficiências

visuais. No software desenvolvido, a interface para pessoas portadoras de deficiências

visuais foi projetada inicialmente apenas para deficientes com perda total da visão, ou

seja, pessoas com visão parcial, que poderiam se beneficiar também de adaptações para

utilização de recursos visuais tais como aumento de fontes das letras ou aumento do

contraste da tela, não são beneficiados no modelo proposto na versão atual de nosso

protótipo.

Da análise de requisitos ao desenvolvimento do protótipo foi dada prioridade ao

atendimento de facilidades ergonômicas e quesitos de usabilidade na interface, deixando

o quesito acessibilidade em menor prioridade. Esta decisão não pretende de forma

alguma dar menor importância à acessibilidade, apenas pretende privilegiar no modelo de

interação proposto a ergonomia e usabilidade, sem limitar a liberdade de criação de um

modelo que seja altamente adequado para portadores e não portadores de deficiências

visuais. Como resultado, os websites criados pelo software aplicativo, não são produzidos

totalmente aderentes aos padrões WCAG da W3C, com conseqüentes limitações à

acessibilidade, por outro lado, desta forma o aplicativo ganha muito em controles

avançados sob iteração com o usuário, permitindo níveis mais altos de assistência ao

usuário durante sua experiência de uso do website.

Durante o desenvolvimento do software pudemos perceber duas destinações

possíveis para o software. A primeira seria para desenvolvimento de aplicações web,

podendo ser utilizado como um framework e continuar recebendo agregações modulares

de novos recursos e funcionalidades, estendendo o potencial do software para

desenvolvimento de funcionalidades específicas para diversas aplicações para internet

como, por exemplo, aplicativos de gestão, comércio e governo eletrônico, ferramenta de

apoio a alfabetização e a educação de pessoas portadoras de deficiências visuais. A

segunda destinação poderia ser para uso do software como opção de aplicação CMS

(Content Management System), no qual o usuário administrador do website pode, mesmo

sem conhecimentos avançados em informática e programação, com o auxílio de

43

assistentes, criar websites que serão acessíveis para portadores e não portadores de

deficiências visuais.

3.1 - A forma de organização das informações na aplicação

Diferentemente do recomendado pela W3C, no modelo proposto todo o

conteúdo, textos, imagens, mensagens de voz humana gravada, menus e todas

informações ficam armazenados exclusivamente em bancos de dados e não em arquivos

HTML, XHTML e XML; e a aparência, formato de apresentação das páginas, tamanhos,

cores dos textos, cor do fundo e bordas não são definidos em arquivos CSS. Essas

definições são configurados no sistema de acordo com os objetivos esperados e conforme

a programação de interação desejada para cada ponto de interação. Na Figura 4,

ilustramos a funcionamento do sistema na produção de páginas criadas em tempo de

execução.

Figura 4 – Estrutura Conceitual do Site

A Figura 4 ilustra de forma de funcionamento do software protótipo

desenvolvido, pela qual o website é constituído de telas (templates) que são “montadas”

44

em tempo de execução com base em conteúdos e definições de layout que estão

armazenados em bancos de dados.

No Quadro 3, apresentamos a representação de parte da tabela de banco de dados

responsável por armazenar o conteúdo que o software utilizará para “montar” o website.

Nesta tabela, as informações são organizadas segundo uma estrutura hierárquica onde o

campo “Id OBJ” é a chave primária e a combinação dos campos “Nível” e “Opção

Menu” representam o ponto que o usuário/visitante está na navegação e quais as opções

possíveis a oferecer neste ponto.

Quadro 3 – Parte da tabela de armazenamento do conteúdo e configuração de interaçãoId OBJ Título do Conteúdo Nível Opção Menu Demais

Colunas...1 Home 1 01.1 Institucional 2 21.1.1 Quem Somos 3 21.1.2 Alianças e Parcerias 3 31.1.3 Nossos Clientes 3 41.2 Produtos e Serviços 2 31.2.1 Produtos 3 21.2.1.1 B3 – Sistema Integrado de Gestão 4 21.2.1.2 S3 – Gestão de Serviços Públicos 4 31.2.2 Serviços 3 31.2.2.1 Gestão de Negócios 4 21.2.2.2 Informática e TI 4 31.2.2.3 Serviços Web 4 41.2.3 Para pessoas e empresas 3 41.2.4 Para o governo e prefeituras 3 51.2.5 Para fins acadêmicos 3 61.2.6 Test Drive 3 71.3 Suporte 2 41.3.1 Chat on-line 3 21.3.2 Suporte & Help-Desk 3 31.3.2.1 Help-Desk Clientes Cadastrados 4 21.3.2.2 Suporte Clientes Não Cadastrados 4 31.4 Área Restrita 2 51.4.1 Web Mail 3 21.4.2 Administração do WebSite 3 31.5 Contatos 2 61.5.1 Chat on-line 3 21.5.2 Críticas e Sugestões 3 31.5.3 Contato 3 41.5.4 Fale com o Presidente 3 5

Nesta mesma tabela de banco de dados, são armazenadas em colunas (campos)

outros dados que não foram exibidos no Quadro 3. Destacamos entre eles os seguintes

campos essenciais para produção das páginas do website: conteúdo visível do menu,

conteúdo audível do menu, opções possíveis neste ponto, conteúdo visível da opção,

45

conteúdo audível da opção, opções de ajuda para a opção, funções a serem executadas

conforme ações realizadas pelo usuário/visitante neste ponto, entre diversas outras

propriedades que são utilizados na interação, conforme a navegação do usuário/visitante.

3.2 - Funcionamento do software aplicativo protótipo

Quando o usuário/visitante acessa de sua casa via internet nosso website modelo,

o sistema provedor, que é o nosso software protótipo, abre uma “seção de uso” que

mantêm controle sobre a interação, monitorando as ações do usuário/visitante,

identificando sua posição no website, e fazendo inferências sobre como assistí-lo,

conforme instruções pré-configuradas para aquele “ponto de interação”.

Em nosso trabalho, definiremos o termo “ponto de interação” como a localização

ou posição do usuário/visitante na navegação do website. Cada ponto de interação é

cadastrado no sistema protótipo pelo administrador do website, o qual também deve

configurar as interações possíveis para dar seqüência àquele ponto, cadastrando as

instruções e orientações a serem passadas ao usuário/visitante caso ele peça ajuda,

precise se recuperar de erros ou seja identificado que ele “se perdeu” na interação com o

website neste ponto. Um “ponto de interação” no sistema também pode ser entendido

como um registro na tabela de banco de dados, conforme ilustra o Quadro 3.

Figura 5 – Arquitetura Lógica do Sistema

46

A decisão sobre o leiaute das telas e o conteúdo a ser exibido em cada momento

durante o uso do website, depende dos cadastros e configurações armazenadas no banco

de dados e podem ser ilustrados conforme Figura 5.

Os padrões de acessibilidade WCAG da W3C, podem proporcionar vantagens

estabelecendo os padrões para apresentação de “Conteúdo” (HTML/XHTML) e sua

“Forma” (CSS), mas a “Configuração da Interação” normalmente está “embutido” na

combinação e uso de seqüências de navegação HTMLs e CSSs. Em nosso modelo

estendemos a representação de websites não se limitando apenas ao conteúdo e a forma,

mas também a interação do website, permitindo sua definição por meio de cadastros e

configurações registrados no sistema.

O comportamento e a aparência do website quando operado por usuários

portadores de deficiências visuais, difere muito pouco de quando acessado por usuários

não deficientes visuais. As diferenças residem apenas na reprodução sonora de conteúdo

e instruções e na exibição de um campo onde o cursor fica posicionado para receber as

instruções do teclado. O comportamento do sistema permite que pessoas não portadoras

de deficiências visuais possam acompanhar a navegação visualmente. A Figura 6 ilustra

uma tela (template) padrão do sistema.

Figura 6 – Exemplo de template para páginas do sistema

As opções que são narradas ao usuário/visitante são as mesmas que o sistema

exibe na tela em formato de menu quando o website é utilizado por pessoas não

47

portadoras de deficiências visuais. Na Figura 6, exibimos um template do sistema

instanciado para uma página exemplo, o usuário nesta ilustração já selecionou a opção de

exibição dos produtos oferecidos pela empresa.

Figura 7 – Exemplo de template instanciado do sistema.

Na Figura 7, podemos perceber que as opções apresentadas na área principal de

exibição (localizada na região central e a direita da tela), também fazem parte do menu

de navegação (a esquerda da tela). Neste exemplo, se o usuário/visitante desejar conhecer

o produto “Sites Municipais” ele deve clicar na tecla “3” e teclar “Enter”, conforme a

última orientação emitida pelo website para o usuário/visitante.

Um website produzido por este sistema possui uma “área restrita”, de acesso

apenas ao administrador do website, na qual estão disponíveis os recursos para sua

manutenção, tais como: inserção, atualização e exclusão de conteúdo de forma similar

aos programas CMS existentes atualmente. Assim como todo o website, sua tela de

configuração, foi desenvolvida pelo próprio sistema, portanto é aberto para o

administrador mudar ou alterar as próprias telas utilizadas para configurar o sistema.

No funcionamento dos websites produzidos pelo sistema, a ativação da interface

para pessoas portadoras de deficiências visuais pode ser realizada no momento em que os

usuários/visitantes entram em um website. Neste momento, é exibido no browser

(navegador de internet) uma página com aparência comum, com o cursor posicionado em

48

um campo já preenchido com valor “0”(zero), e é emitido automaticamente uma

mensagem de áudio com o seguinte dizer: “Esta página está preparada para ser acessada

por portadores de deficiências visuais! Para ativar a interface para deficientes visuais

pressione agora a tecla enter!”. Caso o usuário/visitante tecle “enter” a interface será

ativada e assistirá o usuário/visitante durante a navegação, se porém, o usuário/visitante

pressionar qualquer outra tecla, ou qualquer seleção via mouse, a interface não será

ativada e a navegação utilizará teclado, mouse e monitor de forma idêntica a interação

como é realizada em qualquer website da internet.

3.3 - O modelo de interação proposto

No modelo proposto, a interação no sentido homem-máquina é realizado por

intermédio do teclado, que pode ser “visto” pelo usuário portador de deficiências visuais

de forma mais eficaz com o emprego de teclas braile adesivas que, coladas ao teclado,

podem fornecer mais conforto e confiança ao usuário. Já a comunicação no sentido

máquina-homem, é realizada por áudio, podendo ser dependendo do ponto de interação e

dos objetivos previamente configurados para o website, voz humana pré-gravada ou texto

lido com sintetizador de voz. Seu funcionamento consiste, basicamente, na reprodução

sonora na estação de trabalho de pequenos arquivos do formato MP3 que são enviados

pelo website e executados, automaticamente, pelo browser conforme a navegação e as

ações realizadas pelos usuários/visitantes.

Com intenção de promover a melhor experiência possível a usuários/visitantes,

durante a navegação em websites produzidos no aplicativo protótipo, alguns padrões

foram adotados, considerando facilidades ergonômicas e conveniências de usabilidade. O

padrão para comunicação no sentido homem-máquina utiliza o teclado e reserva as teclas

“0”, “1” e “9”, para funções pré-determinadas, e produzindo o mesmo efeito/ação em

qualquer ponto do website e em qualquer website produzido pelo nosso software

aplicativo. As teclas reservadas produzem os seguintes efeitos:

0 – em qualquer lugar do sistema ao se digitar 0 (zero), o sistema entenderá que o

usuário/cliente está solicitando para ir a página inicial do website, equivalente a

opção/tecla “home” ou “Tela Principal” de websites;

49

1 – em qualquer lugar do sistema ao se digitar 1 (um), o sistema entenderá que o

usuário/cliente está solicitando que deseja voltar um nível na hierarquia do ponto

que ele está, equivalente a tecla “Voltar” no navegador web;

9 – em qualquer lugar do sistema ao se digitar 9 (nove) o sistema entenderá que o

usuário/cliente deseja que o sistema repita a narração o conteúdo da página no

ponto em que está no website, ou deseja ajuda para prosseguir;

? – Caso seja digitado “?” em qualquer ponto da navegação, o sistema realizará

inferências sobre as últimas interações e emitirá áudio informando sua posição,

como se recuperar e proceder para acessar o conteúdo de seu interesse.

Já os demais caracteres (número e letras) poderão ser utilizados para programação

da interação, a ser realizado pelo administrador do website. É a programação de interação

que viabiliza a interface para portadores de deficiências, seqüenciando as mensagens

narradas ao usuário/visitante de forma assistida em cada ponto de interação. A seguir

apresentamos um caso de uso que representa bem a utilização dos elementos de interação

definidos no modelo:

Ação/Resposta do Ator (usuário/visitante) Resposta/Ação do Sistema (protótipo modelo)1. Um usuário/visitante acessa o website. 2. Abre a página principal (home), e apresenta por

áudio mensagem de boas vindas.Exemplo de mensagem: “Bem vindo a nossa página.Esta página está preparada para ser acessada porpessoas portadoras de deficiências visuais. Para ativara interface para portadores de deficiências visuaispressione a tecla ENTER”.3.1. Exibe o website, exibindo o conteúdo da páginaprincipal (inicial) com aparência típica de websitespadrões da internet.3.2. Posiciona o cursor no campo “Opções”, que já éexibido no browser preenchido com valor “0” (zero)

50

Ação/Resposta do Ator (usuário/visitante) Resposta/Ação do Sistema (protótipo modelo)4. Caso confirme pressionando a tecla “ENTER”após a orientação de “boas vindas”, siga para opasso 5 Caso seja informado qualquer outra teclaou clique de mouse, o sistema não habilita ainterface com interação assistida, oculta o campoopções e não emite mais mensagens de áudio.

5. Confirma anunciando a posição do usuário/visitanteno website e narra o conteúdo do ponto de interação,ou, anuncia as opções de navegação neste ponto.Exemplo de mensagem: “Página Principal!”, . Paraacessar determinado tipo de informação tecle 2, paraconhecer determinado assunto tecle 3, para acessaroutra informação tecle 4 e para determinado tipo deprocedimento tecle 5. Depois que clicar o númerocorrespondente confirme com ENTER”Observação: as opções apresentadas foram inseridas econfiguradas pelo administrador do website, porém,as teclas “0”, “1”, “9” e “?” são reservadas pelosistema e não podem ser utilizadas pelo administradordo website.

6. Conforme opções apresentadas pelo website ousuário/visitante decide pela opção que oconduzirá ao acesso do assunto desejado.

7. Confirma anunciando a posição do usuário/visitanteno website e; narra o conteúdo do ponto de interação,ou, anuncia as opções de navegação neste ponto.Exemplo de mensagem para este ponto: “Você está napágina/assunto ... !

8. Caso o usuário/visitante tecle :0 – Vá para o ponto 5 ;1 – Vá para o ponto 5 ou 7 dependendo daprofundidade do ponto em que está;9 – Vá para o ponto 7;? – Passa orientações de ajuda pré-configuradaspara o ponto 7.Outras teclas – Segue para o ponto 9.

9. Confirma anunciando a posição do usuário/visitanteno website e narra o conteúdo do ponto de interação,ou, anuncia as opções de navegação do ponto deinteração selecionado no ponto 8.

10. Vá para o ponto 6.

3.4 - Exemplos de interação utilizando a interface para deficientes visuais

Com objetivo de exemplificar a utilização do método de interação apresentaremos

dois exemplos de utilização, um utilizando o template principal e outro utilizando

template de formulário de cadastro. A seguir apresentaremos um caso de uso que

demonstra as iterações necessárias para o usuário/visitante conseguir conhecer o produto

fictício “sistema de gestão de serviços públicos” em nosso website modelo.

Caso de Uso: Navegação no template principal do website por pessoas portadorasde deficiências visuais.

Atores envolvidos: Usuários/VisitantesFinalidade: Assistir ao usuário visitante portador de deficiências visuais na

navegação e utilização do website, com objetivo de conhecer dentreos produtos oferecidos pela empresa, o produto “Sistema de Gestãode Serviços Públicos”.

Visão Geral: Um usuário/visitante uma vez acessado o website deve ter apoio

51

Caso de Uso: Navegação no template principal do website por pessoas portadorasde deficiências visuais.assistido para que possa navegar pelo website e ter acesso aoconteúdo de seu interesse.

Pré-Condição O usuário/visitante deve em seu computador ter condições deacessar o website em navegadores de internet (browsers).

Seqüência Típica de Eventos:

Ação/Resposta do Ator (usuário/visitante) Resposta/Ação do Sistema (protótipo modelo)1. Um usuário/visitante acessa o website. 2. Abre a página principal (home) e apresenta, por

áudio, mensagem de boas vindas.Exemplo de mensagem: “Bem vindo a nossa página.Esta página está preparada para ser acessada porpessoas portadoras de deficiências visuais. Para ativara interface para portadores de deficiências visuaispressione a tecla ENTER”.3.1. Exibe o website, exibindo o seu conteúdo comaparência de websites padrões da internet.3.2. Posiciona o cursor no campo “Opções”, que já éexibido na browser preenchido com valor “0” (zero)

4. Caso confirme pressionando a tecla “ENTER”após a orientação de “boas vindas”, siga para opasso 5 Caso seja informado qualquer outra teclaou clique de mouse, o sistema não habilita ainterface com interação assistida e segue ospassos conforme descreve o CaminhoAlternativo 5.1.

5. Confirma anunciando a posição do usuário/visitanteno website e narra o conteúdo do ponto de interação,ou, anuncia as opções de navegação neste ponto.Exemplo de mensagem: “Página Principal. Paraacessar informações sobre nossa empresa tecle 2, paraconhecer nossos produtos e serviços tecle 3, paraconhecer quem são nossos clientes tecle 4 e paraentrar em contato conosco tecle 5. Depois que clicar onúmero correspondente confirme com ENTER”Observação: as opções apresentadas foram inseridas econfiguradas pelo administrador do website, porém,as teclas “0”, “1”, “9” e “?” são reservadas pelosistema e não podem ser utilizadas pelo administradordo website.

6. Caso o usuário/visitante opte em conhecer osprodutos da empresa ele deve teclar “3” e emSeguida teclar ENTER.

7. Confirma anunciando a posição do usuário/visitanteno website e narra o conteúdo do ponto de interação,ou, anuncia as opções de navegação neste ponto.Exemplo de mensagem para este ponto: “Produtos eserviços da empresa! Para conhecer os produtos daempresa tecle 2 e depois ENTER, para conhecer osserviços da empresa tecle 3 seguido de ENTER”.

52

Ação/Resposta do Ator (usuário/visitante) Resposta/Ação do Sistema (protótipo modelo)8. Caso o usuário/visitante opte em conhecer osprodutos da empresa, deve-se clicar 2 e emSeguida ENTER.

9. Confirma anunciando a posição do usuário/visitanteno website e narra o conteúdo do ponto de interação,ou, anuncia as opções de navegação neste ponto.Exemplo de mensagem para este ponto: “Produtos daempresa! Para conhecer o sistema integrado de gestãoB3 tecle 2 e ENTER; Para conhecer o sistema degestão de serviços públicos tecle 3 e depois tecleENTER.

10. Caso o usuário/visitante opte em conhecer oproduto – sistema de gestão de serviços públicos,deve-se clicar a tecla 3 e em Seguida ENTER.

11. Confirma anunciando a posição dousuário/visitante no website e narra o conteúdo doponto de interação, ou, anuncia as opções denavegação neste ponto.Exemplo de mensagem para este ponto: “Parainterromper a leitura e voltar para conhecer outrosprodutos tecle 1, para voltar para a página principal,tecle 0. O sistema de gestão de serviços públicos. ...”após esta introdução é narrado as informações quedescrevem o conteúdo referente ao item selecionado.

12. Caso o usuário/visitante tecle ;0 – Vá para o ponto 5 ;1 – Vá para o ponto 7 ;9 – Vá para o ponto 11;? – Passa orientações de ajuda pré-configuradaspara o ponto 11.

13. Confirma anunciando a posição dousuário/visitante no website e narra o conteúdo doponto de interação, ou, anuncia as opções denavegação do ponto de interação selecionado noponto 12.

Caminhos alternativos:

- A qualquer momento o usuário/visitante pode interromper a narração do website,

informando as teclas padrão do sistema ou adiantando a opção antes de se

terminar a narração das opções;

- No passo 4, caso o usuário/visitante selecione qualquer outra opção ou clique

alguma opção diferente de ENTER, siga o caminho alternativo 5.1. descrito a

seguir;

Ação/Resposta do Ator (usuário/visitante) Resposta/Ação do Sistema (protótipo modelo)

5.1. Desabilita a comunicação de áudio e oculta ocampo “Opções” do sítio.5.2. Aguarda ação do usuário por intermédio doteclado e mouse com comportamento idêntico awebsites típicos da internet.

O caso de uso a seguir representa a interação utilizando template de formulário

para contato conforme ilustra a Figura 8, neste tipo de formulário o sistema apoia o

usuário/visitante durante o preenchimento campo a campo.

53

Figura 8 – Exemplo de template de formulário.

Caso de uso utilizando formulários:

Ação/Resposta do Ator (usuário/visitante) Resposta/Ação do Sistema (protótipo modelo)

1. Um usuário/visitante portador dedeficiência visual acessa o website.Objetivo exemplo: entrar em contato com adireção do website para fazer um comentário.

2. Abre a página principal (home), e apresentapor áudio mensagem de boas vindas.Exemplo de mensagem: “Bem vindo a nossapágina. Esta página está preparada para seracessada por pessoas portadoras de deficiênciasvisuais. Para ativar a interface para portadores dedeficiências visuais pressione a tecla ENTER”.3.1. Exibe o website, com leiaute da páginaprincipal (inicial) com aparência típica dewebsites padrões da internet.3.2. Posiciona o cursor no campo “Opções”, quejá é exibido na browser preenchido com valor “0”(zero)

54

Ação/Resposta do Ator (usuário/visitante) Resposta/Ação do Sistema (protótipo modelo)

4. Caso confirme pressionando a tecla“ENTER” após a orientação de “boasvindas”, siga para o passo 5. Caso sejainformado qualquer outra tecla ou clique demouse, o sistema não habilita a interface cominteração assistida, oculta o campo opções enão emite mais mensagens de áudio e owebsite passa a se comportar como websitestípicos da internet.

5. Confirma anunciando a posição dousuário/visitante no website e narra o conteúdodo ponto de interação, ou, anuncia as opções denavegação neste ponto.Exemplo de mensagem: “Página Principal. Paraacessar informações sobre nossa empresa tecle 2,para conhecer nossos produtos e serviços tecle 3,para conhecer quem são nossos clientes tecle 4 epara entrar em contato conosco tecle 5. Depoisque clicar o número correspondente confirmecom ENTER”Observação: as opções apresentadas foraminseridas e configuradas pelo administrador dowebsite, porém, as teclas “0”, “1”, “9” e “?” sãoreservadas pelo sistema e não podem serutilizadas pelo administrador do website.

6. Conforme opções apresentadas pelowebsite o usuário/visitante decide pela opçãoque o conduzirá ao acesso do assuntodesejado.Caso o usuário opte em entrar em contadodeve-se entrar com o número 5 e depoisconfirmar com ENTER.Caso seja informado os valores abaixo,proceder conforme descrito;0 – Vá para o ponto 5 ;9 – Vá para o ponto 5;? – Passa orientações de ajuda pré-configuradas para o ponto 5.

7. Abre o formulário para contato e posiciona ocursor no campo “Nome”.8. Emite áudio anunciando a posição dousuário/visitante no website e orienta sobre comooperar no formulário de contato. Exemplo de mensagem: “Formulário de contato!Você está no campo nome. Informe o seu nome etecle ENTER para continuar!”

9. Digita o nome e tecla enter – ir para oponto 10.Caso seja informado os valores abaixo,proceder conforme descrito;0 – Vá para o ponto 5 ;1 ou Shift/Tab – Vá para o ponto 79 – Vá para o ponto 7;? – Passa orientações de ajuda pré-configuradas para o ponto 7.

10. Lê para o usuário/visitante por meio desintetização de voz, o texto que o foi digitado nocampo nome, posiciona o cursor no campotelefone e passa instruções sobre comoprosseguir.Exemplo de mensagem: “Formulário contato!Você informou no campo nome ...” + (leitura donome digitado) + “Agora você está no campotelefone. Informe o número de telefone paracontato e tecle ENTER para continuar. Paravoltar para o campo nome tecle Shift/Tab”.

11. Digita o telefone e tecla enter – ir para oponto 12.0 – Vá para o ponto 5 ;1 ou Shift/Tab – Vá para o ponto 79 – Vá para o ponto 10;? – Passa orientações de ajuda pré-configuradas para o ponto 10.

12. Lê para o usuário/visitante por meio desintetização de voz, o texto que o foi digitado nocampo telefone, posiciona o cursor no campo e-mail e passa instruções sobre como prosseguir.Exemplo de mensagem: “Formulário contato!Você informou no campo telefone ...” + (leiturado número de telefone digitado) + “Agora vocêestá no campo e-mail. Informe seu e-mail para

55

Ação/Resposta do Ator (usuário/visitante) Resposta/Ação do Sistema (protótipo modelo)

contato e tecle ENTER para continuar. Paravoltar para o campo telefone tecle Shift/Tab”.

13. Digita o e-mail e tecla enter – ir para oponto 14.0 – Vá para o ponto 5 ;1 ou Shift/Tab – Vá para o ponto 109 – Vá para o ponto 12;? – Passa orientações de ajuda pré-configuradas para o ponto 12.

14. Lê para o usuário/visitante por meio desintetização de voz, o texto que o foi digitado nocampo e-mail, posiciona o cursor no campo deredação de mensagem e passa instruções sobrecomo prosseguir.Exemplo de mensagem: “Formulário contato!Você informou no campo e-mail ...” + (leitura doe-mail digitado) + “Agora você está no campo deredação do texto de contato. Digite a mensagemque deseja enviar e em seguida tecle ENTERpara continuar. Para voltar para o campo e-mailtecle Shift/Tab”.

15. Digita o mensagem a enviar e tecla enter– ir para o ponto 16.0 – Vá para o ponto 5 ;1 ou Shift/Tab – Vá para o ponto 129 – Vá para o ponto 14;? – Passa orientações de ajuda pré-configuradas para o ponto 14.

16. Lê para o usuário/visitante por meio desintetização de voz, o texto que o foi digitado nocampo de mensagem e passa instruções sobrecomo prosseguir.Exemplo de mensagem: “Formulário contato!Você informou no campo mensagem ...” +(leitura da mensagem digitada) + “Para confirmare enviar a mensagem tecle ENTER. Para voltarpara o campo de digitação de texto tecleShift/Tab”.

17. Confirma teclando ENTER – ir para oponto 18.0 – Vá para o ponto 5 ;1 ou Shift/Tab – Vá para o ponto 149 – Vá para o ponto 16;? – Passa orientações de ajuda pré-configuradas para o ponto 16.

18. Confirma o sucesso no registro e envio damensagem, e volta para página principal.

Como pode ser visto, a interface segue um padrão de interação, onde a cada ação

do usuário o website posiciona o usuário/visitante sobre sua localização no site e na

seqüência o orienta sobre como prosseguir a navegação.

56

4 – CONCLUSÕES

A metodologia adotada na condução desta pesquisa contribuiu de forma a

assegurar que os objetivos que foram propostos fossem atingidos. Destacando-se a opção

por realizar a pesquisa propondo um modelo para o qual foi possível desenvolver o

protótipo testável que, permitiu concluir de forma fundamentada e objetiva sobre o

atendimento ou não dos objetivos propostos.

Quanto ao objetivo geral desta monografia, conclui-se que foi possível chegar a

uma avaliação sobre a funcionalidade do modelo de interação em websites produzidos no

aplicativo desenvolvido, sendo necessário ainda realizar testes mais elaborados utilizando

usuários reais para validar de forma mais consistente a qualidade da interação

proporcionada pelo sistema em seus websites.

Para testes iniciais toda a navegação de acesso ao conteúdo, o preenchimento de

formulários e as leituras de relatórios foram realizados por pessoas com visão normal,

porém, com os monitores desligados. Podemos considerar como válido este experimento

pois, o ambiente de interação com o website sem o vê-lo é similar a experiência que um

portador de deficiências visuais alfabetizado teria. Desta forma, é possível aferir como

satisfatória a experiência de interação, considerando o modelo proposto viável para

promover a interface de interação entre websites da internet e pessoas portadoras de

deficiências visuais. Cabe ressaltar que os itens e variáveis utilizadas na avaliação da

implementação do modelo proposto, e suas relevâncias, são de difícil mensuração, pois

lidam com medidas estimadas e subjetivas.

Apesar da avaliação do modelo proposto poder ser considerada inicialmente

satisfatória, e destes websites possuírem características que de fato favoreçam a

usabilidade, devemos lembrar das barreiras a serem vencidas pelo portador de deficiência

visual até o momento do acesso ao website em browsers navegadores de internet, para

tanto, destacamos a necessidade do uso de programas instalados nos computadores que

os apoiem a partir do momento em que a máquina é ligada, e viabilize as operações

básicas do sistema operacional em conexões de rede, internet, e os ajude a acessar a

websites. A partir do acesso ao nosso website modelo, a interação passa a ser

integralmente assistida pelo aplicativo, que passa a apoiar o usuário/visitante na

navegação dentro do website, realizando leitura narrada do conteúdo de interesse e

ajudando no preenchimento de formulários e na leitura de relatórios. Tudo isto é

57

realizado pelo website modelo de forma autônoma e independente, não requerendo a

instalação de softwares, ou de qualquer recurso ou funcionalidade adicional, além dos

recursos básicos de qualquer micro computador atual com kit de multimídia.

Os websites produzidos pelo software desenvolvido não estão plenamente em

conformidade a todos os quesitos de “acessibilidade”, apesar de ter se mostrado

inicialmente adequado ao atendimento das necessidades básicas de usabilidade e

ergonomia. A limitação da “acessibilidade”, ocorre basicamente pelo não atendimento

dos formatos HTML e CSS recomendados pelo WCAG da W3C, contudo, lembramos

que o objetivo maior desta pesquisa não é o atendimento aos padrões da W3C, mas sim o

desenvolvimento de um modelo de interação em sí.

58

5 – CONSIDERAÇÕES FINAIS

Apesar de podermos inferir sobre a capacidade do software aplicativo

desenvolvido de produzir websites acessíveis para pessoas portadoras de deficiências

visuais e não portadoras de deficiências visuais, consideramos em nosso trabalho apenas

portadores de deficiências visuais alfabetizados com perda total de visão. O software

aplicativo desenvolvido poderia ser melhorado para atender também a portadores de

deficiências com visão parcial ou visão reduzida em seus vários níveis de cegueira, que

poderia permitir a combinação dos recursos de áudio com recursos visuais ajustáveis

conforme níveis de visão do usuário/visitante.

Destacamos como um ponto fraco no conceito de website e sistemas que se

propõe a interagir de forma autônoma e independente com usuários portadores de

deficiências visuais, a necessidade de se ter que utilizar softwares acessórios para

viabilizar o uso de rotinas do sistema operacional, possibilitar a seleção dos programas

que se deseja acessar e os documentos ou assuntos a serem manipulados, sendo este um

requisito obrigatório para pessoas portadoras de deficiências visuais e que merece

contínuos esforços para facilitar tecnicamente e viabilizar financeiramente o uso destes

softwares já que muitos deles são pagos.

Considerando que o software aplicativo também tem o propósito de ser utilizado

por desenvolvedores, destacamos dentre as possibilidades a de se desenvolver aplicações

de apoio a gestão, ferramentas administrativas, sistemas de governo-eletrônico, sistemas

financeiros e contábeis, ensino a distância e como ferramenta de apoio a educação e

alfabetização de pessoas portadoras de deficiências visuais, dentre diversos outros

empregos possíveis.

Um recurso que pode proporcionar alguma facilidade extra seria possibilitar

personalizações no caso de usuários identificados, de forma a permitir acrescentar outras

teclas padrões de uso próprio, além das já existentes e reservadas pelo sistema (0,1,9,?),

possibilitando os usuários criarem “teclas de atalho”.

Outra consideração importante é em relação ao quesito “acessibilidade”, pois

adequar o sistema para produzir os websites aderentes aos formatos e padrões WCAG da

W3C, é uma tarefa tecnicamente possível de ser realizada e significaria um grande

benefício, estendendo ainda mais a capacidade de interação aliando a usabilidade e

ergonomia proporcionada no modelo proposto com a acessibilidade para ser também

59

utilizado em outros programas, desenvolvidos especificamente para operação utilizando

acessibilidade nos padrões da W3C.

Um estudo mais aprofundado sobre design patterns envolvendo o modelo de

interação proposto, seu funcionamento e a arquitetura do software protótipo

desenvolvido, poderia ajudar a identificar melhor os patterns empregados e a reconhecer

também se o modelo de interação proposto se enquadra em algum pattern existente ou se

seu formato pode sugerir algum novo pattern.

Implementações futuras no aplicativo poderiam estender o potencial de interação

dos websites com o emprego de tecnologias de reconhecimento de voz para que os

usuários pudessem se comunicar no sentido usuário-website também via comandos de

voz, e não limitado somente a comunicação via teclado como é realizado na versão do

protótipo utilizada neste trabalho.

60

BIBLIOGRAFIA

ABERGO. Associação Brasileira de Ergonomia – O que é Ergonomia. Disponível em:http://abergo.org.br/oqueeergonomia.htm. Acessado em Janeiro/2007.

BERTALANFFY, Ludwig Von. Teoria Geral dos Sistemas. Trad. Francisco M.Guimarães. 2º Edição. Petrópolis: Vozes, 1975. (Tradução de: General System Theory,1968)

BEVAN N . Quality in use: meeting user needs for quality. In: Journal of Systems andSoftware, 1999.

BIO, Sérgio Rodrigues. Sistemas de informação – Um enfoque gerencial. São Paulo,Atlas, 1988.

BOING, Hamilcar. Bases Metodológicas para a Construção de FerramentasComputacionais para Programas Educacionais de Caráter Social – UFSC –Disponível em: http://www.teses.eps.ufsc.br/defesa/pdf/5412.pdf. Acessado emFevereiro/2007.

BONNATO, Selmo José. O Desenvolvimento de um Modelo de Ambiente Promotorde Inclusão de Pessoas com Deficiência Visual na WEB – UFSC - Disponível em:http://www.teses.eps.ufsc.br/defesa/pdf/8001.pdf. Acessado em Fevereiro/2007.

CHURCHMAN, C. West. Introdução à Teoria dos Sistemas. Trad. Francisco M.Guimarães. 2º Edição. Petrópolis: Vozes, 1972. (Tradução de: The Systems Approach,1968).

DAVENPORT, Thomas H., PRUSAK, Laurence. Conhecimento Empresarial: Comoas organizações gerenciam o seu capital intelectual. Tradução: Lenke Peres. 3º Edição.Rio de Janeiro: Campus, 1998.

DOSVOX, Disponível: site Projetos de acessibilidade do NCE/UFRJ. URL:http://intervox.nce.ufrj.br, consultado em novembro de 2006.

FERREIRA. Aurélio Holanda - Novo Dicionário Aurélio da Lingua Portuguesa - Riode Janeiro. Editora Nova Fronteira, 1986

GIL, Antonio Carlos. Como Elaborar Projetos de Pesquisa. 3º Edição. São Paulo,1996.

MILLARCH, Francisco. http://webinsider.uol.com.br/index.php/2005/06/08/o-que-e-cms-e-porque-voce-precisa-de-um/ (acesso em março/2007)

61

NAVITAhttp://www.navita.com.br/neo/site/comunidade/definicoes/gerenciamentodeconteudo.cfm(acesso em março/2007)

O’BRIEN, James A. Sistemas de informação e as decisões gerenciais na era daInternet. Tradução: Cid Knipel Moreira. São Paulo: Saraiva, 2002.

OLIVEIRA, Djalma de Pinho Rebouças. Sistemas de Informações Gerenciais:estratégicas, táticas, operacionais. São Paulo: Atlas, 1992.

POLLONI, Enrico Giulio Franco. Administrando Sistemas de Informação. 2º EdiçãoSão Paulo: Futura, 2000.

PONCE, Yalmar. Desenho de padrões. UFRJ – LCG (Laboratório de ComputaçàoGráfica). Disponível em: http://www.lcg.ufrj.br/Members/yalmar/design_patterns.Acesso em fev/2007.

SILVA, Sérgio R.P. Notas de Aula da Disciplina Web Design do Curso deEspecialização em Desenvolvimento de Sistemas para Web – DIN/UEM, Maringá,2005.

SOUZA, Clarisse S. et al. Projeto de interfaces de usuário – Perspectivas cognitivas esemióticas. Disponível em: <http:// www.dimap.ufrn.br/~jair/piu/JAI_Apostila.pdf>acesso em fev/2007.

TAIT, Tânia F.C. Notas de Aula da Disciplina e-business do Curso de Especializaçãoem Desenvolvimento de Sistemas para Web – DIN/UEM, Maringá, 2005.

UFRJ_1, Universidade Federal do Rio de Janeiro– LCG (Laboratório de ComputaçãoGráfica). Curso - Tópicos Especiais em Computação Gráfica Design Patterns.Disponível em: http://www.lcg.ufrj.br/cursos. Acesso em fev/2007.

W3C – World Wide Web Consortium – Consórcio formado para determinação deregras de acessibilidade na web. Disponível em: <http://www.w3c.org/>, acesso emJaneiro de 2007.

WAI – Web Accessibility Initiative – Iniciativa para acessibilidade na web. Disponívelem: <http://www.wai.org/>, acesso em Janeiro de 2007.

WILLIANS, Robin. Design pra quem não é designer. 3a. Edição, São Paulo,Editora Callis, 1995.