16
Metodologias Ágeis, Qualidade de Software e Design Centrado no Usuário: Pontos de Interação. Erton W. Vieira 1 1 Centro de Informática – Universidade Federal de Pernambuco (UFPE) Recife – PE – Brazil [email protected] Abstract. The use of Agile software development allows rapid delivery and constant testing on the code of the software product, which can impact the quality of the product that he is bringing to the market. The User-Centered Design is also a factor to be considered in ensuring the quality of software because it puts the user as a key part of the project. This article discusses the important concepts of Agile Methodologies, Software Quality and User-Centered Design and how they relate to each other. Resumo. O uso de Metodologias Ágeis no desenvolvimento de software permite uma entrega rápida e testes constantes no código do produto de software, o que pode impactar na qualidade do produto que ele esta disponibilizando ao mercado. O Design Centrado no Usuário também é um fator a ser considerado na garantia da qualidade de software, pois coloca o usuário como peça-chave do projeto. O presente artigo discute conceitos importantes sobre Metodologias Ágeis, Qualidade de Software e Design Centrado no Usuário e como eles se relacionam entre si. 1. Introdução Até a década de 80, quando começaram os esforços para o estudo em Interação Homem-Computador (IHC), os profissionais das ciências da computação eram os únicos que se envolviam nos processos de desenvolvimento de software. Até porque, antes desta data, não existiam muitos exemplares de softwares que tivessem interfaces visuais. Segundo Perry (2008) algumas pessoas argumentavam que mesmo com educação formal em conceitos de design da interação, o fato de estar responsável pelo lado computacional da aplicação seria suficiente para declará-

Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

Metodologias Ágeis, Qualidade de Software e Design Centrado no Usuário: Pontos de Interação.

Erton W. Vieira1

1Centro de Informática – Universidade Federal de Pernambuco (UFPE) Recife – PE – Brazil

[email protected]

Abstract. The use of Agile software development allows rapid delivery and constant testing on the code of the software product, which can impact the quality of the product that he is bringing to the market. The User-Centered Design is also a factor to be considered in ensuring the quality of software because it puts the user as a key part of the project.  This article discusses the important concepts of Agile Methodologies, Software Quality and User-Centered Design and how they relate to each other.

Resumo. O uso de Metodologias Ágeis no desenvolvimento de software permite uma entrega rápida e testes constantes no código do produto de software, o que pode impactar na qualidade do produto que ele esta disponibilizando ao mercado. O Design Centrado no Usuário também é um fator a ser considerado na garantia da qualidade de software, pois coloca o usuário como peça-chave do projeto. O presente artigo discute conceitos importantes sobre Metodologias Ágeis, Qualidade de Software e Design Centrado no Usuário e como eles se relacionam entre si.

1. IntroduçãoAté a década de 80, quando começaram os esforços para o estudo em Interação

Homem-Computador (IHC), os profissionais das ciências da computação eram os únicos que se envolviam nos processos de desenvolvimento de software. Até porque, antes desta data, não existiam muitos exemplares de softwares que tivessem interfaces visuais.

Segundo Perry (2008) algumas pessoas argumentavam que mesmo com educação formal em conceitos de design da interação, o fato de estar responsável pelo lado computacional da aplicação seria suficiente para declará-los impossibilitados de realizar atividades que demandassem especificações de interação.

A forma mais eficaz de trabalhar essas novas demandas de especificar interação, foi dividir e organizar ciclos de vida dos projetos. As primeiras tentativas são de antes da década de 80 com o modelo Waterfall de 1970. Já o modelo Espiral, que inspira as metodologias ágeis atuais baseadas em prototipagem rápida, é de 1988. (PERRY, 2008)

Com a complexidade e o tamanho dos sistemas computadorizados atuais torna-se praticamente impossível construí-los sem organização. É necessária a utilização de técnicas de engenharia de software. Entre os diversos métodos utilizados, um grupo está em evidência: metodologias ágeis. O objetivo desses métodos, segundo Highsmith e

Page 2: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

Cockburn (2001), é o de obter um desenvolvimento de software mais adequado ao ambiente turbulento dos negócios, que exige mudanças rápidas e freqüentes.

