metodologias e ferramentas para avaliação da qualidade de...

70
UNIVERSIDADE SÃO PAULO INSTITUTO DE MATEMÁTICA E ESTATÍSTICA - IME PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO Aluna: Ana Paula Oliveira dos Santos Orientador: Fabio Kon Metodologias e Ferramentas para Avaliação da Qualidade de Sistemas Web de Código Aberto com Respeito à Usabilidade SÃO PAULO 2008

Upload: volien

Post on 19-Nov-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

UNIVERSIDADE SÃO PAULOINSTITUTO DE MATEMÁTICA E ESTATÍSTICA - IME

PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO

Aluna: Ana Paula Oliveira dos SantosOrientador: Fabio Kon

Metodologias e Ferramentas para Avaliação da Qualidade de Sistemas Web de Código Aberto com Respeito à Usabilidade

SÃO PAULO

2008

SUMÁRIO

RESUMO......................................................................................................................................04

1. INTRODUÇÃO.......................................................................................................................05 1.1 Motivação..............................................................................................................................05 1.1.1 Cultura de desenvolvimento de Software Livre e Software Proprietário........................06

2. CONCEITOS FUNDAMENTAIS.........................................................................................09 2.1 Usabilidade............................................................................................................................09 2.1.1 Heurísticas de Usabilidade..............................................................................................11 2.1.2 Usabilidade em sistemas web..........................................................................................12 2.2 HCI (Human-Computer Interaction).....................................................................................13 2.3 HCC (Human-Centered Computing).....................................................................................15 2.4 Aspectos sociais da interação................................................................................................15 2.4.1 Design pela Dignidade: Percepções da tecnologia entre os indivíduos sem-teto............16 2.5 Aspectos psicológicos da interação.......................................................................................18 2.6 Paradigmas de HCI................................................................................................................19 2.6.1 Integração entre paradigmas de HCI...............................................................................21

3. DESENVOLVIMENTO DE SISTEMAS SOB O PONTO DE VISTA DE USABILIDADE.......................................................................................................................24

3.1 Entendendo o usuário............................................................................................................24 3.1.1 Capacidades Humanas.....................................................................................................25 3.1.2 Cognição..........................................................................................................................26 3.1.3 Modelos Mentais.............................................................................................................33 3.1.4 Métodos para entendimento das necessidades do usuário...............................................35 3.2 Desenvolvimento pensando no usuário.................................................................................37 3.2.1 DCU ou UCD (User-Centered Design)..........................................................................37 3.2.2 Por que usar DCU?..........................................................................................................37 3.3 Design de Interfaces..............................................................................................................38 3.4 Prototipação...........................................................................................................................39 3.4.1 Protótipo de baixa fidelidade...........................................................................................40 3.4.2 Protótipo de alta fidelidade..............................................................................................41 3.4.3 Protótipo de média fidelidade..........................................................................................41 3.4.4 Do design para implementação.......................................................................................42 3.5 Métodos Ágeis e DCU...........................................................................................................42

4. AVALIAÇÃO DE USABILIDADE.......................................................................................46 4.1 Avaliação de usabilidade considerada prejudicial (em alguns casos)...................................58 4.2 O que pode ser automatizado?...............................................................................................60 4.2.1 Métodos de teste de usabilidade automáticos..................................................................62 4.2.2 Métodos de inspeção automáticos...................................................................................63 4.2.3 Métodos de investigação automáticos.............................................................................63 4.2.4 Métodos de modelagem analítica automáticos................................................................64 4.2.5 Métodos de simulação automáticos.................................................................................64 4.2.6 Considerações finais sobre automatização da avaliação de usabilidade.........................65

2

5. CONCLUSÃO..........................................................................................................................66 5.1 Ganhos desejados com a pesquisa.........................................................................................67 5.2 Plano de Trabalho..................................................................................................................68

6. REFERÊNCIAS BIBLIOGRÁFICAS..................................................................................69

3

RESUMO

Este estudo visa apresentar o estado da arte no assunto de usabilidade com foco em sistemas

web. Desta maneira, são abordadas todas as fases do processo de desenvolvimento do design de

interação.

O motivo para tal pesquisa é responder por que sistemas de código aberto são pouco usados

pela população em geral e como a utilização de processos de desenvolvimento preocupados com a

usabilidade do produto final pode melhorar a confiança dos usuários neste tipo de software.

Portanto, são abordadas metodologias de design centrado no usuário (DCU) descrevendo

desde a coleta de dados para os processos de entendimento dos usuários até as avaliações finais de

usabilidade. Os métodos são relacionados com análises de modelos cognitivos de seres humanos,

considerando inclusive aspectos sociais e psicológicos da interação. Algumas técnicas, ainda em

estudo por pesquisadores da área, de integração do DCU com métodos ágeis são abordadas.

Também são descritas algumas das ferramentas existentes que realizam as avaliações de usabilidade

de forma automática e o quanto a automação pode ajudar no processo de busca de melhor

usabilidade de sistemas web.

4

1. IntroduçãoExistem vários fatores que contribuem para a fragilidade de interfaces web de sistemas de

software livre, como pouco incentivo pela usabilidade e pela dificuldade em se mensurar

objetivamente usabilidade. Além disso, existe uma tendência em aplicações de código aberto para

crescer em complexidade, reduzindo sua usabilidade para usuários novatos [6]. Aplicações

comerciais também crescem em complexidade, mas existem alguns fatores para moderar o

crescimento, incluindo custo de desenvolvimento de características extras e o fato do crescimento

poder enfraquecer a usabilidade, fazendo com que o produto perca competitividade no mercado.

Outro fator que contribui para a fragilidade das interfaces de usuário de sistemas de código

aberto é uma questão cultural do software livre, de ser mais focado na funcionalidade e eficiência

do código, o que leva o desenvolvedor a iniciar o projeto pelo código, deixando o design de

interfaces para depois [7]. Desenvolvedores de software de código aberto costumam não perceber a

baixa usabilidade dos programas livres por serem geralmente usuários experientes e acostumados a

interfaces de baixo nível como, por exemplo, de linha de comando.

Já os bons programas comerciais, têm essa preocupação com a usabilidade desde o início,

porque o produto deve ter uma interface amigável para ganhar mercado e conseguir seu objetivo de

venda. Empresas que produzem software comercial, muitas vezes possuem funcionários

especialistas em usabilidade, o que é raro em equipes de desenvolvimento de software livre.

A importância deste tema se deve ao fato de que ao perder em usabilidade, programas de

código aberto perdem usuários, uma vez que na escolha entre dois produtos com as mesmas

funcionalidades, muitas vezes o software com melhor usabilidade propicia maior confiança no

sistema e culmina por ser a escolha do usuário final já que, para este, a interface é o próprio sistema.

Daí a necessidade de melhorar a usabilidade de software livre para conquistar a confiança de novos

usuários, empresas e governos.

Este estudo irá abordar especificamente o problema da melhoria da usabilidade de sistemas

web de código aberto, buscando o conseqüente aumento de confiança dos usuários finais neste tipo

de software.

1.1 Motivação

Usabilidade é uma parte fundamental de qualquer produto ou sistema, pois é uma medida da

satisfação do usuário na utilização de algo com o qual interage.

Para um produto ser bem avaliado por um ser humano, não basta a ele apenas ter todas as

funcionalidades, mas o projeto das funcionalidades deve vir acompanhado da preocupação com o

usuário que as utilizarão e realizarão a interação com o sistema para tal. Haja vista, que existem

5

diversos sistemas que possuem todas as funcionalidades necessárias e mesmo assim se tornaram

fracassos porque os usuários não conseguem saber como utilizá-lo.

Os projetistas precisam ter em mente que para os usuários, não importa o banco de dados

complexo que está por trás do armazenamento e recuperação dos seus dados, muito menos da

eficiência do algoritmo para busca, ordenação e recuperação de suas informações, entre tantas

outras funções, pois na maioria das vezes, o usuário sequer sabe que isto existe e que é o

responsável pelo funcionamento do sistema.

Para o usuário apenas importa o que de fato enxerga do sistema, a parte com a qual ele

realmente interage. Detalhes de implementação, estrutura de dados, banco de dados são

desconhecidos do usuário. Portanto, para o usuário, a interface é o próprio sistema.

Sendo assim, a interface torna-se parte fundamental para o sucesso de qualquer sistema,

porque este não será usado por seus desenvolvedores e projetistas, na grande maioria das vezes, e

sim por seres humanos que não participaram do seu processo de desenvolvimento e que muitas

vezes jamais tiveram contato anterior com tal tecnologia.

Além disso, é importante frisar que são seres humanos que irão utilizar o sistema, não

máquinas e os primeiros possuem personalidades, conhecimentos e experiências de vida diferentes

e que todos estes fatores influenciam sua interação com qualquer tipo de produto ou sistema. Bem

como seu estado de humor, físico ou psicológico, e que somados a situações específicas de

interação, o contexto de uso, podem levá-lo a cometer erros que impossibilitam o uso do sistema.

Erros estes, que poderiam não ocorrer ou serem evitados pelo simples projeto de um produto com

boa usabilidade, considerando seus usuários e os possíveis cenários de erros que poderiam

acontecer nas mais diversas situações de uso.

Outro ponto é o fato de que sistemas fáceis de usar também são aceitos com maior facilidade

pelos usuários e, portanto são mais competitivos no mercado do que os outros, sendo uma

consideração importante para a indústria de software.

1.1.1 Cultura de desenvolvimento de Software Livre e Software Proprietário

Antes de realizar a comparação entre esses dois tipos de software é preciso entender a

cultura de desenvolvimento de seus projetistas e desenvolvedores.

Para software proprietário, a mentalidade de desenvolvimento é ganhar mercado. Sendo

assim, vários fatores passam naturalmente a fazer parte do desenvolvimento, como ser mais fácil de

usar e agradável esteticamente para ser mais competitivo no mercado, ganhando a concorrência com

outros softwares que possuem as mesmas funcionalidades, mas não a mesma usabilidade.

Também o custo de desenvolvimento é considerado a fim de que o software possa dispor de

6

preços competitivos no mercado, sendo assim pensa-se com cuidado nas funcionalidades que farão

parte do sistema e todo custo associado para desenvolvê-las para que não afete a concorrência do

mesmo.

Da mesma forma, a integração de novas funcionalidades é controlada pelo custo de

desenvolvimento e mesmo que ocorra de uma maneira inconsciente, isto ajuda a manter a

usabilidade do software. Isto ocorre porque um sistema avaliado como de boa usabilidade, pode

perder este título com a inserção de novas funcionalidades, sem o devido projeto de design de

interface para elas, o que acaba com sua colocação de maneira ineficiente na interface, tornando-a

poluída, difícil de encontrar as informações, com baixa visibilidade (princípio de projeto usável) e

consequentemente com má usabilidade.

Diante destes fatores, é fácil perceber que a mentalidade e a forma de desenvolver software

proprietário, naturalmente, contribuem para a construção de sistemas de melhor usabilidade, mesmo

que tal característica não fosse considerada. Porém não é o caso, porque além disso, a indústria de

software proprietário, possui equipes especializadas em IHC (Interação Humano-Computador),

como membros da equipe de desenvolvimento e que portanto cuidam do design de interfaces e da

interação do usuário com o sistema de maneira satisfatória.

Consequentemente, por possuírem melhor usabilidade, sistemas de software proprietário,

são mais aceitos pela sociedade, o que não é diferente para indústrias que justamente possuem

maior confiança neste tipo de sistema.

Para software livre a situação é bem diferente, a começar pela mentalidade de

desenvolvimento que é focada na eficiência do código. Sendo assim, seus projetistas e

desenvolvedores possuem uma forte preocupação com o projeto de códigos com qualidade,

utilizando-se da melhor estrutura de dados para a resolução de um problema específico, ou de

padrões de design de código que sejam a opção mais eficiente e elegante para uma determinada

situação.

Dessa forma, questões de interface são vistas como “perfumaria”, o mais importante é ter a

funcionalidade funcionando corretamente e da melhor maneira possível, isso é o mais complexo e

não detalhes de interface, já que tal funcionalidade apenas precisa ser apresentada na interface. Ou

seja, o mais importante para os desenvolvedores de software livre, é a funcionalidade, como usá-la é

o menos importante. Principalmente, porque para eles, este problema de usabilidade nem é notado,

pois como desenvolvedores obviamente conhecem perfeitamente o funcionamento do sistema e

sabem como utilizá-lo e como usuários de outros softwares livres, possuem a experiência com

tecnologia de computadores que implica em saber usar por serem usuários experientes,

consequentemente não percebem problemas de usabilidade.

7

É importante ressaltar que grande parte dos usuários de software livre são pessoas

experientes com tecnologias de computadores, geralmente acostumados com linhas de comando, o

que dificulta a percepção de falta de usabilidade nas interfaces.

Com certeza, a preocupação com a eficiência do código é importante e fundamental, pois é

inegável o melhor desempenho de sistemas que a consideram.

Porém não deve ser a única preocupação, pois dessa maneira software livre não atingirá

novos usuários e a aceitação da sociedade e indústria.

Também é claro que para pessoas que estão focadas na eficiência de algoritmos, não podem

ao mesmo tempo focarem na interação com o usuário. Até mesmo por questões cognitivas, essa

preocupação deve ser considerada por pessoas diferentes das que focam no código. E este é mais

um problema que implica em má usabilidade, pois no desenvolvimento de softwares livres não

existem pessoas especializadas no design de interfaces e na interação com o usuário. Ou seja, não

existe a preocupação com o usuário do sistema e em como fornecer a ele uma interação satisfatória.

Também em software livre, não existem mecanismos de controle do aumento do número de

funcionalidades, pois desenvolvedores contribuem com novas funcionalidades e melhorias nas

existentes, sendo assim ocorre um aumento da complexidade do sistema. Isto influencia em sua

usabilidade, e as funcionalidades não são projetadas considerando o usuário, antes de serem

colocadas na interface, o que resulta em menor usabilidade, mesmo em softwares previamente

avaliados como de boa usabilidade.

Portanto, a mentalidade e a forma de desenvolvimento de softwares livres contribuem para

que sejam de menor usabilidade, pois não se considera usabilidade como um ponto importante no

processo de desenvolvimento. Consequentemente, menos pessoas gostam de utilizar software livre,

e a sociedade e indústria no geral, não confiam neste tipo de software, pois como para os usuários, a

interface é o sistema, se não conseguem utilizá-la com satisfação é porque o sistema não é bom.

As razões citadas são, portanto, as motivações para este trabalho, a fim de entender e

explorar métodos para desenvolver software livre com a preocupação não apenas voltada para a

eficiência do código, mas também para a usabilidade do sistema pensando no usuário que realizará

a interação com ele, e tendo ele como foco no design da interação.

Espera-se com isso estudar maneiras de realizar o desenvolvimento de software livre

pensando no usuário que o utilizará, proporcionando melhor usabilidade ao sistema, ao fornecer aos

usuários uma interação mais agradável e de modo a atingir seu objetivo de forma mais rápida e

fácil. Melhorando-se a usabilidade, aumenta-se naturalmente a satisfação dos usuários, o que

aumenta a confiança destes neste tipo de software, e consequentemente aumenta-se a confiança da

sociedade e indústria em software livre.

8

2 Conceitos FundamentaisAbaixo serão descritos os conceitos fundamentais para entendimento de metodologias para

desenvolvimento de sistemas com boa usabilidade.

2.1 Usabilidade

Usabilidade é uma medida do grau de satisfação de um usuário ao utilizar qualquer produto

ou sistema com o qual ele possa interagir. Ou seja, usabilidade responde a quão fácil de usar e

agradável é este uso durante a interação.

Usabilidade é um atributo de qualidade relacionado à facilidade do uso de algo. Mais

especificamente, refere-se à rapidez com que os usuários podem aprender a usar alguma coisa, a

eficiência deles ao usá-la, o quanto lembram daquilo, seu grau de propensão a erros e o quanto

gostam de utilizá-la. Se as pessoas não podem ou não precisam utilizar um recurso, ele pode muito

bem não existir [Nielsen e Hoa Loranger, 17].

Ou ainda uma definição da ISO (International Standards Organization) 9241: Usabilidade é

uma medida na qual o sistema de computador habilita o usuário, em um dado contexto de uso, a

alcançar objetivos específicos com eficácia, promovendo simultaneamente, sentimentos de

satisfação.

Existem princípios levantados por Nielsen, que fornecem as características básicas que todo

produto precisa ter para conseguir uma boa usabilidade. São eles:

• Ser fácil de aprender, o que requer pouco treinamento e processamento cognitivo, pois

são produtos intuitivos.

• Ser fácil de lembrar, que indica que em uma segunda utilização, o usuário lembrará o

que precisa fazer para atingir um determinado objetivo.

• Maximiza produtividade, permitindo que a atividade seja realizada de forma rápida e

eficiente (uso eficaz).

• Minimiza erros, ao impossibilitar erros previamente analisados e para erros não

previstos, avisar o usuário e permitir que ele os corrija.

• Maximiza satisfação, pois ao fornecer uma interação mais rápida e eficiente, os usuários

ganham confiança e segurança no sistema, fornecendo-lhes uma experiência agradável.

Com isto, é possível obter alguns objetivos a serem alcançados por produtos que se deseja

que tenha boa usabilidade:

• Eficaz (Propriedade Global)

• Eficiente (Propriedade Local)

• Seguro

9

• Útil

• Fácil de aprender

• Fácil de lembrar

Objetivos de usabilidade podem ser operacionalizados como questões, com a proposta de

fornecer a validação de vários aspectos de um produto interativo e da experiência do usuário.

Respondendo tais questões, pode-se ter uma definição de potenciais problemas e conflitos de

design, logo no início do projeto.

Contudo, as questões devem ser elaboradas de modo a se aprofundarem de maneira mais

detalhada em problemas do projeto em questão, pensando-se no objetivo de usabilidade a ser

alcançado e o problema real no projeto a ser analisado.

Tanto quanto os objetivos de usabilidade, os critérios de usabilidade são também muito

úteis, pois fornecem objetivos específicos que possibilitam a usabilidade de um produto ser avaliada

em termos de como algo pode melhorar (ou não) o desempenho do usuário. Exemplos de critérios

de usabilidade podem ser o tempo para completar uma tarefa (relacionado à eficiência), o tempo

para aprender uma tarefa (Facilidade de Aprendizado) e o número de erros ocorridos na realização

de uma dada tarefa sobre o tempo (Facilidade de recordação).

Os critérios de usabilidade podem fornecer indicadores quantitativos que possibilitam

melhorar a produtividade, porém eles não cobrem a qualidade da experiência do usuário, o que é

melhor analisado pelas metas da experiência do usuário.

Metas da experiência do usuário podem incluir tanto exemplos positivos como ser

satisfatório, agradável, emocionante, interessante, útil, agradável esteticamente, que dá apoio à

criatividade, estimulante cognitivo e divertido quanto negativos como, chato, frustrante e irritante.

Muitas dessas são qualidades subjetivas e que se preocupam em como o sistema é sentido

pelo usuário e são diferentes das metas de usabilidade mais objetivas, pois se preocupam em como é

a experiência do usuário com um produto interativo da perspectiva do usuário, mais do que avaliar

quão útil ou produtivo um sistema é, da perspectiva dos projetistas e desenvolvedores.

Além desses exemplos de metas da experiência do usuário citados acima, muitos outros

podem ser usados para descrever as múltiplas faces da experiência do usuário e também podem ser

mais úteis quando elaboradas em questões específicas, assim como os objetivos de usabilidade.

Estudiosos da área de IHC ou HCI, Human-Computer Interaction, (Seção 2.2) mudaram sua

maneira de pensar sobre design de interação ao perceberem que existia uma relação positiva entre

usabilidade e estética, onde se pode perceber inclusive que interfaces mais atrativas esteticamente

