Você está na página 1de 10

XPlus: Integrando o Design de Interfaces Centrado na

Experiência do Usuário ao Processo de Desenvolvimento de


Software com eXtreme Programming
Carina Piauhy Guimarães1 , Christina von Flach Garcia Chaves1
1
Departamento de Ciência da Computação – Universidade Federal da Bahia (UFBA)
Salvador, BA – Brasil
carinapiauhy@gmail.com,flach@ufba.br

Abstract. The Extreme Programming agile development methodology aims to


develop quality software promptly, economically and flexibly. However, XP ap-
plies little emphasis to the interface project and its usability, which are funda-
mental factors to user satisfaction. A systematic quasi-review was carried out so
that it was possible to identify and characterize works that aim to get around this
issue. This essay proposes XPlus, a methodology which integrates user experi-
ence (UX) driven interface project practices with the XP methodology, which
attempts to deliver software usability without compromising the software devel-
opment agility. A case study was carried out to allow for a preliminary usability
evaluation from a software respectively developed with XPlus.

Resumo. A metodologia ágil Extreme Programming busca desenvolver soft-


ware de qualidade de maneira ágil, econômica e flexı́vel. Entretanto, XP dá
pouca ênfase ao projeto da interface do software e sua usabilidade, um dos
fatores fundamentais para satisfação de seus usuários. Uma quasi-revisão sis-
temática foi realizada para identificar e caracterizar trabalhos que buscam con-
tornar esse problema. Este trabalho propõe a XPlus, uma metodologia que inte-
gra práticas de projeto de interface voltado para a Experiência do Usuário (UX)
com práticas XP, buscando favorecer a usabilidade sem comprometer a agili-
dade do desenvolvimento. Um estudo de caso foi realizado com o objetivo de
realizar avaliação preliminar da usabilidade do software conduzido com XPlus.

1. Introdução
Uma das principais maneiras de fazer com que o usuário conquiste seus objetivos e que
fique satisfeito ao usar um sistema de software é disponibilizar uma interface intuitiva,
fácil de ser utilizada e eficiente [Nielsen 1993]. O design de interface centrado na ex-
periência do usuário (User Experience ou UX) [Nielsen 1993] propõe que a interface seja
mais que visualmente agradável – ela deve se comportar da forma que o usuário espera
que ela se comporte [Tidwell 2005]. Uma interface mal projetada pode representar perda
de potenciais vendas e uma alta desistência dos usuários em utilizá-la [Nielsen 1993].
Desse modo, o design, a implementação e a validação da interface de um software, cen-
trados na experiência do usuário, são reconhecidos como atividades importantes que não
deveriam ser negligenciadas durante o desenvolvimento das funcionalidades do software.
A metodologia ágil eXtreme Programming (XP), proposta por Kent Beck [Beck 2000],
tem despertado o interesse crescente da indústria de software. XP sugere várias práticas,
princı́pios e valores, de forma a desenvolver um produto final com alta qualidade, cus-
tos razoáveis e que atenda, efetivamente, às necessidades do cliente. O software é de-
senvolvido de forma incremental e iterativa. A cada iteração do projeto, o cliente re-
cebe uma parte do software em funcionamento que possa ser colocada em produção
[Cockburn 2001]. Acredita-se que construir o software em escopos pequenos diminui
o risco de falhas de cronograma, de erros de orçamento ou de liberar um software com
baixa qualidade [Martin 2003].
Entretanto, observou-se que apesar de sua preocupação com a satisfação do cliente
e com o bem-estar da equipe de desenvolvimento, a metodologia XP ainda fornece pou-
cas recomendações sobre o projeto e desenvolvimento de interface, sendo a maioria de
suas práticas voltadas para o desenvolvimento do código da aplicação [Beck 2004]. Em
especial, XP não incorpora práticas relacionadas ao design de interface centrado na ex-
periência do usuário.
Nesse contexto, este trabalho apresenta XPlus, uma nova metodologia que propõe
a integração entre práticas de design de interface centrado na experiência do usuário aos
valores e práticas da metodologia ágil XP. O ponto de partida da metodologia proposta
foi a condução de uma quasi-revisão sistemática [Kitchenham 2004] com o objetivo de
identificar e caracterizar trabalhos relacionados. A partir caracterização dos trabalhos
identificados, seus pontos fortes e limitações, XPlus foi proposta e documentada como
uma adaptação à metodologia XP. Para avaliar XPlus, um estudo de caso piloto foi con-
duzido, envolvendo equipes de programadores que utilizaram a metodologia proposta no
desenvolvimento de um software.
Este artigo está estruturado da seguinte forma. A Seção 2 descreve a Revisão
Sistemática [Kitchenham 2004]. Tal processo promove uma revisão da literatura feita
de forma não-tendenciosa, rigorosa, transparente e que pode ser reproduzida por ou-
tros pesquisadores. A Seção 3 detalha a metodologia XPlus proposta, explicitando as
práticas de XP adaptadas e as práticas UX inseridas. A Seção 4 descreve o estudo de
caso realizado para a avaliação da XPlus tendo como base a metodologia proposta por
Wohlin [Wohlin et al. 2000]. A Seção 5 conclui o trabalho, apresentando as principais
contribuições e possibilidades para trabalhos futuros.