Soares (2004) afirma que:

A ideia das metodologias ágeis é o enfoque nas pessoas e não em processos ou algoritmos. Além disso, existe a preocupação de gastar menos tempo com documentação e mais com a implementação. Uma característica das metodologias ágeis é que elas são adaptativas ao invés de serem preditivas. Com isso, elas se adaptam a novos fatores decorrentes do desenvolvimento do projeto, ao invés de procurar analisar previamente tudo o que pode acontecer no decorrer do desenvolvimento.

Segundo Sommerville (2001) esses métodos são uma forma estruturada de se desenvolver software com o objetivo de facilitar a sua produção com alta qualidade e de maneira rentável. E as metodologias ágeis vêm se destacando por conseguir uma alta produção e qualidade no desenvolvimento de software.

2. Metodologias Ágeis.O pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma

tendência para o desenvolvimento ágil de aplicações de software devido a um ritmo acelerado de mudanças e inovações na tecnologia da informação e comunicação, em organizações e no ambiente de negócios. O autor cita que no final dos anos 90 aconteceu o surgimento de vários métodos ágeis (entre eles: Crystal, Dynamic Systems Development, eXtreme Programming (XP) e SCRUM) e todos esses empregavam princípios ágeis, tais como ciclo iterativos, entrega rápida de software funcionando e simplicidade, como é definido no Manifesto para Desenvolvimento Ágil publicado em 2001.

O Manifesto Ágil é tratado como uma filosofia a ser seguida. Exemplos de princípios ágeis inclui valorizar o seguinte:

- Indivíduos e interações sobre processos e ferramentas;

- Programar sobre documentar;

- Colaboração do cliente sobre negociação de contratos;

- Responder a mudanças sobre seguir o plano;

“A essência do manifesto é a definição de novo enfoque de desenvolvimento de software, apoiada na agilidade, na flexibilidade, nas habilidades de comunicação e na capacidade de oferecer novos produtos e serviços de valor ao mercado, em curtos períodos de tempo”. (Highsmith, 2004)

Quando comparamos metodologias ágeis com metodologias convencionais, tidas como mais pesadas, percebemos com mais segurança características essenciais das metodologias ágeis.

Page 3: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

Tabela 1. Comparação entre metodologias ágeis e convencionais (adaptado de ULLAH e ZAIDI, 2009)

Ambiente de Projeto Características do Projeto

Categoria Variável Ágil Não-Ágil

Time de Desenvolvimento

Estilo de Comunicação

Colaboração regular

Somente quando necessário

Localização Juntos Distribuídos

Tamanho Até 50 pessoas Mais de 50 pessoas

Continuidade na Aprendizagem Estimulado Desencorajado

Gerenciamento de Projetos

Cultura de Gestão Responsivo Comando e Controle

Participação do Time

Totalmente Desejável Indesejável

Planejamento Contínuo Começo

Mecanismos de Feedback Vários Não disponível

ClienteEnvolvimento Todo o Projeto Durante a fase de

análise

Disponibilidade Facilmente acessível Difícil acesso

Processos e Ferramentas

Quantidade Apenas o suficiente Mais do que suficiente

Adaptabilidade Pode ser alterado Não pode ser alterado

ContratoRequisitos e Datas Flexível Fixo

Custo Tempo e Material Fixo

Page 4: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

3. Design Centrado no Usuário

Santos (2003) já afirmava que: O ser humano deve ser visto como elemento fundamental para o projeto de produtos ou sistemas. Ao se adotar o pensamento de projeto centrado no usuário, em que se considera o ser humano como elemento fundamental, a tecnologia deve servir para atender as necessidades e características e humanas. Neste sentido, há que se destacar que a tecnologia não existe isoladamente, há o usuário que é influenciado por ela e que também a influencia em um ciclo iterativo de uso.

O autor ainda explica que a abordagem de projeto centrada no usuário assume que é a pessoa que controla o sistema. Ao fazer isso, é o operador quem tem metas e desejos e que pode mudar o sistema através de seus procedimentos operacionais.