são consideradas mais fáceis de usar do que as que não são.

Contudo, não são todas as metas de usabilidade e experiência do usuário que são relevantes

10

para o design e avaliação de um produto interativo sendo desenvolvido, pois algumas combinações

são incompatíveis. Reconhecer e entender o contexto de uso e a natureza da relação entre

usabilidade e outras metas de experiência do usuário são pontos centrais para o design da interação.

Por isso, com a ajuda da análise para o design da interação é possível ficar ciente das

diferentes combinações e também possibilitar a decisão de design quando diante de conflitos e

trade-offs.

Embora, tantas razões tenham sido apresentadas para se considerar usabilidade como

fundamental no processo de planejamento e desenvolvimento de um software, ainda hoje, muitos

projetistas costumam considerá-la como atividade secundária, a ser feita se houver tempo hábil. No

entanto, tal característica é desejada pelo componente mais importante de todo o processo: o usuário

que utilizarão o sistema. Seja porque produtos com boa usabilidade são de mais fácil acesso às

informações desejadas, seja pela simplicidade na interação com o sistema, o que realmente importa

é que a usabilidade deve ser considerada em todas as ações executadas pelo usuário ou seja, durante

toda sua interação com o sistema, possibilitando ao usuário uma interação livre de problemas de

usabilidade.

São considerados problemas de usabilidade de um sistema interativo, quaisquer

características, observadas em determinada situação que possam retardar, prejudicar ou inviabilizar

a realização de uma tarefa e que aborrecem, constrangem e, às vezes, traumatizam o usuário

[Simone Bacellar e Ricardo Rodrigues, 13].

Portanto, usabilidade não é uma qualidade interna de um sistema, mas que depende de um

acordo entre as características de sua interface e as características de seus usuários ao buscarem

determinados objetivos em contextos de uso específicos.

Consequentemente são muitos os contextos de uso, devido à diversidade de pessoas e

comportamentos associados a elas. Para desenvolver sistemas fáceis de usar em tantas situações

diferentes serão necessários recursos especializados e envolvimento com os usuários.

Sendo assim, usabilidade é uma integração entre aspectos objetivos, como a produtividade

na interação e subjetivos como a satisfação do usuário em sua experiência com o sistema.

2.1.1 Heurísticas de Usabilidade

Jakob Nielsen, um dos maiores especialistas em usabilidade, propôs em seu livro Usability

Engineering, de 1994, um conjunto de dez heurísticas de usabilidade (Nielsen, 1994):

1. Visibilidade do estado do sistema

2. Relação do mundo real com o sistema

11

3. Controle e liberdade do usuário

4. Consistência e padrões

5. Prevenção de erros

6. Reconhecimento ao invés de recordação

7. Flexibilidade e eficiência de uso

8. Estética e Design Minimalista

9. Ajudar os usuários a reconhecer, diagnosticar e corrigir erros

10. Ajudas (Help) e documentação

A heurística de relação do mundo real com o sistema está relacionada com os modelos

mentais dos usuários, explicados na sessão 2.4.3.

2.1.2 Usabilidade em sistemas web

A boa usabilidade em sistemas web tornou-se fundamental devido à concorrência e o fato

dos usuários terem se tornado por causa dela, mais exigentes. Hoje, milhares de serviços são

disponibilizados na web, o que aumenta as opções para os usuários na escolha de qual sistema

utilizará para realizar determinada tarefa.

Por exemplo, quando o usuário utiliza um sistema de busca e recebe uma lista de sites que

competem para resolver o problema dele. É claro que, o usuário escolherá o que trouxer

informações mais claras, objetivas, de fácil entendimento e navegação, pois neste site ele encontrará

o que precisa de maneira muito mais rápida.

É importante lembrar que, hoje em dia, sempre quando os usuários precisam encontrar algo

na web que não conhecem, na maioria das vezes optam por encontrar o que necessitam através de

sistemas de busca, os quais naturalmente fornecem ao usuário uma lista de concorrentes entre si. O

que difere um site do outro, além de ter o conteúdo desejado pelo usuário, é ter uma boa visibilidade

desse conteúdo e ser fácil de navegar sobre ele, ou seja, a diferença entre eles é a usabilidade desses

sites.

Pensando nisso para sistemas de comércio eletrônico, pode-se avaliar a importância que a

usabilidade possui para tais sites.

Também é necessário o foco sobre o contexto de uso em que os usuários utilizam o sistema,

uma vez que, se um usuário deseja obter uma informação objetiva e rápida, pois está atrasado, por

exemplo, com certeza este não vai esperar uma página com animações abrir, com todas as suas

imagens e vídeos apenas para obter uma informação específica. Porém se o uso for destinado a

crianças, animações podem ser o diferencial para prender a atenção delas.

Portanto, conhecer os usuários e o contexto de uso é fundamental para construir sistemas

12

com boa usabilidade.

Embora a usabilidade em sistemas web tenha mudado muito, desde o início da web, ainda

hoje as interações fundamentais permanecem as mesmas, com os mesmos paradigmas de interação

como clique em links para navegar entre uma página e outra.

Também a capacidade cognitiva dos usuários não mudou muito desde o início da web,

portanto os princípios de usabilidade que se preocupam com as capacidades humanas evoluem

vagarosamente.

Segundo pesquisas realizadas por Nielsen e Horanger, 80% das pessoas que utilizarão um

site daqui a 10 anos, serão as mesmas que atualmente utilizam sites, no entanto, elas estarão mais

velhas e precisarão de fontes maiores.

Hoje, a tecnologia na web é mais confiável, mais ainda assim existem diversos problemas de

usabilidade encontrados muito facilmente em qualquer pesquisa simples por sites na Internet. São

esses problemas de usabilidade que devem ser eliminados para se obter maior satisfação do usuário,

através de técnicas que possibilitem o entendimento das necessidades dos usuários.

2.2 HCI (Human-Computer Interaction)

IHC (Interação Humano-Computador) é um campo multidisciplinar no qual psicologia e

outras ciências sociais unem-se com ciência da computação e campos técnicos relacionados, com o

objetivo de fazer sistemas de computadores que são tanto úteis quanto usáveis [18]. Segundo

Baecker e Buxton, IHC é o conjunto de processos, diálogos e ações através do qual um usuário

humano utiliza e interage com um computador.

IHC é focada na interação com um único usuário, onde a interação é orientada à tarefa, o

local e a forma como a interação ocorre, sendo que em grande parte são determinados pelas tarefas

projetadas e usuários esperados.

A experiência da interação humano-computador é individual e única, na medida em que

cada pessoa é única em sua bagagem de conhecimento e expectativas. Dificilmente uma mesma

interface significará a mesma coisa para dois usuários distintos. Menor ainda é a chance de ela ter

um significado integralmente compartilhado entre usuários e projetistas.

Estudar IHC é importante para possibilitar o design de produtos interativos que apóiem as

pessoas em suas atividades cotidianas e no trabalho [15]. IHC possibilita o desenvolvimento de

produtos com boa usabilidade, ou seja, fáceis de aprender, de uso eficaz, etc.

Além disso, existem vários fatores no design que podem causar problemas aos usuários e

para prevenir essa situação, é necessário entender como os usuários interagem com o sistema e

verificar a forma mais eficaz de realizar a interação.

13

IHC é mais amplo que projetar interfaces para computadores, pois considera as formas de

suportar todas as atividades humanas, de todas as formas e em todos os lugares, portanto facilita a

experiência do usuário através de iterações no processo de design.

Novas tecnologias continuamente desafiam os pesquisadores de IHC com novas opções,

novas demandas de públicos e usos. Vários métodos de usabilidade têm sido desenvolvidos que

levantam princípios psicológicos.

A pesquisa de IHC tem se expandido além de suas raízes no processo cognitivo de usuários

individuais para incluir processos sociais e organizacionais envolvidos no uso do computador em

ambientes reais tão bem quanto o uso de computadores em colaboração. Abaixo a figura 2.1

contextualiza IHC e o design de interação, com todas as áreas com as quais estão envolvidos.

Figura 2.1 – HCI e Design de Interação

O campo de IHC preocupa-se com a pesquisa, design e implementação de sistemas que

permitem aos usuários interagirem com eles.

Houve uma mudança no foco, pois antes as interfaces eram orientadas às tarefas e agora

existe a preocupação na área, com a experiência do usuário, onde fatores subjetivos tais como

14

beleza e diversão de um sistema, por exemplo, são importantes.

Recentemente, o termo computação humana (Human Computing – HC), também chamada

Computação Centrada em Humano (Human-Centered Computing) foi introduzido e este será

melhor explicado na próxima seção.

2.3 HCC (Human-Centered Computing)

Computação centrada em Humano também tem como foco o usuário, mas utiliza medidas

diferentes, pois as atividades de núcleo de sistemas de HCC são: a interação natural, automação,

personificação, consciência social e cultural, aumento direto e/ou consideração das capacidades

humanas e possuir adaptabilidade.

HCC considera formas multi-modais de interação, multi-usuários e computação ubíqua

como o futuro dos paradigmas de interação e assim, foca na análise e estudo destes tipos de

interação.

Existe uma sobreposição entre HCC e HCI. Embora ambos se preocupem com os humanos

que interagem com os sistemas de computadores ou máquinas e considerarem o usuário como ponto

central, existem diferenças na medida.

Em HCC, o usuário e seu contexto não são somente observados, assim sendo as motivações

e intenções dos usuários são estimadas do comportamento observado. A consideração de uma

interação bem-sucedida, natural, deve ser próxima dos modelos de interação humano-a-humano e

não humano-computador como em IHC.

2.4 Aspectos sociais da interação

Computadores estão rapidamente tornando-se um aspecto do cotidiano da vida das pessoas.

Porém, quais são os efeitos na vida social do indivíduo pelo uso do computador?

Um aspecto fundamental da vida diária dos indivíduos é ser social - conversarmos uns com

os outros. Estamos sempre atualizando-nos mutuamente sobre novidades, mudanças e

desenvolvimentos sobre um determinado projeto, atividade, pessoa ou evento [Preece, Rogers e

Sharp, 15].

Além disso, os tipos de informação que estão presentes nos diferentes círculos sociais são

diversos, variando entre grupos sociais e culturas diferentes e a freqüência com a qual é

disseminada é muito variável.

São diversos os meios pelos quais a comunicação acontece, que podem ser conversas ao

vivo (face-a-face), telefone, videofone, mensagens instantâneas, textos, e-mail, fax e cartas.

A comunicação não-verbal tem um papel importante nas conversas ao vivo, pois se envolve

15

as expressões faciais, canais de retorno (como hum e ahã), entonação de voz, gestos e outros tipos

de linguagens corporais.

As diversas formas de comunicação são mecanismos que tem evoluído para nos habilitar a

manter uma ordem social. Regras, procedimentos, e convenções foram estabelecidas cujas funções

são de fornecer às pessoas conhecimento de como elas devem se comportar em grupos sociais.

Contudo, a comunicação entre pessoas é um dos principais usos da Internet e é importante

entender as possíveis implicações deste tipo de comunicação para a vida social.

Outro fator a ser considerado é a distribuição desigual dos recursos de computador.

Pesquisas mostram claramente que a rotina de acesso ao computador é uma característica

predominantemente urbana de classes média e alta em famílias brancas, sem deficiência.

O crescimento do acesso pelas minorias é encorajado, mas eles ainda estão muito aquém dos

incluídos digitalmente. Quais são os custos psicológicos e sociais da divisão digital? Ainda não se

tem a resposta para tais questões.

Na seção seguinte, será apresentada uma breve visão do que significa a percepção da

tecnologia digital para pessoas sem-teto.

2.4.1 Design pela Dignidade: Percepções da tecnologia entre os indivíduos sem-teto

Como a tecnologia afeta a vida diária de pessoas sem-teto? Esta é a pergunta cuja pesquisa

que resultou no artigo Designs on Dignity: Perceptions of Technology Among the Homeless, dos

autores Christopher A. Le Dantec, W. Keith Edwards, tenta responder, com o objetivo de

caracterizar as percepções de tecnologia entre os membros desta população, identificar suas

necessidades únicas considerando intervenções de tecnologias apropriadas e descrever os desafios

em trabalhar com e projetar para tal população.

A metodologia escolhida para entrevistar a comunidade sem-teto foi a PEI (Photo-

Elicitation Interview) na qual, os participantes recebem uma câmera e instruções para tirar fotos de

lugares ou situações onde precisassem de ajuda, ou de coisas que usavam como telefones, ônibus,

enfim, tirar fotos de suas vidas diárias. O benefício da utilização deste método se deve ao fato de

romper a dinâmica de poder do entrevistador, habilitando o participante a possuir mais controle

sobre a entrevista. Foram realizadas três reuniões, onde na primeira foram entregues as câmeras

com as devidas instruções de como e onde utilizá-las, na segunda reunião os pesquisadores

buscaram as câmeras, e na terceira reunião foram realizadas as entrevistas com os participantes que

devolveram as câmeras no prazo.

Baseados nos estudos e análise dos dados obtidos foi possível detectar necessidades dos

participantes que sugerem oportunidades para intervenções de tecnologias de sucesso. O primeiro

16

tema importante para os participantes era o de poder se conectar com membros de suas famílias e

amigos, pois muitos não viam ou mantinham qualquer tipo de contato com eles, havia muito tempo.

O uso de telefone não era o meio comum de comunicação, pois todos os participantes tinham contas

de voice-mail através de organizações locais, sendo as contas inclusive importantes para buscar

emprego. Porém muitos utilizavam telefones livres, quando conseguiam.

Também alguns tinham como meio preferido de contato com a família e amigos, o uso de

celulares, inclusive ressaltando que o celular era a única maneira de manter uma ligação com sua

vida antes de virar uma pessoa sem-teto. Porém tinham dificuldades em recarregá-lo e com os

inevitáveis furtos. Além do mais o celular, mais do que fornecer funções de comunicação, também

era visto como um potente símbolo social, já que os conecta com o mundo de uma maneira tal, que

as pessoas não têm como saber a dificuldade pela qual estão passando, dessa forma diminui o

estigma social de serem pessoas sem-teto.

O gerenciamento de identidade é um aspecto chave na vida de pessoas sem-teto, pois estas

convivem com um número grande de grupos sociais diferentes, onde este gerenciamento se dá

através do uso de tecnologia e de instituições sociais. Um exemplo do não uso de tecnologia é como

eles cuidam de sua aparência física, como tomar banho e lavar roupa. Portanto formas centradas em

tecnologia para gerenciar identidades também aparecem como proeminentes nestes estudos. Além

destes também o acesso à informação por redes sociais, foi um dos mecanismos primários dos

participantes para navegar no mundo em volta deles, o que mais uma vez denota a importância de

manter uma conexão social com o mundo para a comunidade sem-teto. Também todos os

participantes freqüentavam médicos e tinham problemas em lembrar de suas consultas, gerenciarem

remédios que tinham que tomar e quando retornar ao médico. Outro ponto comum ressaltado era o

de se mover pela cidade, onde descreviam problemas comuns em usar os cartões eletrônicos de

ônibus, que apontam para problemas de usabilidade centrados em volta da habilidade de saber o

valor de crédito disponível no cartão.

Também uma divisão digital é percebida, pois uns são usuários regulares de computadores

em bibliotecas públicas, enquanto que outros tinham desinteresse por este tipo de tecnologia, por

não terem nenhuma ou pouquíssima experiência com elas. Por outro lado, apesar de celulares

poderem ser complicados, eles oferecem uma variedade de serviços úteis, e era o pensamento

mesmo dos menos interessados em tecnologia. A diferença de pensamento entre computador e

celular mostra um importante ponto de reflexão na adoção de tecnologias dentro desta comunidade.

O desafio para IHC é considerar não somente quão bem uma tecnologia funcionará com

respeito à usabilidade, mas como que a tecnologia será aceita e usada por uma comunidade. As

implicações para o design, para inclusão de pessoas sem-teto, são as de considerar formas de

17

tecnologia localizadas diretamente nas mãos destas pessoas e considerar como tal tecnologia

impacta suas vidas. Estas considerações devem incluir a reavaliação de quão público os espaços

tornam-se para reconfigurar conexões de internet ubíqua e computação ciente do contexto. Uma

área de impacto com a pesquisa, é a computação urbana, pois esta deve começar com a exploração

de como tecnologias wireless e a ubiqüidade de acesso, reconfiguram relações sociais em espaços

públicos, entender como pessoas habitam estes espaços e considerar como tecnologias podem criar

novas oportunidades para interação e reflexão dentro deles. Portanto, tecnologias apropriadas

precisam considerar mais do que usabilidade ou propriedades psicológicas da interação, precisam

pensar cuidadosamente no impacto social que as tecnologias têm para não usuários e usuários.

Afinal, usando a tecnologia para redefinir associações, tem-se a oportunidade de fazê-la

inclusivamente, e acredito que dessa forma convida-se os menos favorecidos a participar da

inclusão digital, ampliando sua forma de enxergar o mundo e assim ajudando-os com a melhoria de

suas condições de vida.

2.5 Aspectos Psicológicos da Interação

Interação humano-Computador (IHC) é o estudo de como as pessoas interagem com a

tecnologia da computação. Uma área maior de trabalho neste campo foca o design de sistemas de

computadores, com o objetivo de produzir software e hardware que seja útil, usável e agradável

esteticamente. Vários métodos de usabilidade que têm sido desenvolvidos se baseiam em princípios

psicológicos. Além disso, existe uma expansão da pesquisa de IHC que alcança suas raízes nos

processos cognitivos de usuários individuais para incluir processos sociais e organizacionais

envolvidos no uso de computador em ambientes reais tão bem quanto o uso de computadores em

colaboração. Pesquisadores de IHC devem ter em mente as mudanças a longo prazo trazidas pelo

uso da computação em uma grande variedade de atividades.

Os artefatos computacionais podem ser projetados de muitas maneiras e perspectivas

diferentes. A modelagem cognitiva, por exemplo, preocupa-se com um dos grandes esforços em

IHC que é a tentativa de entender em detalhes o envolvimento de componentes cognitivos,

perceptivos e motores na interação momento-a-momento que uma pessoa encontra enquanto

trabalha no computador. Já a cognição distribuída tem seu foco em aspectos mais sociais e

contextuais de trabalho e utiliza estudos antropológicos e sociológicos de situações de trabalho do

mundo real, buscando estes dados em campo (ambiente de trabalho) ao invés de laboratório,

gerando uma variedade de estudos de caso.

A questão é quanto do comportamento das pessoas pode ser explicado pelo fatores

generalizados para todos os usuários, sem considerar a experiência ou conhecimento do domínio, ou

18

seja, em IHC existe uma transição do entendimento do comportamento genérico para

comportamento mais centrado no conhecimento.

Vários tipos de novas situações estão emergindo, que trazem mudanças para especialistas

em IHC no que diz respeito ao entendimento das pessoas com relação a aspectos do mundo digital e

como isto é incorporado nos vários dispositivos hoje disponíveis, além de como trazer uma vida

mais produtiva e satisfatória para as pessoas através destes dispositivos. Além do que, as interfaces

precisam ser adaptadas para as capacidades de cada dispositivo de uma maneira que os usuários

encontrem as informações de forma intuitiva e natural, como no caso de dispositivos móveis que

possuem a limitação do tamanho de tela e teclado. Já em sistemas web, o foco dos estudos se dá no

acoplamento da arquitetura de informação com os princípios de design de interfaces de usuário,

com o objetivo de que os usuários sejam melhor habilitados para entender quais informações

residem em um grande web site e então serem aptos para navegar através dele para encontrar o que

necessitam.

Contudo, extensas pesquisas são realizadas nas mais diversas áreas como ferramentas de

áudio e videoconferência, mensagens instantâneas, entre outros. Mas de maneira geral, todas as

pesquisas têm um ponto em comum, a preocupação com o usuário final, que vão além do