2. Quasi-revisão Sistemática
Antes de propor uma nova metodologia de desenvolvimento de software, foi realizada
uma revisão da literatura com o objetivo de investigar a existência de trabalhos de integração
do design centrado na experiência do usuário com o processo de desenvolvimento de soft-
ware com XP. Devido ao estudo não contemplar diferentes fontes de dados e não permitir
comparação com outros trabalhos, a definição correta para essa revisão de literatura é a
de quasi-revisão sistemática. Para conduzi-la, foi utilizada a metodologia proposta por
Kitchenham [Kitchenham 2004].
As questões da pesquisa foram:

• Q1: Existem metodologias na literatura que integram o desenvolvimento de soft-


ware com XP e o design de interfaces centrado na experiência do usuário?
• Q2: Se sim, quais são essas metodologias?
• Q3: Quais as principais caracterı́sticas dessas metodologias?
As palavras-chaves utilizadas foram: Agile Software Development, Agile, XP,
Extreme Programming, User Experience, Usability, Human-computer interaction, HCI.
A fonte de pesquisa para essa revisão sistemática foi o portal da ACM Digi-
tal Library [Library 2009]. A string de busca utilizada foi: (‘Extreme Programming’,
‘XP’, ‘Agile’, ‘Agile Software Development’) + (‘User experience’, ‘Usability’, ‘Human-
Computer Interaction’, ‘HCI’).
A busca foi executada entre 01/09/2009 e 12/09/2009 e identificou 29 artigos. Foi
feita uma pré-seleção a partir do tı́tulo e resumo dos artigos e, dessa forma, foram descar-
tados artigos irrelevantes ao estudo. Onze artigos foram pré-selecionados, todos escritos
em português ou inglês e disponı́veis na web. O processo de seleção de artigos foi docu-
mentado através dos formulários de seleção de estudo. Dos 11 artigos pré-selecionados,
5 contemplaram os critérios de seleção dos estudos e tiveram seus dados extraı́dos, anali-
sados e documentados [Guimarães 2009].
Para a caracterização dos artigos não foi realizado nenhum tipo de experimento.
As considerações reportadas foram baseadas apenas no estudo dos mesmos.
Os seguintes artigos foram analisados:

• Artigo 1: Agile human-centered software engineering [Memmel et al. 2007];


• Artigo 2: Probing an agile usability process [Wolkerstorfer et al. 2008];
• Artigo 3: Scenario-based usability engineering techniques in agile development
processes [Obendorf and Finck 2008];
• Artigo 4: UCD in agile projects: dream team or odd couple? [McInerney and Maurer 2005];
• Artigo 5: Uma Estratégia de Apoio à Institucionalização da Usabilidade em Am-
bientes de Desenvolvimento Ágil [Barbosa et al. 2008].