Entender como se comportam essa pessoa ou grupo de pesquisa implica em um complexo esforço de pesquisa que vão além de pesquisas de mercado.

Woodson (1981) define que o design centrado no usuário é "a prática de criar produtos de forma que os usuários sejam capazes de utilizá-las com o mínimo de stress e o máximo de eficiência". Rubin (1994) vai mais fundo e aponta três princípios básicos do Design Centrado no Usuário:

1 - O foco deve estar sempre no usuário e na sua tarefa - Isto significa mais do que identificar e categorizar usuários. O processo implica contato direto entre usuários e a equipe de designers, durante todo o período de vida do produto. O objetivo é coletar informações sobre clientes de modo sistemático e estruturado.

2 - A utilização do produto deve ser mensurada empiricamente - A ênfase deve estar direcionada à coleta de dados comportamentais sobre facilidade de aprendizado e uso, com usuários reais do produto.

3 - O produto deve ser desenhado, modificado e testado repetidamente - O verdadeiro processo determina a possibilidade de repensar o conceito do projeto, através de testes de modelos conceituais. Não mudanças apenas cosméticas, mas alterações profundas na própria formulação do produto.

O benefício do envolvimento do usuário no desenvolvimento de projetos é palpável, mas alguns desses benefícios devem ser destacados, como: validação de ideias, abrir a equipe para novas ideias, diminuir custos e retrabalho e evitar o desenvolvimento de funcionalidades inúteis e o excesso de informação. "O próprio projetista passa a perceber que não se trata de meramente projetar coisas, e sim que sua atuação também está relacionada à construção de práticas sociais, símbolos e preferências". (KRIPPENDORFF, 2000)

Existem várias técnicas para envolver o usuário no desenvolvimento de projetos, citadas a seguir:

- Entrevistas com usuários e stakeholders;

Page 5: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

- Observação em campo;

- Questionários;

- Card Sorting1;

- Personas2;

- Prototipação;

- Testes com usuários;

Com esse envolvimento do usuário as decisões são tomadas baseadas em dados mais concretos, o produto criado é mais prazeroso para o usuário e diminui o tempo de retrabalho.

4. Qualidade de SoftwareA importância que os produtos de softwares tem tido no cenário mundial alertam

para a importância que tais produtos possam transmitir uma elevada confiabilidade. Rincon (2009) afirma que “estudos comprovam que a maioria dos projetos de softwares não atende aos objetivos traçados”.

Pressman (1995) já definia a qualidade de software como sendo a “conformidade a requisitos funcionais e de desempenho explicitamente declarados, a padrões de desenvolvimento claramente documentados e as características implícitas que são esperadas de todo software profissionalmente desenvolvido”.

Devido a esta necessidade de softwares possuírem, cada vez mais , qualidade é que a busca por ela não se tenha início depois do código já gerado. Bueno (2005) afirma que “a Garantia de Qualidade de Software (SQA) é uma atividade que é aplicada ao longo de todo o processo de engenharia de software”. Ela abrange:

- métodos e ferramentas de análise, projetos, codificações e teste;

- revisão técnica formal que são aplicadas durante cada fase da engenharia de software;

- estratégia de testes de múltiplas fases;

- controle de documentação dos softwares e das mudanças;

- procedimento para garantir a adequação aos padrões de desenvolvimento;

- mecanismo de medição e divulgação.

1 Card Sorting é uma técnica para explorar como as pessoas agrupam itens de informação, analisando e organizando uma lista de temas.

2 Personas é uma ficha de usuário-modelo criada a partir de dados reais. Contém seu nome, seus gostos, seus hábitos, suas habilidades, etc.

Page 6: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

5. Pontos em comuns DCU x Met. Ágil x Qualidade de Software5.1. Design Centrado no Usuário X Metodologia Ágil

Apesar de suas características principais aparentarem semelhanças, designers e profissionais de DCU (Design Centrado no Usuário) ainda sentem dificuldade em se adaptar rapidamente, ao que se foi convencionada como Design Ágil, ou seja, práticas de DCU incorporadas ao desenvolvimento ágil de software.