imediatismo de estéticas agradáveis, mas muito além com o impacto da interação humana com

todas as formas de tecnologia, quais suas implicações na vida dos indivíduos e como melhorar suas

relações com sistemas computacionais. O objetivo é propiciar melhor qualidade de vida, com maior

produtividade no trabalho e satisfação na realização de tarefas do dia-a-dia, o que culmina na

importância de existirem tecnologias úteis e usáveis. Portanto IHC é o centro da evolução de

ferramentas efetivas para trazer eficiência nas tarefas cotidianas e consequentemente existe a

necessidade do aprimoramento do design de interfaces com a preocupação de conseqüências a

longo prazo para o indivíduo e comportamento social.

2.6 Paradigmas de HCI

IHC (Interação Humano-Computador) enfrenta mudanças em incorporar algumas vezes

abordagens intelectuais conflitantes. Enquanto novas abordagens enriquecem nossa visão de

interação, elas também podem conduzir para noções conflitantes de metodologias e validação. A

história de IHC comumente identifica duas maiores ondas intelectuais que formaram o campo: a

primeira orientada pela engenharia e fatores humanos com seu foco na otimização de soluções

máquina-homem e a segunda oriunda da ciência cognitiva, com uma ênfase maior na teoria e no

que acontece não somente no computador, mas simultaneamente na mente humana. IHC também se

inspira em uma ampla variedade de abordagens aparentemente diferentes, tais como design

19

participativo e ação situada, os quais surgem de fenômenos que as outras duas ondas encontram

dificuldades de assegurar, tais como personificação e significado situado. Os autores demonstram

que muitas destas abordagens podem ser utilmente entendidas quando unidas em uma terceira onda

coerente ou paradigma, que tratam interação como uma forma de fazer significado no qual o

artefato e seu contexto são mutuamente definidos e sujeitos a múltiplas interpretações.

Olhando para o histórico de publicações de IHC, pode-se ver como a comunidade tem

ampliado intelectualmente a partir de sua raiz original na pesquisa de engenharia e depois ciência

cognitiva. Fatores Humanos para interação originaram-se do desejo de avaliar aviões sem piloto, o

que poderia fazer uso livre de erros de sistemas de controle complexos em condições normais ou

sob stress.

Contudo, IHC é mais dominada pela segunda onda trazida pela revolução cognitiva, que

adotou sua própria mistura de idéias da ciência cognitiva, orientada em volta da idéia que o

processamento de informação humano é profundamente análogo ao processamento de sinais

computacionais, e que tarefas primárias de interação humano-computador habilitam a comunicação

entre a máquina e o homem.

Em suma, o primeiro paradigma vê a interação como uma forma de união homem-máquina

da maneira inspirada pela engenharia industrial e ergonomia. O objetivo do trabalho deste

paradigma é otimizar a relação entre homens e máquinas, as questões a serem respondidas focam na

identificação de problemas na integração e desenvolver soluções pragmáticas para elas. Seu foco

são problemas concretos que surgem na interação e causam rompimento, na marginalidade estão os

fenômenos que envolvem a interação, mas não diretamente conduzem à perceptível dificuldade.

O segundo paradigma, em contraste, é organizado em volta de uma metáfora central de

mente e computador como processadores de informação aliados. O foco é um grupo de fenômenos

processando informações ou questões em computadores e usuários tais como “Como a informação

chega?”, “Quais transformações ocorrem?”, etc. Na marginalidade estão os fenômenos que são

difíceis de assimilar para processamento de informação, tais como aqueles que admitem variação e

explicação multi-causal incluindo como as pessoas sentem-se sobre a interação, como aspectos

enigmáticos de vida diária tais como “O que é divertido?”.

A definição para o terceiro paradigma é que este contém uma variedade de perspectivas e

abordagens cuja metáfora central é a interação como um fenômeno logicamente situado e por causa

desta ênfase em múltiplos significados feitos no contexto, que os autores o definem como

perspectivas situadas.

Cada paradigma tem uma metáfora central de interação diferente e como conseqüência, cada

uma tem um objetivo diferente para a interação e isto conduz para diferenças nas questões típicas

20

que cada paradigma julga importante para responder. Portanto, a noção do que é design e como

abordá-lo é feita sob um olhar diferente em cada paradigma. No primeiro paradigma os designs são

constituídos como problemas e soluções. No segundo, design é frequentemente construído como

teste de hipóteses, mais do que problema e solução. Enquanto que no terceiro, design é um

elemento decisivo, pois o entendimento ou construção da situação é o núcleo do design.

Três grandes vantagens são levantadas para aproveitar ao máximo o melhor de múltiplos

paradigmas, que são: Primeiro, desenvolver um melhor entendimento da interação, pois múltiplos

paradigmas permitem desenvolver um entendimento mais completo de todas as partes da natureza

da interação e boas práticas em torno de design e avaliação. Segundo, reconhecer bons trabalhos

quando estes ocorrerem. E terceiro, aumentar a validade dos métodos e conhecimentos que é um

problema substancial para qualquer paradigma.

Segundo Steve Harrison, Deborah Tatar, Phoebe Sengers, os quais argumentam que não

dizem que o terceiro paradigma é o certo enquanto que o primeiro e o segundo são errados e sim

que os paradigmas destacam diferentes tipos de questões interessantes e métodos para respondê-las

e os paradigmas frequentemente co-existem e, portanto pesquisadores podem trabalhar dentro de

múltiplos paradigmas.

Acredito que os três paradigmas podem conviver pacificamente e de modo a ampliar a visão

de conhecimento do campo, pois se é esperado conhecer e validar a experiência do usuário com

maiores detalhes, é necessário o estudo de todos os paradigmas existentes a fim de construir um

panorama mais completo da situação e consequentemente pensar em formas mais adequadas de

interação.

2.6.1 Integração entre paradigmas de HCI

Cada um dos paradigmas descritos acima, envolve um interesse particular, onde diferentes

grupos de questões são considerados interessantes ou úteis e diferentes tipos de métodos são

considerados adequados para responder tais questões. Unir os aspectos diferentes de cada

paradigma são concepções diferentes do significado de saber se alguma coisa é verdadeira.

O primeiro e o segundo paradigma enfatizam a importância do conhecimento objetivo. O

terceiro paradigma enxerga o conhecimento como resultante de pontos de vista situados no mundo.

Estes pontos de vista frequentemente vêem o foco dominante no conhecimento objetivo como

suspeito de passar por cima das complexidades de múltiplas perspectivas de um cenário de ação.

Contudo, pontos de vista situados representam mais do que quebrar o espelho da

objetividade em pedaços, em vez disso, reconhecem a subjetividade do pesquisador e a relação

entre o pesquisador e o pesquisado. (Chalmers e Galani, 2004; McCarthy e Wright, 2004) e de fato

21

este reconhecimento é essencial para o design participativo.

Já questões de subjetividade que são comuns na antropologia e educação, são difíceis de

serem abordadas no segundo paradigma. Este valoriza modelos generalizados, como exemplificado

pelo GOMS (Goals, Operators, Methods and Selections Rules) em Card, Moran e Newell (1983).

Mas como o terceiro paradigma enxerga o conhecimento como resultante da obtenção de

significado em situações específicas, então este paradigma é melhor para descrições detalhadas

destas situações. Para melhor entender o que as pessoas estão fazendo, é preciso monitorar as

estratégias situadas que as pessoas usam para aplicar seu conhecimento abstrato em situações reais.

O segundo paradigma é resultante de uma combinação de ciência da computação e

laboratórios de ciências comportamentais que enfatizam o significado analítico, que forneçam

sentido ao que é feito no local da interação, frequentemente sob condições controladas. Também o

segundo paradigma reage à orientação teórica do primeiro paradigma.

A diferença entre essas maneiras de pensar tem origem em se os pesquisadores colocam a

clareza e certeza de modelos formais no centro do seu pensamento ou se colocam a complexidade

do mundo real, comportamentos “bagunçados” e atividades no centro [Steve Harrison, Deborah

Tatar e Phoebe Sengers, 22].

Dada a natureza interdisciplinar de IHC, é fácil argumentar que questões relacionadas à

validade e avaliação são confusas.

Algumas vantagens na integração destes três paradigmas são de possibilitar um melhor

entendimento da interação, reconhecer bons trabalhos quando ocorrerem e aumentar a validade dos

métodos e conhecimentos.

Cada paradigma tem uma metáfora central de interação e com base nela, cada paradigma é

apto para centralizar seu foco na abordagem de diferentes tipos de fenômenos, deixando os

fenômenos diferentes de lado.

Paradigmas diferentes, contudo, conduzem a diferentes tipos de questões, as quais seriam

importantes responder. Assim, a vantagem de realizar um estudo com base em mais de um

paradigma, se deve ao fato de que múltiplos paradigmas permitem ao campo como um todo

desenvolver um entendimento mais completo da natureza da interação e boas práticas para o design

e avaliação.

Questões que tem importância social, cultural e econômica presentes nas interfaces de hoje,

são difíceis de serem abordadas pelo primeiro e segundo paradigma, como por exemplo, explicar

por que as pessoas jogam videogames ou por usam mais Windows do que Macintosh. Também as

vantagens da estética são desafios para entender, uma vez que o valor de uma interface agradável

esteticamente deveria ser expresso em termos funcionais.

22

Também o reconhecimento de múltiplos paradigmas nos permite lidar com uma ampla gama

de questões no campo de IHC, e é importante reconhecer que existem diferenças substanciais na

maneira que cada paradigma estrutura sua abordagem para responder tais questões.

Como conseqüência, a natureza de validade necessariamente sofre modificações

substanciais à medida que se deslocar de um paradigma para outro. Noções de validade traçadas a

partir de um paradigma falham, para caracterizar com precisão uma sólida contribuição de trabalho

em um outro paradigma. Portanto, a vantagem estaria na percepção de que se deveria desenvolver

diferentes padrões de validade para trabalhar em diferentes paradigmas, a fim de obter a confiança

de reconhecer um bom trabalho em cada um dos paradigmas.

Também com o entendimento e consideração nos estudos dos três paradigmas, torna-se

possível reconhecer as diferenças das metodologias entre os paradigmas e, portanto aumenta-se a

probabilidade de métodos e conhecimentos válidos em cada paradigma.

23

3 Desenvolvimento de sistemas sob o ponto de vista de usabilidadeO problema dos sistemas que são desenvolvidos seguindo o projeto tradicional, no qual se

inicia pela definição do produto, suas funcionalidades e interface, é justamente começar

implementando, pois dessa maneira deixa-se de lado as necessidades e problemas dos usuários e

metas de usabilidade.

Além disso, incluir tais metas após o desenvolvimento de um protótipo pode ficar muito

caro. Sendo assim, seria muito melhor definir a parte externa, ou seja, interfaces de interação com o

usuário, logo após o entendimento da natureza do problema.

Para tanto, é necessária a definição de um conceito de produto e fixar o entendimento de

porque ele deve ser feito daquela maneira.

Por outro lado, os sistemas que são desenvolvidos seguindo o projeto participativo, no qual

se inicia o processo perguntando-se aos usuários sobre suas experiências e conhecendo-se os

produtos semelhantes ou concorrentes, possibilitam pensar desde o início do sistema nas

necessidades dos usuários e assim fornecer a eles uma interação mais satisfatória.

Sendo assim, na técnica de projeto de interação, os projetos participativos são utilizados e

consequentemente são especificados os objetivos de usabilidade e satisfação do usuário, a definição

de conceito do produto, pois usuários e projetistas possuem conceitos diferentes do mesmo produto,

e também a análise de como e porque o produto vai cumprir os objetivos.

Este último requer conhecimento das atividades e interações humanas que são fundamentais

e/ou problemáticas e procurar soluções para as mesmas. Também avaliar porque uma nova

tecnologia, ou mesmo novos paradigmas de interação, seriam úteis para o produto.

Então, o ponto de partida é levantar questões e soluções para elas, a respeito, por exemplo,

dos produtos concorrentes, ou do que o produto a ser desenvolvido teria de vantagens sobre os já

existentes. Ou seja, entender a utilidade real da proposta do sistema e como seria a interação dos

usuários e ainda se o sistema dá suporte às atividades do usuário e como satisfazê-lo, qual (is)

contexto(s) de uso e principalmente quem são os usuários.

3.1 Entendendo o usuário

O primeiro passo para entender os usuários é identificar quem são eles, quem são os

usuários típicos do sistema.

Eles podem ser usuários específicos como crianças em jogos educativos na web, ou idosos

acessando suas informações médicas. Ou também pode se tratar de sistemas que recebem todos os

tipos de usuários desde crianças, adultos e idosos, com todos os tipos de conhecimento e

experiência com computadores. Este é o caso de sistemas web, que podem ser utilizados por uma

24

vasta variedade de usuários de todos os tipos e perfis existentes. Com relação ao tipo de usuário,

eles podem ser:

• Primários: usuários diretos, pois interagem com o sistema para realizar uma tarefa ou

mesmo que não tenha uma tarefa definida a interação passa a ser o objetivo.

• Secundários: usuários ocasionais ou que usam o sistema através de um intermediário,

por exemplo, chefes de usuários diretos.

• Terciários: usuários afetados pelo sistema ou influenciam sua compra, por exemplo,

recebem produtos do sistema, compram o sistema, utilizam sistemas concorrentes.

• Stakeholders: usuários terciários especiais, pois além das características dos terciários

também são pessoas ou organizações afetadas pelo produto e que possuem uma

influência direta ou indireta sobre seus requisitos.

Com relação ao perfil de usuário, eles podem ser:

• Novatos ou Aprendizes: Passo-a-Passo, Restrito, Informações Claras

• Casuais ou Infrequentes: Instruções Claras, por exemplo, Menus

• Freqüentes: Atalhos, permitir criar comandos para ações freqüentes

• Experientes: Flexibilidade, eficiência, rapidez, liberdade, poder

É importante ressaltar que para se projetar algo para pessoas, é necessário saber que tipo de

pessoas o sistema deve suportar e entender que essas pessoas possuem capacidades e necessidades

distintas e que, portanto requisitos do sistema devem atender a tais necessidades e capacidades

humanas.

3.1.1 Capacidades Humanas

Para entendermos os usuários, precisamos também entender as suas capacidades humanas

que estão envolvidas no processo de interação com um produto interativo. Tais capacidades vão

além do conhecimento adquirido pelo usuário através dos estudos, ou background cultural, embora

sejam também variáveis relevantes para o entendimento, por parte do usuário, do ambiente e

interação que realiza.

Também componentes cognitivos humanos são fundamentais no desempenho de tarefas em

um sistema. Portanto, é preciso considerar os processos cognitivos envolvidos e as limitações

cognitivas dos usuários, pois podem fornecer conhecimento sobre o que esperar que os usuários

possam ou não fazer. Também permite identificar e explicar a natureza e causa dos problemas

encontrados pelos usuários. Dessa forma, é possível construir teorias, ferramentas de modelagem,

guias e métodos que podem resultar em projetos de tecnologias melhores. Mas o que é cognição?

25

3.1.2 Cognição

Cognição é o que acontece em nossas mentes enquanto realizamos as atividades diárias. Ela

envolve processos cognitivos como pensar, lembrar, aprender, tomar decisões, ler, escrever e falar.

Existem muitos tipos diferentes de cognição, como mostra a figura 3.1 abaixo.

Figura 3.1 – Tipos diferentes de cognição

Cognição tem sido descrita em termos de tipos específicos de processos, como:

• Atenção;

• Percepção e reconhecimento;

• Memória;

• Aprendizagem;

• Leitura, fala e escuta;

• Resolução de problemas, planejamento, argumentação e tomada de decisão.

É importante ressaltar que muitos desses processos cognitivos são interdependentes, ou seja,

vários podem estar envolvidos em uma determinada atividade. Aliás, é raro ocorrerem

isoladamente. Abaixo esses processos serão descritos com maiores detalhes.

26

Atenção:

Atenção é o processo de seleção de algo para nos concentrarmos, dentre uma variedade de

possibilidades disponíveis. A atenção envolve nossos sentidos auditivos e visuais e nos permite

focar na informação que é relevante para aquilo que estamos fazendo. O processo de conseguirmos

focar a atenção pode ser mais ou menos fácil caso tenhamos objetivos claros de metas e se a

informação que precisamos está saliente no ambiente.

Ou seja, se sabemos exatamente o que queremos, então podemos associar isto com a

informação que está disponível e a maneira que a informação é apresentada tem grande influência

em quão fácil ou difícil é para encontrar as informações que precisamos. As implicações para o

design de sistemas, de acordo com a atenção, são:

• Tornar saliente as informações quando são necessárias para cumprir um dado estágio de

uma tarefa.

• Usar técnicas como gráficos animados, cor, sublinhar, ordenar itens, apresentar

seqüência de informações diferentes e espaçamento entre itens.

• Evitar poluir a interface com muita informação. Especialmente, quanto ao uso de som,

cor e gráficos, pois existe uma tentação em usar muitos deles, resultando em uma

confusão de mídias que distraem e irritam os usuários, mais do que os ajudam a

encontrar as informações relevantes.

• Mecanismos de busca e preenchimento de formulário que são simples, são muito mais

fáceis de usar, como o Google. A razão para isso, é que os usuários podem encontrar

mais rapidamente na tela, onde é o local que digitam sua busca.

Percepção:

Percepção ou reconhecimento referem-se em como a informação é adquirida do ambiente,

através de diferentes órgãos sensoriais, como olhos, ouvidos, dedos, e transformadas em

experiências de objetos, eventos, sons e tatos (Roth, 1986). Este processo cognitivo envolve outros

processos como memória, atenção e linguagem. A visão é o sentido dominante, seguidos da audição

e do tato.

Com respeito ao design de interação este é importante para apresentar informações de uma

maneira que possa ser prontamente percebida da forma pretendida. As implicações para o design de

acordo com a percepção são de que a representação das informações precisa ser projetada para ser

perceptível e reconhecida através de diferentes mídias:

• Ícones e outras representações gráficas deveriam habilitar os usuários a prontamente

distinguir seus significados;

27

• Bordas e espaços são formas visuais efetivas de agrupamento de informações que as

tornam mais fáceis de serem percebidas e de localizar itens;

• Sons devem ser audíveis e distinguíveis a fim de que os usuários possam entender o que

eles representam;

• Discursos falados devem habilitar os usuários a distinguirem entre o grupo de palavras

faladas e também entender seu significado;

• Textos devem ser legíveis e distinguíveis do fundo da tela.

• Feedback tátil usado em ambientes virtuais deve permitir aos usuários entender o

significado de várias sensações de toques sendo simuladas.

Percepção Espacial: O fator humano de percepção espacial em sistemas web

O espaço é um aspecto importante do ambiente no qual muitos sistemas devem operar. Uma

importante característica da percepção espacial é o papel do movimento. Em muitas situações, nós

controlamos nosso movimento através do espaço: podemos mudar nossa direção, nossa velocidade,

nossa aceleração. O que nos conduz a questões como: Quais informações são detectadas no

ambiente, que nos permite saber como agir?

Além disso, as estruturas socioculturais e econômicas influenciam o desenvolvimento

tecnológico ao mesmo tempo em que sofrem seus efeitos. Adicionados a tal concepção, também os

modos de ser e pensar sobre nós mesmos e sobre o mundo, influenciam e são influenciados pela

disponibilidade de novas tecnologias. Daí a importância do estudo dos seres humanos em sistemas

computacionais.

A necessidade de integração de fatores humanos no processo de desenvolvimento das

interfaces é importante porque ajuda a diminuir a complexidade do projeto das interfaces e melhorar

a usabilidade das interfaces construídas. Os principais fatores humanos considerados no projeto são

relativos ao comportamento dos usuários. Neste artigo, é dado foco no fator humano de percepção

espacial. Regras ergonômicas também serão estudadas a fim de que tais regras otimizem o máximo