A figura 1 mostra a compilação das práticas apresentadas nos artigos.

Figura 1. Resumo sobre as práticas de XP utilizadas


Em relação aos artigos 2 e 3, os autores citam que foi utilizado o processo clássico
de XP. Nesses casos, consideramos que todas as práticas XP foram utilizadas.
A figura 2 mostra as práticas de UX descritas pelos artigos selecionados. Apesar
dos artigos apresentarem boas práticas tanto de XP quanto de UX, alguns deles, como o
artigo 1, deixam de lado aspectos importantes da metodologia XP. Outros artigos, como
o artigo 2, não utilizaram práticas de UX consideradas de grande valia para o projeto de
interfaces, por exemplo, a construção de protótipos.

Figura 2. Resumo sobre as práticas UX utilizadas

Os artigos 4 e 5 não tratam de nenhuma metodologia ágil e apenas sugerem que


algumas práticas de User Experience sejam utilizadas em conjunto com o método de
desenvolvimento ágil. Por não se concentrarem em XP, acabam perdendo particularidades
interessantes da metodologia.
O fator mais relevante e que motivou a proposta de uma nova metodologia foi a
constatação de que algumas metodologias, como a apresentada no artigo 3, introduzem
um grande número de novas práticas, tornando o processo de desenvolvimento complexo
demais e comprometendo um dos principais valores de XP: a simplicidade [Beck 2004].

3. XPlus
A metodologia XPlus induz um processo de software que agrega algumas práticas de User
Experience às práticas tradicionais de XP. A Figura 3 mostra uma visão geral do processo
proposto, detalhado nas seções seguintes.

3.1. Preparação do projeto


A equipe de desenvolvimento deve estimular o diálogo com o cliente na tentativa de co-
nhecer seu perfil e suas necessidades. Nesse momento a equipe conseguirá apenas uma
visão geral do projeto e, por isso, deve ser receptiva a mudanças ao longo do projeto. O
cliente também deve estar disposto a colaborar com a equipe sempre que necessário para
o bom andamento do projeto.
Seguindo XP, antes do inı́cio do projeto, deve ser preparado todo o ambiente, tanto
fı́sico quanto virtual. Devem ser escolhidas as ferramentas, linguagem de programação
e banco de dados. O contrato de escopo negociável [Beck 2004] também é utilizado
Figura 3. Visão geral do processo de desenvolvimento de software de XPlus

pela XPlus. Após as partes concordarem com o modo que será feito o trabalho, e assim
que a equipe de desenvolvimento tiver uma visão geral do projeto e o ambiente estiver
preparado, pode-se dar inı́cio a primeira iteração.

3.2. Especificação do software