Esta integração entre ágil e DCU pode ser aplicada nos vários tipos de métodos ágeis, como Crystal, XP, contudo, exemplos são mais comuns com a utilização do Scrum, por ser uma das metodologias ágeis mais famosas e utilizadas na atualidade. Mas, apesar da utilização em larga escala do Scrum, ela não contempla as funções de DCU, como designers de usabilidade, criadores de conteúdo e protótipos, pesquisadores de usuários. (BUDWING et al, 2009)

Chamberlain et al (2006) explicam que apesar de compartilhar alguns conceitos, metodologias ágeis e design centrado no usuário são diferentes. E essas diferenças tem se tornado um problema. As principais semelhanças entre Metodologias Ágeis e IHC são:

- Desenvolvimento interativo: os designers e desenvolvedores devem estar dispostos a comunicar e trabalhar muito de perto, em uma boa relação no dia a dia. Da mesma forma que o cliente também deve ser um membro ativo da equipe não apenas um espectador passivo.

- Ênfase sobre o usuário: o usuário deve ser envolvido no processo de desenvolvimento.

- Gerência da equipe: integração deve existir dentro de um projeto de gestão coerente que facilita sem ser excessivamente burocrático ou prescritivo.

As diferenças principais entre os dois conceitos:

- Alguns designers defendem a produção de documentos para apoiar suas decisões, ele é bem descritivo. As metodologias ágeis procuram a documentação mínima.

- Na utilização de métodos de design centrado no usuário para desenvolver softwares, o designer tende a entender o usuário o máximo possível antes de desenvolver um wireframe.3 Nas metodologias ágeis a programação é primada no desenvolvimento.

Outro ponto importante é que os designers de interação estão acostumados a trabalhar em um ritmo diferente de produção, o que dificulta ainda mais a integração entre as duas metodologias de trabalho.

5.2. Metodologia Ágil X Qualidade de Software

3 Wireframes são esqueletos de websites ou sistemas de informação, feitos pelos arquitetos de informação.

Page 7: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

A abordagem ágil modificou a forma de desenvolvimento de software. As metodologias ágeis também mudaram a forma de atividades de SQA. Documentações não são muito pesadas, mas apenas o que o cliente/usuário necessita.

Muitas características já incorporadas na filosofia ágil tem um potencial de garantir a qualidade do software produzido. Tais como a refatoração, Test-Driven Development (TDD), programação em par.

- Refatoração: procura reestruturar o corpo do código tornando-o mais compreensível e menos complexo. Estudos afirmam que a refatoração de código tem um impacto positivo na qualidade do software, uma vez que reduz a possibilidade de erro. Na superfície, soa como um monte de trabalho a mais, porém, na prática, se começar com a produção de um código-fonte de alta qualidade e depois ir refatorando quando for preciso, esta abordagem funciona muito bem. (ULLAH e ZAIDI, 2009. AMBLER, 2005)

- Test-Driven Development (TDD): o desenvolvedor deve primeiro projetar o teste, para então partir para o desenvolvimento do código funcional. O TDD impõe uma mudança drástica na prática de testes, transferindo a responsabilidade dos testes de qualidade para os desenvolvedores. . (ULLAH e ZAIDI, 2009. AMBLER, 2005)

- Programação em Par: Dois programadores trabalham continuamente no mesmo código. Serve como um projeto contínuo e processo de revisão do código, e o resultado a redução das taxas de defeitos. (HUO et al, 2004)

Em projetos de softwares grandes e complexos, o ponto de atenção é o tempo e a eficácia, de modo que a qualidade não pode ser comprometida. Em um projeto ágil, é particularmente importante o uso de abordagem simples, porque são mais fáceis de mudar. Podemos dizer que se um processo de desenvolvimento garante a saída máxima utilização dos recursos mínimos, mostra qualidade.

Um desenvolvedor ágil mantém a interação com o cliente e desenvolve o sistema de acordo com a visão do cliente. Desta forma a organização se aproxima de funcionalizar as exigências do cliente que leva a melhoria da qualidade de produto de software. “Quanto mais requisitos de usuários são satisfeitos, maior o nível de qualidade incorporado ao projeto”. (Manifesto Ágil, 2010)