possível as informações manipuladas na interface.

O fator humano de percepção espacial deve ser considerado tanto para usuários novatos

quanto experientes, pois estes interagem com sistemas web e realizam navegação e interação nestes

ambientes. Sendo assim, a percepção espacial é fundamental em sistemas web, porque seus usuários

precisam controlar seu movimento através do espaço, poder mudar sua direção, sua velocidade, sua

aceleração. Dependendo de contextos específicos como pressa, mudança de idéia, visitar vários

sites ao mesmo tempo, ou seja, realizar várias atividades ao mesmo tempo, o que leva a perda de

concentração. Isto tudo nos conduz a questões como: Quais informações são detectadas, pelos

28

usuários, nos sistemas web que lhes permite saber como agir? Neste ponto entram conceitos

importantes como affordance das interfaces, que é o atributo que um objeto possui de informar, por

suas características físicas, para que serve, sem necessidade de explicação, é intuitivo. Outro ponto

é saber como se situar numa página web. Estes são exemplos de como este fator humano é

importante neste tipo de pesquisa.

Diante dos vários tipos de usuários possíveis em sistemas web, tem se então pontos

diferentes a serem considerados de acordo com o perfil de cada usuário. Para usuários novatos, sua

movimentação através de espaços precisa ser amparada por instruções, que definem o que deve

fazer e para onde ir a cada passo de interação. Usuários freqüentes, não necessitam do mesmo

detalhamento de passos, ao contrário, por serem freqüentes, conhecem o ambientes e necessitam de

atalhos para acesso mais rápido às informações que buscam. Usuários experientes buscam

flexibilidade e rapidez na sua interação.

Ou seja, cada um desses usuários possui uma percepção diferente do espaço e

consequentemente realiza a navegação de acordo com seu background cultural.

Além disso, o espaço é percebido pelos humanos através de relações que os elementos que

estão dentro do campo de visão estabelecem entre si e o corpo humano. Já o ciberespaço é o

conjunto de informações que transitam nas redes de transmissão, portanto é apropriado para

denominar as informações que circulam pela internet.

A World Wide Web é apoiada sobre a integração de vários fatores tecnológicos, políticos,

econômicos e culturais, e sua utilização aumentou em poucos anos, introduzindo para milhões de

pessoas as práticas da comunicação através do computador, a hipermídia e o conceito de

'ciberespaço'. Neste contexto, a World Wide Web passou a ser identificada como 'o ciberespaço'.

Assim como percebemos o espaço do mundo físico a partir da percepção das relações que os

vários elementos existentes estabelecem entre si, também o espaço da web é revelado aos usuários a

partir da identificação das relações estabelecidas entre as várias páginas, por exemplo, a partir dos

links.

O percurso é outra marca de percepção de espaço na World Wide Web, pois do ponto de

vista do usuário, a mudança de uma página para outra é percebida como uma caminhada, um

percurso no espaço. O usuário seleciona o link ou botão que inicia a mudança de página e, portanto

controla o movimento em direção à outra página. Também quando ocorre a demora na transmissão

dos dados, na troca de uma página para outra, enfatiza-se o percurso entre as páginas, por causa do

tempo de resposta.

Milhões de usuários navegam pela World Wide Web todos os dias, e levam consigo uma

impressão da estrutura espacial através dos caminhos percorridos.

29

Páginas web que contém textos, desenhos, gráficos e fotografias são mapeamentos para o

meio eletrônico, de objetos que poderiam ser representados em planos estáticos, como folhas de

papel, por exemplo, daí a metáfora da página.

A percepção do espaço da web é feito através da identificação dos possíveis percursos entre

os diferentes tipos de representação, como links, ícones, menus. O usuário percorre com os olhos a

interface, na qual os diferentes componentes são exibidos, e pode selecionar links e determinar, o

que o sistema lhe trará como resposta após a seleção deste link. Cada vez que seleciona um link, no

entanto, o usuário muda o ciberespaço ou fica diante de um novo elemento de interação. Mesmo

que a mudança de uma página para outra seja feita rapidamente, o usuário percebe a existência de

um espaço entre as páginas.

Portanto, a percepção espacial é um fator humano que está presente em todos os sistemas

web, uma vez que uma parte importante deste sistema, seus usuários, depende deste fator para

melhor compreender o espaço no qual realizam a interação com o computador.

A tecnologia de representação e exibição de informações tem crescido quase tão

rapidamente quanto o volume de informações. Tal crescimento tem forçado especialistas em fatores

humanos a projetar ferramentas de visualização, para auxiliar os usuários na navegação e

entendimento. Infelizmente, essas ferramentas são frequentemente não avaliadas sistematicamente

de modo que seus benefícios ou custos possam ser identificados e vinculados aos princípios

fundamentais de processamento de informação humana. Todavia, as vinculações entre as

ferramentas bem elaboradas e os princípios de performance humana é frequentemente aparente:

entre dinâmica visual e interrupção de atenção ou entre consistência de layout e facilidade de

aprendizado. Contudo, é importante que a eficácia de tais ferramentas seja determinada através de

avaliações empíricas cuidadosas.

A percepção espacial diz respeito à como as pessoas compreendem sua movimentação

através do espaço, o que depende de vários fatores entre eles a cultura, contexto e perfil de usuário.

Levando-se em consideração estes fatores, consegue-se projetar displays que podem ser usados para

facilitar este trabalho e consequentemente entender como as pessoas navegam através de ambientes

reais ou virtuais, e como o desempenho na navegação pode ser suportado através do design de

mapas e instruções. E até mesmo elementos que ajudem a lembrar qual será o próximo passo, que

direção seguir como ícones, por exemplo.

Memória:

A memória envolve a recordação de vários tipos de conhecimentos. Por exemplo, nos

permite reconhecer o rosto das pessoas, lembrar seus nomes, entre tantas outras informações. Ou

30

seja, sem a memória simplesmente não seríamos capazes de funcionar.

Porém não é possível lembrarmos de tudo que vemos, ouvimos, tateamos, cheiramos ou

tocamos, nem nós queremos isto, pois desta forma nossos cérebros ficariam totalmente

sobrecarregados. Portanto, um processo de filtragem é realizado a fim de decidir quais informações

serão processadas e armazenadas.

Este processo de filtro, contudo, tem seus problemas, pois frequentemente esquecemos

coisas que gostaríamos de lembrar e guardamos coisas que adoraríamos esquecer.

Também outro fator que afeta a recuperação de informações, é o contexto no qual

determinada informação foi guardada. É o caso de muitas vezes, nos lembrarmos de uma senha

específica para um dado programa de computador, apenas no local que costumamos acessar este

programa e quando precisamos acessá-lo de um outro local, não lembramos a senha.

Outro fenômeno da memória é o das pessoas serem melhor no reconhecimento das coisas do

que na recordação delas. Além disso, certos tipos de informação são mais fáceis de reconhecer do

que outras, como imagens, pois as pessoas reconhecem milhares de imagens mesmo que elas a

tenham visto rapidamente.

As implicações para o design de interfaces, de acordo com a memória, são:

• Não sobrecarregar a memória dos usuários com procedimentos complicados para a

realização de tarefas;

• Projetar interfaces que promovem reconhecimento mais do que recordação, través do

uso de menus, ícones e objetos consistentemente localizados.

• Fornecer aos usuários uma variedade de maneiras de codificação da informação digital,

por exemplo, arquivos, e-mails, imagens, para ajudá-los a lembrar onde eles a

armazenaram, através do uso de categorias, cores, sinalização, ícones, etc.

Aprendizagem:

As pessoas encontram muita dificuldade em aprender seguindo instruções de manuais, ao

invés disso preferem aprender fazendo.

GUIs (Graphical User Interface) e interfaces de manipulação direta são bons ambientes para

suportar este tipo de aprendizado ativo, através do suporte à interação exploratória e que permite

aos usuários desfazerem suas ações.

O aprendizado pode ser considerado em termos de como usar uma aplicação baseada em

computador ou usar uma aplicação baseada em computador para entender um determinado assunto.

Estudiosos sugerem que outra maneira de ajudar de ajudar a aprender é através da

abordagem training-wheels, (rodas de treinamento), uma analogia com as rodinhas extras presentes

31

em bicicletas de crianças, para ajudar as crianças a aprenderem a andar de bicicleta, na qual só

retira-se as rodinhas extras quando a criança já aprendeu a andar com elas.

Tal abordagem envolve a restrição para novatos das possibilidades que podem ser realizadas

e então se estende as funcionalidades quando o usuário já possuir mais experiência. O objetivo é

tornar o aprendizado inicial mais fácil, focando em operações simples antes de aprender as mais

complexas. As implicações de design, de acordo com a aprendizagem, são:

• Projetar interfaces que encorajem exploração;

• Projetar interfaces que condicionam e guiam os usuários a selecionar ações apropriadas

quando iniciam a aprendizagem.

• Dinamicamente associar representações concretas a conceitos abstratos para facilitar a

aprendizagem de um material complexo.

Leitura, Fala e Escuta:

Leitura, fala e escuta são três formas de processamento de linguagem que possuem

propriedades semelhantes e diferentes. Uma semelhança é que o significado de uma frase é o

mesmo tanto para a frase lida, quanto falada ou escutada. Porém, a facilidade, pela qual as pessoas

podem ler, ouvir, ou falar, difere dependendo da pessoa, tarefa, e contexto. Por exemplo, muitas

pessoas acham mais fácil ouvir do que ler. As principais diferenças entre estes três modos de

processamento de linguagem são:

• Linguagem escrita é permanente, enquanto que a ouvida é temporária.

• Ler pode ser mais rápido do que falar ou ouvir, enquanto que texto escrito pode ser

rapidamente digitalizado de maneiras não possíveis como quando ouvimos;

• Escutar requer menos esforço cognitivo do que ler ou falar;

• Existem diferenças marcantes entre pessoas e suas habilidades para o uso da linguagem.

Algumas preferem ler a ouvir, enquanto outras preferem ouvir. Enquanto outras

preferem falar a escrever e vice-versa;

• Pessoas com problemas de audição e visão possuem restrições na maneira que elas

processam a linguagem.

Implicações para o design, de acordo com estes três modos de processamento de linguagem,

são:

• Manter o comprimento de menus e instruções baseados em falar o mínimo possível.

• Acentuar a entonação de vozes geradas artificialmente, por elas serem mais difíceis de

entender do que as vozes humanas.

• Forneça oportunidades para mostrar textos grandes na tela, sem afetar a formatação, para

32

pessoas que possuem dificuldades para ler textos pequenos.

Resolução de problemas, Planejamento, Argumentação e Tomada de Decisão:

Resolução de problemas, Planejamento, Argumentação e Tomada de Decisão são processos

envolvendo cognição reflexiva, que incluem pensar sobre o que fazer, quais opções possuem, e

quais conseqüências podem ocorrer pela realização de uma determinada ação. Eles envolvem

processos conscientes, discussão com os outros e o uso de vários tipos de artefatos, como mapas,

livros, canetas, etc. As implicações para o design de interfaces, de acordo com este tópico são:

• Fornecer informação oculta adicional que seja fácil de acessar por usuários que desejem

entender mais sobre como realizar uma atividade de modo mais eficaz, por exemplo,

procura na web.

• Usar funções simples e recordáveis na interface computacional para ajudar no suporte de

rápidas tomadas de decisão e planejamento que ocorrem enquanto as pessoas estão em

movimento.

3.1.3 Modelos Mentais

Os seres humanos desenvolvem o conhecimento de como interagir com um produto ou

sistema e também em menor escala, de como esse sistema ou produto funciona. Estes dois tipos de

conhecimento frequentemente referenciam o modelo mental do usuário.

O modelo mental é usado pelas pessoas para argumentar sobre um sistema, e tentar entender

sobre o que fazer quando diante de situações inesperadas ou mesmo quando se depara com sistemas

desconhecidos. Quanto mais as pessoas aprendem sobre um sistema ou produto e como este

funciona, mais seus modelos mentais se desenvolvem.

Por exemplo, um projetista ou desenvolvedor tem um modelo mental profundo sobre o

funcionamento de um sistema do qual ele desenvolveu, o que permite a ele propor melhorias e

consertar erros. Já um usuário que já utilizou pelo menos uma vez este mesmo sistema, possui um

conhecimento razoável de como interagir com este, mas pouco conhecimento ou nenhum a respeito

de como ele funciona. O projetista possui um modelo mental profundo, enquanto que o usuário,

deste caso, possui um modelo mental superficial.

Na psicologia cognitiva, modelos mentais têm sido descritos como construções internas de

algum aspecto do mundo externo que são manipuladas, habilitando previsões e deduções (Craik,

1943).

Os modelos mentais envolvem processos conscientes e inconscientes, onde imagens e

analogias são ativadas. Porém, as pessoas podem usar modelos mentais errados diante de produtos

33

ou sistemas que não conhecem. Por exemplo, a maioria das pessoas, ajusta um termostato em dias

frios, para a temperatura mais alta possível, pois seus modelos mentais são de que quanto maior a

temperatura, mais rápido o ambiente será aquecido. Mas, um termostato tem velocidade constante

de aumento de temperatura e ao alcançar a temperatura selecionada a mantém. Portanto, não adianta

selecionar uma temperatura mais alta, pois o tempo para alcance da temperatura desejada será o

mesmo, o que acontece é que continuará elevando a temperatura até o valor máximo selecionado e

o ambiente ficará muito quente.

Mas por que isso ocorre? Porque os usuários, neste caso, possuem um modelo mental

parecido com o de uma torneira, no qual quanto mais se abre, mais água será fornecida e utilizam

este modelo mental para o uso do termostato de forma errada.

Isso porque as pessoas em suas vidas cotidianas desenvolvem um núcleo de um conjunto de

abstrações sobre como as coisas funcionam e aplicam-no para a utilização de dispositivos, sem a

preocupação se são ou não adequados.

O uso de modelos mentais incorretos é muito comum, como ao apertar várias vezes o botão

de um elevador, pela crença que isto ajudará ele chegar mais rápido, ou clicar várias vezes em um

botão ou link de um sistema web, acreditando-se que a página abrirá mais rapidamente.

A filosofia presentes nestes casos, é a do “mais é mais”, quanta mais alta a temperatura,

mais rápido o ambiente será aquecido, quanto mais vezes apertar o botão do elevador, mais rápido

ele chega, quanto mais se clica em um link ou botão de uma página web, mais rápido ele abre.

Todos são modelos mentais errados e que, mesmo assim estão nas presentes na vida das pessoas.

Também, na maioria das pessoas, o conhecimento a respeito de serviços e tecnologias

baseadas em computador é muito pequeno. Portanto seus modelos mentais são frequentemente

incompletos, confusos e baseados em analogias inadequadas ou superstições. (Norman, 1983).

Como conseqüência, elas encontram dificuldades para identificar, descrever, ou resolver

problemas e falta a elas palavras ou conceitos para explicar o que está acontecendo quando usam

sistemas baseados em computador.

Por tudo isto, tecnologias interativas deveriam ser projetadas para serem mais transparentes,

o que facilita o entendimento em termos de como funciona e o que fazer quando não funcionar. Ou

seja, se obteria um grande ganho, se os sistemas fossem desenvolvidos de modo a propiciar

modelos mentais melhores para os usuários, quanto aos sistemas interativos, a fim de que

melhorassem o conhecimento sobre como realizar suas tarefas eficientemente.

34

3.1.4 Métodos para entendimento das necessidades do usuário

Existem várias técnicas de coleta de dados que possibilitam o entendimento das

necessidades dos usuários. São elas:

Observação:

Observação é uma técnica de coleta de dados muito útil em qualquer estágio durante o

desenvolvimento do produto.

No início do design, a observação ajuda os projetistas entenderem o contexto dos usuários,

tarefas e metas. Usuários podem ser observados diretamente enquanto realizam suas atividades ou

indiretamente através de registros da atividade.

A observação pode ser feita tanto em campo (observação natural) quanto em ambientes

controlados. Na observação direta em campo, os indivíduos são observados como eles realizam suas

tarefas diárias em um ambiente natural.

Na observação direta em ambiente controlado, os indivíduos são observados realizando

tarefas específicas dentro de um ambiente controlado como um laboratório de usabilidade. Neste

caso, o local da observação é protegido de ruídos e interrupções, ou seja, qualquer tipo de situação

que distraia ou tire a atenção do usuário da tarefa específica analisada. Este tipo de observação

geralmente é realizado nas etapas de avaliação do sistema.

Enquanto que a observação em campo pode ser feita nas fases iniciais do sistema, pois

ajudam a enxergar problemas que podem ocorrer justamente pela ocorrência de ruídos e

interrupções durante a realização de tarefas, possibilitando inclusive perceber novas funcionalidades

e características para o sistema que ajudarão o usuário no cumprimento de seus objetivos.

Outro modo de observação é a observação indireta, que é feita quando não é possível

realizar observação direta e então as atividades são mapeadas indiretamente através de diários,

através dos quais os usuários são solicitados para escrever um diário de suas atividades, por

exemplo, para saber quanto tempo se gasta na realização de atividades.

Entrevista:

Entrevistas podem ser pensadas como uma “conversa com uma proposta” (Kahn e Cannell,

1957). As entrevistas podem ser estruturadas, não estruturadas, semi-estruturadas ou entrevistas em

grupo. (Fontana e Frey, 1994).

Os três primeiros tipos dizem respeito a quanto de controle o entrevistador impõe na

conversa por seguir um determinado grupo de questões. Já o último envolve um grupo pequeno

guiado por um facilitador.

Entrevistas não estruturadas são exploratórias e são mais parecidas com conversas em volta

35

de um tópico particular. As questões são abertas, o que indica que não existe uma expectativa

específica sobre o formato ou conteúdo das respostas. Questões abertas são usadas quando se quer

explorar várias opiniões, ou seja, o entrevistador é livre para responder como quiser. O benefício

deste tipo de entrevista é a geração de dados ricos, com entendimento mais profundo do tópico.

Nas entrevistas estruturadas, o entrevistador faz perguntas pré-determinadas como as de um

questionário. Este tipo de entrevista é útil quando as metas são claramente entendidas e questões

específicas podem ser identificadas. Tipicamente as questões são fechadas, ou seja, requerem uma

resposta de um grupo pré-determinado de alternativas. Também o uso de questões fechadas é útil,

quando necessárias entrevistas rápidas com respostas conhecidas e onde as pessoas estão com

pressa. As mesmas questões são usadas para cada participante o que fornece um estudo

padronizado.

As entrevistas semi-estruturadas combinam características das entrevistas estruturadas e não

estruturadas, usando questões abertas e fechadas. O entrevistador tem um script a ser seguido e

então os mesmos tópicos são cobertos com cada entrevistado, porém de acordo com as respostas do

entrevistado, o entrevistador pode se aprofundar mais em determinados tópicos e detalhes.

Já as entrevistas em grupo ou workshops, são feitas geralmente com grupos de foco, que são

normalmente de 3 a 10 pessoas envolvidas e com a discussão sendo desenvolvida por um facilitador

treinado. Os participantes selecionados representam uma amostra representativa de uma população

alvo. O benefício é permitir que diversas questões sejam originadas, pois o método propicia que

indivíduos desenvolvam opiniões dentro de um contexto social, através da conversa entre os

participantes. Existe uma agenda para guiar a discussão, mas com flexibilidade para perguntas

originadas pelos participantes.

As entrevistas de modo geral, devem ter um plano de tópicos principais a serem cobertos e

são boas para explorar conflitos, porém de modo geral consomem tempo. Também exemplos de

cenários de uso ou protótipos podem ser usados para facilitar a compreensão dos usuários.

Questionários:

São técnicas eficientes para coletar dados demográficos e opiniões de usuários. Podem ter

questões abertas ou fechadas, assim como as entrevistas e são projetados para esclarecer

informações específicas.

