Sei sulla pagina 1di 107

Universidade de Braslia - UnB

Faculdade UnB Gama - FGA


Engenharia de Software
Tcnicas de usabilidade e testes automatizados
em processos de desenvolvimento de software
emprico
Autores: Jnatas Medeiros de Mendona,
Rodrigo Medeiros Soares da Silva
Orientador: Prof. Dr. Paulo Roberto Miranda Meirelles
Braslia, DF
2014
Jnatas Medeiros de Mendona,
Rodrigo Medeiros Soares da Silva
Tcnicas de usabilidade e testes automatizados em
processos de desenvolvimento de software emprico
Monograa submetida ao curso de graduao
em Engenharia de Softwareda Universidade
de Braslia, como requisito parcial para ob-
teno do Ttulo de Bacharel em Engenharia
de Software.
Universidade de Braslia - UnB
Faculdade UnB Gama - FGA
Orientador: Prof. Dr. Paulo Roberto Miranda Meirelles
Braslia, DF
2014
Jnatas Medeiros de Mendona,
Rodrigo Medeiros Soares da Silva
Tcnicas de usabilidade e testes automatizados em processos de desenvolvi-
mento de software emprico / Jnatas Medeiros de Mendona,
Rodrigo Medeiros Soares da Silva. Braslia, DF, 2014-
105 p. : il. (algumas color.) ; 30 cm.
Orientador: Prof. Dr. Paulo Roberto Miranda Meirelles
Trabalho de Concluso de Curso Universidade de Braslia - UnB
Faculdade UnB Gama - FGA , 2014.
1. Testes. 2. Software livre. 3. Usabilidade. I. Prof. Dr. Paulo Roberto Miranda
Meirelles. II. Universidade de Braslia. III. Faculdade UnB Gama. IV. Tcnicas de
usabilidade e testes automatizados em processos de desenvolvimento de software
emprico
CDU 02:141:005.6
Jnatas Medeiros de Mendona,
Rodrigo Medeiros Soares da Silva
Tcnicas de usabilidade e testes automatizados em
processos de desenvolvimento de software emprico
Monograa submetida ao curso de graduao
em Engenharia de Softwareda Universidade
de Braslia, como requisito parcial para ob-
teno do Ttulo de Bacharel em Engenharia
de Software.
Trabalho aprovado. Braslia, DF, Dezembro de 2014:
Prof. Dr. Paulo Roberto Miranda
Meirelles
Orientador
Prof. Hilmer Rodrigues Neri
Convidado 1
Prof. Tiago Barros Pontes e Silva
Convidado 2
Braslia, DF
2014
Resumo
Este trabalho de concluso de curso apresenta um estudo sobre usabilidade e testes auto-
matizados no desenvolvimento emprico de software. Para isso, estamos utilizando como
estudo de caso a plataforma livre para rede sociais Noosfero. Nessa primeira parte deste
trabalho apresentamos como aplicar tcnicas de usabilidade, alm de tcnicas de BDD
(desenvolvimento de software dirigido por comportamento) e TDD (desenvolvimento de
software dirigido por testes) em dois projetos (Portal FGA
1
e Comunidade UnB
2
) que
usam o Noosfero, buscando assim vericar como essas tcnicas de testes podem afetar
as avaliaes de usabilidade de um software. Alm disso o trabalho visa compreender
como inserir as prticas de usabilidade estudadas no ciclo de vida de desenvolvimento de
um software livre (Portal da Participao Social
3
) utilizando uma abordagem gil. Este
estudo serviu de base para levantamento de algumas hipteses a respeito do desenvolvi-
mento emprico, quando pensamos em testes usabilidade. Este estudo tambm serve como
base para a prxima fase do trabalho, que ser de vericar as hipteses levantadas sobre
a inuncia dos testes automatizados na usabilidade de um sistema de software.
Palavras-chaves: software livre. testes automatizados. usabilidade.
1
<fga.unb.br>
2
<comunidade.unb.br>
3
<participa.br>
Abstract
This degree monograph presents a study about software usability and automated testing
on the empirical software development. So, the Noosfero plataform (a free software for
social networking) was used as case study to apply this study. This rt work presents
and applies techniques of usability, in addition to techniques of BDD (Behaviour Driver
Development) and TDD (Test Driver Development) in two applications (Portal FGA
4
and Comunidade UnB
5
) of the case study mentioned, thus seeking to ascertain how these
testing techniques can aect the assessments of usability of a software. Further work aims
to understand how to insert the practical usability studied the life cycle of a free software
development (Portal da Participao Social
6
) using an agile approach. This study serves as
a basis to discussion of some hypotheses abaout empirical development, adressing usability
tests. This study also serves as a the basis for the next phase of work, wich will verify the
hipotheses about the inuence of testing in the usability of a software system.
Key-words: free software. automated tests. usability.
4
<fga.unb.br>
5
<comunidade.unb.br>
6
<participa.br>
Lista de ilustraes
Figura 1 Descrio do ttulo (feature) de um teste . . . . . . . . . . . . . . . . . 33
Figura 2 Descrio de pr condies (background) de um teste . . . . . . . . . . 33
Figura 3 Descrio do cenrio (scenario) de um teste . . . . . . . . . . . . . . . 34
Figura 4 Descrio do setup de um teste . . . . . . . . . . . . . . . . . . . . . . 34
Figura 5 Cdigo de teste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Figura 6 Ciclo de atividades TDD (BECK, 2002) . . . . . . . . . . . . . . . . . 35
Figura 7 Nmero de avaliadores (NIELSEN, 1994) . . . . . . . . . . . . . . . . . 48
Figura 8 Ciclo de Vida Estrela . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Figura 9 Ciclo do design centrado no humano - Norma ISO 13407 . . . . . . . . 54
Figura 10 Viso geral do processo de desenvolvimento de software de XPlus . . . 57
Figura 11 Cobertura de cdigo do plugin LdapUnb . . . . . . . . . . . . . . . . . 70
Figura 12 Cobertura de cdigo do plugin para submisso de trabalho . . . . . . . 73
Figura 13 Cobertura de cdigo do plugin Stoa . . . . . . . . . . . . . . . . . . . . 75
Figura 14 Cobertura de cdigo do plugin Ldap . . . . . . . . . . . . . . . . . . . 76
Figura 15 Cobertura de cdigo do plugin Statistics . . . . . . . . . . . . . . . . . 76
Figura 16 Questionrio de perl do usurio . . . . . . . . . . . . . . . . . . . . . 81
Figura 17 Questionrio de perl do usurio - Continuao . . . . . . . . . . . . . 82
Figura 18 Informaes sobre o uso dos meios de comunicao . . . . . . . . . . . 83
Figura 19 Participaes sociais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Figura 20 Portal da Participao Social . . . . . . . . . . . . . . . . . . . . . . . 85
Figura 21 Ambiente e tempo de acesso no portal . . . . . . . . . . . . . . . . . . 86
Figura 22 ASQ - The After-Scenario Questionnaire . . . . . . . . . . . . . . . . . 88
Figura 23 PSSUQ The Post-Study System Questionnaire . . . . . . . . . . . . . 89
Figura 24 PSSUQ: The Post-Study System Questionnaire - Questes de 8 19 . 90
Figura 25 Printabilidade - Portal da Participao Social . . . . . . . . . . . . . . 95
Figura 26 Validaes - Portal da Participao Social . . . . . . . . . . . . . . . . 95
Figura 27 Carregamento de Pgina - Portal da Participao Social . . . . . . . . 95
Figura 28 Renderizao de pgina em dispositivos mveis . . . . . . . . . . . . . 96
Figura 29 Carregamento por dispositivos mveis - participa.br . . . . . . . . . . . 96
Lista de tabelas
Tabela 1 Questes de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Tabela 2 Tcnicas de avaliao para os testes com usurios . . . . . . . . . . . . 63
Tabela 3 Tabela de variveis dependentes . . . . . . . . . . . . . . . . . . . . . . 65
Tabela 4 Validade dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Tabela 5 Avaliao dos resultados . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Tabela 6 Comparativo dos questionrios . . . . . . . . . . . . . . . . . . . . . . 91
Lista de abreviaturas e siglas
ASQ The After-Scenario Questionnaire
BDD Behavior Driven
DCU Design Centrado no Usurio
DSA Directory System Agent
FGA Faculdade UnB Gama
HTML HyperText Markup Language
HTTP HyperText Transfer Protocol
HTTPS HyperText Transfer Protocol Secure
ICC Instituto Central de Cincias
IHC Interao Humano Computador
LAPPIS Laboratrio de Produo, Pesquisa e Inovao em Software
LDAP Lightweight Directory Access Protocol
MES Manuteno e Evoluo de Software
MVC Model-View-Controller
ProIC Projeto de Iniciao Cientca
PSQ The Printer-Scenario Questionnaire
PSSUQ The Post-Study System Questionnaire
PuSH PubSubHubbub
QUIS Questionnaire for User Interaction Satisfaction
Rails Ruby on Rails
SLTI Secretaria de Logstica e Tecnologia da Informao
SMT Tecnologias de Mdia Social
SUMI Usability Measurement Inventory
SUS System Usability Scale
SSL Secure Socket Layer
SPB Software Pblico Brasileiro
TCC Trabalho de Concluso de Curso
TCP Transmission Control Protocol
TDD Test Driven Develepment
TLS Transport Layer Security
UDP User Datagram Protocol
UPA Usability Professionals Association - Associao de Prossionais de
usabilidade
UnB Universidade de Braslia
USP Universidade de So Paulo
UI User Interface
UX User Experience
W3C World Wide Web Consortium
XP Extreme Programming
Sumrio
1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.1 Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2.1 Objetivos gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2.2 Objetivos especcos . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.3 Questes de pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.4 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.4.1 Classicao da Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . 21
1.4.2 As etapas da Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.5 Organizao do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2 Mtodos Empricos de Desenvolvimento de Software . . . . . . . . . . . . . 25
2.1 Software Livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1.1 Desenvolvimento de um projeto de software livre . . . . . . . . . . . 26
2.2 Mtodos geis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3 Consideraes nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3 Testes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1 Testes Automatizados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.1 Testes de aceitao . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.1.2 Testes Funcionais e Unitrios . . . . . . . . . . . . . . . . . . . . . 34
3.2 Tcnicas de desenvolvimento de testes automatizados . . . . . . . . . . . . 35
3.2.1 TDD - Test Driven Development . . . . . . . . . . . . . . . . . . . 35
3.2.2 BDD - Behavior Driven Development . . . . . . . . . . . . . . . . . 36
3.2.3 Consideraes Finais . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4 Usabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.1 Usabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.1.1 Avaliao de Usabilidade . . . . . . . . . . . . . . . . . . . . . . . . 42
4.2 Tcnicas e Mtodos da Engenharia de Usabilidade . . . . . . . . . . . . . . 43
4.2.1 Mtodos e tcnicas de concepo . . . . . . . . . . . . . . . . . . . 43
4.2.2 Mtodos e tcnicas de anlise . . . . . . . . . . . . . . . . . . . . . 44
4.2.3 Tcnicas e Mtodos de avaliao . . . . . . . . . . . . . . . . . . . . 47
4.3 Testes de Usabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.3.1 Teste da Usabilidade vs. Teste de Aceitao do Usurio (UAT) . . . 51
4.4 Processos de Usabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.4.1 Modelo Estrela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.4.2 O ciclo de vida da Engenharia de Usabilidade - Mayhew . . . . . . 52
4.4.3 Design Centrado no Usurio . . . . . . . . . . . . . . . . . . . . . . 53
4.4.3.1 ISO 13407 e 9241-210 . . . . . . . . . . . . . . . . . . . . 54
4.5 Aplicao de usabilidade em mtodos geis . . . . . . . . . . . . . . . . . . 54
4.5.1 Estudos correlatos . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.5.2 DCU gil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.5.3 DCU e XP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.6 Princpios geis aplicados ao Design centrado no usurio . . . . . . . . . . 58
4.7 Consideraes nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5 Estudos de Caso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.1 Estudo sobre Usabilidade: Participa.Br . . . . . . . . . . . . . . . . . . . . 61
5.1.1 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.1.2 Variveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.1.3 Recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.1.4 Validade dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . 65
5.1.5 Procedimentos para a execuo . . . . . . . . . . . . . . . . . . . . 66
5.1.6 Avaliao dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . 66
5.2 Estudo sobre Testes Automatizados - Rede Comunidade UnB . . . . . . . 66
5.2.1 Plugin LDAP UnB . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.2.2 Plugin para envio de TCC . . . . . . . . . . . . . . . . . . . . . . . 70
5.2.3 Observaes obtidas . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.3 Consideraes nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
6 Consideraes nais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.1 Prximos Passos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.1.1 Cronograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
A Apndice 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
A.1 Questionrio de Perl do Usurio . . . . . . . . . . . . . . . . . . . . . . . 81
A.2 Questionrio de Satisfao . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
A.2.1 QUIS - Questionnaire for User Interaction Satisfaction . . . . . . . 86
A.2.2 SUS System Usability Scale . . . . . . . . . . . . . . . . . . . . . 87
A.2.3 SUMI Usability Measurement Inventory . . . . . . . . . . . . . . 87
A.2.4 ASQ The After-Scenario Questionnaire . . . . . . . . . . . . . . . 87
A.2.5 PSQ The Printer-Scenario Questionnaire . . . . . . . . . . . . . . 88
A.2.6 PSSUQ The Post-Study System Questionnaire . . . . . . . . . . . 88
A.2.7 CSUQ - Computer System Usability Questionnaire . . . . . . . . . 90
A.2.8 Comparativo dos questionrios . . . . . . . . . . . . . . . . . . . . . 91
A.3 Portal da Participao Social . . . . . . . . . . . . . . . . . . . . . . . . . 92
A.3.1 Persona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
A.3.2 Cenrios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
A.3.3 Problemas levantados com as questes . . . . . . . . . . . . . . . . 93
A.3.4 Ferramenta de anlise de websites . . . . . . . . . . . . . . . . . . . 94
B Apndice 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
B.1 Cenrios dos testes de aceitao - plugin para envio de TCC . . . . . . . . 97
Referncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
19
1 Introduo
O desenvolvimento de software usando mtodos empricos, como software livre e
mtodos geis, uma realidade. A prtica bsica desses mtodos so os testes automa-
tizados, preocupando-se com as aplicaes de testes em sistemas cada vez mais dinmi-
cos e reutilizveis com propostas para aumento de qualidade e produtividade de soft-
ware (VICENTE, 2010). Adicionalmente, as reas relacionadas a usabilidade vem sendo
estudadas para serem aplicadas no contexto de desenvolvimento emprico de software.
Criar software que seja til e fcil de usar fator importante para a evoluo dos sistemas
(SANTOS, 2012).
Um dos grandes problemas encontrados em projetos software livre, por exemplo,
a pouca ateno dada aos aspectos referentes a usabilidade e acessibilidade das aplicaes.
Para Moreira et al. (2012) enfatizar na criao, melhoria e teste do cdigo fonte pode
ser um dos principais problemas que contribui para a falta de usabilidade dos softwares
livres.
Segundo Preece, Rogers e Sharp (2007), uma das causas da baixa adoo de
softwares livres em mercados de larga escala a baixa qualidade dos estilos de intera-
o implementados nas interfaces dos produtos. Uma maioria no se preocupam com
bons elementos de interface com usurio (UI).
Atualmente, algumas comunidades de software livre vm se atentando as questes
de usabilidade como forma de se manter no mercado. Um dos casos que conhecemos foi
do Joomla que um CMS (Content Manager System) ou em portugus, sistema de geren-
ciamento de contedo, que nessas ltimas verses investiram em questes de usabilidade,
sendo o primeiro CMS a ser 100 por cento adaptado a dispositivos mveis tanto no con-
tedo como na rea administrativa.
1
Foi criada uma frente de desenvolvimento focado na
experncia do usurio que trouxe melhorias signicativas a partir da verso 3.0 do CMS
2
.
A partir dessa nova verso foi adotado o framework Twitter Bootstrap
3
que proporciona
um conjunto padro de widgets de interface de usurio que iro permitir aos desenvolvedo-
res de extenses e templates trabalharem com o mesmo conjunto de normas de marcao,
permitindo que os desenvolvedores de extenses se concentrem na funcionalidade e que
desenvolvedores de templates desenvolvam templates que funcionem sem modicao das
extenses. Logo em seguida o Wordpress, outro sistema de gerenciamento de contudo,
investiu em melhorias da interface se atentando aos novos padres adotados na web. A
partir da verso 3.5 adaptaram o painel para as telas de retina e na verso 3.8 rezeram
1
<http://joomla.org/3/pt_br>
2
<http://ux.joomla.org/>
3
<http://getbootstrap.com/>
20 Captulo 1. Introduo
toda a interface da rea administrativa. O Noosfero, um sistema para desenvolvimento de
redes sociais na qual faz parte do nosso estudo, tem tido algumas iniciativas por parte dos
desenvolvedores e usurios da plataforma para a melhoria da usabilidade da ferramenta.
Entender o perl do usurio um dos principais pontos que devem ser levados em
considerao pelos desenvolvedores de software em geral. Cada perl de usurio tem suas
particularidades e suas expectativas quanto a utilizao do sistema.
A adoo das prticas de usabilidade no contexto de mtodos geis vm sendo
estudada por vrios autores no qual armam que possvel a integrao visto que tanto os
mtodos geis como os processo de usabilidade tm em comum caractersticas que colocam
o foco do desenvolvimento nas necessidades e anseios dos usurios nais, na interao entre
os stakeholders envolvidos e na qualidade nal do produto a ser desenvolvido.
A automao de testes uma prtica gil, ecaz e de baixo custo que tambm
busca melhorar a qualidade dos sistemas de software (POTEL; COTTER, 1995). O que
este trabalho busca encontrar um ponto de interseco entre os testes automatizados
utilizados no desenvolvimento gil e a usabilidade de um sistema.
1.1 Problemas
Um dos problemas encontrados nos softwares livres a baixa usabilidade de suas
interfaces, o que resulta na perda de usurios. Os desenvolvedores de software livre pos-
suem uma mentalidade mais voltada para a funcionalidade do que para os usurios do
sistema. Possuem cdigo de qualidade, com algarismos ecientes e de bom desempenho e
so produzidos por desenvolvedores motivados e voluntrios (SANTOS, 2012).
Outro problema do desenvolvimento de software atualmente est em garantir qua-
lidade de software de forma prtica e econmica e testes podem interferir nestas caracte-
rsticas se no forem bem planejados.
1.2 Objetivos
1.2.1 Objetivos gerais
Este trabalho de concluso de curso busca analisar tcnicas e mtodos de usabili-
dade, assim como tcnicas de desenvolvimento e de testes de software no desenvolvimento
emprico de software para vericarmos os possiveis efeitos de tcnicas como TDD (desen-
volvimento dirigido por testes) e BDD (desenvolvimento dirido por comportamento) na
usabilidade de um software, a partir de tcnicas como testes de usabilidade, dentre outras.
1.3. Questes de pesquisa 21
1.2.2 Objetivos especcos
Para satisfazer os objetivos gerais do trabalho foram denidos objetivos especcos
abaixo:
1. Vericar aplicao das prticas do BDD e TDD no processo de desenvolvimento de
software livre;
2. Integrao da Engenharia de Usabilidade no ciclo de vida de desenvolvimento de
software livre;
3. Identicar quais tcnicas de design e usabilidade podem ser utilizadas em cada fase
do processo gil de desenvolvimento de software livre;
4. Vericar como prticas de BDD e TDD podem inuenciar a usabilidade de um
software.
1.3 Questes de pesquisa
Esta seo descreve as questes de pesquisa levantadas durante o trabalho.
1. Como os testes automatizados so denidos e implementados em um ambiente de
desenvolvimento de software emprico?
2. possvel inserir os princpios de usabilidade dentro do processo gil de desenvol-
vimento de software?
3. O processo de desenvolvimento utilizando prticas do BDD e TDD apresentam
melhores resultados em testes de usabilidade?
4. Projetos de software centrados no usurio que possuem avaliao de usabilidade
desde o seu incio apresentam melhores resultados no teste aceitao?
1.4 Metodologia
1.4.1 Classicao da Pesquisa
Neste trabalho, a coleta e anlise dos dados sero realizadas com base em materiais
j publicados, constitudo principalmente de livros, artigos de peridicos e materiais dis-
ponibilizados na Internet, caracterizando-se, portanto, como uma pesquisa bibliogrca
do ponto de vista do procedimento tcnico empregado (GIL, 1991).
22 Captulo 1. Introduo
1.4.2 As etapas da Pesquisa
Estudo bibliogrco Levando em considerao os objetivos de pesquisa, o estudo bibli-
grco aborda a usabilidade e sua relao com o desenvolvimento de testes, tentando
entender como a usabilidade est presente em nosso meio. As reas pesquisadas
so Arquitetura de Informao, Automao de Testes, Design, Ergonomia, Desen-
volvimento Emprico, Interao Humano Computador, Engenharia de Usabilidade,
Experincia do Usurio, entre outras.
Estamos estudando os mtodos geis de desenvolvimento e o software livre como
mtodos de desenvolvimento de software, aplicando este trabalho em um cenrio
real de desenvolvimento da plataforma de redes colaborativas Noosfero, realizando
um planejamento de avaliao de usabilidade no Portal da Portal da Participao
Social
4
, alm de avaliar testes durante o desenvolvimento de funcionalidades para
as aplicaes Rede Comunidade UnB
5
e o Portal da FGA
6
, tambm baseados na
plataforma Noosfero.
Alm disso necessrio conhecer o ciclo de design centrado no usurio. Encontrar
maneiras de como inserir os mtodos de usabilidade utilizando uma abordagem gil
em um contexto de software livre, e vericar como as tcnicas j utilizadas atacam
as caractersticas de usabilidade de um software.
Coletas de dados: Para avaliao de usabilidade, os dados sero coletados atravs de
questionrios e entrevistas que sero feitas atravs de experimentos realizados em um
estudo de caso no portal da participao social. Para vericao do desenvolvimento
de testes mtricas de testes sero coletadas durante o processo de desenvolvimento
em que este trabalho est baseado.
1.5 Organizao do trabalho
Nesta seo est apresentada a organizao deste trabalho, e o que se refere cada
captulo.
O estudo inicia-se no segundo captulo, em que se aborda o desenvolvimento em-
prico, onde dissertamos sobre software livre assim como uma breve base conceitual sobre
metodologias geis de desenvolvimento.
O terceiro captulo aborda conceitualmente as tcnicas de testes automatizados
que geralmente so utilizadas no processo emprico, alm dos tipos de testes que podem
4
<www.participa.br>
5
<comunidade.unb.br>
6
<www.fga.unb.br>
1.5. Organizao do trabalho 23
ser aplicados. Nesta seo so destacados o TDD (Test Driven Development) e o BDD
(Behavior Driven Development).
O quarto captulo aborda os principais conceitos e as reas referentes usabilidade,
alm de a abordar os processos da engenharia de usabilidade e interao humano compu-
tador e as formas de como poder inserir as tcnicas no ciclo de vida de desenvolvimento
emprico.
O quinto captulo aborda os resultados prelimirares durante o planejamento da
aplicao de tcnicas de avaliao da usabilidade para o Portal da Participao Social
7
,
alm do desenvolvimento das funcionalidades para a Rede Comunidade UnB
8
e o Portal
da FGA
9
, a partir da plataforma Noosfero.
O trabalho se encerra com as consideraes nais, assim como as anlises obtidas
de todo o processo do trabalho, am de uma discusso para os prximos passos.
7
<www.participa.br>
8
<comunidade.unb.br>
9
<www.fga.unb.br>
25
2 Mtodos Empricos de Desenvolvimento de
Software
O Empirismo baseia-se na aquisio de sabedoria atravs da percepo do mundo
externo, ou ento do exame da atividade da nossa mente, que abstrai a realidade que nos
exterior e as modica internamente (CHAU, 2003). Mecanismos do controle de processo
emprico, onde ciclos de feedback so a base da tcnica de gerenciamento de projetos.
uma forma de planejar e gerenciar projetos trazendo a autoridade da tomada de deciso
a nveis de propriedade de operao e certeza (SCHWABER, 2004). Neste captulo sero
abordadas algumas ideias e prticas de processo de desenvolvimento de software que
utilizam mtodos empricos, como os mtodos geis e o processo de desenvolvimento de
sofware livre.
2.1 Software Livre
Software livre uma losoa que trata programas de computadores como fontes de
conhecimento que devem ser compartilhados entre a comunidade. De acordo com Stallman
(2001), ativista fundador do movimento software livre, um software deve seguir quatro
princpios:
1. Liberdade de execuo para qualquer uso;
2. Liberdade de estudar o funcionamento de um software e de adapt-lo s suas neces-
sidades
3. Liberdade de redistribuir cpias;
4. Liberdade de melhorar o software e de tornar as modicaes pblicas de modo que
a comunidade se benecie da melhoria.
Um software considerado software livre se segue esses quatro princpios, portanto o
usurio deve poder utilizar, estudar e modicar o software como ele bem entender, no
signica que o software necessariamente de graa, mas a partir do momento em que se
obtm posse de um programa um usurio pode modicar e redistribuir o mesmo programa.
Para Stallman (2001), a partir do momento em que os custos de desenvolvimento de um
software so pagos, no h motivos para restrio de acesso, pois a disseminao de
conhecimento muito mais benca do que potenciais lucros para o produtor.
26 Captulo 2. Mtodos Empricos de Desenvolvimento de Software
2.1.1 Desenvolvimento de um projeto de software livre
Para exemplicar o processo de desenvolvimento de um software livre, nesta se-
o, explicaremos como est denida no guia de desenvolvimento
1
a colaborao no cdigo
do Noosfero, que o estudo de caso deste trabalho. O Noosfero
2
uma plataforma de-
senvolvida pela Colivre (Cooperativa de Tecnologias Livre)
3
, utilizado em universidades
pblicas, para desenvolvimento de redes colaborativas
4
.
Por tratar de um software livre, a plataforma Noosfero possui uma grande quanti-
dade de colaboradores, formado por equipes de desenvolvimento como na Colivre, Univer-
sidade de Braslia e na Universidade de So Paulo, ou por desenvolvedores independentes.
Assim, para que haja sucesso na colaborao, so feitas exigncias durante o desenvolvi-
mento, como testes bem denidos para aprovar novas funcionalidade. Alm da utilizao
da linguagem de programao Ruby, o desenvolvimento da plataforma noosfero tambm
se baseia em JavaScript, CSS, dentre outras linguagens. O desenvolvimento para a plata-
forma Noosfero realizado em ciclos e possui as seguintes fases: desenvolvimento, release
1, release 2 e release nal.
Antes da fase de desenvolvimento for iniciada necessrio que seja feita a do-
cumentao do que ser desenvolvido. Os desenvolvedores responsveis criam um action
item (item de ao), contendo a histria de usurio ou os requisitos da nova funcionali-
dade. Um action item pode ser descrito como uma feature (nova funcionalidade) ou como
um bug (defeito) encontrado.
Alm da documentao, necessrio o envio de um email descrevendo o que ser
desenvolvido, para que a comunidade possa avaliar a funcionalidade descrita e decidir se
uma funcionalidade importante para ser incorporada plataforma.
Com a aprovao da comunidade so feitas as revises do ciclo de desenvolvimento,
que deve seguir os seguintes passos:
1. Criar um merge request juntamente com o cdigo;
2. Cdigo revisado pela comunidade;
3. Cdigo bom?
Se sim:
V para o passo 4;
Se no:
Merge request rejeitado e as razes por tal so comentadas e respondidas;
1
<http://noosfero.org/Development>
2
<noosfero.org>
3
<colivre.coop.br>
4
<http://softwarelivre.org/colivre/blog/projeto-noosfero>
2.2. Mtodos geis 27
Desenvolvedores revisam o que est errado;
4. Cdigo incluido no cdigo principal.
A entrega da release 1 consiste na instalao da nova verso do cdigo no repo-
sitrio de testes, assim como no cdigo principal quando no houver mais defeitos, ou
todos os defeitos encontrados forem tratados devidamente. Porm se algum erro crtico
for encontrado e no for tratado a tempo da release nal, o lanamento pode ser adiado
para a prxima release. J a release 2 no obrigatria, apenas ocorre se houver muitas
mudanas na release 1 e requerer novos testes. Vale lembrar que os procedimentos realiza-
dos para aprovar a release 2 so os mesmos da release 1 Por m, a verso nal do cdigo
lanada aps todos os testes serem aprovados nas releases 1 e 2, assim o cdigo pode ser
atualizado para o cdigo principal do noosfero, encerrando o ciclo de desenvolvimento.
2.2 Mtodos geis
A utilizao de mtodos geis no desenvolvimento de software tem como caracte-
rsticas intrnsecas a exibilidade e rapidez nas respostas a mudanas. A agilidade, para
uma organizao de desenvolvimento de software, a habilidade de adotar e reagir rapi-
damente e apropriadamente a mudanas no seu ambiente e por exigncias impostas pelos
clientes (NERUR; MAHAPATRA; MANGALARAJ, 2005).
Os mtodos geis compartilham valores como comunicao, feedback constante,
colaborao com o cliente e constante adaptao so baseados no manifesto gil
5
. Os
quatro princpios bsicos do manifesto gil mostram o que se espera de qualquer mtodo
de desenvolvimento dessa categoria:
1. Indivduos e interaes sobre processos e ferramentas;
2. Software funcionando sobre documentao extensiva;
3. Colaborao com o cliente sobre negocioao de contrato;
4. Responder s mudanas sobre seguir um planejamento;
Existe uma relao em as prticas geis e o desenvolvimento baseado em soft-
ware livre. Corbucci (2011) fala que o desenvolvimento baseado em software livre vem
crescendo, porm a essncia da comunidade ao redor do programa de manter indiv-
duos que interajam de forma a produzir o que mais importante. As ferramentas apenas
possibilitam isso.
5
<http://manifestoagil.com.br>
28 Captulo 2. Mtodos Empricos de Desenvolvimento de Software
Quanto documentao Corbucci (2011) sugere que documentao completa e
detalhada cresce com a comunidade ao redor do software funcionando, de acordo com a
frequncia que usurios vo encontrando problemas.
Em relao colaborao com o cliente, de acordo com Corbucci (2011) clientes
podem colaborar com projetos baseados em software livre, porm no so induzidos a faz-
lo, por conta da pouca experincia das comunidades em relacionamento com o cliente. No
entanto vrios projetos dependem da habilidade do projeto prover respostas rpidas s
requisies dos clientes.
Em projetos geis, o cliente/usurio mais ativo durante o processo de desenvol-
vimento, determinando em conjunto com a equipe de desenvolvimento o que ser desen-
volvido, alm de participar da validao do o que foi desenvolvido.
Sobre mudanas Corbucci (2011) fala que a habilidade de responder s mudanas
crucial para determinar os projetos que sobrevivem, pois existe um ambiente extrema-
mente competitivo no universo de software livre.
Os projetos geis tambm buscam estabelecer um tempo determinado e curto
para entrega de novas verses do sistema, com o objetivo de trazer mais satisfao ao
cliente/usurio.
A partir desses curtos ciclos, que so as iteraes, a equipe de desenvolvimento
deve se preocupar mais com a evoluo dos requisitos, que pode gerar mudanas, porm
mantm o projeto atualizado e diminui o riscos de grandes mudanas a medida que o
projeto chega ao nal.
Um mtodo gil conhecido como programao extrema (Extreme Programming -
XP), tornou-se bastante popular por utilizar prticas focadas em codicao. O objetivo
principal do XP a excelncia no desenvolvimento de software, visando um baixo custo
e poucos defeitos, de acordo com Sato (2007). O XP conta com algumas prticas de
desenvolvimento para dar suporte busca pelos objetivos citados, essas prticas so:
refatorao, integrao contnua, testes automatizados, cdigo coletivo e programao em
pares.
Em suma, o ambiente de desenvolvimento que este trabalho est inserido base-
ado em mtodos de desenvolvimento empricos de software, como XP e Software Livre,
buscando seguir os princpios geis para o desenvolvimento de software livre, que ser
especicado no captulo 5.
2.3 Consideraes nais
O desenvolvimento baseado em software livre e as prticas geis compartilham os
mesmos valores, pois ambos so mtodos empricos, que buscam tomar decises rpidas de
2.3. Consideraes nais 29
acordo com a percepo do mundo externo. Nos prximos captulos abordaremos como o
desenvolvimento de testes abordado no desenvolvimento emprico e como a usabilidade
inserida neste contexto.
31
3 Testes
Testar uma pratica intrnseca ao desenvolvimento e antiga a necessidade de
criar programas para testar cenrios especcos, de acordo com Everett et al. (2007).
Testes de software sero abordados neste cptulo, iniciando com uma viso geral de testes
automatizados e conhecendo algumas prticas e padres utilizados para desenvolver os
mesmos.
Para Potel e Cotter (1995) a automao de testes uma prtica gil, ecaz e de
baixo custo para melhorar a qualidade dos sistemas de software. No entanto utilizar testes
automatizados como uma premissa bsica do desenvolvimento um fenmeno relativa-
mente recente, com incio em meados da dcada de 1990. Alm do fato de ser uma tcnica
bastante utilizada pelas metodologias geis de desenvolvimento.
3.1 Testes Automatizados
Teste automatizado a prtica de tornar os testes de software independentes da
interveno humana, criando scripts ou programas simples de computador que exercitam
o sistema em teste, capturam os efeitos colaterais e fazem vericaes, tudo automatica
e dinamicamente (MESZAROS; WESLEY, 2007). Os testes automatizados afetam dire-
tamente a qualidade dos sistemas de software, portanto, agregam valor ao produto nal,
mesmo que os artefatos adicionais produzidos no sejam visveis para os usurios nais
dos sistemas (BERNARDO, 2011). Esses testes podem ser divididos em diversos tipos, o
que facilita a manuteno dos mesmos:
1. Testes de unidade: testes de correo responsvel por testar os menores tre-
chos de cdigo de um sistema que possui um comportamento denido e nome-
ado (BERNARDO, 2011). Normalmente, esse teste associado a funes para lin-
guagens procedimentais e mtodos em linguagens orientadas a objetos.
2. Testes funcionais: testes que tem como objetivo vericar a ecincia dos compo-
nentes de um sistema (MOLINARI, 2003).
3. Testes de integrao: denominao ampla que representa a busca de erros de re-
lacionamento entre quaisquer mdulos de um software, incluindo desde a integrao
de pequenas unidades at a integrao de bibliotecas das quais um sistema depende,
servidores e gerenciadores de banco de dados (BERNARDO, 2011).
32 Captulo 3. Testes
4. Testes de interface de usurio: testes que vericam a correo por meio da
simulao de eventos de usurio. A partir desses eventos, so feitas vericaes na
interface e em outras camadas (BERNARDO, 2011).
5. Testes de leiaute: testes que buscam avaliar a interface e vericar a presena
de erros aps a renderizao, difceis de indenticar com testes comuns de inter-
face (BERNARDO, 2011).
6. Testes de aceitao: so testes de correo e validao, idealmente especica-
dos por clientes ou usurios nais do sistema para vericar se um mdulo funciona
como foi especicado (MARTIN, 2005). Testes de aceitao devem utilizar lingua-
gem proxima da natural para evitar problemas de interpretao e de ambiguida-
des (MUGRIDGE; DCUNNINGHAM, 2005).
7. Testes de desempenho: testes que executam trechos do sistema e armazenam
os tempos de durao obtidos, que ajudam a identicar gargalos que precisam de
otimizao para diminuir o tempo de resposta para o usurio (LIU, 2009).
8. Testes de carga: testes que exercitam o sistema sobre condies de uso intenso
para avaliar se a infraestrutura adequada para a expectativa de uso do sistema
(AVRITZE; WEYUKER, 1994).
9. Testes de estresse: teste que visa descobrir os limites do uso da infraestrutura,
isto , qual a quantidade mxima de usurios e requisies que o sistema consegue
antender corretamente e em um tempo aceitvel.
10. Testes de longevidade: testes que tem por objetivo encontrar erros somente vis-
veis com um longo tempo de execuo do sistema, erros que podem ser de cache, re-
plicao, execuo de servios agendados ou vazamento de memria (BERNARDO,
2011).
11. Testes de segurana: os testes de segurana servem para vericar se os dados ou
funcionalidades condenciais de um sistema esto protegidos de fraude ou de usu-
rios no autorizados. A segurana de um sofware pode envolver aspectos de con-
denciabilidade, integridade, autenticao, autorizao, privacidade (WHITTAKER,
2006).
Neste trabalho utilizaremos testes funcionais e testes de unidade para avaliar a
qualidade de software utilizando as prticas geis. Tambm ser abordado neste traba-
lho o desenvolvimento de testes de aceitao para vericar uma possvel relao com a
usabilidade dos sistemas estudados.
3.1. Testes Automatizados 33
3.1.1 Testes de aceitao
Os testes de aceitao, que possuem uma viso mais voltada para o usurio, fazem
parte de uma fase do processo em que um teste de caixa-preta realizado num sistema
antes de sua disponibilizao. Para isso utilizamos o cucumber, uma ferramenta que pode
executar uma funcionalidades escrita em texto puro. Com base nas especicaes da funci-
onalidade, o cucumber executa testes. O cucumber proporciona uma melhor comunicao
entre equipe de desenvolvimento e cliente, por utilizar uma linguagem em texto puro.
No cucumber, uma feature um requisito de alto nvel expressado da pespectiva de uma
pessoa e possui uma estrutura similar as histrias de usurio do XP Chelimskky et al.
(2010). Essa estrutura proposta da seguinte forma:
1. Ttulo: Palavra-chave feature e um ttulo curto que representa o objetivo da fea-
ture.
2. Narrativa: um texto curto que demonstre os cenrios de execuo, exatamente
como a narrativa de uma histria de usurio:
Figura 1 Descrio do ttulo (feature) de um teste
3. Pr condies: representado pela palavra-chave background, dene os passos pre-
cedem cada cenrio de teste.
Figura 2 Descrio de pr condies (background) de um teste
4. Cenrios: representam parte concreta de como o software deve se comportar, e
sendo a parte essencial do teste realizado no cucumber. Aps a palavra-chave sce-
nario dene-se o nome do cenrio em questo:
5. Passos: Cada cenario possui uma srie de passos que demontram o seu compor-
tamento, que so linhas simples iniciadas com as seguintes palavras-chaves: Given,
When, Then, And, But.
6. Given: Indica uma condio inicial para que o cenrio seja executado, trata-se das
pr-condies do cenrio.
34 Captulo 3. Testes
7. When: Indica o evento do cenrio
8. Then: Indica o que esperado aps o evento ocorrer.
Figura 3 Descrio do cenrio (scenario) de um teste
Alm do cucumber, tambm utilizado um software chamado selenium, que
uma ferramenta usada para desenvolver casos de testes a partir de web browsers, como
o mozilla refox. Estas duas ferramentas, cucumber e selenium, utilizadas em conjunto,
proporcionam ao desenvolvedor a facilidade ao escrever os casos de testes em linguagem
pura simular a execuo automtica desses testes em um web browser. Porm o cucumber
no faz tudo em linguagem pura, necessrio que outro cdigo seja desenvolvido, em Ruby,
fazendo par por baixo dos panos com a linguagem pura e executando os testes (AKITA,
2011).
3.1.2 Testes Funcionais e Unitrios
Os testes funcionais tem como objetivo no desenvolvimento na plataforma noosfero,
vericar a integrao da aplicao desenvolvida. Os testes unitrios so executados em
conjunto com os testes funcionais, porm com o objetivo de vericar trechos menores de
cdigos. Assim, os testes funcionais e unitrios so escritos da seguinte forma:
Setup: indica as condies inciais dos testes, setando variveis de ambiente e de
congurao por exemplo.
Figura 4 Descrio do setup de um teste
Ttulo: ttulo do teste iniciado com a palavra should e nalizado com do
Passos: cdigo que dene o comportamento do teste
Vericao: Assertiva que verica se a ao foi realizada como esperada.
3.2. Tcnicas de desenvolvimento de testes automatizados 35
Figura 5 Cdigo de teste
3.2 Tcnicas de desenvolvimento de testes automatizados
Automao de testes uma tcnica voltada principalmente para a melhoria de
qualidade dos sistemas de software. No processo de desenvolvimento de software funda-
mental controlar o custo do processo de testes, para isso baterias de testes automatizados
devem ser bem denidas e implementadas. Assim, importante conhecer boas prticas e
tcnicas de desenvolvimento de testes automatizados. Existem vrias tcnicas de desen-
volvimento de software com testes que inuenciam diretamente na qualidade do sistema.
Essas tcnicas geralmente possuem um processo de atividades pequeno e simples, como
TDD e BDD.
3.2.1 TDD - Test Driven Development
Desenvolvimento dirigido por testes, TDD (Test-Driven Develepment), uma tc-
nica de desenvolvimento de software que se d pela repetio disciplinada de um ciclo
curto de passos de implementao de testes e do sistema (KOSKELA, 2007). O ciclo de
TDD denido pelos seguintes passos:
1. Implementar um caso de teste;
2. Implementar um trecho do cdigo suciente para o novo caso de teste ter sucesso
de tal modo que no quebre os testes previamente escritos;
3. Se necessrio, refatorar o cdigo produzido para que ele que mais organizado;
A tcnica de desenvolvimento dirigido por testes foi denida no livro Test-Driven
Development: By Example por Beck (2002), como representados na Figura 6.
Uma boa prtica do TDD a bateria de testes, que ajuda o desenvolvedor a evitar
erros de regreo, quando o desenvolvimento de uma nova funcionalidade quebra uma j
existente. TDD tambm tende a contribuir com uma alta cobertura de cdigo, uma fez
que o desenvolvedor precisa escrever o testes antes da funcionalidade, possibilitando a
criao de um cdigo mais preciso, coeso e menos acoplado.
Para Massol e Husted (2003), o objetivo de TDD cdigo claro que funciona. TDD
prope o desenvolvimento sempre em pequenos passo, deve-se escrever testes sempre para
36 Captulo 3. Testes
Figura 6 Ciclo de atividades TDD (BECK, 2002)
uma menor funcionalidade possvel, escrever o cdigo mais simples que faa o teste passar
e fazer sempre apenas uma refatorao por vez (BECK, 2002). Assim o desenvolvedor se
detm a criar solues simples, sempre acompanhado de um constante feedback dos testes.
O ciclo curto de passos denidos por TDD cria uma dependncia forte entre codicao e
testes, o que favorece e facilita a criao de sistemas com alta testabilidade (BERNARDO,
2011). ndices altos de cobertura de cdigo e testabilidade no garantem necessariamente
qualidade do sistema, mas so mtricas bem vistas para sistemas bem desenvolvidos.
3.2.2 BDD - Behavior Driven Development
Desenvolvimento dirido por comportamento (BDD - Behavior Driven Develop-
ment) uma prtica que recomenda o mesmo ciclo de desenvolvimento de TDD, contudo,
induzindo a utilizao de uma linguagem ubqua entre cliente e equipe de desenvolvi-
mento, subistituindo termos como assert, assert, test case, test suite por termos mais
comuns ao cliente, como should, context, specication (BERNARDO, 2011).
Embora seja principalmente uma ideia de como um processo de desenvolvimento
de software deve ser gerenciado, a prtica do BDD assume a utilizao de ferramentas
como suporte para o desenvolvimento de software (HARING, 2011). O BDD utiliza essas
ferramentas para que os testes tenham como ponto de partida o compartamento das
funcionalidade do sistema
O BDD coloca em foco o comportamento em vez da estrutura de uma funciona-
lidade e faz isso em todos os nveis de desenvolvimento. Uma vez que ns reconhecemos
isso, muda-se a forma como pensamos sobre desenvolvimento para fora do cdigo. Assim
comeamos a pensar mais sobre as interaes, sobre as pessoas e o sistema, do que sobre
3.2. Tcnicas de desenvolvimento de testes automatizados 37
a estrutura do prprio sistema (CHELIMSKKY et al., 2010).
Para que o comportamento seja analisado, necessrio entender o ponto de vista
do cliente/usurio, entendendo o comportamento que o sistema deve ter a partir da viso
do cliente/usurio. De acordo com Chelimskky et al. (2010), estes so os trs prncipios
do BDD:
1. O suciente suciente: parte da ideia de gerenciar o esfoo no planejamento
inicial do sistema, para no fazer menos nem mais do que o necessrio para comear,
o que se aplica tambm ao processo de automao.
2. Agregar valor s partes interessadas: Se voc est fazendo algo que no agrega
valor ou que no aumenta a capacidade de agregar valor, pare e faa outra coisa em
seu lugar.
3. Tudo comportamento: Do cdigo aplicao, pode-se usar o mesmo pensa-
mento e as mesmas construes lingusticas para descrever o comportamento, em
qualquer nvel de granularidade.
O comportamento do sistema descrito em histrias de usurio, que so escritas
com a participao tanto de clientes como desemvolvedores do sistema. Assim cada histria
de usurio deve seguir, de certa forma, a seguinte estrutura:
Ttulo: do que se trata a histria.
Narrativa: deve identicar as partes interessadas para essa histria, as funciona-
lidades requeridas, e o benefcio deste comportamento. A narrativa de uma histria pode
ter vrios formatos.
Critrio de aceitao: descrio de cada caso especco da narrativa, iniciado
pela especicao da condio inicial do cenrio, seguidos pelos estados que ativam este
cenrio, nalizado pelos estados esperados ao nal do cenrio.
3.2.3 Consideraes Finais
Testes automatizados devem ser desenvolvidos com prioridade, buscando um r-
pido feedback, contribuindo assim com a melhoria do sistema. Para isso necessrio que
os cenrios de testes estejam bem denidos junto equipe.
No prximo captulo abordaremos um estudo sobre usabilidade e como esta rea
inserida no processo de desenvolvimento emprico.
39
4 Usabilidade
Neste captulo abordaremos os conceitos e as reas que esto por trs do termo
usabilidade e as relaes entre cada uma delas, entender a importncia e os benefcios que
a usabilidade trs para os sistemas de software, apresentar os modelos de ciclo de vida
utilizados na interao humano computador e mostrar como podemos inserir a usabilidade
no ciclo de desenvolvimento de software emprico.
4.1 Usabilidade
A usabilidade um termo que comeou a ser utilizado pela Cincia Cognitiva e
depois pela Psicologia e Ergonomia em substituio ao termo amigvel (DIAS, 2006).
A usabilidade um conjunto de propriedades de uma interface que rene os seguin-
tes componentes: fcil aprendizado, ecincia, capacidade de memorizao, baixo ndice
de erros e satifao e prazer ao uso (NIELSEN, 1994). A usabilidade tambm um
atributo de qualidade relacionado facilidade de uso de algo. Refere-se a rapidez com
que os usurios podem aprender a usar alguma coisa, a ecincia deles ao us-la, o
quanto lembram daquilo, seu grau de propenso a erros e o quanto gostam de utiliz-la
(NIELSEN; LORANGER, 2007). Ainda, usabilidade denida como o fator que assegura
que um produto ou servio fcil de usar, eciente e agradvel a partir do ponto de vista
do usurio (PREECE; ROGERS; SHARP, 2007).
A qualidade em uso engloba o contexto do ambiente de trabalho para caracteri-
zar a satisfao de uso, focando no apenas no usurio, mas em seu comportamento ao
interagir com um sistema computacional. O conceito de qualidade em uso mais difundido
o de usabilidade que engloba a facilidade e a ecincia de aprendizado de uso, bem
como a satifao do usurio. Esse conceito de qualidade em uso defendido pela norma
ISO/IEC 9126-1 (2003), que dene usabilidade como capacidade do produto de software
ser compreendido, aprendido, operado e atraente ao usurio, quando usado sob condies
especcas. J a norma ISO/IEC 9241-11 (2003) dene usabilidade como a capacidade
de um produto ser usado por usurios especcos para alcanar objetivos especcos com
eccia, ecincia e satisfao em um contexto de uso especco. Essa norma dene alguns
termos que so amplamente utilizados quando trata-se de usabilidade.
Eccia a capacidade que os sistemas conferem a diferentes tipos de usurios
para alcanar seus objetivos em nmero e com a qualidade necessria.
Ecincia a quantidade de recursos que os sistemas solicitam aos usurios para
a observao de seu objetivos com o sistema.
40 Captulo 4. Usabilidade
Satisfao a emoo que os sistemas proporciona, aos usurios em face dos re-
sultados obtidos e dos recursos necessrios para alcanar tais objetivos.
Tarefa: Objetivo a ser atingido ou um resultado a obter.
Usurios: Pessoas que utilizam alguma instncia do sistema,
Contexto: Conjunto de elementos, onde se destacam: o ambiente fsico, a tecnologia
utilizada e a a motivao.
Adicionalmente, existem metas de usabilidade que servem para guiar o desenvolvi-
mento de produtos fceis de usar, ecientes e agradveis (PREECE; ROGERS; SHARP,
2007). So elas:
1. Utilidade: a medida na qual o sistema propicia o tipo certo de funcionalidade,
de maneira que os usurios possam realizar aquilo de que precisam ou desejam.
2. Eccia: refere-se ao quanto um sistema bom em fazer o que se espera dele.
3. Ecincia: refere-se maneira como o sistema auxilia os usurios na realizao de
suas tarefas.
4. Segurana: implica em proteger o usurio de condies perigosas e sitaes inde-
sejveis.
5. Facilidade de aprendizado: refere-se a qual fcil aprender a usar o sistema.
6. Facilidade de lembrar como se usa: refere-se facilidade de lembrar como utiliza
um sistema, depois de j ter aprendido como usar.
Para entender o que usabilidade e como ela est inserida no ciclo de vida do
desenvolvimento de software, precisamos compreender as relaes que o termo tem com
as diversas reas que a envolve:
Interao Humano Computador: O Termo Human Computer Interaction (HCI) co-
meou a ser adotado na dcada de 1980 para descrever uma nova rea de estudo na
qual se preocupavam em saber como o uso dos computadores poderia enriquecer a
vida pessoal e prossional dos seus usurios (MOARES, 2002). A interao humano
computador tem o principal objetivo de melhorar a eccia e proporcionar satisfao
do usurio. O objetivo do HCI so desenvolver e aprimorar sistemas computacionais
nos quais os usurios possam executar tarefas com segurana, ecincia e satisfao
(PREECE; ROGERS; SHARP, 2007).
4.1. Usabilidade 41
Arquitetura da Informao: A informao algo que est presente no nosso dia-a-
dia. Para Wurman (1991) a informao deve ser aquilo que leva compreenso. A
quantidade de contedo que produzido na Internet extrapola a capacidade humana
de reteno da informao. Esse excesso de informao contribui para o aumento
dos problemas de usabilidade e da necessidade de pesquisa na rea de interao
humano-computador (AGNER, 2004). A arquitetura da informao a arte e a
cincia de estruturar, bem como, de organizar os ambientes informacionais para
ajudar as pessoas a encontrarem e administrarem informaes (GARRET, 2003). O
arquiteto de informao deve ser um prossional multidisciplinar com conhecimentos
em design grco, cincia da informao, biblioteconomia, jornalismo, engenharia de
usabilidade, marketing e cincia da computao. Ele deve balancear as necessidades
do usurio com os objetivos do negcio (ROSENFELD; MORVILLE, 1998).
Ergonomia: A ergonomia est na origem da usabilidade, pois visa proporcionar eccia
e ecincia, alm de bem-estar e sade do usurio atravs da adaptao do trabalho
ao homem. O seu objetivo garantir que sistemas e dispositivos estejam adaptados
s maneiras de pensar, agir e trabalhar do usurio (CYBIS; BETIOL; FAUST, 2010)
.
Design Centrado no usurio: Design centrado no usurio um campo de estudo que
rene metodologias de design nas quais o pblico lvo de um produto ou servio
inuencia as diretrizes e requisitos do sistema (NORMAN, 2006). Para Norman
(2006), cunhador do termo, o design centrado no usurio uma losoa baseada
nas necessidades e interesses dos usurio, com nfase em fazer produtos usveis e
inteligveis. As pessoas que utilizaro um produto ou servio sabem de suas neces-
sidades, metas e preferncias, e papel do design descobrir isso para projetar para
eles essa a losoa por trs do design centrado no usurio (SAFFER, 2010).
Design de Interao: Uma grande parte dos produtos que necessitam da interao do
usurio so feitos olhando apenas na perspectiva da engenharia e se esquecem de seus
reais usurios. O design de interao surge para redirecionar a preocupao que se ti-
nha apenas em produzir algo que funcionasse para produzir algo que sej fcil de uti-
lizar, agrdavel e ecaz na perspectiva do usurio, trazendo a usabilidade para dentro
do processo de design (PREECE; ROGERS; SHARP, 2007). O termo surgiu com
Bill Verplank, que resume design de interao a partir da resposta de trs perguntas
sobre: como voc age? como voc sente? como voc compreende?(MOGGRIDGE,
2006). Uma outra denio de design de interao o design de produtos interativos
que fornecem suporte s atividades cotidianas das pessoas, seja no lar ou no traba-
lho, ou seja, criar experincias que melhorem, estendem a maneira como as pessoas
trabalham, se comunicam e interagem (PREECE; ROGERS; SHARP, 2007).
42 Captulo 4. Usabilidade
Engenharia de Usabilidade: Surgiu no nal dos anos 80 com o esforo sistemtico das
empresas e organizaes para desenvolver programas de software interativo com usa-
bilidade. Sua origem parte de iniciativas de cientistas como Card, Moran e Newell
(Modelo do processador Humano de 1983) e Norman (Teoria da Ao de 1989).
O objetivo era produzir conhecimentos que favorecesse a concepo de interfaces
humano-computador mais adaptadas. Podemos fazer um paralelo da engenharia de
usabilidade com a engenharia de software. A engenharia de software ocupa do de-
senvolvimento do ncleo funcional de um sistema interativo formado por estruturas
de dados, algoritmos e recursos de processamento de dados. Esse ncleo construdo
de forma que o sistema funcione bem, de forma correta, rpida e sem erros. J a
engenharia de usabilidade ocupa-se da interface com o usurio que interliga as fun-
es do sistema com os usurios de forma que a interface do sistema seja agradvel,
intuitivo, eciente e fcil de operar (CYBIS; BETIOL; FAUST, 2010).
Experincia do Usurio - UX: Toda a interao com um produto, servio ou marca.
O termo usado frequentemente para sintetizar toda a experincia com um produto
de software. No engloba somente as funcionalidades e sim o quanto o aplicativo
agradvel ao usurio (LOWDERMILK, 2013). O termo User Experience (UX) foi
cunhado por Donald Norman na dcada de 80 para cobrir todos os aspectos da expe-
rincia da pessoa com o sistema. Acreditava que as denies de interface do usurio
e usabilidade limitava o entendimento sobre o que o trabalho dele representava.
A usabilidade est relacionada com os fatores humanos e corresponde como o
estudo de como usurios se relacionam com qualquer produto. A interao humano com-
putador est baseada na usabilidade e foca no modo como as pessoas se relacionam com os
produtos ligados computao. As reas que trabalham com usabilidade so disciplinas
transversais que agregam diversas reas do conhecimento tais como pscicologia, sociolo-
gia, cincia da informao e da computao, fatores humanos, design grco e indstrial,
ergonomia, comunicao e etc.
4.1.1 Avaliao de Usabilidade
Os mtodos de avaliao so utilizados para avaliar a qualidade das interaes entre
o usurio e o sistema, e para vericar, inspecionar e diagnosticar os aspectos ergonmicos
das interfaces. As avaliaes de interface podem ser divididas de diversas maneiras como
o tipo de dados, formas e o local da avaliao. Quanto a forma, pode ser denida como:
Objetiva: So baseadas em tcnicas que utilizam medies quantitativas, em vez
de opinies dos usurios ou especialistas.
Subjetiva So baseadas em opinies e relatos de usurios e especialisatas.
4.2. Tcnicas e Mtodos da Engenharia de Usabilidade 43
Quanto ao tipo de dados, pode ser denida como:
Quantitativa Envolvem medidas e tendem a ser vistas como objtivas e imparciais.
Qualitativa Envolvem descries e relatos e so vistas como subjetivas.
Quanto ao local da avaliao:
Laboratrio Ocorre em ambientes controlados.
Estudo de Campo ou natural Esto situados no contexto do mundo real no qual
o sistema utilizado.
Antes de denir as tcnicas de avaliao Preece, Rogers e Sharp (2007) identicam
quatro tipos de paradigmas de avaliao: (1) avaliaes rpidas e sujas; (2) testes de
usabilidade; (3) estudos de campos e; (4) avaliaes preditivas. Em relao as tcnicas de
avaliao, Preece, Rogers e Sharp (2007) as dividem em cinco tcnicas de avaliao: (1)
observao e monitoramento; (2) opinio dos usurios; (3) opinies dos especialistas; (4)
testes com os usurios e; (5) Predio. J Cybis, Betiol e Faust (2010) dividem as tcnicas
de avaliao da usabilidade de interfaces em trs grupos. Tcnicas prospectivas; tcnicas
preditivas, diagnsticas, analticas e inspeco e as objetivas, denitivas e empricas.
De acordo com Preece, Rogers e Sharp (2007) cada mtodo de avaliao possui
caractersticas e pode ser aplicado em diferentes situaes. Eles diferem entre si em vrios
aspectos. preciso entender as diferentes caracteriticas de cada mtodo para se denir
qual deles o mais apropriado para avaliar a interface de um software em um determinado
contexto. Cada mtodo pode se diferenciar pela etapa do ciclo que pode ser aplicado,
a tcnica utilizada para coletar dados e os tipos de dados coletados (quantitativa ou
qualitativa).
4.2 Tcnicas e Mtodos da Engenharia de Usabilidade
Esta seo mostra as tcnicas e os mtodos que so utilizados pela interao hu-
mano computador para desenvolver um sistema com usabilidade. De acordo com
BERVIAN, Cervo e SILVA (2002) as tcnicas so procedimentos especcos utilizados por
uma cincia determinada. O conjunto com vrias tcnicas constituem os mtodos. Algu-
mas tcnicas so utilizadas em vrias cincias e os mtodos se adapta s diversas cincias a
medida que h imposio de uso de tcnicas especializadas. Cybis, Betiol e Faust (2010)
divide as tcnicas e os mtodos da engenharia de usabilidade em trs tipos: Concepo,
Anlise e Avaliao.
44 Captulo 4. Usabilidade
4.2.1 Mtodos e tcnicas de concepo
Os mtodos de concepo so utilizados para implementar as especicaes e os
requisitos para a interface a usabilidade de um sistema.
Brainstorming: Bastante utilizado em ambientes geis para obter ideias, entrar em
consenso sobre problemas ou novas propostas.
Storyboard: uma representao das interaes entre os usurios e o sistema em seu
ambiente de trabalho. Corresponde ao detalhamento de um cenrio de uso especi-
cado para o sistema consistindo em uma sequncia de desenhos representando no s
os esboos de telas, mas tambm os elementos do contexto (usurios, equipamentos,
mveis, telefones, colegas).
Card Sorting: uma tcnica usada para descobrir como o usurio classica determi-
nada informao em sua mente. O usurio recebe uma srie de cartes embaralhados
descrevendo contedos e agrupam os cartes que tenham alguma relao. Podem
ser distribuidos cartes com nomes de categorias. O card sorting pode ser aberto ou
fechado podendo ser aplicado tanto de forma presencial ou remota e aplicados para
grupos ou para uma nica pessoa. Recomenda-se no mnimo 15 testes e que cada
teste tenha 2 pessoas.
1
Diagramas de Anidade: So utilizados para organizar uma grande quantidade de
itens em grupos lgicos. Diferente do card sorting, nesta tcnica os projetistas e
usurios trabalham juntos para obter consenso sobre a organizao dos itens. Essa
tcnica pode ser usada para analisar os resultados de estudos de campo e analisar
as concluses de uma avaliao de usabilidade.
Prottipos: Os prottipos de papel so teis para detectar problemas de usabilidade logo
no incio do proceso de design. So usados para esclarecer os requisitos especcos
para o projeto da interface do sistema. So rpidos de construir, permitindo rpidas
interaes de projeto e necessitam de poucos recursos para serem criados. Existem
tambm os prottipos de baixa, mdia e alta que simulam o sistema com mais
delidade do que os prottipos em papel.
4.2.2 Mtodos e tcnicas de anlise
Estes mtodos so utilizados para buscar informaes sobre o contexto de uso
e sobre a usabilidade de um sistema. Podem ser feitas anlises do perl do usurio, o
ambiente de uso, as tarefas, possibilidades e restries do sistema.
1
<www.uxdesign.blog.br>
4.2. Tcnicas e Mtodos da Engenharia de Usabilidade 45
As tcnicas mencionadas baixo visam apoiar os projetistas de interface na busca
de informaes sobre o contexto de uso e sobre a usabilidade de um sistema existente.
Essas tcnicas so empregadas de forma que se complementem-se umas as outras.
Observao: Essa tcnica caracteriza-se por um pesquisador observando o usurio e to-
mando notas, enquanto este trabalha em seu contexto usual. uma tcnica til para
obter dados quantitativos (tempo para as tarefas) e qualitativos (prticas e estrat-
gias do usurio). No planejamento importante denir os objetivos e as maneiras de
como ser registrada os acontecimentos. Deve-se levar em considerao o fato que
muitos usurios por estarem sendo observados podem alterar seu comportamento
ao utilizar a ferramenta. importante que todos estejam cientes dos objetivos do
estudo, deixando claro que no ele que ser avaliado e sim conhecer uma situao
de uso (CYBIS; BETIOL; FAUST, 2010).
Entrevistas Tradicionais: Atravs de entrevistas podemos obter as opinies tanto dos
usurios atuais como dos futuros usurios dos sistemas. Primeiramente importante
identicar as necessidades das pessoas em acessar uma determinada informao.
Eyetracking: uma tcnica que rastrea o movimento dos olhos e da cabea para regis-
trar a tomada de informaes numa interface.
Questionrios de Perl de Uso: utilizado para obter informaes sobre as caracte-
risticas reais dos usurios de um sistema e saber como eles realmente utilizam tais
ferramentas. importante que ao utlizar os questionrios de perl de uso preciso
denir um foco para a sua pesquisa. Deve-se identicar as principais dvidas da
equipe de projeto em relao ao uso do sistema (CYBIS; BETIOL; FAUST, 2010).
Este tipo de questionrio pode ser enviado para os emails dos usurios da ferra-
menta em anlise. importante denir o tamanho de sua amostra. De acordo com
Cybis, Betiol e Faust (2010), de 20 a 30 por cento a taxa de retorno dos questio-
nrios enviados. As respostas podem ser analisadas utilizando mtodos estatsticos.
Questionrios de Satisfao: A aplicao de questionrios um dos mtodos mais uti-
lizados para avaliao da satisfao do usurio. Eles resultam da avaliao subjetiva
pelo usurio, o qual inuenciado pelos tipos de questes aplicadas.
Questionrios de satifao so utilizados principalmente quando existem usurios
experientes que utilizam o sistema com frequncia, podendo ter informaes de-
digna sobre aspectos satisfatrios e insatisfatrios no sistema. Tambm podem ser
aplicados por usurios de uma nova verso de um sistema imediatamente aps um
teste de usabilidade. Essa relao com os testes de usabilidade interessante por per-
mitir a correlao das medidas de desempenho (tempo, frequncia) com as medidas
de satifao do usurio (CYBIS; BETIOL; FAUST, 2010).
46 Captulo 4. Usabilidade
recomendado que se utilize um questionrio padronizado, pois permite a compa-
rao de resultados obtidos por diferentes sistemas. Estes questionrios apresentam
opes de respostas fechadas, o que permite a produo de dados quantitativos e
objetivos (CYBIS; BETIOL; FAUST, 2010).
Um grande nmero de questionrios foram desenvolvidos pela comunidade cient-
ca para a avaliao da usabilidade. Alguns exemplos de questionrios so: QUIS,
SUMI, WAMMI, SUS, ASQ, PSQ, PSSUQ e CSUQ. Os detalhes referentes a cada
questionrio esto detalhados no apndice A.
Grupos de Foco: uma reunio informal de usurios que manifestam suas opinies
sobre o determinado assunto, que pode ser tanto uma oportunidade de novas funci-
onalidades ou algum problema especco. Um moderador deve preparar um roteiro
com uma lista de assuntos a serem tratados. importante que os participantes se-
jam de pers diferentes para que possa ter uma maior diversidade de informaes.
Costuma-se ter em mdia de 6 a 12 usurios em uma mesa de reunies. Os registros
das informaes podem ser atravs de vdeos ou blocos de anotaes. O objetivo no
ter a obteno do consenso em torno das ideias, mas sim ter uma boa quantidade
de opinies sobre o assunto a ser tratados (CYBIS; BETIOL; FAUST, 2010).
Dirios: uma tcnica til quando a experincia do usurio ampla e depende da
utilizao em muitos lugares. Nessa tcnica os usrios carregam consigo um pequeno
dirio para nele anotar as informaes do seu dia-a-dia na utilizao do sistema
(CYBIS; BETIOL; FAUST, 2010).
Benchmarking de Usabilidade: Denido como mtodo sistemtico e contnuo de ava-
liao de sistemas reconhecidos como representantes das melhores e mais ecazes
paticas com a nalidade de comparar desempenhos e identicar oportunidades de
melhoria (SPENDOLINI, 1994).
Esse mtodo parte da denio dos critrios de avaliao e seleo de representan-
tes relevantes para criar uma listagem de caracteristicas desejveis para o futuro
sistema, como tambm os aspectos que so desfavorveis e que devem ser evitados.
Cenrios de uso: uma tcnica simples e ecaz para analisar e comunicar uma parte
das especicaes de requisitos produzidos para a usabilidade e a interface. So
utilizados para comunicar os cenrios atuais de uma tarefa (problema) e o cenrio
futuro (soluo). Os cenrios de soluo deve descrever em linguagem natural, como
determinados usurios realizaro tarefas especcas com o sistema em um determi-
nado contexto. preciso decompor os objetivos dos usurios segundo as operaes
necessrias para alcana-los, identicando as atividades que sero realizadas pelos
usurios (CYBIS; BETIOL; FAUST, 2010).
4.2. Tcnicas e Mtodos da Engenharia de Usabilidade 47
Personas: A tcnica de persona descreve o perl de uma pessoa ctcia envolvida com o
produto. Trata-se de inventar um conjunto de pessoas (trs ou quatro) que estejam
dentro da populao de usurios pretendidos e descrev-las em detalhes. As infor-
maes devem ser qualitativas e coletadas por meio de entrevistas e questionrios
junto populao alvo do sistema. As personas permitem maior entendimento dos
usurios, colocando-os no centro das decises do projeto. Essa tcnica tem objetivos
similares aos de cenrios, porm ao invs do foco ser na tarefa, deve-se ter foco em
uma pessoa que faa parte do pblico alvo do sistema (CYBIS; BETIOL; FAUST,
2010).
4.2.3 Tcnicas e Mtodos de avaliao
Checklists: uma tcnica de inspeo que oferece uma maneira de abordagem rpida,
fcil e de baixo custo para a avaliao de uma interface. Permite com que usurios
que no so especialistas em ergonomia identicarem problemas menores e repe-
titivos (CYBIS; BETIOL; FAUST, 2010). Vrias vantagens so encontradas na
utilizao dessa tcnica como: reduo de custos de avaliao por no precisar de
especialistas; sistematizao das avaliaes; reduz a subjetividade dos processos de
avaliao e fornece um conhecimento ergonmico sobre o que avaliar. O Ergolist
2
um aplicativo que pode ser utilizado para realizar uma inspeo da qualidade
ergonmica da interface com o usurio do sistema.
Avaliao heurstica: Representa um julgamento de valor sobre as qualidades ergon-
micas das interfaces Humano-Computador. Essa avaliao realizada por especialis-
tas em ergonomia e usabilidade. Eles examinam o sistema interativo e diagnosticam
os problemas ou as barreiras que os usurios provavelmente encontraro durante a
interao (CYBIS; BETIOL; FAUST, 2010).
O principal objetivo desse tipo de avaliao avaliar a interface em fases iniciais do
sistema, sem o envolvimento do usurio. Os graves problemas de interface devem ser
localizados antes que realizem os testes de usabilidade com usurios reais (SANTOS,
2012).
As avaliaes mais utilizadas so as 10 heursticas de Nielsen (1994). So elas:
Visibilidade de acordo com o sistema
Mapeamento entre o sistema e o mundo real
Liberdade e controle ao usurio
Consistncia e Padres
Preveno de Erros
2
<http://www.labiutil.inf.ufsc.br/ergolist/check.htm>
48 Captulo 4. Usabilidade
Reconhecer em vez de relembrar
Flexibilidade e Ecincia de uso
Design esttico e minimalista
Suporte para usurio reconhecer, diagnosticar e recuperar erros
Ajuda e documentao
Pesquisas realizadas por Jakob Nielsen fornecem indicaes sobre a quantidade de
avaliadores que devem ser consultados para que possam indenticar grande parte dos
problemas de ergonomia. Cinco avaliadores com experincia tanto em usabilidade
como no sistema consegue identicar 95 por cento dos problemas de ergonomia
enquanto especialistas que conhece apenas de usabilidade identicam 85 por cento.
Figura 7 Nmero de avaliadores (NIELSEN, 1994)
A avaliao heurstica requer pouco planejamento e pode fazer parte de um pro-
cesso interativo de um projeto e aplicado em todas as fases de desenvolvimento da
interface, mas preciso que seja avaliado por especialistas de usabilidade com pleno
conhecimento nas heursticas.
Listas de Vericao: Permitem que prossionais que no necessariamente sejam espe-
cialistas em ergonomia identiquem problemas menores e repetitivos das interfaces.
As normas ISO 9241, partes 10 a 17, fornecem listas de vericao de ergonomia bem
denidas, assim como as fornecidas pelo site Ergolist (CYBIS; BETIOL; FAUST,
2010).
Percurso Cognitivo: Percurso cognitivo um mtodo de inspeo de usabilidade que
tem como objetivo avaliar a interface considerando a facilidade da interface. A -
nalidade do percurso cognitivo fazer com que o design de interao seja fcil de
4.3. Testes de Usabilidade 49
aprender por meio da explorao. Os inspetores aplicam uma lista de vericao
orientada tarefa interativa, abordando os processos cognitivos que se estabelecem
quando o usurio a realiza pela primeira vez (CYBIS; BETIOL; FAUST, 2010).
Teste de Usabilidade: um dos mtodos de teste de experincia do usurio (UX)
mais frequentemente utilizado e conhecido entre aqueles que no so projetistas
da UX. Realizar testes com usurios o ncleo do Design Centrado no Usurio,
pois atravs destes que podemos saber se as reais expectativas dos usurios so
atendidas (SANTOS, 2012). O teste consiste em avaliar o desempenho dos usurios
na execuo de tarefas cuidadosamente preparadas, tarefas estas dentro do escopo do
sistema. Esse desempenho pode ser avaliado no quesito, nmero de erros e tempo
de execuo da tarefa, questionrios e entrevistas tambm podem ser utilizados
(PREECE; ROGERS; SHARP, 2007). Na prxima seo ser detalhado os passos
comuns que devem ser seguidos para a execuo dos testes de usabilidade.
As tcnicas descritas nesse captulo podem ser associadas com vrias outras tcni-
cas e para a escolha de cada tcnica importante examinar as possibilidades dos recursos
necessrios e os disponveis e as expectativas de resultados da avaliao da usabilidade.
Cada tcnica apresentam qualidades diferentes em relao quantidade de problemas
que as indenticam, sistematizao dos resultados, facilidade da aplicao. No estudo
de caso detalhado e planejado no prximi captulo separamos algumas tcnicas que podem
ser utilizadas na avaliao da usabilidade e na identicao dos usurios.
4.3 Testes de Usabilidade
Existem vrios tipos de testes de usabilidade, mas sabe-se que todos eles tm algo
em comum, que observar as pessoas utilizando algo.
Escolher abordagem
As abordagens de pesquisa podem ser de dois tipos: quantitativa ou qualitativas. As
pesquisas quantitativas so focadas nos dados numricos e voltada para fornecer
alta conana e resultados repetidos dentro de seus grupos de usurios. preciso ter
o envolvimento de um nmero maior de participantes para contar as variaes que
voc encontrar de indivduo para indviduo (UNGER; CHANDLER, 2009). As
pesquisas qualitativas no so focadas em nveis de segurana e da possibilidade de
repetio, mas sim ganhar contexto e percepo considerando o comportamento do
usurio. Ela depende da interpretao do projetista sobre as descobertas, a intuio
e o senso comum (UNGER; CHANDLER, 2009).
Os testes quantitativos so como experimentos cientcos que precisam ser rigorosos
ou os resultados no sero conveis. Deve-se denir um protocolo de teste e segui-lo
50 Captulo 4. Usabilidade
consistentemente para todos os participantes (KRUG, 2010). Nos testes qualitativos
voc tenta minimizar a quantidade de interao com o participante para evitar a
inuncia nos resultados (KRUG, 2010).
Para os testes de usabilidade possvel utilizar qualquer uma das abordagens, mas a
qualitativa a mais acessvel para aqueles que no tiveram um treinamento em mto-
dos cientcos mais formais e oferece uma rica fonte de dados (UNGER; CHANDLER,
2009).
Planejar a pesquisa
Algumas questes devem ser respondidas ao criar o teste de usabilidade: Estas
questes te ajudam a oferecer foco e escopo. Abaixo algumas perguntas que devem
ser respondidas no planejamento de sua pesquisa:
Dena seu objetivo: Por que voc est testando?
Dena Usurios: Quem voc est testando?
Dena o mtodo para representar sua aplicao: O que voc est testando?
Quais informaes voc est reunindo?
Nas pesquisas qualitativas geralmente queremos compreender as questes que os
usurios podem encontrar, os nveis de frustaes que eles podem experimentar
e a gravidade de um problema em particular. Para os testes qualitativos devem
se pensar em medidas que sero possveis de ser respondidas com cinco usurios
(UNGER; CHANDLER, 2009).
Taxa de Sucesso: O grau em que o usurio foi capaz de completar a tarefa?
Satisfao do usurio
Usurios
Existem algumas diretrizes que podem ser adotadas para a denio da quantidade
de usurios. Nielsen (1994) deniu algumas dessas diretrizes:
No teste quantitativo planeje uma quantidade maior de participantes. Em m-
dia 20 por rodada de pesquisa.
No teste qualitativo suciente ter entre 5 e 8 participantes.
Krug (2010) defende a ideia de que trs usurios so ideais para realizao de testes
de usabilidade para quem est realizando o teste por conta prpria. Ele arma que
mais fcil encontrar trs participantes do que uma quantidade maior e que bem
provvel que eles j encontrem muitos dos problemas signicaticos relacionados as
tarefas que voc est testando.
4.3. Testes de Usabilidade 51
Em equipes geis, o teste com o usurio realizado com o cliente do projeto e
envolve o especialista em usabilidade como mediador do teste (SANTOS, 2012).
Recrutamento e logstica
Depois de ter feito o plano de pesquisa e denido os tipos de usurios que podem ser
inseridos na pesquisa hora de recrutar os participantes. Para o recrutamento de
participantes interessante gerar uma lista com os potenciais participantes do teste.
Essa lista pode vir de usurios registrados do site da empresa relacionada; informa-
es de contatos do cliente; e-mails para conhecidos que tenha relao com o assunto
do teste; requisies em pequenas pesquisas que pr-qualicam os participantes, e
etc. (UNGER; CHANDLER, 2009).
Voc pode realizar uma ltragem com os participantes potenciais antes de seleciona-
los. As perguntas do questionrio de ltragem devem ser voltadas para:
Garantir que o participante seja um usurio das funes em que voc est
testando.
Determinar se ele se encaixa em um dos seus grupos de usurios.
Ajudar a ter uma boa mistura de participantes.
O questionrio de perl de usurio pode ser utilizado para realizar essa ltragem de
participantes.
Criao de guias de discusso
Para a execuo do teste de usabilidade preciso que as instrues estejem claras
aos participantes, contendo todas as informaes especcas que ele precisar para
completar as tarefas com sucesso.
Os seus materiais de teste deve incluir:
Formulrio de consentimento para gravao de vdeo
Guia de discusso para o participante, com tarefas detalhadas e perguntas
sobre a satisfao do usurio.
Questionrios
4.3.1 Teste da Usabilidade vs. Teste de Aceitao do Usurio (UAT)
O teste de usabilidade e teste de aceitao do usurio muitas vezes so confundidos.
O UAT pode trazer as questes de usabilidade, mas no o nico mtodo para ser utilizado
em um projeto. Por ser feito tardiamente as mudanas baseadas em UAT so muito mais
caras. J os testes de usabilidade foram projetados para oferecer informaes verdadeiras
de desempenho desde o incio do processo. O principal objetivo do teste de aceitao
52 Captulo 4. Usabilidade
do usurio servir como uma vericao nal de que a aplicao atendeu aos requisitos
funcionais estabelecidos pelo cliente (PREECE; ROGERS; SHARP, 2007).
4.4 Processos de Usabilidade
Alguns autores como Mayhew (1999) e Hix e Hartson (1993) proposeram mode-
los de processo baseados em ciclo de vidas bem denidos para as atividades de usabili-
dade.Outro modelo muito utilizado para descrever processos de usabilidade o proposto
pela norma ISO/IEC-13407 (1999).
O termo modelo de ciclo de vida utilizado para representar um modelo que capta
um conjunto de atividades e a maneira como elas se relacionam (PREECE; ROGERS; SHARP,
2007).
4.4.1 Modelo Estrela
Proposto em 1989 por HIX; HARTSON, o modelo de ciclo de vida estrela derivou
do trabalho emprico de entender como os designers lidavam com os problemas de design
em IHC. Eles observaram dois diferentes modelos de trabalho: analtico e o sinttico. O
primeiro parte-se da viso do sistema para a viso do usurio, j o segundo da viso do
usurio para a do sistema (CYBIS; BETIOL; FAUST, 2010).
No modelo estrela no h especicao de ordenamento de atividades. Pode-se
ir de uma atividade outra h qualquer momento, desde que passe primeiramente pela
avaliao. Sempre que uma atividade for completada deve-se avaliar o seus resultados.
Figura 8 Ciclo de Vida Estrela
4.4. Processos de Usabilidade 53
4.4.2 O ciclo de vida da Engenharia de Usabilidade - Mayhew
O ciclo proposto por Mayhew (1999) oferece uma viso holstica acerca dessa
engenharia e uma descrio detalhada de como podemos realizar os testes de usabilidade
A primeira etapa do ciclo a anlise dos requisitos. Mayhew prope quatro tipos
de atividades de anlise de requisitos que so detalhadas abaixo:
Anlise do perl do usurio: Os projetistas devem conhecer os atributos pessoais
e suas habilidades para cada tipo de usurio identicado.
Anlise do contexto da tarefa: Os projetistas devem conhecer os objetivos e
resultados, a estrutura, durao, custos e etc. de cada tarefa a ser realizada.
Anlise das possibilidades e restries da plataforma: Vericar quais so as
possibilidades e restries em termos de equipamentos, sistems operacionais e etc.
Anlise dos princpios gerais para o projeto: Atividade relacionada pes-
quisa e catalogao dos conhecimentos de ergonomia disponvel para a concepo
da interface no tipo de contexto de uso.
Depois da anlise dos requisitos preciso especicar as metas de usabilidade do
futuro sistema. A norma ISO/IEC 9241-11 (2003) orienta como podemos especicar essas
metas.
Na etapa de projetos, testes e implementao, Mayhew props que os ciclos devem
se repetir de forma a tratar trs nivis de aspectos de uma interface: No primeiro nvel
sendo a interface denida conceitualmente; no segundo nvel refere-se as denies em
termos de estilo; e no terceiro nvel as interaes e componentes relacionados com os
contextos das tarefas especiais. A ltima fase a de instalao do sistema onde depois
que o usurio j estiver acostumado com o sistema ele pode dar um feedback sobre a
usabilidade do produto de forma mais dedigna por j ser um especialista"da ferramenta
como cita a autora. Uma das tcnicas utilizadas para coletar feedback so os testes de
usabilidade no local do trabalho dos usurios ou utilizando mtodos de anlise como
entrevistas, observaes, questionrios, grupos de discusses.
4.4.3 Design Centrado no Usurio
O DCU surgiu da IHC e consiste em uma metodologia de design de software para
desenvolvedores e designers. Foi denida pela norma ISO 13407 (Human Centered Design
Processes for Interactive Systems) e tem como objetivo denir um processo necessrio
ao desenvolvimento de produtos fceis de utilizar na qual deve envolver os usurios no
processo de desenvolvimento e na avaliao dos produtos.
54 Captulo 4. Usabilidade
Sabemos que a cincia experimental que utiliza-se dos mtodos empricos tradi-
cionais para coletar dados e testar hipteses sobre o comportamento humano aplicam-se
de vrias tcnicas em nome de pessoas. Essa abordagem preocupada com os usurios
quando as representa mas ela no leva em conta diversos aspectos do usurio real, por
no envolv-los no processo. No basta fazer para o usurio, preciso fazer com o usurio
(EASON, 2005).
No Design Centrado no usurio (DCU) diferente dos mtodos empricos tradicio-
nais que tem o usurio apenas como referncia, no DCU o usurio tem que ser o elemento
central e necessrio envolv-lo do incio ao m do projeto. Baseia-se nas necessidades,
desejos e limitaes das pessoas. Deve-se iniciar com usurios e suas necessidades em vez
de comear com a tecnologia. Lowdermilk (2013) arma que para criar produtos que os
usurio amem, necessrio incluir os usurios no processo de criao dos produtos".
Gould e Lewis (1985) estabeleceram alguns princpios para o desenvolvimento
centrado no usurio na decada 70 que so utilizados at hoje que so: Foco desde o inicio
nos usurios e nas tarefas, medidas empiricas e design interativo. O processo do design
centrado no usurio pode ser dividido em 3 fases: anlise, desenvolvimento e ps-liberao.
4.4.3.1 ISO 13407 e 9241-210
A ISO 13407 dene um processo geral para incluir atividades centradas em humano
atravs do ciclo de vida de desenvolvimento sem especicar mtodos exatos (SANTOS,
2012). A norma caracterizada por quatro princpios: Ativo envolvimento do usurio;
alocao apropriada de funes entre usurios e tecnologia; Testes de soluo de design;
design multidisciplinar. Em 2010 essa ISO foi revista e renomeada para a ISO 9241-210.
Existem quatro atividades de Design Centrado no Usurio que devem estar presentes no
inico do projeto:
Entender e especicar o contexto de uso;
Especicar os requisitos de usurio;
Produzir solues de design;
Avaliar o design frente aos requisitos;
A ISO 13407 prope que o envolvimento do usurio seja uma prtica frequente em
empresas que desenvolvem sistemas interativos.
4.5. Aplicao de usabilidade em mtodos geis 55
Figura 9 Ciclo do design centrado no humano - Norma ISO 13407
4.5 Aplicao de usabilidade em mtodos geis
Os mtodos geis uma abordagem de desenvolvimento que tm como princpios
um conjunto de valores com foco no cliente e nas pessoas envolvidas, na entrega constante
de software funcional, no desenvolvimento iterativo baseado em ciclos curtos de entrega
e na aceitao da constante mudana dos requisitos ao longo do desenvolvimento.
Tanto os mtodos geis e o IHC tem esses mesmos prncipios, o que seria interes-
sante a aplicao das tcnicas utilizadas em IHC no contexto de uma abordagem gil. Essa
semelhana entre os valores proporciona um quadro favorvel integrao minimalista de
paticas de IHC em ambientes geis. Podemos citar alguns desse valores como por exem-
plo: (i) ciclos curtos com entregas contnuas e incrementais, que favorecem a aplicao
de tcnicas de prototipagem; (ii) forte envolvimento do usurio que favorece a aplicao
de princpios de projetos participativos e (iii) programao em pares onde em IHC ge-
ralmente a avaliao de usabilidade feita em pares (BARBOSA; FURTADO; GOMES,
2008).
Segundo Cybis, Betiol e Faust (2010) as caractersticas da abordagem gil facili-
tam na utilizao da ergonomia e da usabilidade durante o desenvolvimento de software,
mas arma que os ergonomistas e engenheiros de usabilidade devero adaptar suas tcni-
cas de anlise, modelagem, projeto e teste adotando-se os preceitos do manifesto gil.
As adaptaes so realmente necessrias, principalmente na questo da granula-
ridade da pesquisa, no tempo gasto com ela e na maneira de relatar as descobertas de
usabilidade (SANTOS, 2012).
Hodgetts (2005) arma que os mtodos geis so quase sempre apresentados
sob a viso dos programadores, deixando de lado outras disciplinas como a UED (User
Experience design). Ele discute em seu artigo as experincias na integrao de prticas
do Desig da experincia do usurio em iniciativas de processos geis em organizaes que
56 Captulo 4. Usabilidade
utilizam XP e Scrum.
4.5.1 Estudos correlatos
Alguns estudos foram feitos tentando fazer essa integrao da usabilidade em m-
todos geis.
Constantine e Lockwood (2002) foi um dos primeiros a iniciar a discusso sobre
o tema. Sua proposta mostrar que UCD est prontamente integrado aos mtodos ditos
leves". Ele arma que XP e os demais mtodos geis compartilham das mesmas fraquezas
apresentadas por processos tradicionais como o processo unicado quando se refere
usabilidade e ao desenho de interface do usurio.
Memmel, Gundelsweiler e Reiterer (2007) mostram que possvel unir IHC e
engenharia de software sob a perspectiva gil com a utilizao de um ciclo de vida de
interface de usurio multidisciplinar e de Engenharia de softwre chamado CRUISER.
Lee, Judge e McCrickard (2011) relata em seus estudos a utilizao da aborda-
gem de usabilidade gil eXtreme Scenario-based design (XSBD) na qual concluram que
os desaos que o time encontrava eram relacionados comunicao, colaborao e com-
partilhamento de informao.
Wolkerstorfer et al. (2008) em seu estudo mostra adaptaes feitas ao processo
do XP. Ele integrou cinco instrumentos de IHC com o processo do XP. Os instrumentos
so: testes de unidade estendidos para avaliao de usabilidade automatizada; Extreme
Personas (variao do mtodo clssico de personas); estudos de usurios para tomar co-
nhecimento sobre o usurio nal; avaliaes feitas por especialistas em usabilidade e testes
de usabilidade com usurios.
LEITE (2013), analisou a utilizao de mtodos de inspeo da usabilidade no
contexto de uma startup. Foi abordado duas modalidades de avaliao heuristica nessa
pequan empresa de desenvolvimento de software que utiliza o mtodo gil Scrum. Como
concluso do estudo, relataram que a avaliao tradicional encontrou mais problemas de
usabilidade e maior nmero de heursticas violadas.J na avaliao heurstica colaborativa
as mdias de severidades atribuidas pelos avaliadores eram maior, no qual encontravam
mais problemas srios do que na avaliao tradicional, alm de o tempo gasto foi menor
do que na tradicional. A avaliao colaborativa apresentou caractersticas que permitia a
melhor integrao com ambientes geis.
4.5.2 DCU gil
Pode ser denido o DCU gil como a prtica de design centrado no usurio quando
conduzida dentro de uma metodologia ou losoa de desenvovlimento gil de software
(SANTOS, 2012). O ciclo de DCU gil foi proposto por Sy (2007) e integra tantos as ati-
4.5. Aplicao de usabilidade em mtodos geis 57
vidades de DCU como as de desenvolvimento em um nico ciclo, trabalhando nas mesmas
caractersticas e garantindo que as investigaes de usabilidade sero tratadas durante a
interao. Segundo Naja e Toyoshiba (2008) o design centrado no usurio pode ser in-
corporado no desenvolvimento gil sem grandes impactos no processo. No mtodo de
desenvolvimento gil scrum, uma funcionalidade desenvolvida, testada e documentada
em uma sprint assim como no design centrado no usurio. Segundo Santos (2012) o
grande desao do DCU gil encontrar a melhor maneira de realizar as atividades de
pesquisa do usurio, design de verses que atendem as necessidades dos usurio, constru-
o de verses interativas e realizao de testes de usabilidade, dentro de um ambiente de
desenvolvimento com mtodos geis, tendo a participao dos usurios tipicos em todas
as atividades.
O termo experincia do usurio utilizado na comunidade gil para qualquer
atividade relacionada com a pesquisa do usurio, DCU, usabilidade, design de interfaces.A
utilizao do termo no indica que eles realizam todas as atividades de UX (SANTOS,
2012). Segundo Dickinson e Kunama (2010) a chave para a integrao de DCU com
mtodos geis assegurar que os resultados da pesquisa de usurio so comunicados e
entendidos de forma ecaz dentro de uma equipe gil.
4.5.3 DCU e XP
Foram encontrados alguns estudos que descrevem a integrao do IHC com as
prticas de Programao Extrema (XP). Segundo McInerney e Maurer (2005) mtodos
geis e design centrado no usurio possuem uma cultura distinta mas eles mostraram que
possivel unir essas duas abordagens.
O processo de usabilidade gil integrar os instrumentos de IHC dentro dos pro-
cessos clssico de XP. Em 2008 foi proposto uma metodologia revisional institulada XPlus
que insere as tcnicas de design e de usabilidade em determinadas fases do ciclo de desen-
volvimento de software.O XPlus agrega algumas prticas de User Experience s prticas
tradicionais de XP. A gura mostra uma viso geral do processo de desenvolvimento de
software de XPlus (GUIMARAES; CHAVES, ).
Essa metodologia considera a interface um dos aspectos mais importantes de um
software.Ela envolve as novas paticas de UX no processo natural de XP.
O papel de designer de interao no reconhecido no ncleo XP da equipe e o XP
no tem nenhum processo explcito para lidar com o design de interao.Em seu estudo
Ferreira, Noble e Biddle (2007) relatam como as equipes combinaram as atividades de de-
sign de interao com o XP. A natureza iterativa de desenvolvimento XP necessrio que
os designers de interao tem envolvimento contnuo com o desenvolvimento do produto
inuenciou a natureza da relao entre os designers de interao e os desenvolvedores.
58 Captulo 4. Usabilidade
Figura 10 Viso geral do processo de desenvolvimento de software de XPlus
Vasconcelos, Garcia e Turnell (2003) descreveram um processo gil centrado em usabili-
dade chamado XPU no qual tinha como objetivo prover equipe de desenvolvimento um
modelo para a construo de sistemas de software centrado no usurio que valorizasse a
usabilidade como caracterstica fundamental da qualidade.
O XPU serve para guiar o time de desenvolvimento, passo a passo em todo o
projeto, seguindo tcnicas e artefatos simplicados am de no se ter apenas sistemas
portteis reutilizaveis ou acoplados, mas sim com uma interface que reetiam as carac-
tersticas e as necessidades dos usurios. Um problema encontrado na sustentao do
processo de desenvolvimento baseado em tcnicas bem denidas, oq eu contraria o mani-
festo gil.
4.6 Princpios geis aplicados ao Design centrado no usurio
Alguns princpios e boas prticas de mtodos geis foram levantadas para a apli-
cao no design de sistemas centrado no usurio.
1. Coompreender e identicar as necessidades reais dos usurios
O Objetivo dessa etapa conhecer o usurio alvo. Deve-se projetar ferramentas
que iro dar suporte aos objetivos e atividades das pessoas. Algumas tcnicas so
utilizadas para identicar as necessidades dos usurios como a observao natural
que serve para responder a questo do tipo: o que e como as pessoas fazem? E as
entrevistas que responde o que as pessoas pensam e dizem. Os resultados da pesquisa
devem ser comunicados para a equipe.
2. Focar na essncia
4.6. Princpios geis aplicados ao Design centrado no usurio 59
O foco na essncia ajuda a desenvolver solues que atendem s reais necessidades
dos usurios diminuindo os riscos de desenvolvimento de funcionalidades com pouco
ou nenhum uso. A ideia desse princpio que deve-se comear a desenvolver apenas
pelo que essencial, comeando pela menor unidade de um sistem sem perder a
viso de um todo.
3. Iterar mais rpido
importante colocar o produto nas mos dos usurios para se ter um feedback o
mais cedo possvel. Quando a iterao feita de forma rpida e comeando cedo
podemos identicar os problemas com antecedncia o que diminui o tempo com
retrabalho e evita que o produto no atenda aos usurios.
4. Criar designs alternativos
Rettig em 1994 disse que para ter uma boa idia preciso que se tenha vrias". A
ideia do autor da frase que devemos pensar e criar vrias solues para um mesmo
problema am de que possa ter mais possibilidades de escolha.
5. Prototipar em baixa resoluo
Os prottipos de baixa resoluo permite visualizar uma soluo de forma mais r-
pida e concreta economizando tempo de design e desenvolvimento. Esses prtotipos
ajuda a comunicar e entender idias e serve para validar uma soluo. A prototipa-
o aumenta a comunicao entre a equipe de desenvolvimento e os usurios nais,
funcionando como uma alternativa barata"para explorar alternativas de desenho.
Um exemplo de prtotipo de baixa delidade seria os storyboards que foi detalhado
na seo de tcnicas de usabilidade.
6. Menos documentao, mais comunicao
essencial que tenha uma boa comunicao em todo o processo entre os desenvol-
vedores, designs e stakeholders envolvidos no projeto.
7. Testes de usabilidades geis
Os testes de usabilidade devem ser feitos em todos os ciclos do projeto. Recomenda-
se que os testes sejam feitos mais vezes e que seja menos formal como so feitos
atualmente. Os resultados encontrados nos testes deve ser comunicado equipe
para que possa corrigir os erros graves rapidamente.
8. O m no o lanamento
No m de cada ciclo lana-se o mnimo adequado s necessidades reais dos usurios.
Ao observar o uso real identicamos que existem novas formas para usar a ferramenta
e podemos propor novas melhorias para o sistema.
60 Captulo 4. Usabilidade
4.7 Consideraes nais
A integrao entre os processos de usabilidade e mtodos geis esperada e possvel
visto que tanto os mtodos geis como os processo de usabilidade em em comum carac-
tersticas que colocam o foco do desenvolvimento nas necessidade e anseios dos usurios
nais, na interao entre os stakeholders envolvidos e na qualidade nal do produto a ser
desenvolvido.
61
5 Estudos de Caso
Neste captulo, apresentaremos os estudos que esto em andamento ao colaborar-
mos com a plataforma livre Noosfero (cujo processo de desenvolvimento foi descrito na
seo 2.1.1), explicitando alguns resultados iniciais, desta primeira fase do trabalho.
O estudo deste trabalho, nesta primeira fase, foi baseado nos seguintes ambientes
de rede social que utilizam a plataforma noosfero: o portal Participa.Br
1
, para as obser-
vaes sobre a usabilidade do Noosfero; a rede Comunidade.UnB
2
e o Portal UnB Gama
3
,
para as observaes sobre os testes automatizados no Noosfero;
O Portal da participao Social (Participa.Br) um portal que agrega informaes
sobre oportunidades de participao social no governo federal e estimula a formao de co-
munidades em torno de temas ligados participao. Informa sobre as consultas pblicas,
oferece ambientes para interao em vdeo e chat em eventos de governo. um repositrio
das metodologias das conferncias de polticas pblicas. O Participa.Br capta demandas
da sociedade que no passem, necessariamente, pelos uxos formais de participao.
uma plataforma para ampliar o debate entre a sociedade civil e o governo.
A rede Comunidade UnB, que se encontra em ambiente de testes, porm disponvel
para acesso externo, uma instncia do Noosfero instalada atravs de um pacote em um
servidor do Centro de Difuso de Tecnologia e Conhecimetno (CDTC)
4
da UnB. O pro-
psito da rede Comunidade UnB tornar-se um ambiente de colaborao entre os alunos
da Universidade de Braslia, tanto de graduao quanto de ps-graduao, possibilitando
criao comunidades e blogs para discusses, ou a disponibilizao de artigos, trabalhos
de graduao e ps-graduao onde qualquer membro da universidade tenha acesso.
O Portal UnB Gama um portal utilizado pela Faculdade do Gama da UnB para
publicaes de notcias sobre a prpria faculdade, realizao de eventos e divulgao de
palestras.
5.1 Estudo sobre Usabilidade: Participa.Br
O Objetivo Global deste estudo de usabilidade analisar a interao dos usurios
com o portal Participa.Br a m de avaliar a qualidade em uso do portal. O Objetivos de
Medio so (1) conhecer quem so os usurios do Participa.Br (2) vericar problemas
de usabilidade no Participa.Br; (3) avaliar de forma subjetiva o grau de satisfao dos
1
Participa.Br
2
comunidade.unb.br
3
fga.unb.br
4
<cdtc.org.br>
62 Captulo 5. Estudos de Caso
usurios com a utilizao do portal Participa.Br. O objetivo deste estudo em si analisar
o Participa.Br, com propsito de avaliar qualidade em uso (ISO/IEC 9126-4), com
respeito satisfao do usurio, do ponto de vista de usurio, no contexto de
portais governamentais.
A partir dos objetivos de medio estabelecidos, foram denidas questes sobre o
que preciso saber de forma a apoi-la a entender se o objetivo especco foi alcanado.
Assim, para cada questo foram denidas as mtricas relacionadas na Tabela 1:
Questes Mtricas
Diretrizes para
interpretao
Q1. Qual o perl do usurio
que utiliza o Participa.Br?
Perl
Anlise de Dados Estatsticos,
criao de personas, anlise
dos dados qualitativos.
Q2. Qual o grau de satisfao
do usurio que utiliza o
Participa.Br
Grau de satisfao
do usurio
Escore da satisfao global
pelo usurio (OVERALL)
Q3. Quantidade de tempo gasto
para realizar as tarefas
Durao Tempo gasto
Tabela 1 Questes de Pesquisa
Foram levantadas algumas hipteses para este estudo experimental no Participa.Br:
1. A mdia do grau de satisfao dos usurios que j utilizaram o portal seria maior
do que quem nunca utilizou?
2. O grau de satisfao dos usurios que j tinha contato com o portal diferente dos
que nunca tiveram acesso?
Estas hipteses foram criadas inicialmente pensando em vericar a diferena na
satisfao entre um usurio que j utilizou o portal com um usurio que nunca utilizou. Em
relao a seleo dos indivduos na primeira fase do experimento sero escolhidos pessoas
com diferentes pers que trabalham na Presidncia da Repblica e que j utilizaram o
Participa.Br. Na segunda fase seriam escolhidas pessoas que nunca utilizaram o portal.
5.1.1 Metodologia
Do ponto de vista de metodolgico, elencamos algumas tcnicas para identicamos
o perl dos usurios do Participa.Br:
1. Dados Estatsticos (Google analytcs, Piwiki, entre outros): Atravs dos dados
estatisticos possvel identicar algumas informaes sobre o perl dos usurios que
acessam o portal. Nas pesquisas quantitativas no so necessrios o contato direto
5.1. Estudo sobre Usabilidade: Participa.Br 63
com o usurio. Esses dados estatsticos podem ser coletados de base de dados, redes
sociais ou sistemas de anlises de sites.
2. Questionrio de identicao de perl dos usurios: Para identicar o perl
dos usurios do Portal da Participao social necessrio realizar uma pesquisa qua-
litativa para levantamento das principais caractersiticas contextuais dos usurios
tpicos, de modo a comprender quem so, qual o conhecimento e experincia com a
internet e como utilizam para realizar seu trabalho acadmico ou prossional. A re-
alizao dessa pesquisa ser feita com os usurios do Portal da Participao Social.
A anlise do questionrio servir para entender o perl dos usurios do Portal da
participao social, atravs da investigao de seus interesses. Foi levantado tambm
algumas questes referentes ao uso das funcionalidades do Participa.Br.
3. Identicao de Personas: Para a denio de usurios podemos utilizar a tc-
nica de Persona que so personagens ctcios criados com base em dados reais.
Os Personas atuam como representantes dos usurios reais e representam as neces-
sidades de um grupo maior. A utilizao de Personas permite ter um maior foco no
usurio, deixando o projeto centrado no usurio. utilizado para a identicao de
requisitos, criao de cenrios e user stories.
As medidas de usabilidade neste estudo foram obtidas considerando-se trs fatores:
eccia, ecincia e satifao de uso. Adotamos como paradigma de avaliao o teste de
usabilidade, que consiste em avaliar o desempenho dos usurios na execuo de tarefas
cuidadosamente preparadas, dentro do escopo do sistema. Esse desempenho pode ser
avaliado nos quesitos: nmero de erros e tempo de execuo da tarefa. Os dados obtivos
consistem em medidas de tempo e desempenho dos participantes.
Elencamos algumas tcnicas para avaliar a usabilidade do portal Participa.Br:
Tcnica Descrio
Observar Usurios Um observador ir registrar o tempo gasto por cada par-
ticipante para concluir o estudo de caso, avaliar a ferra-
menta e se necessitou de alguma ajuda
Perguntar aos usurios Os questionrios ASQ e PSSUQ de satisfao dos usu-
rios ser utilizado para coletar as opinies dos partici-
pantes.
Tabela 2 Tcnicas de avaliao para os testes com usurios
Segundo as pesquisas realizadas no captulo 4 sobre tcnicas de avaliaes de usa-
bilidade, importante que antes que execute um teste de usabilidade seja feito uma
avaliao da usabilidade por parte de especialistas de usabilidade. Atravs das Heurs-
ticas de Usabilidade de Nielsen e das listas de vericao,so vericados os problemas
inerentes ao Participa.Br.
64 Captulo 5. Estudos de Caso
Levantamos algumas tarefas/cenrios que devem ser executadas para a realizao
do teste de usabilidade com o objetivo de medir a satisfao relativa a cada tarefa. As
tarefas foram pensadas levando em considerao as necessidades dos usurios do Par-
ticipa.Br. Tarefas que os usurios-alvo executariam mais frequentemente e tarefas que
poderiam apresentar problemas para a compreenso e execuo do usurio.
Os intrumentos de coletas de informaes utilizados so dois questionrios que
so amplamentes utilizados para medir a satisfao do usurio com produtos interativos e
fornecem medidas padronizadas. So eles o After-Scenario Questionnaire (ASQ)
5
e o Post-
Study System Usabiliy Questionnaire (PSSUQ). O ASQ destinado ao uso em testes de
usabilidade baseados em cenrios. Possui trs itens que abordam os seguintes componentes
de usabilidade: (1) facilidade de concluso da tarefa, (2) tempo necessrio para completar
uma tarefa e,(3) a adequao das instrues ou materiais de apoio fornecidos. O PSSUQ
aplicado apois a concluso de todos os cenrios com o prposito de fornecer uma avaliao
geral geral da usabilidade do sistema. pois permite uma avaliao de usabilidade mais
ampla, podendo avaliar 4 fatores e usabilidade (satifao geral, utilidade do sistema,
qualidade da interface e qualidade da informao).
Em suma, o objetivo do teste de usabilidade exibir os problemas de usabilidade
por meio da voz dos usurios tpicos. Como cada um dos usurios participantes do teste
se comporta na realizao das atividades.
5.1.2 Variveis
a. Independentes
Foram identicadas as seguintes vriavis idependentes:
A interface do Portal da Participao Social
Os cenrios/tarefas para realizao
Perl do usurio
Contexto da avaliao
b. Dependentes
5
ASQ: Proposto por Lewis
5.1. Estudo sobre Usabilidade: Participa.Br 65
Nome Abreviao Entidade
Faixa
de Contagem
Regra de
contagem
Grau de
Satisfao
do Usurio
OVERALL Satisfao
Discordo
Fortemente /
Concordo
Fortemente
Avalia os
itens 1 at 19.
Grau de
Utilidade
do sistema
SYSUSE Utilidade
Discordo
Fortemente /
Concordo
Fortemente
Avalia os
itens 1 at 8.
Grau de
Qualidade
da Informao
INFOQUAL
Qualidade
da Informao
Discordo
Fortemente /
Concordo
Fortemente
Avalia os
itens 9 at 15.
Grau de
Qualidade
da Interface
INTERQUAL
Qualidade
da Interface
Discordo
Fortemente /
Concordo
Fortemente
Avalia os
itens 16 at 18.
Tempo de
durao de
uma tarefa
Tempo Hora* Minutos Cronometro
Taxa de
concluso
da tarefa
Concluso Concluso 0 a 100 %
(Tarefas no
concluidas/
tarefas
concludas)
100
Tabela 3 Tabela de variveis dependentes
5.1.3 Recursos
Estao de trabalho para cada participante.
Navegador de Internet.
Questionrio para a avaliao da usabilidade.
Software de Vdeo (Camtasia - verso trial) ou outro.
5.1.4 Validade dos Resultados
66 Captulo 5. Estudos de Caso
Ameaa Tipo Descrio da ameaa Tratamento
O esforo por pessoas
que j conhecem o portal
poder ser maior do que com
pessoas que nunca teve
contato com o portal.
Externa
Participantes que j
tenha conhecimento do
portal ter uma maior
facilidade de uso
pois j conhecem
a ferramenta.
Realizar tambm a
pesquisa com pessoas
que nunca tiveram
contato com o portal.
Questionrio no preen-
chido
Concluso
Participantes no
preencherem todos os
itens dos questionrios.
Avisar aos participantes
sobre a importncia
de preencher todo
o questionrio.
Quantidade de participantes
insuciente para obter
uma melhor amostra
dos resultados
Externa
Amostra muito pequena
para anlise dos dados.
Realizar outro teste
com pessoas de
diferentes lugares
Tabela 4 Validade dos Resultados
5.1.5 Procedimentos para a execuo
Para a execuo do experimento sero testados alguns cenrios de teste na qual os
participantes devem executar um a um. Todos iro testar os mesmos cenrios.
O estudo se inicia com a leitura da descrio do estudo de caso e como ser a agenda
de atividades. Sero explicados os cenrios que cada um ir executar.
Aps o perodo de explorao do portal e nalizada o estudo de caso (cerca de 30
min), os participantes devem responder o questionrio geral. Enquanto o partici-
pante realiza as atividades, um observador registra se o participante completou os
cenrios sem assistncia e produziu a sada completa do caso de uso.
No nal os participantes preenche um formulrio de feedback.
5.1.6 Avaliao dos Resultados
A avaliao dos resultados do experimento deve considerar o uso de tcnicas es-
tatsticas para analisar os dados e responder as questes referentes ao objetivo especco
estabelecido no planejamento deste estudo.
5.2 Estudo sobre Testes Automatizados - Rede Comunidade UnB
O estudo sobre testes teve seu enfoque na rede colaborativa baseada no noosfero
desenvolvida para a Universidade de Braslia (UnB)
6
. Ao decorrer deste trabalho de gra-
6
<unb.br>
5.2. Estudo sobre Testes Automatizados - Rede Comunidade UnB 67
Tcnica Descrio
Avaliao da Ferramenta
Aplicao do questionrio de usabilidade
para o portal Participa.Br
Registro de ocorrncias
Durante o experimento, um observador ir registrar
todas as ocorrncias referentes avaliao das ferramentas.
Avaliao do Experimento
Ao nal da avaliao das ferramentas os participantes iro
preencher um questionrio geral, avaliando o andamento
do experimento
Relatrio de anlise dos dados
No nal do estudo ser feito um relatrio com a anlise
dos dados e lies aprendidas no que diz respeito
atuao da sua equipe durante a execuo do experimento.
Tabela 5 Avaliao dos resultados
duao, foram desenvolvidos, juntamente com seus respectivos testes, alguns plugins que
sero descritos nesta seo.
5.2.1 Plugin LDAP UnB
Como rede colaborativa dos membros da Universidade de Braslia, o Comunidade
UnB necessita possuir restrio de acesso aos usurios, para que somente membros ativos
da universidade tenham acesso ao contedo da rede colaborativa. Para que esta necessi-
dade fosse satisfeita foi desenvolvido um plugin no noosfero, que efetuasse as restries
necessrias, utilizando o protocolo de autenticao da UnB, o LDAP (Lightweight Direc-
tory Access Protocol ). Para o usurio, o plugin desenvolvido modica a seo de cadastro
de novos usurios e a seo de login. Na seo de cadastro o usurio agora deve cadastrar
a matrcula e senha que o mesmo usa no Matrcula Web
7
da UnB, alm dos dados que j
eram cadastrados anteriormente. Na seo de login o usurio tambm pode entrar no Co-
munidade UnB atravs de sua matrcula e senha do matrcula web da UnB (alm do email
e username, que so as entradas normalmente utilizadas) Nas camadas mais inferiores,
o plugin responsvel por modicar o modelo de dados do sistema, para que o usurio
possa assim cadastrar sua matrcula. Assim o plugin tambm responsvel por congurar
a conexo com o LDAP server da UnB e nalmente vericar se os dados do usurio esto
corretos no momento do seu cadastro. Abaixo encontra-se descritas as histrias de usurio
referente ao plugin Ldap UnB:
1. Plugin Ldap UnB - Cadastro:
Como aluno da UnB e novo usurio
Gostaria de cadastra-me no Comunidade UnB atravs da minha matrcula e senha
do sistemas da UnB
7
<matriculaweb.unb.br>
68 Captulo 5. Estudos de Caso
para utilizar o Comunidade UnB.
Cenrio:
Dado que no estou autenticado
Quando eu entrar em Novo Usurio
E preencher os campos nome de usurio, senha, conrmao de senha, nome
completo, e-mail e matrcula
E clicar no boto Registrar
Ento eu devo ser redirecionado ao perl nome de usurio
2. Plugin Ldap UnB - Login:
Como aluno da UnB usurio do sistema
Gostaria acessar Comunidade UnB atravs da minha matrcula e senha do sistemas
da UnB
para facilitar a utilizao do Comunidade UnB.
Cenrio:
Dado que no estou autenticado
Quando eu preencher os campos nome de usurio e senha
E clicar em entrar
Ento eu devo ser redirecionado ao perl nome de usurio
Realizamos os seguintes testes com o plugin LDAP UnB: testes funcionais e testes
unitrios, que foram executados atravs do prprio noosfero.
Os testes funcionais do plugin LDAP foram divididos em duas categorias, sendo
estas compostas por testes que no dependem do LDAP est congurado e os testes
que dependem do LDAP congurado. Os testes independentes do LDAP so simples,
basicamente vericando as possveis mensagem de errro ou de noticaes durante o
login. Os testes que dependem do LDAP vericam os seguintes fatores:
1. Autenticao de usurio com LDAP;
2. Autenticao de usurio a partir da sua matrcula;
3. Exibio de mensagens de logs
4. Criao de usurio utilizando as propriedades do LDAP;
5. No autenticao de usurio registadro localmente, mas no com LDAP;
6. No autenticao de usurio no registrado localmente, mas com LDAP;
5.2. Estudo sobre Testes Automatizados - Rede Comunidade UnB 69
7. Criao e autenticao de um novo usurio a partir do plugin LDAP;
Tambm executamos testes na interface de administrador do sistema, onde o usurio
tem a opo de ativar o plugin e informar dados de congurao do mesmo, esses testes
vericam os seguintes fatores:
1. Acesso pgina de administrador;
2. Exibio de mensagens de sucesso e de erro;
3. Atualizao do LDAP;
4. Atualizao do host do LDAP;
5. Atualizao da porta do LDAP;
6. Atualizao da conta do LDAP;
7. Atualizao da senha do LDAP;
8. Atualizao da base dn;
9. Atualizao do atributo de login;
10. Atualizao do atributo de email ;
11. Atualizao do ltro do LDAP;
12. Atualizao de TLS;
Os testes unitrios do plugin vericam a denio dos parmetros do LDAP, veri-
cao esta que realizada tanto na passagem dos parmentros quanto na vericao dos
valores de default, outra vericao desses parmetros que tambm feita a tentativa
de criao de uma autenticao no LDAP. Dentre esses parmetros esto os seguintes:
Host do LDAP;
Porta do LDAP;
Conta do LDAP;
Senha da conta;
Base DN do LDAP;
atributo de login do LDAP;
atributo de nome do LDAP;
70 Captulo 5. Estudos de Caso
atributo de email do LDAP;
ltros do LDAP;
TLS do LDAP;
Com o auxlio de uma ferramenta de anlise de cdigo para Ruby chamada Rcov,
foi obtida a taxa de cobertura de cdigo do plugin desenvolvido, alm de alguns dados
sobre a execuo dos testes funcionais e unitrios que seguem abaixo:
Quantidade de testes executados: 96 testes;
Quantidade de assertivas executadas: 111 assertivas;
Quantiadde de falhas obtidas: 0 falhas;
Tempo de execuo dos testes: 7.8 segundos;
Na imagem 11 existem dois grcos de cobertura de cdigo, o primeiro denido
como total coverage representa a contagem realizada com as linhas em branco e os
comentrios do cdigo, j o code coverage representa a contagem realizada sem as linhas
em branco e os comentrios do cdigo.
Figura 11 Cobertura de cdigo do plugin LdapUnb
No desenvolvemos testes de aceitao para o plugin LDAP UnB, pelo fato de ser
uma aplicao que opera a maior parte das suas funcionalidades nas camadas mais baixas
do sistema, alterando muito pouco a percepo do usurio.
5.2.2 Plugin para envio de TCC
Este plugin tambm foi desenvolvido para a plataforma Noosfero, porm em uma
aplico diferente, o Portal UnB Gama. A ideia deste plugin surgiu da necessidade de
5.2. Estudo sobre Testes Automatizados - Rede Comunidade UnB 71
existir um ambiente virtual em que os trabalhos de concluso de curso pudessem ser sub-
metidos aos professores e compartilhados com a comunidade acadmica, buscando assim
manter uma forma de versionamento dos trabalhos desenvolvidos e dispensando a ne-
cessidade de trabalhos de concluso de curso impressos. Este plugin responsvel por
criar uma atribuio de trabalhos, chamada de work assignment. Essa atribuio possui
algumas funcionalidades especcas como possibilitar que os usurios envolvidos sejam
noticados via email sobre a submisso de um certo trabalho. Para tal foi necessrio
instanciar um servidor de email para executar estas noticaes, assim como criar uma
pgina no Portal FGA
8
para que o usurio pudesse submeter seu trabalho. Para validar
o desenvolvimento desta funcionalidade desenvolvemos os seguintes tipos de testes: funci-
onais, unitrio e de aceitao. Abaixo encontra-se descrita a histria de usurio referente
plugin para envio de TCC:
1. Plugin para envio de TCC
Como usurio
Gostaria de submeter um trabalho para uma comunidade, seguindo um formulrio
(ttulo, nome do remetente, email do destinatrio, nome do destinatrio e descrio)
enviando um aviso para ambas as partes
para manter um versionamento do trabalho.
Cenrio:
Dado que estou autenticado como usurio
Quando eu entrar no painel de controle da Minha Comunidade
E entrar em Gerenciar Contedo
E entrar em Novo Contedo
E entrar em Trabalho a ser entregue
E preencher o campo Ttulo
E clicar em Salvar
Ento eu devo ser redirecionado pagina de Gerenciar Contedos
E visualizar o campo Ttulo
Quando eu entrar em Carregar Arquivo
E marcar o campo Enviar noticao
E preencher o campo Assunto
E preencher o campo Destinatrio
E clicar em Enviar
8
urlfga.unb.br
72 Captulo 5. Estudos de Caso
Ento eu devo visualizar Enviando com sucesso
Os testes funcionais do plugin para envio de TCC so responsveis por vericar os
seguintes fatores:
Permisso para enviar trabalhos somente para usurios autorizados;
Capacidade de enviar um arquivo ou mais;
Capacidade de atualizar um arquivo enviado;
Validao de arquivos;
Capacidade de enviar email aos usurios envolvidos;
Tratamento do redirecionamento das pginas;
Capacidade de deletar arquivos por usurios autorizados;
Capacidade de carregar arquivos por usurios envolvidos;
Os testes unitrios deste plugin so responsveis por vericar os seguintes par-
metros:
Nome do plugin;
Descrio do plugin;
Possibilidade de submisso de um arquivo por um usurio;
Nome do arquivo;
Verso do arquivo;
Autor do arquivo;
A ferramenta Rcov tambm foi utilizada para dimensionar a taxa de cobertura de
cdigo do plugin para envio de TCC, segue os dados sobre a execuo dos testes funcionais
e unitrios:
Quantidade de testes executados: 28 testes;
Quantidade de assertivas executadas: 84 assertivas;
Quantiadde de falhas obtidas: 0 falhas;
Tempo de execuo dos testes: 10,5 segundos;
5.2. Estudo sobre Testes Automatizados - Rede Comunidade UnB 73
Na imagem 12 est representado a cobertura de cdigo, extrada da ferramenta
Rcov:
Figura 12 Cobertura de cdigo do plugin para submisso de trabalho
Por m, os testes de aceitao do plugin para envio de TCC so responsveis por
vericar os seguintes fatores:
Capacidade de criar, editar e deletar uma atribuio de trabalhos (work assignment);
Validao de parmetros durante a criao e edio de uma atribuio de trabalhos;
Capacidade de enviar e receber emails sobre o envio de um trabalho;
Capacidade de postar comentrios sobre uma atribuio de trabalhos;
Capacidade de reportar problemas;
Abaixo est descrito um exemplo de teste desenvolvido para o plugin (os demais
testes esto descritos no apndice B):
Feature: send work plugin
As an user
I want to send work with notication email
Background:
Given Work Assignment plugin is enabled
Given the following users
| login | name |
| joaosilva | Joao da Silva |
| josesilva | Jose da Silva |
And the following community
| identier | name |
74 Captulo 5. Estudos de Caso
| mycommunity | My Community |
And Joao da Silva"is admin of My Community"
And I am logged in as admin
And I go to /admin/plugins
And I check Work Assignment"
And I press Save changes"
Then I should see Plugins updated successfully."
1. Scenario: Upload a le to work assignment and send a email
Given I am logged in as joaosilva"
When I follow My Community"
When I go to mycommunitys control panel
And I follow Manage Content"
And I follow New content"
And I follow Work Assignment"
Then I should be on /myprole/mycommunity/cms/new
When I ll in Title"with test"
And I press Save"
Then I should be on /mycommunity/test
When I follow Upload les"
And I check Send notication"
And I attach the le public/images/rails.png"to uploadedles"
And I press Upload"
Then I should be on /myprole/mycommunity/cms/sendemail
When I ll in Title"with Work"
And I ll in Receiver"with josesilva@example.com"
And I ll in Message"with test"
And I press Send"
Then I should see Contact sent successfully"
Aps a execuo dos testes desenvolvidos, obtivemos os seguintes dados:
Quantidade de cenrios executados: 6 cenrios;
5.3. Consideraes nais 75
Quantidade de passos executadas: 130 passos;
Quantiadde de falhas obtidas: 0 falhas;
Tempo de execuo dos testes: 7 minutos e 18 segundos;
5.2.3 Observaes obtidas
O plugin LDAP UnB encontra-se ainda em fase de testes na rede Comunidade.UnB.
O plugin para envio de TCC tambm encontra-se em fase de testes, com um piloto
j disponvel para utilizao pelos alunos de graduao do curso de engenharia de
software da FGA.
A partir da cobertura dos testes do plugin de envio de TCC, foi vericado que
existe uma necessidade de refatorao desta funcionalidade, considerando alguns
aspectos que dicultaram o desenvolvimento de testes desta funcionalidade, como
a duplicao de cdigo. Porm estes resultados preliminares foram considerados
satisfatrios, considerando que outros plugins desenvolvidos pela comunidade do
Noosfero e j homolagados apresentam mtricas semelhantes.
Plugin Stoa: Plugin que inclui funcionalidades ao Stoa, rede colaborativa da
USP (Universidade de So Paulo)
Figura 13 Cobertura de cdigo do plugin Stoa
Plugin Ldap: Plugin que permite autenticao via Ldap;
plugin Statistics: Plugin que permite adicionar um bloco de estatsticas ao
perl do usurio
5.3 Consideraes nais
O desenvolvimento de testes automatizados uma prtica constante no desenvolvi-
mento da plataforma noosfero e importante na validao de novos recursos desenvol-
vidos. Assim conseguimos vericar que a utilizao de prticas de TDD e BDD como
76 Captulo 5. Estudos de Caso
Figura 14 Cobertura de cdigo do plugin Ldap
Figura 15 Cobertura de cdigo do plugin Statistics
base para o desenvolvimento trouxe resultados satisfatrios, como ser mostrado no
captulo a seguir.
Com a proposta de algumas tcnicas de avaliao da usabilidade para o Portal
da Participao Social, vericamos que muitas delas precisam ser adaptadas para
uma melhor adoo nos ambientes de software livre e em mtodos geis. O teste de
usabilidade proposto foi planejado pensando nas prticas clssicas de avaliao da
usabilidade que considerada por vrios autores como uma das melhores maneiras
de avaliar uma interface.
77
6
Consideraes nais
Durante esta primeira parte do trabalho de concluso de curso, estudamos o desen-
volvimento de software emprico e suas caractersticas, assim como a forma que esse
desenvolvimento est ligado com testes automatizados e como as prticas de testes
podem ser aplicadas ou no em um ambiente real de desenvolvimento que j se
encontra estabelecido. Sobre o desevolvimento de testes automatizados, vericamos
que possvel aplicar grande parte das prticas de BDD e TDD no desenvolvimento
de uma nova funcionalidade para a plataforma Noosfero, quando esse desenvol-
vimento est ainda no levantamento da histria, pois observamos diculdades de
desenvolver testes quando o desenvolvimento de uma nova funcionalidade j foi ini-
ciado, o que aconteceu no plugin para o envio de TCC, resultando num desempenho
menor dos testes executados. Tambm observamos que necessrio conhecer a es-
trutura da funcionalidade que ser desenvolvida para saber que tipo de testes tero
mais inuncia no desenvolvimento, como no caso dos testes para o plugin LDAP
UnB, onde decidimos no utilizar os testes de aceitao, por se tratar de uma funci-
onalidade com requisitos de mudanas mais tcnicas, que alteraria pouco o sistema
pela viso do usurio.
Com as pesquisas realizadas sobre usabilidade de software, podemos notar que existe
estudos na rea onde foram criadas metodologias que unem tanto as abordagem geis
com a abordagem centrada no usurio. possvel fazer a integrao das abordagens,
mas necessrio que tenha algumas adaptaes. Os testes de usabilidade clssico,
no qual observa-se uma pessoa enquanto utiliza o software, naturalmente uma
das melhores maneiras de avaliar a usabilidade. Mas, especialmente em ambientes
de software livre muitos outros mtodos so mais viveis (BORCHARDT, 2010).
Cada tcnica e mtodo servem como padres e sua utilidade depende da estrutura
do projeto que a pessoa responsvel pelo teste se encontra.
Muitos desenvolvedores de software livre j sabem da importncia da usabilidade,
mas no sabem como melhor-la e para que as prticas possam ser integradas ao ciclo
de desenvolvimento de software preciso comunicar abertamente suas descobertas
e mtodos a todos os integrantes da equipe. Assim, considerando o que levantamos
neste trabalho, chegamos a algumas hipteses que sero respondidas na segunda
fase deste trabalho.
Como inserir os princpios de usabilidade dentro do processo desenvolvimento
emprico de software?
78 Captulo 6. Consideraes nais
possvel alcanar melhores resultados em testes de usabilidade utilizando
prticas do BDD e TDD, durante o desenvolvimento de software?
Nesse contexto, a ideia do estudo de caso inicial sobre projeto Participa.Br foi co-
nhecer como funciona algumas tcnicas de avaliao da usabilidade. Foi escolhido
o Portal da Participao Social por ser um dos projetos apoiados pela faculdade.
Propomos algumas tcnicas para anlise do perl do usurio: como aplicao de
questionrio de perl de uso, anlise de dados estatsticos e criao de persona do
usurio. A Persona foi criada analisando alguns usurios e atravs de informaes
no perl do portal. Com a persona identicada criamos alguns cenrios de uso do
sistema, na qual as tarefas levantadas faro parte do teste de usabilidade.
Antes de realizar o teste de usabilidade com o usurio importante que sejam
vericadas as tarefas que sero executadas pelos participantes.Essas tarefas podem
ser encontradas atravs da avaliao por heursticas de usabilidade onde podemos
descobrir antecipadamente os principais problemas na interface do sistema.
Para analisar o grau de satisfao do usurio foi feito uma pesquisa com os prin-
cipais questionrios existentes e escolhemos o PSSUQ por ser um questionrio que
possui maior grau de conabilidade e que retorna quatro fatores, sendo esses: Satis-
fao Geral, Qualidade da Interface, qualidade da informao e utilidade do sistema.
Tambm foi escolhido o questionrio ASQ que aplicado depois de cada tarefa exe-
cutada. Alm disso ao aplicar o teste de usabilidade preciso observar atentamente
os passos que os usurio est realizando para concluir cada tarefa.
6.1 Prximos Passos
Aplicamos as tcnicas de usabilidade pesquisadas durante o trabalho, em um pro-
cesso baseado em BDD e TDD, a m de vericar problemas de usabilidade, e sa-
tisfao e uso em um estudo de caso especco, no caso plataforma Noosfero. Para
concluir este estudo, nalizaremos o processo de homologao as funcionalidades
desenvolvidas (plugins) e as mesmas sero disponibilizadas para produo. Alm
disso, os questionrios levantados (PSSUQ e ASQ) sero aplicados ao Participa.Br,
para sabermos o grau de satisfao do usurio. Assim, partiremos para a segunda
fase do trabalho, que ser aplicar o estudo realizado no Portal do Software Pblico,
a m de vericar a inuncia de testes automatizados na usabilidade do sistema,
buscando responder as hipteses levantadas no incio deste captulo. Outro passo a
ser realizado vericar os padres de design e usabilidade adotados pelo Noosfero,
propor e implementar possveis melhorias.
6.1. Prximos Passos 79
6.1.1 Cronograma
Esta seo descreve o planejamento inicial dos prximos passos a serem realizados
no trabalho de concluso de curso 2. Abaixo esto descritas as atividades planejadas:
Fase Atividade Prazo
Planejamento Estudar o plugin (21 de julho)
Levantar testes (28 de julho)
Execuo Aplicar estudo de usabilidade (4 de agosto)
Relatos Levantar problemas (11 de agosto)
Planejamento Propor melhorias (18 de agosto)
Execuo Executar melhorias (1 de setembro)
Relatos Relatar resultados (8 de setembro)
Planejamento Iniciar novo plugin (29 de setembro)
Execuo Inserir prticas (27 de outubro)
Relatos Avaliar prticas bem sucedidas (10 de novembro)
a) Estudar o plugin: Ser realizado um estudo sobre o plugin assets do portal
do software pblico, que j encontra-se em desenvolvimento.
b) Levantar testes: Levantamento de possveis testes a serem incorporados ao
plugin.
c) Aplicar estudo de usabilidade: Aplicao do estudo de usabilidade reali-
zado neste trabalho.
d) Levantar problemas: Levantamento de problemas do plugin, a partir do
estudo aplicado.
e) Propor melhorias: Propor melhorias a partir dos testes de aceitao, a m
de vericar hipteses levantadas.
f) Executar melhorias: Realizar execuo das melhorias propostas para o plu-
gin.
g) Vericar melhorias: Vericar se as melhorias na usabilidade a partir dos
testes de aceitao.
h) Relatar resultados: Descrever os resultados obtidos.
i) Iniciar novo plugin:
j) Inserir prticas: Inserir as prticas estudadas no incio do desenvolvimento
de um novo plugin.
k) Avaliar prticas bem sucedidas: Avaliar o desenvolvimento e denir quais
prticas obtiveram resultados positivos.
81
A
Apndice 1
A.1 Questionrio de Perl do Usurio
Este questionrio foi utilizado para identicar o perl do usurio e algumas de suas
necessidades.
Figura 16 Questionrio de perl do usurio
82 Apndice A. Apndice 1
A primeira parte do questionrio mostra perguntas gerais referentes ao perl social
dos usurios como idade, ocupao/prosso, gnero, formao adadmica e reas
de interesse.
Figura 17 Questionrio de perl do usurio - Continuao
A.1. Questionrio de Perl do Usurio 83
Na seo dois do questionrio, as informaes sobre o uso dos meios de comunica-
o que cada usurio. Informaes sobre locais de acesso internet, velocidade de
conexo, principais redes sociais e as principais atividades que realiza na internet.
Figura 18 Informaes sobre o uso dos meios de comunicao
84 Apndice A. Apndice 1
Na terceira seo do questionrio so feitas perguntas referentes ao engajamento
poltico/social dos usurios como atuaes em movimentos polticos e sociais e par-
ticipaes em manifestaes, alm de saber sobre o meio de informao na qual se
informa sobre os movimentos.
Figura 19 Participaes sociais
A.1. Questionrio de Perl do Usurio 85
Depois que foram preenchidas a primeira parte do questionrio, os usurios que
j usavam o portal da participao social iriam preencher algumas outras questes
referente a utilizao do portal, tentando entender as principais atividades e funci-
onalidades que cada usurio utilizava.
Figura 20 Portal da Participao Social
86 Apndice A. Apndice 1
Na seo cinco do questionrio, as questes servem para conhecer o tempo e o local
de acesso dos usurios do portal da participao social
Figura 21 Ambiente e tempo de acesso no portal
A.2 Questionrio de Satisfao
Levantamos informaes sobre alguns questionrios de satisfao de uso existentes
na literatura e foi feito uma comparao entre cada um deles.
A.2.1 QUIS - Questionnaire for User Interaction Satisfaction
O QUIS mede a satisfao do usurio quanto usabilidade do produto de maneira
padronizada, segura e vlida, a m de obter informaes precisas em relao reao
dos usurios a novos produtos (QUIS, 2009);
A verso atual a QUIS 7.0 (Norman e Shneiderman, 2010), contm um questionrio
onde possui a avaliao da satisfao geral e avaliaes de fatores especcos de
interfaces organizadas hierarquicamente: tela, terminologia e retroalimentao do
sistema, aprendizado, capacidades do sistema, manuais tcnicos, tutoriais online,
multimdia, teleconferncia e instalao de software. Pode ser congurado de acordo
com a necessidade e interesse do usurio.
um questionrio proprietrio, sugerido o uso de planilhas eletrnicas e softwa-
res estatsticos at que se implementem recursos de anlise no servidor web dos
proprietrios.
A.2. Questionrio de Satisfao 87
A.2.2 SUS System Usability Scale
O SUS uma escala de usabilidade do tipo Likert que possui uma viso global e
subjetiva em suas avaliaes de usabilidade. Ele apresenta ao entrevistado uma lista
de perguntas que devem ser respondidas em uma escala de satisfao (indica o grau
de concordncia ou discordncia do usurio) (BROOKE, 1996).
O autor se baseou na armao de que no contexto industrial, as avaliaes com-
pletas no so prticas e requerem muito esforo e custo. O SUS foi criado pela
necessidade de se ter uma avaliao de usabilidade simples e rpida. Os mtodos
de avaliao foram simplicados e o nmero de questes reduzidas, pois uma quan-
tidade grande de questes desanima os usurios que possivelmente no preenche-
ria todas as questes, resultando assim problemas na captura de reaes subjeti-
vas do usurio. Foi ento proposto um questionrio com 10 questes que utiliza
a escala Likert de cinco ou sete pontos. Este questionrio abrange vrios aspec-
tos da usabilidade, tais como: necessidade de suporte, treinamento e complexidade.
(PREECE; ROGERS; SHARP, 2007)
A.2.3 SUMI Usability Measurement Inventory
O SUMI proposto por Kirakowski e Corbett (1988) um questionrio para medio
da qualidade de um software do ponto de vista do usurio, um mtodo consistente
usado para avaliar a qualidade de uso de um produto de software ou prottipo, e
pode ajudar na descoberta de falhas de usabilidade. mencionado na norma ISO
9241 como um mtodo reconhecido para testar a satisfao do usurio. O SUMI
um questionrio comercial.
Inicialmente continha 150 itens onde o participante escolhia se (concordo fortemente,
concordo, no sei, discordo ou discordo totalmente). Atualmente so 50 itens divi-
didos em 5 grupos de 10 itens. Os grupos de itens so: ecincia, afeto, eccia,
controle e aprendizado. Os entrevistados preenchem o questionrio no seu local de
trabalho e devem decidir entre as opes: concordo, no sei ou discordo totalmente.
A.2.4 ASQ The After-Scenario Questionnaire
O ASQ um questionrio de trs itens que so utilizados para avaliar a satisfao
do usurio aps a concluso de cada cenrio/tarefa. So realizadas umas sries de
tarefas que esto de acordo com a realidade do usurio.Este questionrio aborda
questes como: facilidade de concluso da tarefa, tempo para completar uma tarefa
e adequao das informaes de suporte.So questes do tipo Likert, aplicando
uma escala de 1 a 7, onde 1 representa Concordo totalmente e 7 para Discordo
totalmente. (LEWIS, 1995)
88 Apndice A. Apndice 1
O participante gasta em mdia 1 hora pra realizar cada cenrio, no m de cada
cenrio preenchido o questionrio ASQ. Aps completar todos os cenrios, no m
de 1 dia de trabalho (8 horas), os participantes preenchem o questionrio PSSUQ
para avaliao geral do sistema.O ASQ foi aplicado na IBM por diferentes tipos de
usurios, cada grupo possua um tempo de experincia com sistemas de computador,
o que permitiu a anlise psicomtrica do questionrio.
Figura 22 ASQ - The After-Scenario Questionnaire
A.2.5 PSQ The Printer-Scenario Questionnaire
O PSQ uma verso inicial do ASQ, mas difere no formato e numero de itens.
So escalas de 5 pontos com os termos Aceitvel com nota 1 e Precisa de muita
Melhoria com nota 5, e no marcado Para Avaliar (LEWIS, 1995).
A.2.6 PSSUQ The Post-Study System Questionnaire
O PSSUQ fornece uma avaliao global do sistema utilizado. Esse questionrio pos-
sui 19 itens para avaliao da satisfao do usurio com a usabilidade do sistema.
A.2. Questionrio de Satisfao 89
gasto em mdia 10 minutos para completar o questionrio, mas s preciso com-
pletar uma vez o questionrio no m do estudo de usabilidade. (LEWIS, 1995)
Este questionrio ajuda a entender quais aspectos do sistema o usurio est mais
preocupado. Ele avalia as caractersticas como facilidade de uso e de aprendizado,
simplicidade, eccia, informao e a interface com o usurio.
Existem 4 tipos de pontuaes para as respostas aos itens do PSSUQ: Escore da
satisfao geral (OVERALL), a utilidade do sistema(SYSUSE), a qualidade da in-
formao (INFOQUAL) e a qualidade da interface (INTERQUAL).
A escala Global est relacionada com a soma das classicaes ASQ que os partici-
pantes deram aps completar cada cenrio.
Figura 23 PSSUQ The Post-Study System Questionnaire
90 Apndice A. Apndice 1
Figura 24 PSSUQ: The Post-Study System Questionnaire - Questes de 8 19
A.2.7 CSUQ - Computer System Usability Questionnaire
Este questionrio parecido com o PSSUQ, mas a sua redao e diferente. Enquanto
no PSSUQ arma que Eu poderia efetivamente realizar as tarefas e cenrios usando
este sistema o CSUQ escreve: Eu posso terminar meu trabalho de forma ecaz
usando esse sistema?. Na IBM, este questionrio foi aplicado atravs de e-mail,
enviado para funcionrios de diferentes locais, o que houve uma maior quantidade
de participantes, do que feito com grupos reduzidos presencialmente. (LEWIS,
A.2. Questionrio de Satisfao 91
1995) O CSUQ utilizado quando o estudo de usabilidade em um ambiente fora
do laboratrio. A conabilidade relatada foi de 0,93.
A.2.8 Comparativo dos questionrios
Os questionrios ASQ e PSQ so utilizados aps a realizao de um cenrio. Con-
tm os mesmos itens, mas possuem escalas diferentes. O ASQ possui uma maior
conabilidade em relao ao PSQ.
PSSUQ e CSUQ so ambos os questionrios de satisfao global. O PSSUQ utiliza
itens adequados para uma situao de teste de usabilidade, j o CSUQ so apropri-
ados para uma situao de teste de campo. Os questionrios possuem propriedades
psicomtricas aceitveis de usabilidade e podem ser usados com conana como
medidas padronizadas de satisfao. interessante utilizar o PSSUQ junto com o
ASQ.
O ideal que o questionrio seja mais genrico possvel. Cada questionrio possui
um nvel de conana.
Nome Criador Questes Licena Interface Avaliada Conab. Escala
ASQ IBM 3 Aberto Qualquer 0,93
Discordo
Fortemente /
Concordo
Fortemente
CSUQ IBM 19 Aberto
Baseado em
computador
0,95
Discordo
Fortemente /
Concordo
Fortemente
PSSUQ IBM 19 Aberto
Baseado em
computador
0,96
Discordo
Fortemente /
Concordo
Fortemente
SUMI HERG 27 Proprietrio Software 0,89
Discordo
Fortemente /
Concordo
Fortemente
SUS DEC 10 Aberto Qualquer 0,85
Discordo
Fortemente /
Concordo
Fortemente
QUIS UMD 50 Proprietrio - - 0 a 9
Tabela 6 Comparativo dos questionrios
92 Apndice A. Apndice 1
A.3 Portal da Participao Social
A.3.1 Persona
A estrutura da persona foi feita seguindo o modelo criado por Edu Agni, autor do
blog uxdesign.blog.br para o curso de UX Design na qual ele ministra em vrias
cidades do pas.
Persona 1
Nome: Leo Silva
Idade: 27 anos
Localidade: So Paulo
Citao: "Minha vida andar por este pas"
Interesses e motivaes: Comunismo, culinria e poltica
Frustaes: Problemas sociais do Brasil
Background: Estudou Servio Social
Objetivos do usurio: Informas s pessoas sobre as lutas sociais propostas pelo
seu grupo.
Persona 2
Nome: Jos Teixeira
Idade: 45 anos
Localidade: Bahia
Ocupao: Deputado
Interesses: Poltica, movimentos sociais
Background: Lder de movimentos sociais, sindicatos e associaes
Objetivos do usurio: Debater leis, projetos e emendas participativas, criao
de enquetes.
A.3.2 Cenrios
Os cenrios foram levantados atravs de uma anlise do que era permitido de re-
alizar no portal e quais seriam mais importantes para as principais atividades de
um usurio. Foram pensadas levando em considerao as necessidades dos usurios
do portal da participao social. Tarefas que os usurios-alvo executariam mais fre-
quentemente e tarefas que poderiam apresentar problemas para a compreenso e
execuo do usurio.
Atravs das redes sociais e do perl do usurio no portal da participao social foi
identicado que uma das atividades mais realizadas pelos usurios so de edio de
A.3. Portal da Participao Social 93
textos no blog do perl, alm da criao de mecanismos de participao social como
a votao em pares (parwise).
Entender o perl do usurio um dos principais pontos que devem ser levados em
considerao pelos desenvolvedores de software em geral. Cada perl de usurio tem
suas particularidades e suas expectativas quanto a utilizao do sistema.
a) Faa seu cadastro no portal Participa.Br e ative sua conta.
b) Personalize o seu perl inserindo uma foto, escolha 5 categorias de interesse.
c) Localize e adicione Jnatas Medeiros de Mendona sua rede.
d) Localize e ingresse na comunidade Participao Social. Informe a quantidade
de membros.
e) Localize a pessoa Henrique Parra Filho e infome a quantidade de amigos, n
o
de comunidades.
f) Jos deseja criar um artigo para seu blog. Ele possui o texto j criado em doc,
mas precisa inserir alguns outros detalhes em seu artigo como: links, imagens,
tamanhos de fonte e subttulos e inserir a licena de uso.
g) Joo necessita criar um outro artigo e inserir a mesma imagem.
h) Visualizar galeria de imagens, remova a imagem adicionada e adicione novas
imagens.
i) Entre no portal e acesse o painel de controle e modique a aparncia de seu
perl.
j) Escreva uma descrio para o seu blog e inseria uma imagem.
k) Crie um contedo para sua pgina e adicione um item de menu para esse novo
contedo.
l) Adicione um novo bloco na pgina de seu perl.
m) Crie um questionrio Pairwise.
A.3.3 Problemas levantados com as questes
Ao realizar uma vericao das tarefas levantadas foram analisados alguns proble-
mas de usabilidade que o portal apresentava:
a) Ao editar um texto, apenas voltando no navegador e tentar salvar novamente
no ser mais possvel devido o sistema considerar como um novo artigo e
aparece uma mensagem de erro. O problema encontrado nessa mensagem de
erro se d pelo fato da mensagem vir em ingls, dicultando a leitura por
muitas pessoas.
94 Apndice A. Apndice 1
b) Ao colocar o item como justicado no funcionava, ento no possvel saber
se o texto realmente caria justicado.
c) No comeo, uma das dvidas era aonde inserir a imagem, a primeira tentativa
foi pelo cone de imagem do prprio editor de texto, que ao abrir o pop up
precisava ser redimensionado. Utilizando essa funo do editor o usurio pre-
cisaria saber do link da imagem o que inviabilizaria. Essa opo ento deve ser
usada apenas para redimensionar a imagem.
d) Ao inserir uma imagem no informado ao usurio quais as mdias podem ser
inseridas e nem o tamanho permitido.
e) Na insero de uma imagem, quando arrasta o nome da mdia para o texto,
aparece um link escrito (adicionar Artigo) ao invs da imagem;
f) Na busca da imagem, caso o usurio no lembre o nome da imagem ser im-
possvel adiciona-la. Se o usurio escolher inserir mdia e escolher a mesma
imagem acontecer um erro e no ser possvel adicionar a imagem devido que
ela j existe na pasta. Mas no informado o por que no conseguiu inserir a
imagem.
g) Na galeria de imagens existe um boto chamado remover que pode confundir o
usurio pensando que serviria para remover a imagem, e ao clicar era removido
toda a galeria. O navegador deu aviso, mas veio em ingls.
h) Outro problema encontrado nao se refere a questo de usabilidade em si, mas
de aparncia no tema Confernce na qual os cones dos menus no esto for-
matados.
i) Na criao do questionrio pairwise, o problema encontrado que no h ex-
plicao do que seria esse tipo de questionrio.
A.3.4 Ferramenta de anlise de websites
Utilizamos uma ferramenta de anlise de websites, Woorank
1
, para vericar alguns
problemas existentes no portal da participao social.
Em relao ao acesso em dispositivos mveis foram encontrados alguns problemas
como lentido e no renderizao na pgina em celulares.
1
<http://www.woorank.com/>
A.3. Portal da Participao Social 95
Figura 25 Printabilidade - Portal da Participao Social
Figura 26 Validaes - Portal da Participao Social
Figura 27 Carregamento de Pgina - Portal da Participao Social
96 Apndice A. Apndice 1
Figura 28 Renderizao de pgina em dispositivos mveis
Figura 29 Carregamento por dispositivos mveis - participa.br
97
B
Apndice 2
B.1 Cenrios dos testes de aceitao - plugin para envio de
TCC
Feature: send work plugin
As an user
I want to send work with notication email
Background:
Given Work Assignment plugin is enabled
Given the following users
| login | name |
| joaosilva | Joao da Silva |
| josesilva | Jose da Silva |
And the following community
| identier | name |
| mycommunity | My Community |
And Joao da Silva"is admin of My Community"
And I am logged in as admin
And I go to /admin/plugins
And I check Work Assignment"
And I press Save changes"
Then I should see Plugins updated successfully."
2. Scenario: Create a work assignment and continue edition
Given I am logged in as joaosilva"
When I follow My Community"
When I go to mycommunitys control panel
And I follow Manage Content"
And I follow New content"
98 Apndice B. Apndice 2
And I follow Work Assignment"
Then I should be on /myprole/mycommunity/cms/new
When I ll in Title"with test"
And I press Save and continue"
Then I should be on /myprole/mycommunity/cms/edit/13
3. Scenario: Cant create work assignment without name
Given I am logged in as joaosilva"
When I follow My Community"
When I go to mycommunitys control panel
And I follow Manage Content"
And I follow New content"
And I follow Work Assignment"
Then I should be on /myprole/mycommunity/cms/new
When I ll in Title"with "
And I press Save"
Then I should see There were problems with the following elds:"
4. Scenario: Cant create work assignment without le
Given I am logged in as joaosilva"
When I follow My Community"
When I go to mycommunitys control panel
And I follow Manage Content"
And I follow New content"
And I follow Work Assignment"
Then I should be on /myprole/mycommunity/cms/new
When I ll in Title"with test"
And I press Save"
Then I should be on /mycommunity/test
When I follow Upload les"
And I press Upload"
Then I should be on /myprole/mycommunity/cms/uploadles
B.1. Cenrios dos testes de aceitao - plugin para envio de TCC 99
5. Scenario: Cancel create work assignment
Given I am logged in as joaosilva"
When I follow My Community"
When I go to mycommunitys control panel
And I follow Manage Content"
And I follow New content"
And I follow Work Assignment"
Then I should be on /myprole/mycommunity/cms/new
When I ll in Title"with test"
And I press Save"
Then I should be on /mycommunity/test
When I follow Upload les"
And I follow Cancel"
Then I should be on /mycommunity/test
6. Scenario: Edit work assignment
Given I am logged in as joaosilva"
When I follow My Community"
When I go to mycommunitys control panel
And I follow Manage Content"
And I follow New content"
And I follow Work Assignment"
Then I should be on /myprole/mycommunity/cms/new
When I ll in Title"with test"
And I press Save"
Then I should be on /mycommunity/test
When I follow Edit"
And I ll in Title"with test2"
And I press Save"
Then I should be on /mycommunity/test2
100 Apndice B. Apndice 2
7. Scenario: Delete a work assignment
Given I am logged in as joaosilva"
When I follow My Community"
When I go to mycommunitys control panel
And I follow Manage Content"
And I follow New content"
And I follow Work Assignment"
Then I should be on /myprole/mycommunity/cms/new
When I ll in Title"with test"
And I press Save"
Then I should be on /mycommunity/test
When I follow Edit"
And I follow Delete"
And I conrm the browser dialog
Then I should see /test"was removed./
101
Referncias
AGNER, L. Arquitetura da informao: Testes de sabilidade. 2004. Citado na pgina
41.
AKITA, F. A controvrsia test::unit vs rspec/cucumber. 2011. Citado na pgina 34.
AVRITZE, A.; WEYUKER, E. J. Generating test suites for software load testing in
international symposium on software testing and analysis (issta). 1994. Disponvel em:
<http://dl.acm.org/citation.cfm?id=186258.186507>. Citado na pgina 32.
BARBOSA, D. F.; FURTADO, E. S.; GOMES, A. S. Uma estratgia de apoio
institucionalizao da usabilidade em ambientes de desenvolvimento gil. In:
SOCIEDADE BRASILEIRA DE COMPUTAO. Proceedings of the VIII Brazilian
Symposium on Human Factors in Computing Systems. [S.l.], 2008. p. 214223. Citado
na pgina 55.
BECK, K. Test-Driven Development by Example. [S.l.]: Addison-Wesley Prefessional,
2002. Citado 3 vezes nas pginas 9, 35 e 36.
BERNARDO, P. C. Padres de testes automatizados. Dissertao (Mestrado)
Instituto de Matemtica e Estatstica Universidade de So Paulo, 2011. Disponvel em:
<http://www.teses.usp.br/teses/disponiveis/45/45134/tde-02042012-120707/>. Citado
3 vezes nas pginas 31, 32 e 36.
BERVIAN, P. A.; CERVO, A. L.; SILVA, R. d. Metodologia cientca. So Paulo, 2002.
Citado na pgina 43.
BORCHARDT, J.-C. Usability in free software - freedom 4: The freedom to use
the program eectively, eciently and satisfactorily. 2010. Disponvel em: <http://
jancborchardt.net/usability-in-free-software>. Citado na pgina 77.
BROOKE, J. Sus-a quick and dirty usability scale. Usability evaluation in industry,
London: Taylor and Francis, v. 189, p. 194, 1996. Citado na pgina 87.
CHAU, M. Convite a losoa. [S.l.: s.n.], 2003. Citado na pgina 25.
CHELIMSKKY, D. et al. The RSpeec Book: Behaviour-Driven Development with RSpec,
Cucumber, and Friends. [S.l.: s.n.], 2010. Citado 2 vezes nas pginas 33 e 36.
CONSTANTINE, L. L.; LOCKWOOD, L. Process agility and software usability: Toward
lightweight usage-centered design. Information Age, v. 8, n. 8, p. 110, 2002. Citado na
pgina 55.
CORBUCCI, H. Mtodos geis e software livre: um estudo da relao entre estas duas
comunidades. Tese (Doutorado) Universidade de So Paulo, 2011. Citado 2 vezes nas
pginas 27 e 28.
CYBIS, W.; BETIOL, H.; FAUST, R. Ergonomia e Usabilidade: Conhecimentos, Mtodos
e Aplicaes. [S.l.: s.n.], 2010. Citado 9 vezes nas pginas 41, 42, 43, 45, 46, 47, 48, 52
e 55.
102 Referncias
DIAS, C. Usabilidade na Web: Criando websites mais acessveis. [S.l.: s.n.], 2006. Citado
na pgina 39.
DICKINSON, J.; KUNAMA, D. How user-centered design can put user stories in proper
contex. New Riders Press, Pearson Education, 2010. Citado na pgina 56.
EASON, K. D. User-centred design: for users or by users? 2005. Citado na pgina 53.
EVERETT, G. D. et al. Software Testing. [S.l.: s.n.], 2007. Citado na pgina 31.
FERREIRA, J.; NOBLE, J.; BIDDLE, R. Interaction designers on extreme programming
teams: Two case studies from the real world. In: Proceedings of the Fifth New Zealnad
Computer Science Research Student Conference. [S.l.: s.n.], 2007. Citado na pgina 57.
GARRET, J. The Elements of user experience. [S.l.: s.n.], 2003. Citado na pgina 41.
GIL, A. C. Mtodos e tcnicas de pesquisa social. 3. ed. So Paulo:r. [S.l.: s.n.], 1991.
Citado na pgina 21.
GOULD, J. D.; LEWIS, C. Designing for usability: key principles and what designers
think. Communications of the ACM, ACM, v. 28, n. 3, p. 300311, 1985. Citado na
pgina 53.
GUIMARAES, C. P.; CHAVES, C. v. F. G. Xplus: Integrando o design de interfaces
centrado na experincia do usurio ao processo de desenvolvimento de software com
extreme programming. Citado na pgina 57.
HARING, R. Behavior driven development: Beter dan test driven development. Java
Magazine, 2011. Citado na pgina 36.
HIX, D.; HARTSON, H. R. Developing User Interfaces: Ensuring Usability Through
Product &Amp; Process. New York, NY, USA: John Wiley & Sons, Inc., 1993. ISBN
0-471-57813-4. Citado 2 vezes nas pginas 51 e 52.
HODGETTS, P. Experiences integrating sophisticated user experience design practices
into agile processes. In: IEEE. Agile Conference, 2005. Proceedings. [S.l.], 2005. p.
235242. Citado na pgina 55.
ISO/IEC 9126-1. NBR ISO/IEC 9126-1: Engenharia de software - Qualidade de produto,
Parte 1: Modelo de qualidade. [S.l.], 2003. Citado na pgina 39.
ISO/IEC 9241-11. NBR ISO/IEC 9241-11: ERequisitos ergonmicos para o trabalho
com dispositivos de interao visual Parte 11: Orientaes sobre usabilidade. [S.l.], 2003.
Citado 2 vezes nas pginas 39 e 53.
KIRAKOWSKI, J.; CORBETT, M. Measuring user satisfaction. In: CAMBRIDGE
UNIVERSITY PRESS. Proceedings of the Fourth Conference of the British Computer
Society on People and computers IV. [S.l.], 1988. p. 329338. Citado na pgina 87.
KOSKELA, L. Test Driven: Pratical TDD and Acceptance TDD for Java Developers.
[S.l.]: Manning Publications, 2007. Citado na pgina 35.
KRUG, S. Simplicando coisas que parecem complicadas. [S.l.: s.n.], 2010. Citado 2
vezes nas pginas 49 e 50.
Referncias 103
LEE, J. C.; JUDGE, T. K.; MCCRICKARD, D. S. Evaluating extreme scenario-based
design in a distributed agile team. In: CHI 11 Extended Abstracts on Human Factors in
Computing Systems. New York, NY, USA: ACM, 2011. (CHI EA 11), p. 863877. ISBN
978-1-4503-0268-5. Disponvel em: <http://doi.acm.org/10.1145/1979742.1979681>.
Citado na pgina 55.
LEITE, S. F. C. Inspeo de usabilidade aplicada a mtodos geis: Um estudo de caso.
2013. Citado na pgina 56.
LEWIS, J. R. Ibm computer usability satisfaction questionnaires: psychometric
evaluation and instructions for use. International Journal of Human-Computer
Interaction, Taylor and Francis, v. 7, n. 1, p. 5778, 1995. Citado 4 vezes nas pginas
87, 88, 89 e 90.
LIU, H. H. Software Performance and Scalability: A Quantitative Approach (Quantitative
Software Engineering Series). [S.l.: s.n.], 2009. Citado na pgina 32.
LOWDERMILK, t. Design Centrado no Usurio: Um guia para o desenvolvimento de
aplicativos amigveis. [S.l.: s.n.], 2013. Citado 2 vezes nas pginas 42 e 53.
MARTIN, R. C. The test bus imperative: Architectures that support automated
acceptance testing. 2005. Disponvel em: <http://www.martinfowler.com/ieeeSoftware/
testBus.pdf>. Citado na pgina 32.
MASSOL, V.; HUSTED, T. JUnit in Action. [S.l.]: Manning Publications, 2003. Citado
na pgina 36.
MAYHEW, D. The usability engineering lifecycle: a practitioners handbbok for user
interface design. [S.l.: s.n.], 1999. Citado 2 vezes nas pginas 51 e 52.
MCINERNEY, P.; MAURER, F. Ucd in agile projects: dream team or odd couple?
Interactions, ACM, v. 12, n. 6, p. 1923, 2005. Citado na pgina 56.
MEMMEL, T.; GUNDELSWEILER, F.; REITERER, H. Agile human-centered software
engineering. In: Proceedings of the 21st British HCI Group Annual Conference on People
and Computers: HCI...But Not As We Know It - Volume 1. Swinton, UK, UK: British
Computer Society, 2007. (BCS-HCI 07), p. 167175. ISBN 978-1-902505-94-7. Disponvel
em: <http://dl.acm.org/citation.cfm?id=1531294.1531317>. Citado na pgina 55.
MESZAROS, G.; WESLEY, A. XUnit Test Patterns: Refactoring Test Code. [S.l.: s.n.],
2007. Citado na pgina 31.
MOARES, A. M. Design e Avaliao de Interface. [S.l.: s.n.], 2002. Citado na pgina 40.
MOGGRIDGE, B. Design Interactions. [S.l.: s.n.], 2006. Citado na pgina 41.
MOLINARI, L. Teste de Software. Produzindo Sistemas Melhores e Mais Conveis.
[S.l.: s.n.], 2003. Citado na pgina 31.
MOREIRA, T. et al. Proposta de processo de desenvolvimento distribudo de software
livre com usabilidade. 2012. Citado na pgina 19.
MUGRIDGE, R.; DCUNNINGHAM, W. Fit for Developing Software: Framework for
Integrated Tests. [S.l.: s.n.], 2005. Citado na pgina 32.
104 Referncias
NAJAFI, M.; TOYOSHIBA, L. Two case studies of user experience design and agile
development. In: Agile, 2008. AGILE 08. Conference. [S.l.: s.n.], 2008. p. 531536.
Citado na pgina 56.
NERUR, S.; MAHAPATRA, R.; MANGALARAJ, G. Challenges of migrating to agile
methodologies. [S.l.: s.n.], 2005. Citado na pgina 27.
NIELSEN, J. Usability engineering. [S.l.: s.n.], 1994. Citado 5 vezes nas pginas 9, 39,
47, 48 e 50.
NIELSEN, J.; LORANGER, H. Usabilidade na web: Projetando websites com qualidade.
[S.l.: s.n.], 2007. Citado na pgina 39.
NORMAN, D. O design do dia-a-dia. Rocco, 2006. ISBN 9788532520838. Disponvel em:
<http://books.google.com.br/books?id=8zd8PgAACAAJ>. Citado na pgina 41.
POTEL, M.; COTTER, S. Inside Taligent Technology. [S.l.]: Taligent Press, 1995.
Citado 2 vezes nas pginas 20 e 31.
PREECE, J.; ROGERS, Y.; SHARP, H. Design de Interao: Alm do homem
computador. [S.l.: s.n.], 2007. Citado 8 vezes nas pginas 19, 39, 40, 41, 43, 48, 51 e 87.
ROSENFELD, L.; MORVILLE, P. Information architecture of the world wide web. [S.l.:
s.n.], 1998. Citado na pgina 41.
SAFFER, D. Designing for Interaction: Creating Innovative Applications and Devices.
New Riders, 2010. (Voices that matter). ISBN 9780321643391. Disponvel em: <http://
books.google.com.br/books?id=k28yVW3SEyYC>. Citado na pgina 41.
SANTOS, A. P. Aplicao de prticas de usabilidade gil em software livre. 2012. Citado
8 vezes nas pginas 19, 20, 47, 48, 50, 54, 55 e 56.
SATO, D. T. Uso ecaz de mtricas em mtodos geis de desenvolvimento de software.
2007. Citado na pgina 28.
SCHWABER, K. Agile Project Management with Scrum. [S.l.]: Microssoft Press, 2004.
Citado na pgina 25.
SPENDOLINI, M. J. Benchmarking. [S.l.: s.n.], 1994. Citado na pgina 46.
STALLMAN, R. M. Free Software: Freedom and Cooperation. 2001. Disponvel em:
<http://www.gnu.org/events/rms-nyu-2001-transcript.txt>. Citado na pgina 25.
SY, D. Adapting usability investigations for agile user-centered design. Journal of
usability Studies, New Riders Press, Pearson Education, v. 2, n. 3, p. 112132, 2007.
Citado na pgina 56.
UNGER, R.; CHANDLER, C. O Guia para projetar a experincia do usurio (UX) para
projetistas de contudo digital, aplicaes e web sites. [S.l.: s.n.], 2009. Citado 2 vezes
nas pginas 49 e 50.
VASCONCELOS, C.; GARCIA, F.; TURNELL, M. Integrando usabilidade e engenharia
de software: um modelo para o desenvolvimento de sistemas centrado no usurio.
WIHC-ES2003, Rio de Janeiro, 2003. Citado na pgina 57.
Referncias 105
VICENTE, A. A. Denio e gerenciamento de mtricas de teste no contexto de mtodos
geis. Dissertao (Mestrado) USP - Universidade de So Paulo, 2010. Citado na
pgina 19.
WHITTAKER, M. A. J. A. How to break Web software: functional and security testing
of Web applications and Web services. [S.l.: s.n.], 2006. Citado na pgina 32.
WOLKERSTORFER, P. et al. Probing an agile usability process. In: ACM. CHI08
Extended Abstracts on Human Factors in Computing Systems. [S.l.], 2008. p. 21512158.
Citado na pgina 55.
WURMAN, R. S. Ansiedade de Informao. [S.l.: s.n.], 1991. Citado na pgina 40.

Potrebbero piacerti anche