A primeira fase em uma iteração é decidir quais funcionalidades e interfaces serão im-
plementadas. Essa escolha deve ser tomada em conjunto por clientes e desenvolvedores
e, para que seja feita de forma simples e organizada, Kent Beck [Beck 2000] propõe a
dinâmica do Jogo do Planejamento.
Como, após a etapa de preparação, a equipe já conhece um pouco sobre as pre-
ferências e necessidades do cliente, na primeira iteração já pode ser discutido o layout
da aplicação. Aspectos de cores e formas da interface já devem ser abordados em um
protótipo inicial, que deve ser continuamente melhorado ao longo do projeto.
Nesse momento também devem ser elaboradas as estórias em conversas entre
equipe de desenvolvimento e clientes. Os clientes devem expor tudo aquilo que desejam
obter como resultado da iteração que se inicia. Para auxiliá-los nesse momento, os de-
senvolvedores devem construir protótipos de baixa fidelidade das interfaces e reportar aos
clientes como acreditam que a interface deve ser construı́da.
Ao visualizar os protótipos, os clientes podem sugerir mudanças e ter novas ideias.
A partir do feedback recebido, a equipe deve refinar o protótipo e, depois de aceito pelo
cliente, registrá-lo no verso do cartão da estória. Na frente do cartão, deve ficar o registro
do usuário das funcionalidades solicitadas. O modelo de cartão de estória de XPlus deve
conter os seguintes campos: nome, descrição, estimativa e prioridade.
Os cartões de estórias servirão como um lembrete à equipe do que o cliente deseja,
uma vez que não traz informações especı́ficas de como devam ser implementados.
Com os cartões de estórias construı́dos (funcionalidades e protótipos), a equipe de
desenvolvimento deverá estimá-los. O método para as estimativas deve ser semelhante
ao do Jogo do Planejamento em XP. O diferencial, nesse caso, é que deve ser levada
em consideração a dificuldade do desenvolvimento das interfaces. Daı́ a importância
da construção dos protótipos antes das estimativas, pois o valor estimado pode variar a
depender da complexidade de cada interface.
Após todas as estórias estimadas e já com o acréscimo da folga [Beck 2004], o
cliente deverá escolher quais são as estórias prioritárias para serem desenvolvidas naquela
iteração que se inicia. Só devem ser escolhidas uma quantidade de estórias que seja menor
ou igual ao tempo total de desenvolvimento da iteração, mesmo que, para isso, estórias
sejam deixadas fora daquela iteração.
3.3. Desenvolvimento de software
Um cartão de estória descrito pelo usuário é a representação de uma funcionalidade na
aplicação. Porém, a sua implementação geralmente requer uma série de passos que po-
dem, em alguns casos, serem desenvolvidos em paralelo. Para facilitar a implementação
da funcionalidade e permitir que mais de um desenvolvedor trabalhe na mesma estória,
assim como XP, XPlus recomenda que os desenvolvedores quebrem as estórias em cartões
de tarefas. Uma mesma tarefa pode atender a mais de uma estória e uma estória é com-
posta por uma ou mais tarefas. Atividades relacionadas com a interface da aplicação
também deverão ser descritas em cartões de tarefas.
As tarefas também devem ser estimadas. Essa estimativa não precisa ser exposta
ao cliente, sendo necessária para controle interno da equipe. A equipe deverá estipular
um máximo de tempo para estimativa de cada tarefa. Se a estimativa de uma tarefa for
maior do que esse tempo, a tarefa deverá ser quebrada em tarefas menores.
Observando as interdependências entre as tarefas e a prioridade dada pelo cliente
a cada estória, a equipe de desenvolvimento deve organizar os cartões em uma pilha, na
qual o cartão do topo representa aquele que deve ser implementado primeiro. Um cartão
de tarefa deve conter os seguintes campos: nome da estória, nome da tarefa, descrição
da tarefa, estimativa da tarefa, prioridade da estória, nome do membro que aceitou a
responsabilidade pela implementação da tarefa.
As tarefas estimadas e priorizadas devem ficar numa pilha de comum acesso a
todos os membros da equipe. Quando for iniciar uma atividade, um membro deverá pegar
a tarefa do topo da pilha. A partir daı́ será de sua responsabilidade o desenvolvimento
daquela atividade. Ao escolher um cartão, o membro deverá preencher o seu nome como
responsável pelo mesmo.
Durante a implementação do sistema, XPlus recomenda fortemente a utilização
das práticas de XP “Sentar-se junto”, “Trabalho Energizado”, “Programação em par”,
“Integração contı́nua”, “Build de 10 minutos”, “Design incremental”, “Código coletivo”,
“Código e testes”, “Base de código unificada”.
O desenvolvimento de todo o código e interface deverá ser feito aos pares. Para
a implementação das tarefas que envolvem implementação de interface, a dupla deverá
ser formada por um profissional de implementação e um profissional de interface que, em
XP, é chamado de Designer de Interação. Assim, com a diversidade de conhecimento,
a solução proposta fica bem mais completa. Durante a implementação das interfaces, a
XPlus recomenda a utilização de padrões de design de interfaces [Tidwell 2005].
3.4. Validação
Como a dupla possuirá um designer de interação, enquanto o desenvolvedor implementa a
tarefa, o designer avalia a interface segundo heurı́sticas definidas pela equipe. A sugestão
da XPlus é utilizar as heurı́sticas propostas por Nielsen [Nielsen 1994].
A validação em relação ao código deve ocorrer semelhante ao processo de XP,
com Desenvolvimento Orientado a Testes (TDD). O designer de interação também deverá
estar atento ao código, realizando o trabalho tradicional do par no desenvolvimento que é
propor testes e refatorações, auxiliando o desenvolvedor a implementar soluções simples
e bem descritas.
Após a finalização de uma iteração, o cliente deverá dar seu parecer sobre o sis-
tema. A equipe deverá apresentar ao cliente o produto daquela iteração e todos os cartões
escritos durante o jogo do planejamento. Baseado no que sugeriu para o sistema, o cliente
deverá validar a aplicação tanto em termos de funcionalidades quanto em relação à inter-
face. Entretanto, mesmo que o cliente valide a aplicação, não garantimos que os usuários
reais da aplicação farão bom uso da mesma. Para isso, XPlus indica a realização de testes
de usabilidade [Dumas and Redish 1999] com os usuários que irão utilizar o sistema.
Antes de iniciar a execução dos testes é preciso realizar uma preparação. A equipe
deve decidir previamente o que será testado, como será testado e quais objetivos gerais do
teste.
Para se adequar ao valor de ‘simplicidade’ do XP e ao princı́pio básico das metodolo-
gias ágeis “software funcionando vale mais do que documentação extensa”, o esquema de
planejamento proposto por Jackob Nielsen [Nielsen 1993] foi simplificado em XPlus, re-
sultando no seguinte modelo:
• Objetivo;
• Data prevista para execução dos testes;
• Local previsto para realização dos testes;
• Tempo estimado para duração de cada teste;
• Materiais necessários para a execução dos testes;
• Estado inicial da aplicação para inı́cio da execução dos testes;
• Facilitadores dos testes;
• Participantes dos testes;
• Critério de conclusão dos testes;
• Dados coletados;
• Critérios de sucesso dos testes;
• Métricas que serão coletadas durante a execução dos testes: As métricas podem
variar de acordo com os objetivos gerais dos testes;
• Tarefas a serem realizadas.
Os testes devem ser realizados sempre com a presença de um facilitador. Será o fa-
cilitador que irá observar o comportamento do usuário enquanto utiliza a aplicação e ten-
tar, a partir daı́, extrair informações que ajudem na melhoria da usabilidade da aplicação.
Após identificadas as falhas daquela iteração, elas poderão ser descritas em cartões de
tarefas e serem corrigidas nas próximas iterações. Com o fim de uma iteração, o cliente
deve ser convocado para receber o produto daquela iteração e iniciar a nova especificação
da iteração que inicia.