Os questionários são úteis para fornecer dados quantitativos e/ou qualitativos e são

apropriados para grupos grandes e dispersos. Questionários podem ser usados com outras técnicas

para clarear ou aprofundar o entendimento.

36

Combinação de técnicas:

É comum combinar as técnicas de coleta de dados para entender melhor as necessidades dos

usuários. Para escolher qual técnica ou combinação de técnicas devem ser utilizadas, é necessário o

entendimento de vários fatores pertencentes ao foco de estudo, como participantes envolvidos, a

natureza da técnica e recursos disponíveis. A decisão precisa levar em conta todos esses fatores para

a escolha mais adequada.

3.2 Desenvolvimento pensando no usuário

Quando os sistemas são desenvolvidos pensando-se no usuário, este precisa inevitavelmente

participar do processo de desenvolvimento. Para isto, é preciso entender as necessidades do usuário,

estabelecer requisitos baseados nestas necessidades, prototipar designs alternativos a fim de que o

usuário possa opinar e interagir com a proposta de sistema antes que estes sejam desenvolvidos e

realizar a avaliação do design.

Todos estes processos de desenvolvimento pensando no usuário são estágios do processo de

DCU. Mas o que é DCU?

3.2.1 DCU ou UCD (User-Centered Design)

DCU (Design Centrado no Usuário) é o processo de projetar produtos interativos que

satisfaçam às necessidades do usuário, para isto possui quatro características principais:

• Entender os usuários e suas necessidades;

• Foco no usuário desde o estágio inicial do projeto e durante a avaliação do produto;

• Identificar, documentar e aprovar objetivos específicos de usabilidade e experiência do

usuário;

• Iterações são inevitáveis, pois se sabe que nem os melhores projetistas acertam da

primeira vez.

3.2.2 Por que usar DCU?

Os principais motivos para usar DCU são: a satisfação do usuário e o excesso da estimativa

de custo de projetos de software.

Aproximadamente 63% dos projetos de software excedem suas estimativas de custo, sendo

que as quatro principais razões deste excesso são as solicitações freqüentes de alterações pelos

usuários, as tarefas que não foram previstas pelos projetistas, a falta de entendimento pelo usuário

de seus próprios requisitos e comunicação e entendimento insuficiente entre usuários e projetistas.

Ou seja, todos provenientes da falta de entendimento de quem é o usuário e quais são suas

37

necessidades e consequentemente quais tarefas ele precisa realizar e também pouco envolvimento

do usuário no processo de desenvolvimento.

Como conseqüência, tem-se o impacto na satisfação do usuário, pois este não sendo

compreendido, significa que o produto não o satisfará adequadamente, o que gera as razões de

excesso da estimativa de custo. Portanto, é um ciclo que se realimenta pelo simples fato de não se

entender quem realmente utilizará o sistema.

Usando o processo de DCU são maiores as chances de se construir algo útil, que de fato

melhore a produtividade, reduza erros humanos, reduza a manutenção e, portanto reduza a rotação

de empregados.

Além disso, DCU gerencia as expectativas tanto dos usuários quanto de projetistas e

desenvolvedores, encorajando a propriedade da solução através do entendimento das limitações,

resultando em aumento da satisfação de usuários.

Também o processo de DCU simplifica o lançamento e integração do sistema, pois os

usuários podem se ver utilizando o produto antes que ele seja lançado, através de protótipos e

discussões a respeito do design.

3.3 Design de Interfaces

Existem alguns conceitos de design visual que possibilitam o desenvolvimento de interfaces

que estão de acordo com os objetivos de usabilidade.

Estes conceitos vão desde consistência, criar relações, organização, legibilidade, clareza,

presença de pistas para navegação, imagens e idiomas apropriados até técnicas elaboradas para

obtenção de interfaces mais eficientes.

Dentre estas técnicas está o método CRAP (Contrast, Repetition, Alignment, Proximity)

de Greenberg.

O método CRAP aponta linhas básicas para verificação de problemas na interface, quanto ao

contraste, repetição, alinhamento e proximidade.

Contraste indica que se deve fazer coisas diferentes na interface aparecerem diferentes,

através do realce de elementos dominantes e mais relevantes e escondendo os insignificantes. Desta

forma, cria-se um dinamismo na interface de modo que se torna mais fácil encontrar as informações

e distingui-las.

Repetição indica que se deve repetir o design ao longo da interface para manter a

consistência, de modo a criar uma unidade. O usuário dessa maneira encontra uma interface

padronizada, na qual sabe que imagens ou textos têm o mesmo significado mesmo em locais

diferentes da interface.

38

Alinhamento indica que se deve conectar visualmente os elementos da interface, assim cria-

se um fluxo visual, possibilitando que o usuário encontre a informação com maior facilidade, sem

provocar confusões de quais dados estão relacionado com outros.

Proximidade indica que se deve agrupar elementos da interface, aproximando os elementos

relacionados e separando os que não possuem relação, assim facilita-se o entendimento de grupos

de informações e consequentemente o usuário pode focar nas informações relevantes para ele em

um dado momento e também visualizar com maior clareza a informação disponível a ele.

3.4 Prototipação

É dito com freqüência que os usuários não sabem dizer o que eles querem, mas quando eles

vêem e interagem com alguma coisa, eles sabem dizer o que eles não querem. Com as informações

coletadas sobre o trabalho e práticas diárias e com as visões sobre o que o sistema deveria e não

deveria fazer, pode-se então experimentar idéias pela construção de protótipos e iterações através de

várias versões, onde quanto mais iterações, melhor será o produto final [15].

Um protótipo pode ser qualquer coisa, desde cenários feitos em papel até um pedaço

complexo do software e permitem aos usuários e stakeholders, interagirem com um produto

imaginário, para ganhar alguma experiência de uso e explorar usos imaginados.

Um protótipo é uma representação limitada de um design que permite aos usuários

interagirem com ele e explorarem suas aptidões e é útil para discutir idéias com stakeholders, pois é

um dispositivo de comunicação entre os membros da equipe e uma maneira eficaz de testar suas

idéias. A atividade de construir protótipos encoraja reflexão no design, como descrito por Schon

(1983) e é reconhecido por projetistas de várias áreas como um importante aspecto do processo de

design. Liddle (1996), recomenda que prototipação deveria sempre preceder qualquer escrita de

código.

Protótipos respondem questões e dão suporte aos projetistas na escolha entre alternativas,

além disso, servem para uma variedade de propostas, por exemplo, testar a viabilidade técnica de

uma idéia, “clarear” alguns requisitos que estão vagos, ou seja, necessitando de melhor

entendimento, também fazer testes e avaliações de usuário ou mesmo checar que certa direção do

design está compatível com o resto do desenvolvimento do sistema ou se atende as reais

necessidades dos usuários.

A intenção de um protótipo é produzir algo rapidamente para testar um aspecto do produto.

Contudo, o tipo de questões ou escolhas que qualquer protótipo permite ao projetista responder é

limitado e o protótipo deve ser projetado e construído com as questões-chave em mente.

39

3.4.1 Protótipo de baixa fidelidade

Um protótipo de baixa fidelidade é um que não se parece muito com o produto final, por

exemplo, através do uso de materiais que são muito diferentes da versão final pretendida, como

papel, ao invés de telas eletrônicas e metal. Os protótipos de baixa fidelidade são úteis porque são

simples, baratos e podem ser produzidos e modificados rapidamente e, portanto, suportam a

exploração de idéias e designs alternativos, o que é importante nos estágios iniciais de

desenvolvimento, durante o design conceitual, por exemplo, porque protótipos que são usados para

exploração de idéias devem ser flexíveis e encorajar a exploração e modificação.

Os protótipos de baixa fidelidade devem ser usados apenas para exploração e não com a

pretensão de mantê-lo e integrá-lo no produto final. Abaixo seguem alguns exemplos de protótipos

de baixa fidelidade:

• Storyboarding - Frequentemente usado em conjunto com cenários, que consiste de uma

série de “sketches” mostrando como um usuário pode progredir através de uma tarefa

usando o produto em desenvolvimento. Pode ser uma série de telas ou páginas (web)

para um sistema baseado em interfaces GUI ou uma série de “sketches” com cenas

mostrando como o usuário pode realizar uma tarefa usando um dispositivo interativo.

Quando usado em conjunto com um cenário, o “storyboard” fornece mais detalhes e

oferece aos stakeholders uma chance para interagirem com o protótipo, através da

seqüência de passos para realização de uma tarefa.

• Sketching - Muitas pessoas encontram dificuldade em realizar esta atividade por causa da

inibição com respeito à qualidade de seus desenhos, porém sketches são usados para

apenas para realizar uma comunicação com outros membros da equipe e mesmo

stakeholders das idéias no início do processo de design. Não é necessário ser um

desenhista profissional, apenas que a pessoa consiga exibir o conceito de suas idéias.

• Protótipos com cartões indexados – São pedaços pequenos de cartões de papel em média

de 3X5 cm. É uma maneira simples e eficiente de prototipar uma interação. Este é

comumente usado para o desenvolvimento de “websites”. Cada cartão apresenta uma tela

ou um elemento de uma tarefa.

• Mágico de Oz – Este método assume que se tenha um protótipo baseado em software,

pois o usuário senta diante de uma tela de computador e interage com o sistema. Porém,

o computador está conectado a outra máquina onde um humano opera e simula as

respostas do sistema ao usuário. O método tem esse nome em homenagem à clássica

história do Mágico de Oz, na qual o mágico do título é um pequeno homem tímido, que

opera uma grande imagem artificial dele mesmo atrás de uma tela onde ninguém pode

40

vê-lo. Este método tem sido usado com sucesso por muitos sistemas.

3.4.2 Protótipo de alta fidelidade

Protótipos de alta fidelidade são mais parecidos com o produto final, ou seja, usam materiais

que se espera ver na versão final. Por exemplo, um protótipo de um sistema de software

desenvolvido em Flash possui mais alta fidelidade do que um feito em papel, isto porque apresenta

características do design final.

Para produzir um protótipo de alta fidelidade de um sistema é necessária uma ferramenta de

software para isto. As ferramentas de prototipação mais comuns são Flash, Visual Basic e

Smalltalk.

Porém, no caso de protótipos de alta fidelidade deve-se tomar cuidado para não o utilizar

como uma versão do desenvolvimento final, o que é muito comum na indústria de software, pois tal

prática acaba por diminuir a eficácia da prototipação, quanto à exploração de idéias e possibilidade

de várias mudanças, pois se o desenvolvedor já considera o protótipo como uma parte do sistema,

ele certamente será mais relutante a aceitar modificações que forem propostas ao protótipo.

Em seu artigo, Marc Rettig (1994), argumenta que mais projetos deveriam usar protótipos de

baixa fidelidade por causa dos problemas inerentes com os protótipos de alta fidelidade. Ele

identifica cinco problemas principais:

– Protótipos de alta fidelidade levam mais tempo para construir;

– Revisores e testadores tendem a comentar aspectos superficiais mais do que conteúdo;

– Desenvolvedores são relutantes para mudar algo que eles levaram horas para fazer;

Um protótipo de software pode conduzir a expectativas muito altas;

– Somente um bug em um protótipo de alta fidelidade pode levar à interrupção do teste.

Protótipos de alta fidelidade são úteis para vender idéias às pessoas e para testar questões

técnicas. Contudo, o uso de protótipos de papel e outras idéias deveriam ser ativamente encorajados

para explorar questões de conteúdo e estrutura.

3.4.3 Protótipo de média fidelidade

Esta categoria não é considerada em alguns livros sobre o assunto, porém todos consideram

métodos de prototipação realizados em ferramentas como o PowerPoint, como sendo uma mistura

dos protótipos de alta e baixa fidelidade, pois estes equilibram o provisório dos rascunhos em papel

com a aparência elegante de protótipos de software. Portanto podemos considerar protótipos feitos

em ferramentas como PowerPoint como sendo de média fidelidade, pois embora não tenham

41

funcionalidades implementadas, é possível realizar a navegação entre diversas telas do sistema.

3.4.4 Do design para implementação

Quando o design for feito através de ciclos iterativos com tempo e avaliação suficientes para

se ter confiança que este resolve os requisitos, então tudo que foi aprendido com os passos iterativos

da prototipação e avaliação deve ser integrado para produzir o produto final.

Embora protótipos tenham experimentado avaliações de usuários extensivas, eles não

necessariamente têm se sujeitado a testes de qualidade rigorosos para outras características, tais

como robustez e operação livre de erro.

Construir um produto para ser usado por centenas ou milhões de pessoas, rodando em várias

plataformas e sob uma ampla variedade de contextos de uso, como é o caso de sistemas web, requer

uma bateria de testes diferentes da que é produzida para protótipos rápidos para responder questões

específicas.

Duas filosofias de desenvolvimento diferentes podem ser usadas. Uma abordagem chamada

“Prototipação evolucionária” envolve a evolução do protótipo dentro do produto final, enquanto que

a outra abordagem, chamada “Prototipação para jogar fora”, usa os protótipos como passos em

direção ao design final. Neste caso, os protótipos são jogados fora e o produto final é construído do

zero. Se uma abordagem de protótipo evolucionário é feita, os protótipos devem ser sujeitados a

testes rigorosos ao longo do processo, já para a outra abordagem, tais testes não são necessários. As

duas abordagens citadas se referem aos protótipos de alta fidelidade, já que claramente os protótipos

de baixa e média fidelidade não podem ser mantidos e integrados ao produto final.

Existe um dilema quanto a qual das duas abordagens é a mais apropriada, pois ambas

possuem vantagens e desvantagens.

3.5 Métodos Ágeis e DCU

A demanda por novos e complexos sistemas de softwares de qualidade, aumentava a cada

dia, porém não havia gente capacitada para criar esses sistemas. Os requisitos estavam sempre

mudando e as metodologias que existiam até o momento tornavam qualquer mudança uma tarefa de

custo muito elevado.

Em meados de 2001, um grupo de especialistas criou então o chamado Manifesto Ágil. Esse

manifesto seria a base filosófica para projetos de sistemas ágeis e continha 4 máximas:

• Indivíduos e interações são mais importantes que processos e ferramentas

• Software funcionando é mais importante que documentação completa

• Colaboração com cliente é mais importante que negociação de contratos

42

• Adaptar-se a mudanças é mais importante que seguir um plano inicial

Com base nessas máximas, percebe-se que o manifesto ágil está de acordo com os princípios

fundamentais de desenvolvimento centrado no usuário (DCU), foco nos indivíduos e interações e

colaboração com cliente ou usuário e stakeholders.

DCU Ágil é a prática do design centrado no usuário quando conduzido dentro de um

invólucro de uma metodologia de desenvolvimento de software ágil. Os métodos mais famosos são

Scrum e Programação Extrema.

Equipes de Scrum escolhem trabalhar para cada iteração dentro de uma lista priorizada de

características chamadas de backlog. Pesquisas do usuário influenciam a priorização, por fazerem

as necessidades dos usuários serem conhecidas pelos stakeholders de negócios e a equipe de

desenvolvimento.

Como a duração de uma iteração típica é menos do que 30 dias, praticantes de DCU podem

encontrar um design tradicional frente às dificuldades da abordagem e com a implicação de

compartilhar o controle do design. O estúdio de design pode ajudar a reduzir ambas as

preocupações e fazer a ponte no intervalo entre metodologias ágeis e DCU. [James M. Ungar,

Jeffrey A. White, 24]. O estúdio de design resolve-se bem com práticas de desenvolvimento de

software ágil e DCU, tornando-os mais fortes e eficazes.

Ambos DCU e Scrum compartilham o desejo de fomentar o entendimento para a equipe

inteira, evitar grandes mudanças de características repentinas, e construir somente o que é entendido

e de valor mais alto para os negócios e usuário final. Estes atributos compartilhados são facilitados

pelo estúdio de design, fazendo desta prática uma boa solução para as duas abordagens. Como o

nome implica, métodos ágeis são destinados a mudar dinamicamente necessidades de negócios. O

projetista centrado no usuário trabalha dentro de necessidades ágeis para adaptar rapidamente às

mudanças de valores de negócios percebidas.

DCU ágil é a arte e ciência mantendo a informação de pesquisa fluindo para a equipe de

uma forma consistente com a direção de design e a velocidade de desenvolvimento. O estúdio de

design como praticado por James M. Ungar e Jeffrey A. White [24], possui quatro componentes

principais:

– Pesquisa – O estúdio de design é guiado pela pesquisa de usuário;

– Design – Também dito pré-trabalho: Muitos projetos e idéias, geradas rapidamente;

– Estúdio – Um workshop o dia todo para avaliar alternativas, tomar decisões e consolidar

um design.

– Participantes – Uma equipe de projetistas que estão dispostos a aprender e crescer dentro

43

do processo de design.

Alguns trabalhos de DCU precedem os estúdios de design verdadeiros, geralmente na forma

de entrevistas de usuários e/ou observações tão bem quanto obtenção de requisitos de negócios. O

resultado destas investigações iniciais é preliminarmente arquitetura de informação, tão bem quanto

um ou mais objetivos de projetos. As informações das atividades iniciais são compartilhadas com a

equipe.

DCU ágil demanda conduzir pesquisas rapidamente e significados mais eficientes de

resultados de comunicação. No estúdio cada esboço de design é apresentado pelo autor para a

equipe. A equipe então tem um tempo para críticas. No fim do estúdio um conceito de design é

definido e desenvolvido. O conceito escolhido será uma manifestação das partes boas de muitos

conceitos apresentados através do processo de estúdio.

Depois do estúdio, a equipe de experiência do usuário produz simulações e cenários da

sessão colaborativa. Contudo, porque o estúdio de design tem fomentado um entendimento

compartilhado de quais necessidades a serem construídas, o trabalho de desenvolvimento pode

prosseguir imediatamente.

A natureza limitada de tempo do estúdio de design torna o DCU ágil uma boa solução para

Scrum, porque recursos da equipe podem ser eficazmente alocados para atividades de design de

interface de usuário e trabalhos localizados.

Idealmente, a direção de design é estabilizada além do escopo da iteração atual e a

exploração do design além da iteração atual, é desejável porque permite aos praticantes de DCU

conduzir mais tempo para seu campo de trabalho, por exemplo, com entrevistas, observações ou

testes de usabilidade, enquanto isto fornece à equipe de desenvolvimento um contexto que pode

faltar na visão narrativa de uma iteração.

O estúdio de design atua como um objeto de associação entre o domínio do DCU e

desenvolvimento de software ágil juntos, de forma a beneficiar os praticantes de ambos. Os

estudiosos que desenvolveram tal pesquisa, James M. Ungar e Jeffrey A. White [24], observaram os

benefícios durante o trabalho diário e sobre a qualidade de seus projetos, que foram melhoradas

com o entendimento do DCU e melhores práticas de design disseminadas através da organização,

com isso eles encorajam outras pessoas a tentarem praticar DCU em ambiente ágil ao utilizar uma

abordagem de estúdio de design. Com isso, eles concluem que as adaptações para os praticantes de

DCU são necessárias e para o caso deles foram desejáveis e benéficas.

Também estudos para exploração dos processos de usabilidade ágeis, descrevem a

integração entre instrumentos de IHC e Extreme Programming (XP) Process, Processo de

Programação Extrema. Os instrumentos de IHC são estudos de usuários, personas extremas

44

(variação da abordagem de personas), avaliação de usabilidade por especialistas, testes de

usabilidade e avaliações de usabilidade automática. Pela combinação de XP e DCU pode-se

encontrar vantagens para ambas as abordagens.

Praticantes já combinam DCU e XP por abordagens variantes. McInerney e Maurer [28]

mostraram que o casamento destas duas abordagens é possível.

Segundo Peter Wolkerstorfer et al. [25] a idéia para o processo de usabilidade ágil é integrar

os cinco instrumentos de IHC dentro dos processos clássicos de XP.