5.3. Qualidade X DCU

Norman (1993) declara que quando as pessoas sentem dificuldade em operar algum produto, a falha não são delas, a falha é do design do produto. O desenvolvedor é traído por sua percepção quando esquece de que nem sempre o que é fácil, rápido e funcional para quem desenvolve software significa o mesmo para quem utiliza.

Para que o designer possa se guiar no momento de desenvolver estes softwares com o maior nível de qualidade possível, foram desenvolvidos vários métodos e recomendações para tal. O foco deste artigo será na ISO 9241 que fornece requisitos e recomendações relativos aos atributos de hardware, software e ambiente que contribuem para a usabilidade e os princípios ergonômicos que lhes são subjacentes.

Page 8: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

A ISO 9241 define a usabilidade como a capacidade de avaliar o uso de um produto por um grupo específico de usuários, em um contexto específico, coletando dados sobre:

- Eficácia: Exatidão e a integralidade de como os usuários atingem os objetivos específicos;

- Eficiência: Os usuários gastos em relação a exatidão e a integralidade de como os usuários atingem os objetivos.

- Satisfação: Conforto e aceitação no uso.

Para aplicar com sucesso as diretrizes, os designers precisam estender os objetivos do projeto e os benefícios de cada diretriz, as condições em que a orientação deve ser aplicada, a natureza precisa da solução proposta, e qualquer procedimento que deve ser seguido pra aplicar à diretriz.

Figura 1. Comparação entre conceitos de Met. Ágeis, DCU e Qualidade de Software.

6. Benefícios da interação entre os conceitos.Bons negócios é a meta final de qualquer organização. Para sustentar um bom

negócio, as organizações estão se concentrando na melhor qualidade. A abordagem ágil é a resposta rápida para as necessidades de mudança e desenvolvimento rápido que as empresas dispõem. Integrando o conhecimento da garantia de qualidade convencional as metodologias ágeis, o desenvolvimento de sistemas complexos pode ser maximizado.

Maior qualidade de codificação implica em uma menor necessidade da atividade de garantia de qualidade, como revisões e inspeções. E esta maior qualidade no código é alcançada através de métodos como refatoração e programação em pares, bandeiras do

Page 9: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

Manifesto Ágil. Os adeptos à metodologia ágil só garantem que algo está feito quando ele está pronto para liberação, com todos os testes necessários para assegurar a qualidade do produto.

Testes é a espinha dorsal da garantia de qualidade, mas garantir qualidade não se resume a apenas isso. Além de fazer com que a equipe de desenvolvimento haja como testadores, é importante utilizar a capacidade da equipe para construir o conhecimento organizacional para aumentar a qualidade do processo de produto. Talby et al (2006) já afirmavam que “em um processo ágil um erro é corrigido logo que seja descoberto e não importa quem resolve o problema”.

Além disso, existe o benefício da conciliação dos conceitos de design centrado no usuário com os conceitos de metodologias ágeis que implicam consideravelmente na qualidade do projeto. Como a participação ativa do usuário no desenvolvimento do sistema, compreender o que os usuários querem e esperam de um produto e desenvolver características que os usuários precisam impactam tanto no desenvolvimento (tempo e recurso) como no sucesso. A colaboração entre os membros da equipe é constante, pois o trabalho é realizado com grupos muito unidos e com a necessidade de comunicar a todo o momento.

A metodologia ágil fornece uma característica que é fundamental para quem trabalha com design centrado no usuário: feedback imediato. Com os ciclos curtos de desenvolvimento os testes com usuários são constantes e suas impressões (boas ou ruins) sobre o sistema são logo captadas, facilitando com que os projetos não sejam aplicados de forma incorreta. Com esses dados nas mãos, os profissionais de DCU podem construir wireframes mais fundamentados e conseguindo com que o ciclo de produção seja contínua e eficiente.

.

7. Conclusão