4. Estudo de Caso
O objetivo do estudo de caso realizado foi investigar se as práticas de projeto de interface
voltadas para a experiência do usuário propostas pela XPlus no desenvolvimento de um
projeto em XP melhoram aspectos de usabilidade no mesmo.
O método de condução do estudo é o proposto por Claes Wohlin [Wohlin et al. 2000],
com definição dos seguintes elementos:
• Objeto de estudo: O objeto de estudo são duas iterações em um projeto de desen-
volvimento de software que utiliza a metodologia de XP. Em uma iteração serão
utilizadas apenas práticas de XP; em outra iteração, além das práticas de XP, serão
utilizadas algumas práticas propostas pela XPlus relacionadas com projeto de in-
terfaces voltados para a experiência do usuário;
• Propósito: O propósito desse estudo é avaliar se a utilização da metodologia pro-
posta nesse trabalho, a XPlus, melhora a qualidade final do projeto de software no
aspecto de usabilidade da aplicação;
• Perspectiva: O estudo será realizado pela perspectiva do facilitador dos testes de
usabilidade realizados ao final de cada iteração;
• Foco: O foco será a eficiência da utilização da XPlus;
• Contexto: O experimento será executado utilizando as iterações de dois projetos
dos alunos de graduação das disciplinas de Engenharia de Software do curso de
Ciência da Computação da UFBA. Os usuários que realizarão os testes de usabil-
idade no sistema são alunos de graduação entre o 8o e 9o perı́odo do Curso de
Ciência da Computação da UFBA.
Na primeira iteração foram implementadas três estórias e na segunda quatro estórias.
Como o estudo de caso foi conduzido no contexto de uma disciplina do curso, julgou-se
inadequado implementar as mesmas estórias com e sem Xplus, por diferentes equipes,
para não comprometer a formação dos estudantes.
Os projetos foram implementados utilizando o framework Ruby on Rails [on Rails 2009].
As equipes foram treinadas antes do inı́cio das iterações. O primeiro treinamento, re-
alizado antes da primeira iteração, teve como foco a metodologia XP, seus princı́pios,
valores e práticas. Também foi realizada uma prática sobre jogo do planejamento. No
segundo treinamento, realizado antes da segunda iteração, foram apresentadas algumas
práticas de UX como prototipagem, testes de usabilidade, além de dicas para a melhoria
da interface das aplicações.
Para a avaliação da usabilidade, optou-se por utilizar algumas das métricas sugeri-
das por Nielsen [Nielsen 1993]. Essas métricas foram coletadas ao final de cada iteração,
a partir de testes de usabilidade:
• Tempo gasto pelo usuário para completar uma determinada tarefa;
• Razão entre acertos e erros;
• Tempo gasto recuperando de erros;
• Número de comandos realizados pelo usuário para realizar determinada tarefa;
• Número de vezes que o usuário demonstrou, claramente, insatisfação;
• Tempo ocioso: tempo que o usuário espera resposta do sistema, tempo que usuário
pensa sobre o que fazer.
Os testes de usabilidade foram planejados conforme o proposto pela XPlus e foram
realizados com 4 pessoas, conforme o proposto por Nielsen [Nielsen 1993]. Durante a
execução dos testes, o facilitador acompanhou o fluxo esperado, comparando com o que o
usuário executava. Não houve discrepâncias do fluxo esperado para o realizado. Todos os
testes foram filmados e todos os participantes responderam ao questionário de avaliação
ao final dos testes [Guimarães 2009].
Os resultados mais relevantes observados durante os testes de usabilidade são
em relação à satisfação do usuário e navegação no sistema. Devido ao fato da primeira
iteração ser bastante simples, pouco pode ser comparado em relação aos outros itens.
Os cálculos para a construção dos gráficos foram realizados atribuindo pesos às
respostas oferecidas. Os pesos variaram de 1 a 5 e o resultado final é uma média pon-
derada dos valores respondidos. A figura 5 ilustra o nı́vel de satisfação apontado pelos
usuários nos questionários respondidos após a utilização dos softwares.