Cada instrumento é trabalhado na prática através de especialistas de IHC, baseados no

processo de XP e intervindo de três maneiras:

– Criação de histórias de usuários

– Contribuição pela escrita de testes

– Expansão de métodos XP

Peter Wolkerstorfer et al. Estão usando o processo de usabilidade ágil desde 2007 e o

projeto finalizará em 2010, portanto os testes finais de usabilidade mostrarão se o processo tem sido

apto para assegurar usabilidade das aplicações. Eles relatam que até o momento não tiveram

qualquer experiência com problemas culturais e os especialistas de IHC do projeto estão bem

integrados com a equipe de desenvolvimento. Também o casamento entre experiências diferentes

tem levado a uma alta motivação entre os membros do projeto. Desenvolvedores ganharam

perspicácia em sutilezas do DCU, especialistas em IHC aprenderam a entender as origens de alguns

dos problemas de usabilidade.

45

4 Avaliação de UsabilidadeAvaliação de usabilidade consiste de metodologias para medir os aspectos de usabilidade de

um sistema de interface com usuário e identificar problemas específicos. [Dix et al. 1998; Nielsen

1993]. Avaliação de usabilidade é uma parte importante de todo o processo de design de interface, a

qual consiste de ciclos iterativos de projeto, prototipação e avaliação [Dix et al. 1998; Nielsen

1993].

A avaliação de usabilidade é por si só um processo que implica muitas atividades

dependendo do método empregado. As atividades comuns, independentemente do método, incluem:

• Captura – Coleta de dados de usabilidade, tais como tempo de completude de tarefas,

erros, violações de orientações e índices de subjetividade.

• Análise – Interpretação dos dados de usabilidade para identificar problemas de

usabilidade nas interfaces.

• Análise crítica – Sugestão de soluções ou melhorias para reduzir problemas.

Várias técnicas de avaliação de usabilidade foram propostas e cada uma delas, possui seus

próprios requisitos e geralmente técnicas diferentes descobrem problemas de usabilidade diferentes.

Descobertas de usabilidade podem variar amplamente quando diferentes avaliadores estudam a

mesma interface de usuário, mesmo se eles usarem a mesma técnica de avaliação. [Jeffries et al.

1991; Molich et al. 1998, 1999; Nielsen 1993].

Outro ponto a se considerar é o de que as técnicas de avaliação de usabilidade tipicamente

apenas cobrem um subconjunto de ações possíveis que os usuários podem fazer. Por esta razão,

especialistas em usabilidade frequentemente recomendam usar várias técnicas de avaliação

diferentes [Dix et al. 1998; Nielsen 1993].

A única forma de determinar o que é fácil e intuitivo para os usuários é observá-los na

prática enquanto realizam tarefas com o produto. Isso é feito através dos testes de usabilidade, que

expõem as deficiências da interface, ajudam a esclarecer idéias e a tomar decisões sobre o design.

O motivo pelo qual é necessária a avaliação dos produtos é porque esta identifica

oportunidades para inovação, avalia soluções para problemas que os usuários têm com os sistemas

atuais, possibilita descobrir se a produtividade e usabilidade melhoram, ajudam a determinar se o

sistema atinge os níveis de segurança determinados por lei e para comparar o sistema com os

concorrentes.

As avaliações de interface baseiam-se em objetivos de usabilidade como eficácia, eficiência,

segurança, utilidade, facilidade de aprender e lembrar. As tecnologias são avaliadas aplicando-se

esses objetivos, com relação a quanto ela satisfaz esses objetivos. Para isto, requerem cenários

específicos de uso para serem eficazes.

46

Também as avaliações norteiam-se pelos objetivos de experiência do usuário, com relação a

qual a sensação do usuário ao interagir com o sistema. A figura abaixo apresenta como os objetivos

de usabilidade se relacionam com os objetivos de experiência do usuário.

Figura 4.1 – Relacionamento dos objetivos de usabilidade e experiência do usuário

Os componentes úteis e usáveis são relacionados aos objetivos de usabilidade, já os

desejáveis dizem respeito aos objetivos de experiência do usuário. Essa classificação ajuda a

recordar todos os objetivos que devem ser alcançados.

Projeto e avaliação iterativa é um processo contínuo que examina idéias para o modelo

conceitual, protótipos para um novo sistema e protótipos mais maduros e completos com o tempo.

Bruce Tognazzini, diretor da empresa Nielsen Norman Group, especializada na interação

humano-computador, explica porque é importante realizar a avaliação de sistemas: ”O design para

interação, através de seu ciclo de design e teste iterativo, é a única metodologia conhecida já

validada, capaz de produzir bons resultados de forma consistente. Se você não tiver testes com

usuários como uma parte integral de seu processo de design, você vai desperdiçar muito dinheiro”.

Isto porque, ao realizar as avaliações os problemas são resolvidos antes de o produto ser

lançado, e não depois. Também a equipe pode se concentrar nos problemas verdadeiros, e não

imaginários, os engenheiros podem codificar ao invés de debater, o tempo para lançamento é

reduzido e é possível fornecer um design robusto já no lançamento [Bruce Tognazzini].

Portanto as avaliações devem ser feitas ao longo de todo o processo de design, desde as

47

primeiras descrições, sketches, etc., ou seja, desde as necessidades dos usuários até o produto final.

O processo de design continua através de ciclos iterativos de 'design - teste – redesign'. Sempre

tendo em mente que a avaliação é o principal ingrediente para um design de sucesso.

É importante ressaltar que avaliação e design são tarefas integradas no design centrado no

usuário e algumas das mesmas técnicas são usadas na avaliação e levantamento de requisitos e

necessidades dos usuários, mas utilizados de forma diferente, como por exemplo, as entrevistas,

observação e questionários.

Também se costuma usar triangulação nos processos de avaliação, que consistem em usar

uma combinação de técnicas para obter perspectivas diferentes. Qualquer tipo de avaliação é

dirigido implícita ou explicitamente por um conjunto de crenças, que são em geral definidas pela

teoria. Essas crenças e os métodos associados a elas são conhecidos como Paradigma de Avaliação.

Abaixo será feita uma análise mais detalhada sobre quatro paradigmas de avaliação:

Avaliação ligeira (Quick and dirty), Teste de usabilidade, Estudo de campo e Avaliação preditiva.

Avaliação ligeira descreve a forma comum através da qual os projetistas obtêm feedback

informal dos usuários para confirmar que suas idéias estão de acordo com as necessidades dos

usuários. Estas podem ser feitas a qualquer momento e seu objetivo seria um teste rápido para o

processo de design, em contraste com estudos com conclusões bem documentadas. Suas

desvantagens são de que não necessariamente são precisas e não possuem documentação cuidadosa

sobre descobertas.

Testes de usabilidade realizam a gravação da atividade de usuários típicos realizando tarefas

típicas, que são realizadas em ambientes controlados, como laboratórios. A gravação pode ser em

vídeo, ou log de seqüência de teclas digitada pelos usuários, registro do tempo para completar

tarefas, etc. As vantagens desta técnica são que ela é livre de interrupções, pode-se avaliar o

desempenho do usuário na realização de tarefas, identificar erros e ajudar a explicar porque os

usuários realizaram determinadas tarefas de modo errado, por julgarem estarem certos. Também tal

técnica vem acompanha por questionários sobre satisfação e entrevistas, o que ajuda a montar um

cenário mais detalhado. Porém, suas desvantagens recaem ao fato de não possuírem contexto, pois

usuários estão sendo avaliados em ambientes controlados e, portanto é difícil determinar usuário e

tarefas típicos. Também se necessita de tempo para preparar os testes, recrutar participantes, e

realizar os testes e é necessário recursos e equipamentos para realizar os testes em ambientes

controlados.

Os estudos de campo são observações e entrevistas nos ambientes naturais nos quais os

usuários, realmente utilizarão o sistema. As vantagens da utilização deste método são de ajudar a

entender o que os usuários fazem naturalmente e qual o impacto da tecnologia em seu contexto.

48

Para os projetistas, é possível identificar oportunidades, determinar requisitos, decidir a melhor

forma de introduzir a tecnologia, visto que se pode analisar como é o ambiente de uso e é possível

realizar a avaliação em uso real do sistema, ou seja, com todas as interrupções, ruídos, e fatores do

ambiente que podem distrair o usuário da tarefa que deve realizar no sistema. As desvantagens são

de ter permissão de acesso aos locais de uso dos usuários e não existe controle com relação a ruídos

e distrações.

A avaliação preditiva é feita baseada em especialistas para aplicar o conhecimento de

usuários típicos. Usa-se personas (usuários típicos de um sistema) e cenários para entender os

objetivos de usabilidade e se aplica modelos teóricos como GOMS (Goals, operators, methods,

selection rules). Suas vantagens são de ajudar a prever problemas de usabilidade e como usuários

irão realizar certas tarefas e sua desvantagem se dá pelo fato de não haver envolvimento direto com

usuários, ou um contexto real de uso do sistema.

A seleção da técnica depende dos objetivos de um determinado estágio do processo de

design. Por exemplo, crítica de um sistema existente (ex: website), pode ser bem realizada através

de avaliações heurísticas, porém a escolha entre designs alternativos, pode ser melhor interpretada

através de experimentos controlados em laboratório ou ainda se estiver nos primeiros estágios de

design em busca de informações, uma boa escolha seria realizar avaliações através de cenários e

estudo de campo.

Também, todas as técnicas que contam com a participação de usuários, recebem um

feedback direto das pessoas que realmente utilizarão o sistema e, portanto são muito úteis para o

processo de design com foco na usabilidade.

Existe um arcabouço chamado DECIDE que ajuda a determinar os objetivos da avaliação e

desta maneira possibilita a exploração de questões específicas que precisam ser respondidas, a

escolha do paradigma e técnica certos para responder a tais questões, a identificação de

considerações práticas, a decisão de como lidar com as considerações éticas e a avaliar, interpretar e

apresentar os dados.

Existem três tipos de métodos de avaliação de usabilidade: Teste, Inspeção e Investigação.

Teste:

A abordagem de teste de usabilidade representa usuários trabalhando em tarefas típicas,

usando o sistema (ou o protótipo) e os avaliadores usam os resultados para ver como as interfaces

de usuários suportam os usuários para fazer suas tarefas. Métodos de teste incluem os seguintes:

– Coaching Method - Método de Treinamento: Esta técnica pode ser utilizada para teste de

usabilidade, onde os participantes são alocados para perguntar sobre questões

49

relacionadas ao sistema a um treinador especialista que responderá com o melhor de sua

habilidade. Geralmente o testador serve como um treinador. Uma variante do método

envolve um usuário especialista separado, servindo como o treinador enquanto o

testador observa tanto a interação entre os participantes quanto o computador, e a

interação entre o participante e o treinador. O objetivo desta técnica é descobrir as

necessidades de informação do usuário a fim de fornecer melhor treinamento e

documentação, tanto quanto possivelmente fazer o redesign da interface para evitar a

necessidade por questões. Quando um usuário especialista é usado como treinador, o

modelo mental dos usuários especialistas do sistema pode também ser analisado pelo

testador. Esta técnica pode ser usada nos seguintes estágios de desenvolvimento: design,

código, teste e implantação.

– Co-discovery learning - Aprendizado de co-descoberta: Durante o teste de usabilidade,

dois usuários tentam realizar tarefas juntos enquanto estão sendo observados. Eles

ajudam um ao outro da mesma maneira como eles fariam se eles tivessem que cumprir

uma meta comum usando o produto. Eles são encorajados a explicar o que eles estão

pensando enquanto trabalham nas tarefas. Em comparação com o método Protocolo de

Pensamento em voz alta, a técnica de aprendizado de co-descoberta, faz isto de forma

mais natural para os usuários verbalizarem seus pensamentos durante o teste. A técnica

pode ser usada nos seguintes estágios de desenvolvimento: design, código, teste e

implantação.

– Performance Measurement - Medida de desempenho: Esta técnica é usada para obter

dados quantitativos sobre o desempenho dos participantes do teste, quando eles realizam

as tarefas durante o teste de usabilidade. Geralmente proíbe uma interação entre o

participante e o testador durante o teste porque afeta os dados de desempenho

quantitativo. Deve ser conduzido em laboratórios de usabilidade formais de forma que

os dados possam ser coletados precisamente e assim minimizam-se possíveis

interferências inesperadas. Dados quantitativos são mais úteis fazendo-se testes

comparativos. Para obter resultados confiáveis, são necessários pelo menos 5

participantes, porém 8 ou mais são desejáveis. Pode ser usado em combinação com teste

retrospectivo, entrevista pós teste ou questionários, obtendo assim dados quantitativos e

qualitativos. Esta técnica pode ser usada nos seguintes estágios de desenvolvimento:

código, teste e implantação.

– Question-asking Protocol - Protocolo de questionamento: Durante o teste de

50

usabilidade, apesar de deixar os usuários verbalizarem seus pensamentos como no

Protocolo de pensamento em voz alta, os testadores provocam os usuários para fazerem

questões diretas sobre o produto, a fim de entender seu modelo mental do sistema e das

tarefas e onde eles teriam problemas no entendimento e uso do sistema. É um caminho

mais natural do que o Protocolo de pensamento, por deixar o usuário verbalizar seus

pensamentos. Esta técnica pode ser usada nos seguintes estágios de desenvolvimento:

design, código, teste e implantação.

– Remote Testing - Teste remoto: Testes de usabilidade remotos são usados quando os

testadores estão separados em espaço e/ou tempo dos participantes. Isto significa que o

testador não pode observar o processo de teste diretamente e os participantes não estão

usualmente em um laboratório de usabilidade formal. Existem tipos diferentes de teste

remoto. Alguns são no mesmo tempo, mas em locais diferentes, onde o testador pode

observar a tela do usuário através de uma rede de computador, e pode ser apto para ouvir

o que o usuário diz durante o teste através de telefones. Outros tipos são em tempo e

lugar diferente, tais como “journaled sessions”, onde a sessão de testes dos usuários é

guiada e logada através de um pedaço especial de software tão bem quanto código

adicional ao sistema sendo testado. Esta técnica pode ser usada nos seguintes estágios de

desenvolvimento: design, código, teste e implantação.

– Retrospective Testing - Testes de Retrospectiva: Se um vídeo for feito em uma sessão de

teste de usabilidade, o testador pode coletar mais informações pela revisão do vídeo

junto com os participantes do teste e questionando-os a respeito de seus comportamentos

durante o teste. Esta técnica deveria ser usada com outras técnicas, especialmente

aquelas onde a interação entre os testadores e os participantes é restrita. Esta técnica

pode ser usada nos seguintes estágios de desenvolvimento: design, código, teste e

implantação.

– Shadowing Method - Método de Sombreamento: Durante o teste de usabilidade, o

testador tem um usuário especialista no domínio da tarefa próximo a ele e explica o

comportamento do usuário em teste para o testador. Esta técnica é usada quando não é

apropriado para o usuário em teste pensar em voz alta ou conversar com o testador

enquanto trabalha nas tarefas. Esta técnica pode ser usada nos seguintes estágios de

desenvolvimento: design, código, teste e implantação.

– Teaching Method - Método de Ensino: Durante o teste de usabilidade, os usuários em

teste interagem com o sistema primeiro, depois de adquirirem uma familiaridade com

51

ele, e já possuem alguma experiência na completude de tarefas usando o sistema. Então

introduzem um usuário que desconhece o sistema para cada usuário que esteja em teste.

Os usuários novatos são instruídos pelo testador a limitar sua participação ativa e não se

tornar um solucionador de problemas ativo. Cada usuário em teste é solicitado para

explicar aos usuários novatos como o sistema funciona e demonstrar a ele um grupo de

tarefas pré-determinadas. Esta técnica pode ser usada nos seguintes estágios de

desenvolvimento: design, código, teste e implantação.

– Thinking Aloud Protocol - Protocolo de pensamento em voz alta: Durante o andamento

de um teste de usabilidade, os usuários em teste são requeridos para verbalizar seus

pensamentos, sentimentos, e opiniões enquanto interagem com o sistema. É muito útil

na captura de várias atividades cognitivas. Duas variações do protocolo de pensamento

em voz alta são: Resposta crítica: requer ao usuário verbalizar somente durante a

execução de certas sub-tarefas pré-determinadas e Relatório Periódico, que é usado

quando a tarefa é complexa e torna-se difícil para o usuário pensar em voz alta enquanto

realiza a tarefa ao mesmo tempo. O usuário, portanto, verbaliza em intervalos pré-

determinados de tempo e descrevem o que eles estão naquele momento tentando fazer.

O tamanho do intervalo depende da complexidade da tarefa. Esta técnica consome muito

tempo, então é recomendada para subdivisões de tarefas e pode ser usada nos seguintes

estágios de desenvolvimento: design, código, teste e implantação.

Inspeção:

Na abordagem de inspeção de usabilidade, especialistas de usabilidade, desenvolvedores,

usuários e outros profissionais examinam aspectos relacionados à usabilidade de uma interface de

usuário. Os métodos mais comuns são:

– Cognitive Walkthroughs - Caminhada Cognitiva: Envolve um avaliador ou grupo de

avaliadores inspecionando uma interface de usuário através de um grupo de tarefas e

avalia sua habilidade de entendimento e facilidade de aprendizado. A interface de

usuário é geralmente apresentada na forma de um rascunho em papel ou um protótipo

de trabalho, mas isto pode também ser uma interface completamente desenvolvida. As

entradas da caminhada cognitiva também incluem o perfil do usuário, especialmente o

conhecimento do usuário do domínio da tarefa e da interface e tarefas. Os avaliadores

podem incluir engenheiros em fatores humanos, desenvolvedores de software, pessoas

de marketing, documentação, etc. As premissas básicas dessa técnica é imaginar-se no

52

lugar do usuário ao utilizar o sistema. Assemelha-se a depuração de código e geralmente

são usados protótipos de baixa fidelidade (sketches). Esta técnica é melhor usada no

estágio de design do desenvolvimento. Mas pode ser aplicada durante o código, teste e

implantação.

– Feature Inspection - Inspeção de características: Esta técnica foca em um grupo de

características de um produto. Cada característica é analisada por sua disponibilidade,

facilidade de entendimento e outros aspectos de usabilidade. Esta técnica pode ser usada

nos seguintes estágios de desenvolvimento: design, código, teste e implantação.

– Heuristic Evaluation - Avaliação Heurística: A idéia principal da avaliação heurística é

a de vários avaliadores avaliarem o sistema independentemente para encontrar

potenciais problemas de usabilidade. Avaliação heurística é mais bem aproveitada

durante a fase de design, porque nesta é mais fácil resolver grandes problemas de

usabilidade que surgirem. Para se realizar a avaliação apenas se requer alguma ordem de

artefatos que descrevam o sistema e que tenham um grupo de cenários que forneçam

uma visão geral dele. A avaliação heurística é uma das técnicas de avaliação mais

conhecidas. Seu método de avaliação é dado através do uso de um pequeno grupo de

avaliadores (3-5), onde cada um avalia o sistema independentemente seguindo as regras

heurísticas. A experiência de Nielsen indica que 5 avaliadores resultam em 75% de

todos os problemas de usabilidade sendo descobertos. Pela avaliação ser feita

separadamente, então os avaliadores encontrarão problemas distintos e suas opiniões são

reunidas depois. Pode-se usar sketches. O motivo pelo qual são necessários vários

avaliadores se deve ao fato de que um único avaliador não é capaz de encontrar todas as

falhas. Estudos indicam que um avaliador pode encontrar 35% dos problemas, como

avaliadores encontram problemas diferentes, ao participarem 5 avaliadores é possível

encontrar 75% dos problemas de usabilidade. Então, surge a dúvida de por que não

incluir mais avaliadores? Porque aumentaria o custo e mais avaliadores não encontram

muitos problemas novos. A avaliação é feita através de testes da interface várias vezes,