As metodologias ágeis, a primeira vista, parece não ser hospitaleiro para DCU. Práticas de design centrado no usuário são interativas, casando muito bem com os métodos ágeis, impactando diretamente na qualidade do produto de software. Porém para dar certo é necessária plena integração e colaboração com todos os membros da equipe para um projeto coeso e de qualidade. Estes conceitos não são novos, mas a sua popularidade é. Poucos são os pesquisadores que fazem a ligação entre estes conceitos, por isso a necessidade de evoluir esta discussão. As ideias estão livres, e esperando para serem utilizadas.

Referências.

Ambler, S. (2005) “Quality in an agile world”. Software Quality Professional, pp. 34-40.

Boehm, B. and Turner, R., (2003) “Balancing Agility and Discipline: A Guide for the Perplexed”, AddisonWesley.

Page 10: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

Budwing, M., Jeong, S., Kelkar, K. (2009) "When User Experience Met Agile: A Case Study". CHI 2009 - Experience with Software & System Development and Evaluation. Boston, MA, USA. April.

Bueno, C. (2005). "Qualidade de Software". Departamento de Informática. Universidade Federal de Pernambuco, Recife.

Chamberlain, S., Sharp, H., Maiden, N. (2006) "Towards a Framework for Integrating Agile Development and User-Centred Design". XP 2006, LNCS 4044, pp. 143 – 153.

Krippendorff, Klaus. (2000) Design centrado no usuário: uma necessidade cultural. Estudos em design, Rio de Janeiro, v. 8, n. 3, set 2000, p. 87–98.

Highsmith, J. (2004) “Agile Project Management – Creating Innovative Products”, AddisonWesley.

Highsmith, J.; Cockburn, A. Agile Software Development: The Business of Innovation. IEEE Computer, November 2001, p.120-122

Huo, M., Verner, J., Zhu, L., Babar, M. (2004) "Software quality and agile method". Proceedings of the 28th Annual International Computer Software and Applications Conference (COMPSAC 2004), Hong Kong, China, v.1, p. 520-525.

ISO 9241: Ergonomics Requirements for Office Work with Visual Display Terminals (VDTs), International Standards Organization, Geneva (1997).

Manifesto for Agile Software Development. (2010) Disponível em http://www.agilemanifesto.org/.

Norman, D.A. (1993) Norman, Things That Make Us Smart, Addison-Wesley Publishing Company, Reading, MA

Perry, G. (2008) “O desenvolvedor-designer e o design da interação”,. Disponível em: http://www.gabriela.trindade.nom.br/2008/11/o-desenvolvedor-designer-e-o-design-da-interacao/

Pressman, Roger. (1995) Engenharia de Software. São Paulo: McGraw-Hill,

Rincon, A. (2009). "Qualidade de Software". In: XI Encontro de Estudantes de Informática do Tocantins, 2009, Palmas. Centro Universitário Luterano de Palmas, 2009.

Rubin, Jeffrey. (1994) Handbook of usability testing: how to plan, design, and conduct effective tests. New York: Wiley Technical Communication Library; J. Wiley. 330 p.

Santos, R. (2003). "A necessidade do design centrado no usuário". Disponível em: http://webinsider.uol.com.br/2003/10/15/a-necessidade-do-design-centrado-no-usuario/. Outubro

Soares, M. S. (2004) Metodologias Ágeis Extreme Programming e Scrum para o Desenvolvimento de Software. RESI. Revista Eletrônica de Sistemas de Informação, v. 3, p. 1-8, 2004.

Sommerville, I. (2001) “Software Engineering”. 6 ed. Addison Wesley.

Page 11: Instruções aos Autores de Contribuições para o SIBGRAPIprocessos/TAES3/Workshops_Qu... · Web viewO pesquisador Boehm (2003) afirma que desde os anos 2000 estamos em uma tendência

Talby, D., Keren, A., Hazzan, O., Dubinsky, Y. (2006) Agile software testing in a large-scale project. IEEE Software, 23, 4, 30-37.

Ullah, M., Zaidi, W. (2009) "Quality Assurance Activities in Agile - Philosophy to Practice". Master Thesis Computer Science, School of Computing Blekinge Institute of Technology Soft Center, Sweden. September.

WOODSON, W. E. (1981) “Human Factors Design Handbook”, London: McGraw-Hill.