Figura 4. Gráfico ilustrativo da satisfação do usuário

Durante a execução dos estudos percebe-se claramente que a impressão do usuário


sobre o software é bem mais positiva quando a interface possui um layout visual bem
elaborado.
Apesar das tarefas propostas nas aplicações da segunda iteração serem um pouco
mais complexas que as da primeira, o usuário conseguiu alcançar mais facilmente os seus
objetivos.
A partir dos questionários respondidos após a realização das tarefas, pode-se con-
cluir que o nı́vel de satisfação dos usuários é bem maior ao lidar com o software produzido
através da XPlus.

5. Conclusão
Neste trabalho foi apresentada a metodologia XPlus, que considera a interface um dos
aspectos mais importantes de um software, uma vez que é ela a responsável por facilitar
a interação do usuário com o computador e, desse modo, por construir a impressão do
usuário sobre o sistema. Por isso, a XPlus promove a preocupação com a interface da
aplicação em todos os estágios do desenvolvimento do software. Por envolver as novas
práticas de UX no processo natural de XP, espera-se que o desenvolvimento de software
continue simples, sem burocracia e sem documentação em excesso.
Para avaliar a metodologia Xplus, um estudo de caso foi conduzido com o obje-
tivo de avaliar os impactos na usabilidade de projetos de software que a utilizaram. Os
trabalhos analisados foram desenvolvidos para fins acadêmicos durante um semestre da
disciplina de Engenharia de Software do curso de Ciência da Computação da UFBA.
Os resultados obtidos mediante esse primeiro estudo de caso mostraram-se promissores.
Pôde-se observar que a interface da aplicação desenvolvida com as práticas de XPlus foi
bem mais elaborada do que a interface de um sistema desenvolvido apenas com práticas
XP. Também foi observada uma satisfação maior dos usuários ao utilizar os sistemas de-
senvolvidos com XPlus.
Como trabalhos futuros, pretende-se aumentar o escopo da revisão sistemática
realizada para incluir novas fontes de busca e realizar novos estudos de casos com projetos
mais complexos e com equipes experientes em XP.
Referências
Barbosa, D. F., Furtado, E. S., and Gomes, A. S. (2008). Uma estratégia de apoio à
institucionalização da usabilidade em ambientes de desenvolvimento Ágil. Sociedade
Brasileira de Computação.
Beck, K. (2000). Extreme Programming Explained: Embrace Change. Addison Wesley
Professional, first edition edition.
Beck, K. (2004). Extreme Programming Explained: Embrace Change, Second Edition.
Addison Wesley Professional, second edition edition.
Cockburn, A. (2001). Agile Software Development. Addison Wesley.
Dumas, J. S. and Redish, J. C. (1999). A pratical Guide to Usability Testing. Intelect,
revised edition edition.
Guimarães, C. P. (2009). Integrando o design de interfaces centrado na experiência do
usuário ao processo de desenvolvimento de software com extreme programming.
Kitchenham, B. (2004). Procedures for performing systematic reviews. Keele University
Technical Report TR/SE-0401 ISSN:1353-7776.
Library, A. D. (2009). Acm digital library. http://portal.acm.org/dl.cfm - Acessado em
12/09/2009.
Martin, R. (2003). Agile software development: principles, patterns, and practices. Pear-
son Education, Inc.
McInerney, P. and Maurer, F. (2005). Ucd in agile projects: dream team or odd couple?
interactions , Volume 12 Issue 6.
Memmel, T., Gundelsweiler, F., and Reiterer, H. (2007). Agile human-centered software
engineering. IHC ’06: Proceedings of VII Brazilian symposium on Human factors in
computing systems.
Nielsen, J. (1993). Usability Engineering. Morgan Kaufmann.
Nielsen, J. (1994). Heuristic evaluation. Usability inspection methods, pages 25 - 62.
Obendorf, H. and Finck, M. (2008). Scenario-based usability engineering techniques in
agile development processes. CHI ’08: CHI ’08 extended abstracts on Human factors
in computing systems.
on Rails, R. (2009). Ruby on rails. http://rubyonrails.org/ - Acessado em 13/09/2009.
Tidwell, J. (2005). Designing Interfaces: Patterns for Effective Interaction Design.
O´Reilly Media, first edition edition.
Wohlin, C., Runeson, P., Host, M., Ohlsson, M. C., Regnell, B., and Wesslén, A. (2000).
Experimentation in Software Engineering - An Introduction. Kluwer Academic Pub-
lishers.
Wolkerstorfer, P., Tscheligi, M., Sefelin, R., Milchrahm, H., Hussain, Z., Lechner, M., and
Shahzad, S. (2008). Probing an agile usability process. CHI ’08: CHI ’08 extended
abstracts on Human factors in computing systems.