a fim de inspecionar os vários elementos da interface, comparar com uma lista de

heurísticas e considerar outros princípios e resultados de ações que o avaliador não

percebeu da primeira vez. As heurísticas seguidas nas avaliações heurísticas são as

descritas na seção 2.1.1. As fases da avaliação heurística são treinamentos antes da

avaliação, a fim de fornecer aos avaliadores conhecimento sobre o domínio do sistema e

cenários. Seguido da avaliação, onde cada avaliador realiza sua avaliação e os

53

resultados são agrupados. Após a avaliação é realizada a análise de severidade, que

determina quão severo é cada problema, de acordo com prioridades. Esta fase pode ser

feita individualmente e depois em grupo e por fim a discussão em grupo com os

projetistas, para análise e conclusões finais da avaliação. A fase de avaliação deve ser

feita ao menos duas vezes para cada avaliador, a fim de poder "sentir" o sistema na

primeira interação e depois para focar em elementos específicos, da segunda interação

em diante. O avaliador pode usar cenários, se julgar necessário e cada avaliador deve

fazer uma lista dos problemas encontrados, descrevendo por que é um problema,

segundo uma heurística ou outra informação e também ser específico, descrevendo cada

problema separadamente, onde cada problema deve ser descrito separadamente, por

exemplo, se houver 3 problemas com um comando, descrever todos eles, assim se evita

repetir problemas, na reimplementação e também pode não ser possível consertar todos

os problemas encontrados. Os problemas graves e alguns problemas simples são mais

fáceis de encontrar usando AH (Avaliação Heurística). A fase de análise de severidades

serve para alocar recursos para uma nova solução e estimar a necessidade de maiores

esforços na busca de usabilidade. A severidade é uma combinação de freqüência, como

comum ou raro, impacto, como é fácil ou difícil de ser ignorado pelo usuário e

persistência, como uma vez, ou continuamente ocorre o problema. A severidade deve

ser calculada ao juntar as avaliações e deve ser feita independentemente por cada

avaliador. Os níveis de severidade são:

0. Não concordo que seja um problema

1. Problema cosmético

2. Problema pequeno de usabilidade

3. Problema grande, importante consertar.

4. Problema catastrófico, imperativo o conserto

Por fim, a fase de discussões é conduzida entre avaliadores e projetistas e se discute as

características gerais da interface, sugerem-se melhoramentos potenciais para

solucionar os problemas principais, e por ser com a participação de projetistas, estes

podem avaliar o esforço para consertar os problemas e realiza-se um brainstorming de

sugestões, soluções, alternativas, etc. Esta técnica pode ser usada nos seguintes

estágios de desenvolvimento: design, código, teste e implantação. A avaliação

heurística é um exemplo de método de desconto, que são baratos, pois não são

necessários equipamentos ou laboratórios especiais e quanto mais cuidadoso você é,

melhor fica a avaliação. São também métodos rápidos, pois levam menos de 1 dia,

54

enquanto outros métodos podem levar semanas, são fáceis de usar e podem ser

aprendidos em algumas horas.

– Pluralistic Walkthrough - Caminhada Pluralística: No estágio de design, quando

protótipos em papel estão disponíveis, um grupo de usuários, desenvolvedores e

engenheiros em fatores humanos se reúnem para fazer os passos através de um grupo de

tarefas, discutindo e avaliando a usabilidade do sistema. Caminhadas em grupo têm a

vantagem de fornecer uma ampla variedade de habilidades e perspectivas em problemas

de usabilidade. Como qualquer inspeção, a maioria das pessoas procura por problemas e

como estão em um número maior de pessoas, aumenta-se a probabilidade de encontrá-

los. Também a interação entre a equipe durante a caminhada ajuda a resolver questões

de usabilidade mais rapidamente. Esta técnica pode ser usada no estágio de design.

– Perspective-based Inspection - Inspeção baseada em Perspectivas: Inspeção de

usabilidade de uma perspectiva particular em um tempo. Serve para entender a

viabilidade, eficácia e escopo da usabilidade baseada na perspectiva. Esta técnica pode

ser usada nos estágios de desenvolvimento: design, código, teste e implantação.

Investigação:

Avaliadores obtêm informação sobre gostos dos usuários, necessidades, e entendimento do

sistema através de conversa com eles, observação dos usuários usando o sistema em trabalho real ou

conduzindo-os a responder questões verbalmente ou na forma escrita. Estes métodos incluem:

– Field Observation - Observação em campo: Engenheiros em fatores humanos vão aos

locais de trabalho dos usuários representativos e os observam trabalhando para entender

como os usuários usam o sistema para completar suas tarefas e que tipo de modelo

mental os usuários têm do sistema. Este método pode ser usado nos estágios de teste e

implantação do desenvolvimento do produto.

– Focus Groups - Grupos de Foco: Esta é uma técnica de coleta de dados, onde de 6 a 9

participantes pensam juntos em questões relacionadas ao sistema. Um dos participantes

pode fazer o papel de moderador, que precisa preparar a lista de questões a serem

discutidas e reunir as informações necessárias para a discussão. Este método pode

capturar idéias e reações espontâneas dos usuários que estão envolvidos no processo de

grupo dinâmico. Este método pode ser usado nos estágios de teste e implantação do

desenvolvimento do produto.

– Interviews - Entrevistas: Nesta técnica, formulam-se questões sobre o produto baseado

55

nos tipos de questões de interesse. Depois entrevista-se usuários representativos a fim de

obter a informação desejada. É bom em obter informações detalhadas tão bem quanto

informações que podem somente serem obtidas de processos interativos entre o

entrevistador e o usuário. Esta técnica pode ser usada nos seguintes estágios de

desenvolvimento: design, código, teste e implantação. Ver seção 3.1.3.

– Logging Actual Use - Log de uso real: Requerem um computador automaticamente

coletando estatísticas sobre o uso detalhado do sistema. É útil porque mostra como os

usuários realizam seu trabalho e também porque é fácil de coletar dados de um grande

número de usuários trabalhando sob circunstâncias diferentes, por ser automático.

Dados típicos de um log serão estatísticas sobre a freqüência que cada usuário usa

determinada característica e freqüência com que vários eventos de interesse ocorrem,

como mensagens de erro, entre outros. Este método pode ser usado nos estágios de teste

e implantação do desenvolvimento do produto.

– Proactive Field Study - Estudo de Campo Pró-Ativo: Antes de projetar um sistema, a

fim de entender os usuários, suas tarefas e seu ambiente de trabalho, avaliadores vão ao

local de trabalho dos usuários representativos e conversam com eles, os observam

trabalhando, os questionam, para entender as características do usuário, o fluxo de

trabalho, as características dos sistemas que eles precisam, etc. Esta técnica deve ser

usada durante os estágios de requisitos e design inicial do desenvolvimento do software.

É o primeiro passo para o trabalho de usabilidade para um projeto.

– Questionnaires - Questionários: Questões são formuladas sobre o produto baseado nos

tipos de questões de interesse, podendo estas serem abertas ou fechadas. Esta técnica

pode ser usada nos seguintes estágios de desenvolvimento: design, código, teste e

implantação, mudando-se apenas o foco, pois nos estágios iniciais tem como objetivo

coleta de dados e nos estágios finais pode ser, por exemplo, avaliação da satisfação do

usuário. Ver seção 3.1.3.

Modelagem analítica:

A modelagem analítica complementa técnicas de avaliação tradicionais como teste de

usabilidade. Através de algum modelo de interface de usuário e/ou de usuário, este método habilita

o avaliador a prognosticar usabilidade. Uma ampla variedade de técnicas de modelagem tem sido

desenvolvida e suportam diferentes tipos de análises. Haan et al. [1992] classificam abordagens de

modelagem dentro das seguintes quatro categorias:

56

– Modelos para análise do ambiente da tarefa: Habilita o avaliador a avaliar o mapeamento

entre os objetivos do usuário e as tarefas de interface de usuário.

• ETIT – External Internal Task Mapping – Mapeamento de Tarefas Internas e

Externas – é um exemplo para avaliação de funcionalidade, aprendizagem, e

consistência de interfaces de usuário.

– Modelos para análise do conhecimento do usuário: Habilita o avaliador a usar a

gramática formal para representar e avaliar conhecimento adquirido pelo uso da

interface.

– Modelos de desempenho do usuário: Habilita o avaliador a prognosticar o

comportamento do usuário, principalmente tempo de completude de tarefas.

Tipicamente suportam análise quantitativa. Seguem três métodos de desempenho do

usuário:

• GOMS Analysis (Goals, Operators, Methods, and Selection Rules) – Análise GOMS

(Objetivos, Operadores, Métodos e Regras de Seleção) – Um dos métodos de

modelagem analítica mais aceitos. A família GOMS de métodos analíticos usa uma

estrutura de tarefa consistindo de objetivos, operadores, métodos, e regras de

seleção. Usando esta estrutura com parâmetros de tempo validados para cada

operador, o método habilita prognósticos de execução de tarefas e tempos de

aprendizado, tipicamente para desempenho de especialistas livres de erro. GOMS

requer ao avaliador a construção de um modelo para cada tarefa a ser analisada.

• CTA (Cognitive Task Analysis) – Análise de Tarefas Cognitivas – Usa uma

abordagem de modelagem diferente do GOMS, pois CTA requer ao avaliador

informar uma descrição da interface, para um modelo teórico, para realizar análise.

O modelo teórico, um sistema especialista baseado na interação de subsistemas

cognitivos, gera prognósticos sobre desempenho e problemas de usabilidade

similarmente a caminhada cognitiva.

• PUM (Programmable Users Models) – Modelos de Usuários Programáveis – É uma

técnica de modelagem analítica completamente diferente, pois nesta o projetista é

requerido para escrever um programa que atua como um usuário usando a interface,

e o projetista deve explicitar seqüências de operações para cada tarefa. Seqüências de

tarefas são então analisadas por uma arquitetura que impõe aproximações de

variáveis psicológicas, tais como limitações de memória. Violações de variáveis

podem ser vistas como problemas de usabilidade. O projetista pode alterar o design

57

da interface pela resolução de violações e melhorar a interface de usuário

implementada.

– Modelos de interface de usuário: Habilita o avaliador a representar o design da interface

de usuário em múltiplos níveis de abstração e avalia a representação.

Simulação:

Simulação complementa os métodos de avaliação de usabilidade tradicionais assim como

modelagens analíticas. Usa modelos de usuário e/ou de design da interface e estas abordagens

simulam a interação do usuário com a interface e relatam os resultados desta interação na forma de

medidas de desempenho e operações de interface, por exemplo. Avaliadores podem rodar

simulações com diferentes parâmetros a fim de estudar vários trade-offs de design de interface de

usuário e assim decidir sobre informações a serem implementadas da interface de usuário.

4.1 Avaliação de usabilidade considerada prejudicial (em alguns casos)

As atuais práticas em IHC encorajadas por institutos educacionais, processos revisados

acadêmicos e instituições com grupos de usabilidade advogam que avaliação de usabilidade é uma

parte crítica de todo processo de design. Isto acontece por uma boa razão: Avaliação de usabilidade

tem um papel significante a representar quando condições a garantem. Contudo, a avaliação pode

ser ineficaz e mesmo prejudicial se ingenuamente feita “por regras” mais do que pelo pensamento.

Se feita durante estágios de projeto iniciais, ela pode impedir idéias criativas que não estejam

conformes às normas de interfaces atuais. Se feito para testar inovações radicais, os muitos tópicos

de interfaces que surgiriam de uma tecnologia imatura podem suprimir o que poderia ter sido uma

visão inspiradora. Se feito para validar um protótipo acadêmico, ela pode sugerir incorretamente um

valor científico do design, mais do que oferecer uma crítica significante de como este poderia ser

adotado e usado na prática diária. A escolha da metodologia de avaliação, se houver, deve surgir de

e ser apropriada para o problema real ou questão de pesquisa sob consideração.

A avaliação de usabilidade ajuda a avaliar os projetos e testá-los para garantir que eles

realmente comportam-se como esperamos e reúnem os requisitos do usuário. Isto é tipicamente

feito pelo uso de um método de avaliação para mensurar ou prever quão efetivo, eficiente e/ou

satisfatório às pessoas, quando estas usam a interface para realizar uma ou mais tarefas. A prática

comum é a avaliação de usabilidade através de observações de usuários baseadas em laboratório,

estudos de usuário controlados, e/ou técnicas de inspeção.

A proposta por trás da avaliação de usabilidade pode variar consideravelmente em contextos

diferentes. Praticantes da avaliação, tipicamente avaliam produtos sob desenvolvimento por bugs de

58

usabilidade, onde se espera que os desenvolvedores corrijam os problemas significantes

encontrados (desenvolvimento iterativo). Avaliações de usabilidade também podem fazer parte de

testes de aceitação, onde a performance humana enquanto usa o sistema é mensurada

quantitativamente pra ver se o sistema falha dentro de critérios aceitáveis. Outra aplicação é quando

uma equipe está considerando a compra de um de dois produtos concorrentes, onde a avaliação

pode determinar qual é o melhor para o seu objetivo.

Dentro da pesquisa de IHC e do meio acadêmico, pesquisadores empregam avaliações de

usabilidade para validar idéias de design. Os artigos submetidos em design de sistemas devem

incluir uma avaliação de usabilidade para terem chances de serem aceitos, porém esta avaliação é

tipicamente confirmatória, se em pelo menos um caso a técnica é melhor do que a antiga ou se

assegura usabilidade apesar de tentativas de refutá-la. Ou seja, são confirmações fracas, o que não

garantem realmente usabilidade.

Na indústria, existe a formação de um grupo especialista em avaliação de usabilidade, que

avaliam diferentes abordagens de design, conduzindo para um ponderamento de prós e contras de

cada design.

O problema existente nessa ampla aplicação da avaliação de usabilidade é que

frequentemente ela é aplicada cegamente para situações onde ela trará resultados sem sentido e

triviais.

Greenberg e Buxton acreditam que a comunidade continuará a avaliar usabilidade para

muitas situações de desenvolvimento de interfaces, mas não todas, porque em alguns casos a

avaliação pode ser considerada prejudicial e, portanto defendem que se deve reconhecer estas

situações e considerar métodos alternativos ao invés de cegamente seguir a doutrina de avaliação de

usabilidade, pois esta aplicada erroneamente, pode suprimir idéias potencialmente valorosas no

início do processo de design e incorretamente promover idéias pobres.

A avaliação de usabilidade não garante design centrado no usuário e nem sempre validará

uma interface de pesquisa, como nem sempre conduzirá a um resultado científico.

Artigos sobre métodos de avaliação têm desaparecido, porque existe uma predisposição em

relação a certas metodologias, como as empíricas quantitativas e as qualitativas, que são

consideradas mais corretas e assim mais aceitáveis do que outras, o que gera como conseqüência

questões de pesquisa que são cômodas para serem tratadas com um determinado método. Artigos

que usam metodologias não empíricas como estudos de caso, estudos de campo são julgados mais

rigorosamente.

Os métodos de avaliação existentes são mais objetivos do que subjetivos, pois não

consideram argumentos, reflexões ou intuições sobre um design, e sim produzem descrições e

59

observações que associam e direcionam as interpretações dos observadores.

Outro fator negativo no emprego da avaliação na fase inicial do projeto é que pode levar ao

refinamento da mesma idéia para esta ficar de acordo com as normas, ao invés de gerar vários

designs, escolher o mais adequado e então avaliá-lo sobre alguma metodologia.

Também uma outra questão importante é se o sistema é usável e útil. Embora usabilidade

seja muito importante, existem muitos sistemas que não são fáceis de usar e que mesmo assim

fizeram sucesso, por sua comprovada utilidade e só depois se tornaram também usáveis.

4.2 O que pode ser automatizado?

Como se pode alcançar resultados sistemáticos e uma ampla cobertura de todos os tópicos

relacionados à usabilidade na avaliação de usabilidade? Além disso, como reduzir o tempo e

dinheiro gasto com as avaliações? Uma solução é aumentar o número de equipes de usabilidade que

realizam a avaliação de sistemas e também aumentar o número de usuários que participam dos

estudos. Porém, esta solução não cobre a segunda pergunta, pelo contrário a piora.

Uma outra alternativa é automatizar alguns aspectos da avaliação de usabilidade, tais como

captura, análise ou análise crítica. A automação da avaliação de usabilidade possui várias vantagens

sobre a avaliação não-automatizada, tais como:

• Reduzir o custo da avaliação de usabilidade: Métodos automáticos de captura, análise ou

análise crítica podem diminuir o tempo gasto nas avaliações de usabilidade e

consequentemente o custo. Por exemplo, ferramentas que automaticamente logam

eventos durante testes de usabilidade, eliminando a necessidade de log manual, que

tipicamente toma uma porção substancial do tempo de avaliação.

• Aumentar a consistência de erros não cobertos: Em alguns casos, é possível desenvolver

modelos de completude de tarefas dentro de uma interface, e ferramentas de software

podem consistentemente detectar desvios destes modelos. Também é possível detectar o

uso de padrões que sugerem possíveis erros.

• Predizer tempo e custo de erros para um design completo: Não é sempre possível avaliar

todos os aspectos de uma interface usando avaliação não-automatizada. Ferramentas de

software, tais como modelos analíticos, tornam isto possível pela ampla cobertura de

características avaliadas.

• Reduzir a necessidade de avaliação por especialistas entre avaliadores individuais, pois

ao automatizar alguns aspectos da avaliação como análise ou análise crítica, pode ajudar

os projetistas sem muita experiência nos aspectos de avaliação.

• Aumenta a cobertura das características avaliadas, pois devido ao tempo, custo e

60

recursos não é sempre possível avaliar todos os aspectos de uma interface. Ferramentas

de software que geram mapeamentos de uso eficientes podem tornar isso possível ao

avaliar aspectos da interface que de outra forma não seriam avaliadas.

• Habilita comparações entre designs alternativos, pois devido ao tempo, custo e recursos,

as avaliações de usabilidade geralmente avaliam somente um design ou um pequeno

subgrupo de características de vários designs. Algumas abordagens de análise

automática, tais como modelagem analítica e simulação habilitam os designers a

comparar desempenho por designs alternativos. Incorpora avaliação dentro da fase de

design do desenvolvimento de interfaces de usuário, desta forma opõe-se a avaliação

começar após a implementação. Isto é importante porque a avaliação com muitos

métodos não automáticos pode tipicamente ser feito somente depois da interface ou

protótipo ter sido construída e sendo assim mudanças são mais caras [Nielsen, 1993].

Ferramentas de modelagem e simulação tornam isto possível por explorar os projetos de

interface de usuário mais cedo.

A automação é útil por complementar as técnicas de avaliação padrão, como avaliação

heurística e teste de usabilidade. Portanto a idéia seria complementá-las, tornar mais fácil a

realização de alguns métodos de avaliação e ter a possibilidade de realizar outros tipos de avaliação

enfocando em aspectos que avaliações não automáticas não conseguiriam focar, mas os métodos

tradicionais não seriam substituídos.

Com relação às potenciais vantagens, a automação de avaliação de usabilidade é ainda muito

inexplorada. Ivory e Hearst em seu artigo [3] propuseram uma nova taxonomia para avaliação de

usabilidade:

– Classe de método: Descreve o tipo de avaliação conduzida em alto nível, por exemplo,

teste de usabilidade ou simulação. São cinco as classes de métodos:

• Teste: Um avaliador observa o usuário interagindo com uma interface, por exemplo,

completando tarefas para determinar problemas de usabilidade.

• Inspeção: Um avaliador usa um grupo de critérios ou heurísticas para identificar

potenciais problemas de usabilidade em uma interface.

• Investigação: Usuários fornecem feedback sobre uma interface através de entrevistas

e pesquisas.

• Modelagem analítica: Um avaliador emprega modelos de usuário e interface para

gerar prognósticos de usabilidade.

• Simulação: Um avaliador emprega modelos de usuário e interface para simular a

interação de um usuário com a interface e relatar os resultados desta interação, por

61

exemplo, atividades simuladas, erros e outras medidas quantitativas.

Os métodos de teste, inspeção e investigação são apropriados para propostas formativas,

como identificar problemas de usabilidade específicos e somativas como obtenção de avaliação

geral da usabilidade. Modelagem Analítica e Simulação são abordagens da engenharia que

habilitam os avaliadores a prever a usabilidade através de modelos de usuários e interfaces. Práticas

de engenharia de software dão maior importância as três primeiras classes, contudo as duas últimas

são muito similares às técnicas de avaliação de desempenho usadas para analisar o desempenho de

sistemas de computadores [Ivory 2001; Jain 1991]. Também modelagem analítica e simulação são

menos exploradas no domínio web do que para interfaces Wimp.

– Tipo de método: Descreve como a avaliação é conduzida dentro de uma classe de

método, tais como protocolo de pensamento em voz alta (classe de teste de usabilidade);

– Tipo de automação: Descreve o aspecto da avaliação que é automático, por exemplo,

captura, análise ou análise crítica, classificado em quatro tipos de automação:

• Nenhum: Nenhum nível de automação suportado.

• Captura: Software automaticamente registra dados de usabilidade.

• Análise: Software automaticamente identifica potenciais problemas de usabilidade.

• Análise Crítica: Software automaticamente analisa e sugere melhorias.

– Nível de esforço: Descreve o tipo de esforço requerido para executar o método, por

exemplo, desenvolvimento de modelo ou uso de interface, ou seja, indica o esforço

humano requerido para execução do método, classificado em quatro níveis:

• Esforço Mínimo: Não requer uso de interface ou modelagem.

• Desenvolvimento de modelo: Requer ao avaliador desenvolver um modelo de

interface de usuário e/ou um modelo de usuário a fim de empregar o método.

• Uso informal: Requer completude tarefas livremente escolhidas.

• Uso formal: Requer completude de tarefas especialmente selecionadas.

Estes níveis não são ordenados pelo monte de esforço requerido, porque eles dependem

do método empregado.

4.2.1 Métodos de teste de usabilidade automáticos

Com respeito à tarefa de captura de dados, pode-se facilitá-la, pela utilização de ferramentas

de captura automática que podem logar atividades dos usuários automaticamente. Isto ajuda no

processo de registro de ações do usuário enquanto interage com o sistema, pois economiza o tempo

do avaliador em fazer anotações enquanto o participante usa o sistema ou mesmo de visualizar um

62

vídeo da sessão. Captura automática é suportada por dois tipos de métodos: medida de desempenho

e teste remoto. Ambos requerem instrumentação de uma interface de usuário, incorporação dentro

de um sistema de gerenciamento de interfaces de usuários (UIMS – User Interface Management

System), que é uma biblioteca de software que fornece abstrações de alto nível para especificação de

modelos de interfaces portáveis e consistentes que são então compilados dentro de implementações

de interfaces de usuário.

A ferramenta NIST WebMetrics (Métricas Web NIST) captura dados de uso do lado cliente.

Inclui WebVip (Web Visual Instrumentor Program), Programa de instrumentação visual web, que

habilita o avaliador adicionar códigos de eventos para páginas web. Este código automaticamente

registra a página identificada e um tempo em um arquivo ASCII, toda vez que o usuário selecionar

um link. Desta forma, o avaliador pode medir precisamente tempo gasto em tarefas ou em páginas

particulares, além de poder estudar o uso do botão Voltar e cliques dos usuários.

Para se suportar a análise, para interfaces web, ferramentas de análise desenvolvidas pela

Services Metrics (Métricas de Serviço) [1999] e outros permitem aos avaliadores coletar medidas de

desempenho de múltiplas localizações geográficas sob várias condições de acesso.

VISVIP é uma ferramenta tridimensional para visualizar arquivos de log compilados pela

WebVip durante testes de usabilidade. Esta ferramenta gera um layout 2D do site.

4.2.2 Métodos de inspeção automáticos

AIDE (Avaliador e Designer de interfaces automático) é uma ferramenta avançada que

ajuda o projetista avaliar e comparar diferentes opções de design usando métricas quantitativas

sensíveis à tarefa e independente de tarefa, incluindo eficiência, alinhamento de elementos na

vertical e horizontal, etc. AIDE também emprega um algoritmo de otimização para

automaticamente gerar layouts de interfaces de usuários iniciais.

The Rating Game é uma ferramenta de análise automática que tenta medir a qualidade de um

grupo de páginas web usando um grupo de características facilmente medidas.

4.2.3 Métodos de investigação automáticos

Ferramentas de software habilitam o avaliador coletar dados de usabilidade subjetivos e

possivelmente melhorar a interface.

UPM (User Partnering Module) Módulo de Parceria com o usuário usa eventos dirigidos a

triggers, como erros ou invocações de comandos específicos, para questionar os usuários sobre

questões específicas de seu uso da interface. Esta abordagem permite ao avaliador capturar reações

de usuários.

63

Suporte automático para métodos de investigação torna possível a coleta de dados rápida de

um grande número de usuários do que é geralmente possível com métodos não automáticos.

Contudo, os métodos automáticos sofrem das mesmas limitações dos não automáticos, pois não

indicam claramente problemas de usabilidade devido à natureza subjetiva de suas respostas.

4.2.4 Métodos de modelagem analítica automáticos

CATHCI (Cognitive Analysis tool for human computer interfaces) fornece suporte para

geração de prognósticos quantitativos, mas ainda requer ao avaliador construir modelos GOMS.

USAGE (UIDE System for Semiautomated GOMS Evaluation) – Avaliação GOMS Semi-

automática para Sistemas UIDE e CRITIQUE (Ferramenta interativa para integrar avaliações de

usabilidade rapidamente), fornecem suporte para gerar automaticamente um modelo de tarefas

GOMS e prognósticos quantitativos para o modelo.

GLEAN (GOMS Language Evaluation and Analysis) – Análise e Avaliação na Linguagem

GOMS é outra ferramenta que gera prognósticos quantitativos para um dado modelo de tarefas

GOMS.

Estas ferramentas reduzem o esforço requerido para empregar análise GOMS e gerar

prognósticos que são consistentes com os modelos produzidos por especialistas, o que limita uma

maior aplicação destas ferramentas, é o caso de não suportarem, por exemplo, métodos de

completude de múltiplas tarefas.

4.2.5 Métodos de simulação automáticos

Simulação é também usada para automaticamente gerar dados para serem interpretados com

técnicas de análise de arquivos de log.

Kasik e George [1996] desenvolveram uma técnica automática para gerar e capturar dados

de uso. O objetivo deste trabalho é usar um pequeno número de parâmetros de entrada para gerar

um grande número de traços de uso (ou scripts de teste) representando usuários novatos. O

avaliador pode então usar estes traços para encontrar pontos fracos, falhas, e outros problemas de

usabilidade.

Chi et al. [2000] desenvolveram uma abordagem similar para gerar e capturar caminhos de

navegação para interfaces de usuários para web. Esta abordagem cria um modelo de um site

existente que tem nele informação sobre a similaridade de conteúdo entre páginas, dados de log do

servidor, e estrutura de links. O avaliador especifica pontos de entrada no site s e necessidades de

informação como entrada para o simulador. A simulação modela um número de agentes através de

links e conteúdo do modelo de site. Em cada página, o modelo considera informações de “cenários”,

64

na tomada de decisão de navegação. O simulador registra os caminhos de navegação e relata a

proporção de agentes que alcançaram páginas específicas.

4.2.6 Considerações finais sobre automatização da avaliação de usabilidade

Métodos de avaliação de usabilidade automáticos possuem muitos benefícios, incluindo a

redução de custos de métodos não automatizados, ajudam na comparação entre designs alternativos,

e melhoram a consistência em resultados de avaliação.

Os métodos de avaliação de usabilidade atuais não capturam importantes informações

subjetivas e qualitativas, tais como preferências dos usuários, que podem somente ser obtidas

através de testes de usabilidade, avaliação heurística e outros métodos de investigação padrão.

Contudo, simulação e modelagem analítica podem ser úteis para ajudar os projetistas a

escolher entre alternativas de design antes que se tornem custos de desenvolvimento caros.

Além disso, avaliadores podem usar automação em conjunto com os métodos não

automáticos, tais como avaliação heurística e testes de usabilidade.

Pesquisas para desenvolver modelagem analítica, simulação, revisão de guias, e técnicas de

análise de arquivos de log poderiam resultar em novas e eficazes técnicas automáticas e é preciso

ter em mente que uma ferramenta que automatize a avaliação deve possibilitar o mínimo de esforço

humano possível, para que de fato seja útil.

65

5 ConclusãoÉ nítida a necessidade em se construir projetos de software com maior usabilidade, pois

além de proporcionar uma interação mais agradável aos usuários, lhes fornece maior confiança no

sistema desenvolvido. É exatamente esta confiança que se deseja conseguir para sistemas de

software livre. Na mentalidade da maioria dos desenvolvedores de código aberto, a usabilidade não

é considerada importante para o desenvolvimento, e isto é um dos motivos principais para que os

sistemas de software livre não tenham boa aceitação na indústria e na sociedade.

A pesquisa realizada apresentou as principais metodologias que buscam o desenvolvimento

de sistemas com maior usabilidade. Através destas pode-se notar que técnicas de coleta de dados

para entendimento das necessidades dos usuários são os primeiros passos para um sistema que

proporcione uma experiência mais eficiente de uso aos usuários. As técnicas apresentadas têm como

foco principal o usuário e seguem a metodologia do DCU (Design Centrado no Usuário).

Considerações de design relacionadas aos processos cognitivos, psicológicos e sociais dos

seres humanos possibilitam entender como os indivíduos reagem a determinadas situações e,

também, como obter maior usabilidade através do desenvolvimento de interfaces que levam estes

aspectos em consideração.

As vantagens em se realizar ciclos de coleta de dados, prototipação e avaliação envolvendo

usuários, é justamente obter feedback dos principais componentes do processo: os usuários. Dessa

forma, elimina-se o peso da estréia do sistema, pois este será apresentado aos usuários em todas as

fases de desenvolvimento, desde as idéias iniciais, através de rascunhos do projeto, até a avaliação

do produto final por meio de testes de usabilidade, por exemplo.

Considerações a respeito de processos de usabilidade ágil mostram possíveis formas de

integração de metodologias ágeis e DCU. As técnicas apresentadas ainda estão sob estudo, porém

pesquisadores concordam que o desenvolvimento integrando os dois métodos fornece ganhos para

ambos.

Com relação à automatização dos métodos de avaliação de usabilidade, é possível perceber a

utilidade deste tipo de ferramenta, já que pode otimizar o tempo e custo de desenvolvimento na

realização destas atividades. Também possibilita avaliar o sistema sob outros aspectos, os quais não

poderiam ser considerados por falta de recursos ou de tempo hábil, se o processo de avaliação não

fosse automático. Porém, deve-se ter em mente que, ao construir uma ferramenta para avaliação de

usabilidade, obviamente é necessário que ela seja útil. Para isto, além de servir ao objetivo a que se

destina, deve de fato diminuir o esforço humano na realização da tarefa.

Com tudo isto, as técnicas apresentadas são úteis e eficazes para construir sistemas de

melhor usabilidade e estas podem ser aplicadas a metodologias ágeis de desenvolvimento.

66

Ferramentas que possibilitam a realização destas tarefas de forma automática trazem ganhos para o

processo, porém são pouco exploradas, portanto, vários estágios do processo podem ser

investigados a fim de automatizá-los. Além disso, através destas metodologias é possível entender a

idéia central da busca de usabilidade para sistemas web e, dessa forma, pensar em maneiras de

integrar tais técnicas no processo de desenvolvimento de software livre, tornando-os mais

confiáveis aos olhos dos usuários.

5.1 Ganhos desejados com a pesquisa

O projeto contribui com o aumento da confiabilidade em software livre. Alcançando-se esta

confiança por parte dos usuários finais, consegue-se inserir melhor software de código aberto na

sociedade como um todo, pois usuários “descrentes” neste tipo de software passam a mudar suas

opiniões. Com isto, espera-se motivar os desenvolvedores de software livre a considerar a criação

de interfaces que tenham como foco os usuários que a utilizarão e o contexto de uso destas, no

processo de desenvolvimento, a fim de obter melhor usabilidade.

Propomos então a elaboração de uma metodologia para avaliação de usabilidade de sistemas

web, com a definição de métricas, análise de dados, definição de testes e mensuração dos fatores

relacionados à usabilidade. Com isto, realizaremos uma avaliação desta metodologia com sua

aplicação em vários projetos de código aberto desenvolvidos no CCSL (Centro de Competência em

Software Livre) da USP.

Paralelamente será realizada uma análise da viabilidade do desenvolvimento de uma

ferramenta de auxílio à avaliação de usabilidade, e se for viável, desenvolvê-la. Os benefícios da

solução são de propiciar interfaces web de melhor qualidade, com respeito à usabilidade, para

projetos de código aberto.

A facilidade de uso será um dos objetivos principais da metodologia e ferramenta. Este

projeto visa identificar, quantificar e assegurar fatores relacionados à qualidade para software livre,

com respeito à usabilidade de interfaces web, o que fornecerá critérios para desenvolvimento de

software livre mais confiável. Os produtos que se espera produzir com a pesquisa são:

• 1 ou 2 artigos científicos

• Apostila Creative Commons descrevendo a metodologia de avaliação de usabilidade de

sistemas web.

• Melhorias na usabilidade do software desenvolvido no CCSL e no projeto Qualipso.

• A médio prazo, existiria a possibilidade de prestação de serviços de avaliação de

usabilidade, por exemplo, prestado por empresa start-up criada por alunos egressos do

projeto.

67

5.2 Plano de Trabalho

A primeira fase do plano de trabalho consistiu na escrita desta monografia, que diz respeito

ao estudo do estado da arte no assunto de usabilidade em sistemas web. As fases seguintes são:

• Fase 2 - 4 meses: elaboração de uma metodologia preliminar para avaliação de

usabilidade.

• Fase 3 - 4 meses: avaliação da metodologia com sua aplicação em vários projetos de

software livre desenvolvidos no CCSL.

• Fase 4 - 6 meses: elaboração da versão final da metodologia e, se possível,

desenvolvimento de uma ferramenta de auxílio à avaliação da usabilidade.

68

6 Referências Bibliográficas• [1] BEVAN, N. Human-Computer Interaction Standards. In: Anzai & Ogawa (eds)

Proceedings of the 6th International Conference on Human Computer Interaction,

Yokohama, 1995.

• [2] PALMER, J. Web Site Usability, Design and PerformanceMetrics. Information Systems

Research; 13, 2; ABI/INFORM Global pg.151; 2002.

• [3] Ivory, M, Y. and Hearst, M. A. 2001. The state of the art in automating usability

evaluation of user interfaces. ACM Comput. Surv. 33, 4 (Dec. 2001), 470-516.

• [4] Prates, R. O., de Souza, C. S., and Barbosa, S. D. 2000. Methods and tools: a method

for evaluating the communicability of user interfaces. interactions 7, 1 (Jan. 2000), 31-38.

• [5] Nigel Bevan, Ian Curson. Methods for Measuring Usability. Proceedings of the sixth

IFIP conference on human-computer, 1997.

• [6] David M. Nichols and Michael B. Twidale. The Usability of Open Source Software by

First Monday, volume 8, number 1 (January 2003).

• [7] Matthew Paul Thomas. Why Free Software has poor usability, and how to improve it.

Computing & Internet, Usability. (august 1st,2008).

• [8] SL Pfleeger. Lessons learned in building a corporate metrics program. IEEE Software,

67-74. 1993.

• [9] Bevan, N. Usability is quality of use. In: Anzai, Ogawa (Eds.), Proceedings of the Sixth

International Conference on Human Computer Interaction, Elsevier, Amsterdam. 1995b.

• [10] Bevan, N. Quality in use: Meeting user needs for quality. The Journal of Systems &

Software, v.49 n.1, p.89-96. 1999.

• [11] Wickens, C. D.; Hollands, J. G. Engineering Psychology and Human Performance.

(3a. ed) Prentice-Hall, 1999.

• [12] Shneiderman, B. (1998). Designing the user interface: Strategies for effective human-

computer interaction (3d ed.). Addison-Wesley, reading, MA.

• [13] e-Usabilidade. Simone Bacellar Leal Ferreira e Ricardo Rodrigues Nunes (LTC –

Livros Técnicos e Científicos Editora S.A. - 13 de Agosto de 2008)

• [14] About Face 3: The essentials of Interaction Design by Alan Cooper, Robert Reimann,

and David Cronin (Paperback - May 7, 2007)

• [15] Interaction Design: Beyond Human-Computer Interaction by Helen Sharp, Yvonne

Rogers, and Jenny Preece (Paperback - Mar 23, 2007)

• [16] Measuring the User Experience: Collecting, Analysing, and Presenting Usability

Metrics (Interactive Technologies) by Thomas Tullis and William Albert (Paperback - Mar

69

28, 2008)

• [17] Prioritizing Web Usability by Jakob Nielsen and Hoa Loranger (Kindle Edition - Feb

14, 2008) - Kindle Book

• [18] Gary M. Olson and Judith S. Olson . Human-Computer Interaction: Psychological

Aspects of the Human Use of Computing. Annual Review of Psychology. 2003. 54:491-516.

• [19] Greenberg and Buxton. Usability Evaluation Considered Harmful (Some of the time).

In: Proceeding of the twenty-sixth annual SIGCHI conference on Human factors in

computing systems. Florence, Italy.Pages 111-120. Year of Publication: 2008. ISBN:978-1-

60558-011-1

• [20] Ronald Poppe, Rutger Rienks, and Betsy van Dijk. Artificial Intelligence for Human

Computing, LNAI 4451, pp. 234-250, 2007. ISBN978-3-540-72346-2

• [21] Alejandro Jaimes, Nicu Sebe, Daniel Gatica-Perez. Human-Centered Computing: A

Multimedia Perspective, In: Proc. of the ACM International Conference on Multimedia,

Santa Barbara, CA (2006) 855-864. ISBN:1-59593-447-2

• [22] Steve Harrison, Deborah Tatar, Phoebe Sengers. The ThreeParadigms of HCI. In

Proceedings of CHI2007, San Jose, USA (2007).

• [23] Christopher A. Le Dantec, W. Keith Edwards. Designs on Dignity: Perceptions of

Technology Among the Homeless. In Proceedings of CHI 2008, Florence, Italy (April 5-10,

2008).

• [24] James M Ungar , Jeffrey A White. Agile User Centered Design: Enter the Design

Studio – A Case Study. In Proceedings of CHI 2008, Florence, Italy (April 5-10, 2008).

• [25] Peter Wolkerstorfer, Manfred Tscheligi, Reinhard Sefelin, Harald Milchrahm, Zahid

Hussain, Martin Lechner, Sara Shahzad. Probing an Agile Usability Process. In

Proceedings of CHI 2008, Florence, Italy (April 5-10, 2008).

• [26] Kathy Baxter, Kuldeep Kelkar, Lynn Miller, Jeff Patton, Aviva Rosenstein, Craig

Villamor, Melissa Federoff. Extreme Usability: Adapting Research Approaches for Agile

Development. In Proceedings of CHI 2008, Florence, Italy (April 5-10, 2008).

• [27] Fiora T. W. Au, Simon Baker, Ian Warren, Gillian Dobbie. Automated Usability

Testing Framework. In Proceedings of Australasian User Interface Conference

(AUIC2008), Wollongong, Australia, 2008.

• [28] Paul McInerney, Frank Maurer. UCD in Agile Projects: Dream Team or Odd Couple?

ACM Interactions, 2008.

70