Escolar Documentos
Profissional Documentos
Cultura Documentos
Certified Tester
Foundation Level Extension
Syllabus Agile Tester
Verso 2014br
Comisso Internacional para Qualificao de Teste de Software
Certified Tester
Foundation Level Syllabus Agile Tester
Grupo de Trabalho do Foundation Level Extension Agile Tester: Rex Black (Presidente), Bertrand Cornanguer
(Vice-Presidente), Gerry Coleman (Lder dos Objetivos de Aprendizagem), Debra Friedenberg (Lder de
Exame), Alon Linetzki (Lder de Resultados de Negcios e de Marketing), Tauhida Parveen (Editor), e Leo
van der Aalst (Lder de Desenvolvimento).
Autores: Rex Black, Anders Claesson, Gerry Coleman, Bertrand Cornanguer, Istvan Forgacs, Alon Linetzki,
Tilo Linz, Leo van der Aalst, Marie Walsh, e Stephan Weber.
Revisores internos: Mette Bruhn-Pedersen, Christopher Clements, Alessandro Collino, Debra Friedenberg,
Kari Kakkonen, Beata Karpinska, Sammy Kolluru, Jennifer Leger, Thomas Mueller, Tuula Pkknen, Meile
Posthuma, Gabor Puhalla, Lloyd Roden, Marko Rytknen, Monika Stoecklein-Olsen, Robert Treffny, Chris
Van Bael e Erik van Veenendaal; 2013-2014.
Certified Tester
Foundation Level Syllabus Agile Tester
Histrico de Revises
Verso
Data
Observao
Syllabus v0.1
26JUL2013
Sees autnomas
Syllabus v0.2
16JSET2013
Syllabus v0.3
20OUT2013
Syllabus v0.7
16DEZ2013
Syllabus v0.71
20DEZ2013
Syllabus v0.9
30JAN2014
Verso Beta
Syllabus 2014
31MAIO2014
Verso GA
Certified Tester
Foundation Level Syllabus Agile Tester
Sumrio
Histrico de Revises..................................................................................................................3
Agradecimentos ..........................................................................................................................6
0.
Introduo a este Syllabus ........................................................................................7
0.1
0.2
0.3
1.
1.1
2.
3.
3.1.1 Desenvolvimento Orientado para Teste, Desenvolvimento Orientado para Teste de Aceitao e
Desenvolvimento Orientado para o Comportamento ................................................................... 28
Certified Tester
Foundation Level Syllabus Agile Tester
3.1.2 Pirmide de Teste ............................................................................................................. 29
3.1.3 Quadrantes de Teste, Nveis de Teste e Tipos de Teste .................................................... 29
3.1.4 A Funo de um Testador ................................................................................................ 30
3.2
3.3.1 Critrios de aceitao e cobertura adequada, e outras informaes para Testes ............... 33
3.3.2 Desenvolvimento Orientado para o Teste de Aceitao ................................................... 36
3.3.3 Projeto de Teste Funcional e No Funcional de Caixa Preta ............................................ 36
3.3.4 Teste Exploratrio e Teste do gil ................................................................................... 37
3.4
4.
Referncias .............................................................................................................42
4.1
Normas ............................................................................................................................. 42
4.2
4.3
Livros ............................................................................................................................... 42
4.4
4.5
ndice
44
Certified Tester
Foundation Level Syllabus Agile Tester
Agradecimentos
Este documento foi produzido por uma equipe do Grupo de Trabalho ISTQB Foundation Level.
A equipe Agile Extension agradece a equipe de reviso e os Conselhos Nacionais por suas sugestes e
contribuies.
Na poca, o Syllabus Foundation Level Agile Extension foi concludo, o Grupo de Trabalho Agile Extension
apresentou a seguinte associao: Rex Black (Presidente), Bertrand Cornanguer (Vice-Presidente), Gerry
Coleman (Lder dos Objetivos de Aprendizagem), Debra Friedenberg (Lder de Exame), Alon Linetzki (Lder
de Resultados de Negcios e de Marketing), Tauhida Parveen (Editor), e Leo van der Aalst (Lder de
Desenvolvimento).
Autores: Rex Black, Anders Claesson, Gerry Coleman, Bertrand Cornanguer, Istvan Forgacs, Alon Linetzki,
Tilo Linz, Leo van der Aalst, Marie Walsh, e Stephan Weber.
Revisores internos: Mette Bruhn-Pedersen, Christopher Clements, Alessandro Collino, Debra Friedenberg,
Kari Kakkonen, Beata Karpinska, Sammy Kolluru, Jennifer Leger, Thomas Mueller, Tuula Pkknen, Meile
Posthuma, Gabor Puhalla, Lloyd Roden, Marko Rytknen, Monika Stoecklein-Olsen, Robert Treffny, Chris
Van Bael e Erik van Veenendaal; .
A equipe agradece tambm as seguintes pessoas dos Conselhos Nacionais e da comunidade de especialistas
gil, que participaram da reviso, comentrio e votao da Foundation Agile Extension Syllabus: Dani Almog,
Richard Berns, Stephen Bird, Monika Bgge, Afeng Chai, Josephine Crawford, Tibor Csndes, Huba Demeter,
Arnaud Foucal, Cyril Fumery, Kobi Halperin, Inga Hansen, Hanne Hinz, Jidong Hu, Phill Isles, Shirley Itah,
Martin Klonk, Kjell Lauren, Igal Levi, Rik Marselis, Johan Meivert, Armin Metzger, Peter Morgan, Ninna
Morin, Ingvar Nordstrom, Chris O'Dea, Klaus Olsen, Ismo Paukamainen, Nathalie Phung, Helmut Pichler,
Salvatore Reale, Stuart Reid, Hans Rombouts, Petri Silynoja, Soile Sainio, Lars-Erik Sandberg, Dakar
Shalom, Jian Shen, Marco Sogliani, Lucjan Stapp, Yaron Tsubery, Sabine Uhde, Stephanie Ulrich, Tommi
Vlimki, Jurian Van de Laar, Marnix Van den Ent, Antnio Vieira Melo, Wenye Xu, Ester Zabar, Wenqiang
Zheng, Peter Zimmerer, Stevan Zivanovic, and Terry Zuo.
Este documento foi formalmente aprovado para liberao pela Assembleia Geral da ISTQB em 31 de maio
de 2014.
Certified Tester
Foundation Level Syllabus Agile Tester
Para Conselhos Nacionais, para traduzir em seu idioma local e credenciar prestadores de treinamento.
Conselhos Nacionais podem adaptar o programa s suas necessidades lingusticas especficas e
modificar as referncias para se adaptar s suas publicaes locais.
Para Conselhos de Exame, para derivar questes do exame em seu idioma local adaptado para os
objetivos de aprendizagem para cada programa.
Para prestadores de treinamento, para a produo de material didtico e determinar os mtodos de
ensino adequados.
Para os candidatos certificao, para se preparar para o exame (como parte de um curso de formao
ou de forma independente).
Para a comunidade internacional de software e sistemas de engenharia, para o avano da profisso de
software e testes de sistemas, e como base para livros e artigos.
O ISTQB pode permitir que outras entidades possam utilizar este programa para outros fins, desde que busque
e obtenha permisso prvia por escrito.
Certified Tester
Foundation Level Syllabus Agile Tester
Certified Tester
Foundation Level Syllabus Agile Tester
1.1 Os Fundamentos do Desenvolvimento de Software gil
Um testador em um projeto gil vai trabalhar de forma diferente do que um testador trabalhando em um
projeto tradicional. Os testadores devem compreender os valores e princpios que sustentam os projetos do
gil, e como os testadores so parte integrante de uma abordagem de equipe inteira junto aos desenvolvedores
e representantes de negcio. Os membros de um projeto do gil se comunicam entre si com antecedncia e
com frequncia, o que ajuda na remoo de defeitos precoces e desenvolvimento de um produto de qualidade.
O Manifesto gil argumenta que, embora os conceitos direita tenham valor, os da esquerda tm maior valor.
Indivduos e Interaes
O desenvolvimento do modelo gil muito centrado em pessoas. Equipes de pessoas desenvolvem o software,
e atravs de uma comunicao contnua e interao, ao invs de uma dependncia de ferramentas ou
processos, que as equipes podem trabalhar de forma mais eficaz.
Software Funcionando
A partir da perspectiva do cliente, o software funcionando muito mais til e valioso do que a documentao
excessivamente detalhada e fornece uma oportunidade para dar o feedback rpido equipe de
desenvolvimento. Alm disso, por ser um software funcionando, embora com funcionalidade reduzida, est
disponvel muito antes no ciclo de vida de desenvolvimento, o desenvolvimento gil pode conferir vantagem
significativa no time-to-market. O desenvolvimento gil , portanto, especialmente til em mudanas rpidas
de ambientes de negcios onde os problemas e/ou solues no so esclarecidos, ou onde a empresa pretende
inovar em novos domnios de problemas.
Colaborao do Cliente
Os clientes muitas vezes encontram grande dificuldade em especificar o sistema que eles precisam. Colaborar
diretamente com o cliente aumenta a probabilidade de compreender exatamente o que o cliente requer. Embora
celebrar contratos com os clientes seja importante, trabalhar em colaborao regular e prxima com eles pode
trazer mais sucesso para o projeto.
Resposta Mudana
A mudana inevitvel em projetos de software. O ambiente em que a empresa opera, a legislao, atividade
concorrente, avanos tecnolgicos e outros fatores podem ter grandes influncias sobre o projeto e seus
objetivos. Estes fatores devem ser acomodados pelo processo de desenvolvimento. Como tal, ter flexibilidade
nas prticas de trabalho para aceitar a mudana mais importante do que simplesmente aderir rigidamente a
um plano.
Princpios
Os valores fundamentais do Manifesto gil so capturados em doze princpios:
Certified Tester
Foundation Level Syllabus Agile Tester
As diferentes Metodologias geis proporcionam prticas prescritivas para colocar esses valores e princpios
em ao.
A equipe inteira responsvel pela qualidade nos projetos geis. A essncia da abordagem de equipe inteira
reside nos testadores, desenvolvedores e os representantes das empresas que trabalham juntos em todas as
etapas do processo de desenvolvimento. Os testadores vo trabalhar em estreita colaborao com os
desenvolvedores e representantes das empresas para garantir que os nveis de qualidade desejados sejam
alcanados. Isso inclui apoiar e colaborar com os representantes de negcio para ajud-los a criar testes de
aceitao adequados, trabalhando com desenvolvedores para chegar a acordo sobre a estratgia de teste, e
decidir sobre as abordagens de automao de testes. Os testadores podem, portanto, transferir e ampliar o
conhecimento de testes para outros membros da equipe e influenciar o desenvolvimento do produto.
A equipe inteira est envolvida em consultas ou reunies em que as caractersticas do produto so apresentadas,
analisadas ou estimadas. O conceito que envolve testadores, desenvolvedores e representantes de negcio em
todas as discusses conhecido como o poder dos trs [Crispin08].
10
Certified Tester
Foundation Level Syllabus Agile Tester
1.1.3 Feedback Inicial e Frequente
Os projetos geis tm iteraes curtas, permitindo a equipe do projeto receber feedback avanado e contnuo
sobre a qualidade do produto durante todo o ciclo de desenvolvimento. Uma forma de prover feedback rpido
pela integrao contnua (ver Seo 1.2.4).
Quando as abordagens de desenvolvimento sequenciais so utilizadas, muitas vezes o cliente no v o produto
at que o projeto esteja quase concludo. Nesse ponto, muitas vezes tarde demais para a equipe de
desenvolvimento tratar eficazmente todos os problemas que o cliente pode ter. Ao receber o frequente feedback
do cliente no decorrer do projeto, as equipes geis podem incorporar a maioria das novas alteraes no processo
de desenvolvimento do produto. O feedback avanado e frequente ajuda o foco da equipe quanto s
funcionalidades com o valor comercial mais elevado ou risco associado, e esses so desenvolvidos
primeiramente para o cliente. Da mesma forma, ajuda a gerenciar melhor a equipe, pois a capacidade da equipe
transparente para todos. Por exemplo, qual volume de trabalho podemos realizar em um sprint ou iterao?
O que poderia nos ajudar a avanar mais rpido? O que nos impede de fazer isso?
Os benefcios do feedback inicial e frequente incluem:
Evitar mal-entendidos nos requisitos, que somente podem ser detectados tardiamente no ciclo de
desenvolvimento, quando so mais caros para se reparar.
Esclarecer solicitaes de funcionalidades dos clientes, tornando-os disponveis antecipadamente para
uso do cliente. Desta maneira, o produto reflete melhor o que o cliente quer.
Descobrir (via integrao contnua), isolar e resolver os problemas de qualidade mais cedo.
Providenciar informaes para a equipe gil quanto sua produtividade e capacidade de
desenvolvimento.
Promover fluxo de projeto consistente.
11
Certified Tester
Foundation Level Syllabus Agile Tester
Scrum
Scrum uma estrutura de gesto gil, que contm os seguintes instrumentos e prticas constituintes
[Schwaber01]:
Sprint: Scrum divide um projeto em iteraes (chamadas sprints) de durao fixa (geralmente duas a
quatro semanas).
Incremento do produto: Cada sprint resulta em um produto potencialmente libervel/entregvel
(chamado de incremento).
Backlog do Produto: O proprietrio do produto gerencia uma lista priorizada de itens de produtos
planejados (chamada backlog do produto). O backlog do produto evolui de sprint para sprint (chamado
refinamento de backlog).
Backlog do Sprint: No incio de cada sprint, a equipe Scrum seleciona um conjunto de itens de
prioridade mais elevada (o chamado backlog de sprint) do backlog do produto. Uma vez que a equipe
Scrum, e no o proprietrio do produto, seleciona os itens a serem realizados no sprint, a seleo
referida como sendo o princpio da atrao e no o princpio do impulso.
Definio de Pronto: Para verificar se h produto potencialmente libervel no final de cada sprint, a
equipe Scrum discute e define critrios adequados para a concluso do sprint. A discusso aprofunda
a compreenso da equipe dos itens do backlog e os requisitos do produto.
Timeboxing: Apenas as tarefas, requisitos ou funcionalidades que a equipe espera concluir no Sprint
fazem parte do backlog do sprint. Se a equipe de desenvolvimento no consegue terminar uma tarefa
em um sprint, as caractersticas de produtos associadas so removidas do Sprint e a tarefa restituda
ao backlog do produto. Timeboxing no se aplica apenas s tarefas, mas em outras situaes (por
exemplo, no incio e fim das reunies).
Transparncia: A equipe de desenvolvimento descreve e atualiza os status de sprint em uma base
diria, em reunio convocada em Scrum diariamente. Isso faz com que o contedo e o andamento do
sprint atual, incluindo resultados, sejam visveis para a equipe, gesto e todas as partes interessadas.
Por exemplo, a equipe de desenvolvimento pode mostrar o status de sprint em um quadro branco.
Scrum Master: garante que as prticas e regras do Scrum sejam implementadas e seguidas, e resolve
quaisquer violaes, questes de funcionalidades, ou outros impedimentos que possam impedir a
equipe de seguir as prticas e regras. Esta pessoa no o lder da equipe, mas um treinador.
Proprietrio do Produto: representa o cliente, e gera, mantm e prioriza o backlog do produto. Esta
pessoa no o lder da equipe.
Equipe de Desenvolvimento: Desenvolver e testar o produto. O time auto organizado: No h lder
da equipe, pois a equipe toma as decises. A equipe tambm multifuncional (ver Seo 2.3.2 e Seo
3.1.4).
O Scrum (em oposio ao XP) no dita tcnicas de desenvolvimento de software especficos (por exemplo, o
primeiro teste de programao). Alm disso, o Scrum no fornece orientao sobre como o teste deve ser
realizado em um projeto Scrum.
Kanban
Kanban [Anderson13] uma abordagem de gesto que s vezes utilizada nos projetos geis. O objetivo geral
visualizar e otimizar o fluxo de trabalho em uma cadeia de valor agregado. Kanban utiliza trs instrumentos
[Linz14]:
Quadro Kanban: A cadeia de valor a ser gerenciada visualizada por um quadro de Kanban. Cada
coluna mostra uma estao, que um conjunto de atividades relacionadas, por exemplo,
desenvolvimento ou teste. Os itens a serem produzidos ou tarefas a serem processadas so
simbolizados por bilhetes se movendo da esquerda para a direita atravs do quadro por meio das
estaes.
Limite do Trabalho em Andamento: O volume de tarefas ativas paralelas estritamente limitado. Este
controlado pelo nmero mximo de passagens permitidas para uma estao e/ou globalmente para o
12
Certified Tester
Foundation Level Syllabus Agile Tester
quadro. Sempre que uma estao tem capacidade livre, o trabalhador tira um bilhete da estao
antecessora.
Tempo de espera: Kanban utilizado para otimizar o fluxo contnuo de tarefas, minimizando o tempo
de espera (mdia) para concluir o fluxo de valor.
Kanban apresenta algumas semelhanas com Scrum. Em ambos os quadros, visualizar as tarefas ativas (por
exemplo, em um quadro branco pblico) fornece transparncia de contedo e andamento das tarefas. Tarefas
no agendadas esto aguardando em um backlog e so transferidas para o quadro Kanban, assim que surge um
novo espao (capacidade de produo) disponvel.
Iteraes ou sprints so opcionais no Kanban. O processo de Kanban permite liberar seu item de entregas por
item, e no como parte de uma liberao. O Timeboxing como um mecanismo de sincronizao portanto,
opcional, diferentemente do Scrum, que sincroniza todas as tarefas em um sprint.
Independente
Negocivel
Valioso
Estimvel
Pequeno (Small)
Testvel
De acordo com o conceito 3C [Jeffries00], uma estria de usurio a conjuno de trs elementos:
Carto: O carto o meio fsico que descreve uma estria de usurio. Ele identifica a exigncia, sua
criticidade, desenvolvimento esperado e durao do teste, e os critrios de aceitao para essa estria.
A descrio deve ser precisa, uma vez que ser utilizada no backlog do produto.
Conversacional: A conversa explica como o software ser usado. A conversa pode ser documentada
ou verbal. Os testadores, tendo um ponto de vista diferente em relao aos desenvolvedores e
representantes de negcio [ISTQB_FL_SYL], gera um elemento contributivo valioso para a troca de
ideias, opinies e experincias. A conversa comea durante a fase de planejamento de lanamento e
continua quando a estria programada.
13
Certified Tester
Foundation Level Syllabus Agile Tester
As equipes geis variam em termos de como eles documentam estrias de usurios. Independentemente da
abordagem adotada para documentar estrias de usurio, a documentao deve ser concisa, suficiente e
necessria.
1.2.3 Retrospectivas
No desenvolvimento gil, uma retrospectiva uma reunio realizada no final de cada iterao para discutir o
que foi bem sucedido, o que poderia ser melhorado e como incorporar as melhorias e preservar os xitos em
iteraes futuras. Retrospectivas abrangem temas como processo, pessoas, organizaes, relacionamentos e
ferramentas. Reunies retrospectivas regularmente realizadas, quando ocorrem atividades de acompanhamento
adequadas, so fundamentais para a auto-organizao e melhoria contnua de desenvolvimento e testes.
As retrospectivas podem resultar em decises de melhoria relacionadas com o teste, focadas na eficincia do
teste, produtividade do teste, qualidade do caso de teste e satisfao da equipe. Eles tambm podem abordar a
capacidade de teste dos aplicativos, estrias de usurios, funcionalidades ou interfaces do sistema. Anlise de
causa raiz de defeitos podem conduzir testes e desenvolvimento de melhorias. Em geral, as equipes devem
implementar apenas algumas melhorias em cada iterao. Isto permite a melhoria contnua a um ritmo
sustentado.
O tempo e a organizao da retrospectiva, depende do mtodo gil especfico seguido. Representantes de
negcio e da equipe assistem cada retrospectiva como participantes, enquanto o facilitador organiza e dirige a
reunio. Em alguns casos, as equipes podem convidar outros participantes para a reunio.
Os testadores devem desempenhar um papel importante nas retrospectivas. Os testadores so parte da equipe
e promovem sua perspectiva nica [ISTQB_FL_SYL], Seo 1.5. O teste ocorre em cada sprint e contribui
vitalmente para o sucesso. Todos os membros da equipe, testadores e no-testadores, podem fornecer
informaes sobre as atividades de teste e no-teste.
As retrospectivas devem ocorrer dentro de um ambiente profissional caracterizado pela confiana mtua. Os
atributos de uma retrospectiva de sucesso so os mesmos do que qualquer outro comentrio, conforme
discutido no programa Foundation Level [ISTQB_FL_SYL], Seo 3.2.
14
Certified Tester
Foundation Level Syllabus Agile Tester
Um processo de construo e teste automatizado ocorre em uma base diria e detecta erros de integrao de
modo antecipado e rpido. A integrao contnua permite que os testadores geis realizem testes automatizados
regularmente, em alguns casos, como parte do prprio processo de integrao contnua, e enviar feedback
rpido para a equipe sobre a qualidade do cdigo. Estes resultados de testes so visveis para todos os membros
da equipe, especialmente quando os relatrios automatizados so integrados no processo. Teste de regresso
automatizada pode ser contnuo ao longo da iterao. Testes de regresso automatizados abrangem a maior
funcionalidade possvel, incluindo estrias de usurios desenvolvidos nas iteraes anteriores. Boa cobertura
nos testes de regresso automatizados ajuda no desenvolvimento (e teste) de grandes sistemas integrados.
Quando o teste de regresso automatizado, os testadores geis so livres para concentrar seus testes manuais
em novas funcionalidades, mudanas implementadas, e teste de confirmao de correes de defeitos.
Alm de testes automatizados, as organizaes que utilizam integrao contnua normalmente utilizam
ferramentas de desenvolvimento para implementar o controle de qualidade contnuo. Alm de realizar os testes
unitrios e de integrao, tais ferramentas podem realizar testes dinmicos e estticos adicionais, medida e
desempenho do perfil, extrato e formato de documentao a partir do cdigo-fonte, e facilitar os processos de
garantia de qualidade manuais. Esta aplicao contnua de controle de qualidade tem por objetivo melhorar a
qualidade do produto, bem como reduzir o tempo de desenvolvimento do mesmo, substituindo a prtica
tradicional de aplicao de controle da qualidade aps completar todo o desenvolvimento.
As ferramentas de desenvolvimento podem ser ligadas a ferramentas de implantao automtica, que podem
buscar o desenvolvimento adequado da integrao contnua ou desenvolver o servidor e implant-lo em um ou
mais de um desenvolvimento, teste, estgio, ou at mesmo ambientes de produo. Isso reduz os erros e atrasos
associados confiana na equipe especializada ou programadores para instalar os lanamentos nesses
ambientes.
A integrao contnua pode fornecer os seguintes benefcios:
Permite a deteco mais precoce e anlise mais fcil da causa raiz de problemas de integrao e
mudanas conflitantes
D o feedback regular da equipe de desenvolvimento se o cdigo estiver funcionando
Mantm a verso do software que est sendo testado dentro de um dia da verso que est sendo
desenvolvida
Reduz o risco de regresso associado com a reconstruo do cdigo do desenvolvedor devido ao rpido
reteste da base de cdigo aps cada pequeno conjunto de alteraes
Promove confiana de que o trabalho de desenvolvimento de cada dia fundamentado em uma base
slida
Realiza progresso em direo a concluso do incremento do produto visvel, encorajando
desenvolvedores e testadores
Elimina os riscos de programao associados integrao do big-bang
Fornece disponibilidade constante de software executvel em todo o sprint para fins de teste,
demonstrao ou de educao
Reduz as atividades de teste manuais repetitivas
Fornece feedback rpido sobre as decises tomadas para melhorar a qualidade e os testes
15
Certified Tester
Foundation Level Syllabus Agile Tester
As equipes, por vezes, confiam excessivamente nos testes da unidade e realizam muito pouco do teste
de sistema e de aceitao.
A integrao contnua requer o uso de ferramentas, incluindo ferramentas para testes, ferramentas para
automatizar o processo de construo e ferramentas para controle de verso.
16
Certified Tester
Foundation Level Syllabus Agile Tester
Planos de lanamento podem mudar medida que o projeto avana, incluindo alteraes em estrias de
usurios individuais no backlog do produto. Estas alteraes podem ser desencadeadas por fatores internos ou
externos. Os fatores internos incluem capacidade de desenvolvimento, velocidade e questes tcnicas. Os
fatores externos incluem a descoberta de novos mercados e oportunidades, novos concorrentes, ou ameaas de
negcios que podem mudar os objetivos de lanamento e/ou prazos. Alm disso, os planos de iterao podem
mudar durante uma iterao. Por exemplo, uma estria de usurio particular, que foi considerado relativamente
simples durante a estimativa pode ser mais complexo do que o esperado.
Essas mudanas podem ser um desafio para os testadores. Os testadores devem compreender o panorama do
lanamento para fins de planejamento de teste, e devem ter uma base de teste e orculo de teste adequado em
cada iterao para fins de desenvolvimento de teste, como discutido no programa Foundation Level
[ISTQB_FL_SYL], Seo 1.4. As informaes solicitadas devem estar disponveis com antecedncia para o
testador, e ainda a mudana deve ser adotada de acordo com os princpios geis. Este dilema requer decises
cuidadosas sobre as estratgias de teste e documentao de teste. Para saber mais sobre desafios de testes geis,
ver [Black09], captulo 12.
O planejamento de lanamento e iterao deve abordar o plano de teste, bem como o planejamento de
atividades de desenvolvimento. Questes relacionadas com o ensaio especfico a abordar incluem:
O escopo dos testes, a extenso dos testes para as reas de escopo, os objetivos de teste, e as razes
para tais decises.
Os membros da equipe que realizaro as atividades de teste.
O ambiente de teste e dados de teste necessrios, quando eles so necessrios, e se quaisquer
acrscimos ou alteraes no ambiente de teste e/ou dados ocorrero antes ou durante o projeto.
O tempo, sequenciamento, dependncias e pr-requisitos para as atividades de teste funcional e nofuncional (por exemplo, a frequncia de realizao de testes de regresso, cujos funcionalidades
dependem de outras funcionalidades ou dados de teste, etc), incluindo a forma como as atividades de
teste se relacionam e dependem das atividades de desenvolvimento.
O projeto e riscos da qualidade a serem abordados (ver Seo 3.2.1).
Alm disso, a maior estimativa de esforo da equipe deve ter em considerao o tempo e o esforo necessrios
para completar as atividades de testes necessrios.
17
Certified Tester
Foundation Level Syllabus Agile Tester
18
Certified Tester
Foundation Level Syllabus Agile Tester
2.1 As Diferenas entre os Testes em abordagens tradicionais e no gil
Conforme descrito no programa Foundation Level [ISTQB_FL_SYL] e em [Black09], atividades de teste esto
relacionadas com as atividades de desenvolvimento e, portanto, o teste varia em diferentes ciclos de vida. Os
testadores devem compreender as diferenas entre os testes em modelos de ciclo de vida tradicionais
(sequencial, por exemplo, tais como o modelo V ou interativo, tais como RUP) e ciclos de vida gil, a fim de
trabalhar de forma eficaz e eficiente. Os modelos geis diferem quanto o modo pelo qual as atividades de teste
e desenvolvimento so integradas, os produtos do projeto de trabalho, os nomes, critrios de entrada e sada
utilizados para vrios nveis de testes, o uso de ferramentas, e como o teste independente pode ser efetivamente
utilizado.
Os testadores devem se lembrar de que as organizaes variam consideravelmente em sua implementao de
ciclos de vida. O desvio dos ideais de ciclos de vida gil (ver Seo 1.1) pode representar personalizao
inteligente e adaptao das prticas. A capacidade de adaptar-se ao contexto de um dado projeto, incluindo as
prticas de desenvolvimento de software seguidas, na verdade um fator chave de sucesso para os testadores.
19
Certified Tester
Foundation Level Syllabus Agile Tester
distribuda, mas os processos e as ferramentas podem ajudar a viabilizar o emparelhamento distribudo. Para
obter mais informaes sobre o trabalho distribudo, ver [ISTQB_ALTM_SYL], Seo 2.8.
Os testadores tambm podem servir como treinadores de teste e qualidade dentro da equipe, compartilhando
conhecimentos de teste e apoiando o trabalho de garantia de qualidade dentro da equipe. Isto promove um
senso de responsabilidade coletiva na qualidade do produto.
A automao em todos os nveis de testes ocorre em muitas equipes geis, e isso pode significar que os
testadores gastam mais tempo na criao, execuo, monitoramento e manuteno de testes automatizados e
em resultados. Devido ao pesado uso da automao de testes, uma percentagem mais elevada do teste manual
nos projetos geis tende a ser feita usando tcnicas baseadas em experincia e defeitos, tais como ataques de
software, testes exploratrios, e suposio de erro (ver [ISTQB_ALTA_SYL], Sees 3.3 e 3.4 e
[ISTQB_FL_SYL], Seo 4.5). Enquanto os desenvolvedores se concentram na criao de testes de unidade,
os testadores devem se concentrar na criao de testes de integrao, sistema e integrao de sistemas
automatizados. Isto leva a uma tendncia das equipes geis em favorecer os testadores com uma slida
formao tcnica e background de automao de testes.
Um princpio fundamental gil que pode ocorrer mudana durante o projeto. Portanto, uma documentao
do produto de trabalho leve favorecida nos projetos geis. Mudanas nas funcionalidades existentes tm
implicaes de teste, especialmente implicaes de teste de regresso. O uso de testes automatizados uma
forma de gerenciar o volume de esforo de teste associado com a mudana. No entanto, importante que a
taxa de variao no exceda a capacidade da equipe do projeto de lidar com os riscos associados a essas
mudanas.
3.
Produtos de trabalho orientados para negcios que descrevem o que necessrio (por exemplo, requisitos
de especificaes) e como us-los (por exemplo, a documentao do usurio)
Produtos de trabalho de desenvolvimento que descrevem como o sistema construdo (por exemplo,
diagramas de banco de dados entidade-relacionamento), que, na verdade, implementam o sistema (por
exemplo, cdigo), ou que avaliam peas individuais de cdigo (por exemplo, testes de unidade
automatizados)
Produtos de trabalho de teste que descrevem como o sistema testado (por exemplo, estratgias de teste
e planos), que realmente testam o sistema (por exemplo, testes manuais e automatizados), ou que
apresentam os resultados do teste (por exemplo, painis de teste, conforme discutido na seo 2.2.1)
Em um projeto tpico gil, uma prtica comum evitar a produo de grandes volumes de documentao. Ao
contrrio, o foco mais em ter um software funcionando em conjunto com os testes automatizados que
demonstrem o cumprimento das exigncias. Este incentivo para reduzir a documentao se aplica apenas
documentao que no atribui valor ao cliente. Em um projeto gil bem sucedido, estabelece-se um equilbrio
entre o aumento da eficincia atravs da reduo de documentao e fornecimento de documentao suficiente
para apoiar as atividades de negcios, testes, desenvolvimento e manuteno. A equipe deve tomar uma
deciso durante o planejamento do lanamento sobre quais produtos de trabalho so necessrios e qual o nvel
necessrio de documentao do produto do trabalho.
Os tpicos produtos de trabalho orientados para o negcio nos projetos geis incluem estrias de usurios e
critrios de aceitao. Estrias de usurios so o formulrio gil de especificaes de requisitos, e devem
explicar como o sistema deve se comportar em relao a uma funcionalidade nica coerente ou funo. Uma
estria de usurio deve definir uma funcionalidade suficientemente pequeno para ser concludo em uma nica
iterao. Coletas maiores de funcionalidades relacionados, ou uma coleta de sub-funcionalidades que
compem uma nica caracterstica complexa, podem ser referidas como "picos". picos podem incluir
estrias de usurios para diferentes equipes de desenvolvimento. Por exemplo, uma estria de usurio pode
descrever o que necessrio no nvel API (middleware), enquanto uma outra estria descreve o que
20
Certified Tester
Foundation Level Syllabus Agile Tester
necessrio ao nvel UI (aplicativo). Essas coletas podem ser desenvolvidas atravs de uma srie de sprints.
Cada pico e suas estrias de usurios devem ter critrios de aceitao associados.
Produtos tpicos de trabalho do desenvolvedor em projetos gil incluem cdigo. Desenvolvedores geis
tambm muitas vezes criam testes de unidade automatizados. Estes testes podem ser criados aps o
desenvolvimento do cdigo. Em alguns casos, no entanto, os desenvolvedores criam testes de modo
incremental antes que cada parte do cdigo seja escrita, afim de proporcionar um modo de verificao, uma
vez que aquela parte do cdigo seja escrita, se funciona como o esperado. Embora esta abordagem seja referida
como primeiro teste ou desenvolvimento orientado a testes, na realidade, os testes so mais uma forma de
especificaes de projeto de baixo nvel executveis, ao invs de testes [Beck02].
Produtos tpicos de trabalho do testador em projetos gil incluem testes automatizados, bem como documentos
como planos de teste, catlogos de risco de qualidade, testes manuais, relatrios de defeitos e logs de resultados
de testes. Os documentos so capturados da forma mais leve possvel, o que muitas vezes ocorre com estes
documentos nos ciclos de vida tradicionais. Os testadores tambm vo produzir mtricas de teste ao partir de
relatrios de defeitos e logs de resultados de testes, e novamente, h uma nfase em uma abordagem leve.
Em algumas implementaes geis, especialmente reguladas, segurana crtica, projetos e produtos
distribudos ou altamente complexos, necessria uma maior formalizao desses produtos de trabalho. Por
exemplo, algumas equipes transformam estrias de usurios e critrios de aceitao em mais especificaes
de requisitos formais. Relatrios de rastreabilidade vertical e horizontal podem ser preparados para atender os
auditores, regulamentos e outros requisitos.
Alm disso, h muitas vezes um processo paralelo de testes de regresso que ocorre em toda a iterao. Tratase de reexecutar os testes de unidade automatizados e testes de verificao da funcionalidade da iterao atual
e iteraes anteriores, geralmente atravs de uma estrutura de integrao contnua.
Em alguns projetos geis, pode haver um nvel de teste do sistema, uma vez que se inicia a primeira estria de
usurio pronto para tais testes. Isso pode envolver a execuo de testes funcionais, bem como testes nofuncionais de desempenho, confiabilidade, usabilidade, e outros tipos de teste pertinentes.
21
Certified Tester
Foundation Level Syllabus Agile Tester
As equipes geis podem empregar diversas formas de testes de aceitao (usando o termo conforme explicado
no programa Foundation Level [ISTQB_FL_SYL]). Testes alfa Internos e testes beta externos podem ocorrer,
quer no final de cada iterao, aps a concluso de cada iterao, ou aps uma srie de iteraes. Testes de
aceitao do usurio, testes de aceitao operacionais, testes de aceitao de regulamentao e testes de
aceitao do contrato tambm podem ocorrer, ou no final de cada iterao, aps a concluso de cada iterao,
ou aps uma srie de iteraes.
22
Certified Tester
Foundation Level Syllabus Agile Tester
atividades independentes de longo prazo e/ou iterao, tais como o desenvolvimento de ferramentas de teste
automatizado, a realizao de teste no funcional, criar e apoiar ambientes de teste e de dados, e realizao de
nveis de teste que pode no se encaixar bem em um sprint (por exemplo, teste de integrao do sistema).
a equipe estar trabalhando com o software, eles precisam monitorar o progresso de todos os itens de trabalho
na iterao e lanamento. Os testadores nas equipes geis utilizam vrios mtodos para registrar o progresso e
o status do teste, incluindo os resultados dos testes de automao, progresso das tarefas de teste e estrias
sobre o quadro de tarefas geis e grficos burndown que mostram o progresso da equipe. Estes podem ento
ser comunicados ao resto da equipe, usando a mdia, como painis de wiki e e-mails do tipo painel, bem como
verbalmente durante as reunies. Equipes geis podem usar ferramentas que geram automaticamente relatrios
de status com base em resultados de testes e progresso da tarefa, que por sua vez atualizam dashboards e emails no estilo wiki. Este mtodo de comunicao rene tambm as mtricas do processo de teste, que podem
ser utilizadas na melhoria do processo. A comunicao do status de teste em tal modo automatizado tambm
libera o tempo dos testadores para se concentrar na concepo e execuo de mais casos de teste.
As equipes podem usar grficos de burndown para acompanhar o progresso em todo o lanamento e em
cada iterao. Um grfico burndown [Crispin08] representa o volume de trabalho a ser realizado contra o
desenvolvimento, tarefas de teste e outras tarefas criadas durante o planejamento da iterao (ver Seo 1.2.5)
so capturados no quadro de tarefas, muitas vezes utilizando cartes de cores coordenadas para determinar o
tipo de tarefa. Durante a iterao, o progresso gerido atravs do movimento dessas tarefas em todo o quadro
de tarefas em colunas tais como trabalho a fazer, trabalho em andamento, verificar e trabalho realizado.
Equipes geis podem utilizar ferramentas para manter seus cartes de estria e quadros de tarefas geis, que
podem automatizar dashboards e atualizaes de status.
As tarefas de teste no quadro de tarefas se relacionam com os critrios de aceitao definidos para os estrias
de usurios. Como scripts de automao de teste, testes manuais e testes exploratrios para uma tarefa de teste
atingem um status de passagem, a tarefa passa para a coluna trabalho realizado do quadro de tarefas. A equipe
inteira analisa o status do quadro de tarefas regularmente, muitas vezes durante as reunies dirias, para
assegurar que as tarefas esto se movendo em todo o quadro a um ritmo aceitvel. Se alguma tarefa (incluindo
tarefas de teste) no estiver se movendo ou estiver se movendo muito lentamente, a equipe comenta e aborda
todas as questes que possam estar bloqueando o progresso dessas tarefas.
A reunio diria inclui todos os membros da equipe geis, incluindo testadores. Nessa reunio, eles comunicam
seu status atual. A agenda de cada membro [Guia do gil Alliance]:
23
Certified Tester
Foundation Level Syllabus Agile Tester
Quaisquer problemas que possam bloquear o progresso dos testes so comunicados durante as reunies dirias,
para que toda a equipe esteja ciente dos problemas e possa resolv-los em conformidade.
Para melhorar a qualidade geral do produto, muitas equipes geis realizam pesquisas de satisfao dos clientes
para receber feedback sobre se o produto atende as expectativas dos clientes. As equipes podem utilizar outras
mtricas semelhantes s capturadas em metodologias de desenvolvimento tradicionais, tais como taxas de
aprovao/reprovao de teste, taxas de deteco de defeitos, resultados de teste de confirmao e regresso,
densidade de defeitos, defeitos detectados e corrigidos, cobertura de requisitos, cobertura de riscos, cobertura
de cdigo, e rotatividade do cdigo para melhorar a qualidade do produto.
Como acontece com qualquer ciclo de vida, as mtricas capturadas e relatadas devem ser relevantes e ajudam
na tomada de decises. As mtricas no devem ser utilizadas para premiar, punir ou afastar quaisquer membros
da equipe.
2.2.2 Gesto de Risco de Regresso com Evoluo dos Casos de Teste Manuais e
Automatizado
Em um projeto gil, assim que cada iterao concluda, o produto cresce. Por conseguinte, no mbito dos
testes, tambm aumenta. Juntamente com o teste das alteraes no cdigo na iterao atual, os testadores
tambm precisam verificar se alguma regresso foi introduzida nas funcionalidades que foram desenvolvidos
e testados em iteraes anteriores. O risco de introduzir uma regresso no desenvolvimento gil alto, devido
ao cdigo extenso (linhas de cdigo adicionadas, modificadas ou apagadas de uma verso para outra). Visto
que responder mudana um princpio chave gil, as mudanas tambm podem ser feitas em funcionalidades
anteriormente desenvolvidos para atender s necessidades comerciais. A fim de manter a velocidade sem
incorrer em um grande volume de dvida tcnica, fundamental que as equipes invistam em automao de
testes em todos os nveis de teste o mais cedo possvel. Tambm fundamental que todos os ativos de teste,
tais como testes automatizados, casos de teste manuais, dados de teste e outros artefatos de teste sejam
mantidos atualizados com cada iterao. altamente recomendvel que todos os ativos de teste sejam mantidos
em uma ferramenta de gesto de configurao, a fim de permitir o controle de verso, para assegurar a
facilidade de acesso por todos os membros da equipe, e para apoiar as alteraes necessrias devido mudana
de funcionalidade e ainda preservar a informao histrica dos ativos de teste.
Como a repetio completa de todos os testes raramente possvel, especialmente em projetos geis com
cronograma apertado, os testadores precisam alocar tempo em cada iterao para rever casos de teste manuais
e automatizados de iteraes anteriores e atuais para selecionar casos de teste que podem ser candidatos ao
teste de regresso, e para retirar casos de teste que no so mais relevantes. Testes escritos em iteraes
anteriores para verificar funcionalidades especficos podem ter pouco valor em iteraes posteriores devido a
alteraes de funcionalidades ou novas funcionalidades que alteram a forma como essas funcionalidades
anteriores se comportam.
Ao rever os casos de teste, os testadores devem considerar a adequao para automao. A equipe precisa
automatizar o mximo de testes possveis de iteraes anteriores e atuais. Isso permite que os testes de
regresso automatizados reduzam o risco de regresso com menos esforo do que os testes de regresso manual
exigiriam. Este esforo de teste de regresso reduzido libera os testadores para testar mais a fundo novos
funcionalidades e funes na iterao atual.
fundamental que os testadores tenham a capacidade de identificar rapidamente e atualizar os casos de teste
a partir de iteraes e/ou verses anteriores que so afetadas pelas alteraes feitas na iterao atual. Definir
como a equipe projeta, escreve e armazena casos de teste deve ocorrer durante o planejamento do lanamento.
Boas prticas para a modelagem de teste e implementao precisam ser aprovadas no incio e aplicadas de
forma consistente. Os prazos mais curtos para testes e a mudana constante em cada iterao ir aumentar o
impacto do projeto de teste e das prticas de implementao ineficientes.
Uso de automao de teste, em todos os nveis de teste, permite que equipes geis forneam feedback rpido
sobre a qualidade do produto. Testes automatizados bem escritos fornecem um documento vivo da
funcionalidade do sistema [Crispin08]. Ao verificar os testes automatizados e os resultados dos testes
24
Certified Tester
Foundation Level Syllabus Agile Tester
correspondentes no sistema de gerenciamento de configurao, em conformidade com a verso do produto, as
equipes geis podem rever a funcionalidade testada e os resultados do teste de uma determinada configurao
a qualquer momento.
Testes de unidade automatizados so executados antes que o cdigo fonte seja marcado na linha principal do
sistema de gesto de configurao para garantir que as alteraes de cdigo no prejudiquem o
desenvolvimento do software. Para reduzir prejuzos no desenvolvimento, que podem retardar o progresso de
toda a equipe, o cdigo no deve ser verificado, a menos que todos os testes de unidade automatizados sejam
aprovados. Os resultados do teste de unidade automatizados fornecem feedback imediato quanto ao cdigo e
a qualidade do projeto, mas no quanto qualidade do produto.
Testes de aceitao automatizados so executados regularmente, como parte da integrao contnua completa
do projeto do sistema. Estes testes so executados com referncia um projeto do sistema completo, pelo
menos diariamente, mas geralmente no so realizados com cada verificao do cdigo, pois eles levam mais
tempo para executar do que os testes de unidade automatizados e podem atrasar a verificao do cdigo Os resultados dos testes de aceitao automatizados fornecem feedback sobre a qualidade do produto em
relao a regresso desde a ltima compilao, mas no fornecem status da qualidade geral do produto.
Os testes automatizados podem ser executados de forma contnua em relao ao sistema. Um subconjunto
inicial de testes automatizados para cobrir a funcionalidade crtica do sistema e pontos de integrao deve ser
criado imediatamente aps uma nova compilao ser implantada no ambiente de teste. Estes testes so
comumente conhecidos como testes de verificao de compilao. Os resultados dos testes de verificao de
compilao vo fornecer um feedback instantneo sobre o software aps a implantao, para que as equipes
no percam tempo testando uma configurao instvel.
Os testes automatizados contidos no conjunto de testes de regresso so geralmente executados como parte da
compilao principal diria no ambiente de integrao contnua, e novamente quando uma nova compilao
implantada no ambiente de teste. Quando um teste de regresso automatizado falha, a equipe interrompe as
atividades e investiga as razes da falha do teste. O teste pode ter falhado devido a alteraes funcionais
legtimas na iterao atual; neste caso, a estria de teste e/ou usurio pode precisar ser atualizado para refletir
os novos critrios de aceitao. Alternativamente, o teste pode ter que ser retirado se outro teste foi compilado
para cobrir as modificaes. No entanto, se o teste falhou devido a um defeito, uma boa prtica para a equipe
corrigir o defeito antes de avanar com novas funcionalidades.
Alm da automao de teste, as seguintes tarefas de teste tambm podem ser automatizadas:
A automao destas tarefas reduz a sobrecarga e permite que a equipe tenha tempo para desenvolver e testar
novos funcionalidades.
25
Certified Tester
Foundation Level Syllabus Agile Tester
automao de testes, desenvolvimento orientado a testes, aceitao desenvolvimento orientado a aceitao,
caixa branca, caixa-preta, e testes baseados em experincia.
Como as metodologias do gil dependem muito da colaborao, comunicao e interao entre os membros
da equipe, bem como das partes interessadas fora da equipe, os testadores em uma equipe do gil devem ter
boas habilidades interpessoais. Os testadores nas equipes do gil devem:
Ser positivos e orientados para soluo com os membros da equipe e partes interessadas
Mostrar pensamento crtico e ctico orientado para a qualidade, sobre o produto
Ativamente adquirir informaes das partes interessadas (ao invs de confiar inteiramente em
especificaes escritas)
Avaliar com preciso e relatar os resultados dos testes, o progresso de teste e qualidade do produto
Trabalhar efetivamente para definir estrias de usurios testveis, especialmente os critrios de
aceitao, com representantes dos clientes e partes interessadas
Colaborar dentro da equipe, trabalhando em pares com os programadores e outros membros da equipe
Responder mudana rapidamente, incluindo alterao, adio ou melhora dos casos de teste
Planejar e organizar o seu prprio trabalho.
Dentro de uma equipe do gil, cada membro da equipe responsvel pela qualidade do produto e desempenha
um papel na execuo de tarefas relacionadas com o teste.
As organizaes geis podem detectar alguns riscos organizacionais relacionados com o teste:
26
Certified Tester
Foundation Level Syllabus Agile Tester
27
Certified Tester
Foundation Level Syllabus Agile Tester
3.1 Mtodos de Teste do gil
Existem certas prticas de teste que podem ser seguidas em todos os projetos de desenvolvimento (gil ou
no) para produzir produtos de qualidade. Estas incluem descrever testes com antecedncia, para expressar um
comportamento adequado, com foco na preveno precoce do defeito, deteco e remoo, e garantir que os
tipos de teste corretos sejam realizados no momento certo e como parte do nvel correto de teste. Os
profissionais do gil visam introduzir essas prticas mais cedo. Os testadores nos projetos geis desempenham
um papel fundamental na orientao do uso dessas prticas de testes em todo o ciclo de vida.
Os testes escritos so principalmente ao nvel de unidade e so focados no cdigo, embora os testes tambm
possam ser escritos nos nveis de integrao ou de sistema. Desenvolvimento orientado para teste adquiriu sua
popularidade atravs de Extreme Programming [Beck02], mas tambm utilizado em outras metodologias do
gil e as vezes em ciclos de vida sequenciais. Ele ajuda os desenvolvedores a focar em resultados esperados
claramente definidos. Os testes so automatizados e so utilizados na integrao contnua.
Desenvolvimento Orientado para o Teste de Aceitao
O desenvolvimento orientado para o teste de aceitao (ATDD) [Adzic09] define critrios e testes de aceitao
durante a criao de estrias de usurios (ver Seo 1.2.2). Desenvolvimento orientado para teste de aceitao
uma abordagem colaborativa que permite que todas as partes interessadas compreendam como o componente
de software tem que se comportar e o que os desenvolvedores, testadores e as partes interessadas precisam
para garantir esse comportamento. O processo de desenvolvimento orientado para o teste de aceitao
desenvolvimento explicado na Seo 3.3.2.
O desenvolvimento orientado para aceitao cria testes reutilizveis para teste de regresso. Ferramentas
especficas apoiam a criao e execuo de tais testes, muitas vezes dentro do processo de integrao contnua.
Estas ferramentas podem se conectar a dados e servios de camadas de aplicao, que permite que os testes
sejam realizados no nvel do sistema ou aceitao. Desenvolvimento orientado para teste de aceitao permite
a resoluo rpida de defeitos e validao de comportamento da funcionalidade. Ele ajuda a determinar se os
critrios de aceitao so cumpridos para a funcionalidade.
Desenvolvimento orientado para o comportamento
Desenvolvimento orientado para o comportamento (BDD) [Chelimsky10] permite que um desenvolvedor se
concentre em testar o cdigo com base no comportamento esperado do software. Como os testes so baseados
28
Certified Tester
Foundation Level Syllabus Agile Tester
no comportamento exibido do software, os testes so geralmente mais fceis de entender para outros membros
da equipe e partes interessadas.
Estruturas especficas de desenvolvimento orientado a comportamento podem ser utilizadas para definir os
critrios de aceitao com base no formato dado/quando/depois:
Dado algum contexto inicial, quando ocorre um evento, em seguida assegurar alguns resultados.
A partir desses requisitos, a estrutura de desenvolvimento orientado para o comportamento gera um cdigo
que pode ser usado por desenvolvedores para criar casos de teste. Desenvolvimento orientado para o
comportamento ajuda o desenvolvedor a colaborar com outras partes interessadas, incluindo os testadores,
para definir testes de unidade acurados focados nas necessidades comerciais.
29
Certified Tester
Foundation Level Syllabus Agile Tester
Durante uma determinada iterao, os testes de algum ou todos os quadrantes podem ser necessrios. Os
quadrantes de teste se aplicam a testes dinmicos ao invs de testes estticos.
Multifuncional: Cada membro da equipe traz um conjunto diferente de habilidades para a equipe. A
equipe trabalha em conjunto na estratgia de teste, planejamento de testes, especificao de teste,
execuo de testes, avaliao de teste, e o relato dos testes de relatrios.
Auto-organizao: A equipe pode consistir apenas de desenvolvedores, mas, como mencionado na
Seo 2.1.5, o ideal que haja um ou mais testadores.
Co-localizado: Os testadores se renem com os desenvolvedores e o proprietrio do produto.
Colaborativo: Os testadores colaboram com seus membros da equipe, outras equipes, as partes
interessadas, o proprietrio do produto, e o Scrum Master.
Capacitado: As decises tcnicas de projeto e teste so tomadas pela equipe como um todo
(desenvolvedores, testadores e Scrum Master), em colaborao com o proprietrio do produto e outras
equipes, se necessrio.
Comprometido: O testador tem o compromisso de questionar e avaliar o comportamento e as
caractersticas do produto em relao s expectativas e necessidades dos clientes e usurios.
Transparente: Desenvolvimento e progresso de testes visvel no quadro de tarefas do gil (ver Seo
2.2.1).
Credibilidade: O testador deve garantir a credibilidade da estratgia de testes, sua implementao e
execuo, caso contrrio, as partes interessadas no vo confiar nos resultados do teste. Isso muitas
vezes feito atravs do fornecimento de informaes s partes interessadas sobre o processo de teste.
Aberto ao feedback: O feedback um aspecto importante para ser bem sucedido em qualquer projeto,
especialmente em projetos geis. Retrospectivas permitem que as equipes aprendam com os sucessos
e com os fracassos.
Resiliente: Os testes devem ser capazes de responder mudana, como todas as outras atividades nos
projetos geis.
Estas melhores prticas maximizam a probabilidade de testes bem-sucedidos nos projetos Scrum.
Sprint Zero
Sprint Zero a primeira iterao do projeto, onde muitas atividades de preparao ocorrem (ver Seo 1.2.5).
O testador colabora com a equipe nas seguintes atividades durante esta iterao:
30
Certified Tester
Foundation Level Syllabus Agile Tester
Sprint zero define o rumo que o teste precisa alcanar e como o teste precisa alcan-lo ao longo dos sprints.
Integrao
Nos projetos geis, o objetivo agregar valor para o cliente em uma base contnua (de preferncia em cada
sprint). Para permitir isso, a estratgia de integrao deve considerar a concepo e teste. Para permitir uma
estratgia de teste contnua para a funcionalidade e caractersticas apresentadas, importante identificar todas
as dependncias entre as funes e caractersticas subjacentes.
Planejamento de Teste
Visto que o teste est totalmente integrado na equipe do gil, o planejamento do teste deve comear durante
a sesso do planejamento de lanamento e ser atualizado durante cada sprint. Planejamento de teste para o
lanamento e cada sprint deve abordar as questes discutidas na Seo 1.2.5.
O planejamento do Sprint resulta em um conjunto de tarefas a serem inseridas no quadro de tarefas, onde cada
tarefa deve ter a durao de um ou dois dias de trabalho. Alm disso, quaisquer questes relacionadas a testes
devem ser monitoradas para manter um fluxo constante de testes.
Prticas de Teste do gil
Muitas prticas podem ser teis para testadores em uma equipe Scrum, algumas das quais incluem:
Estas prticas so suplementares s outras prticas discutidas neste programa e no captulo 4 do programa
Foundation Level [ISTQB_FL_SYL].
31
Certified Tester
Foundation Level Syllabus Agile Tester
O risco a possibilidade de um resultado ou evento negativo ou indesejvel. O nvel de risco detectado
atravs da avaliao da probabilidade de ocorrncia do risco e do impacto do risco. Quando o efeito primrio
do problema potencial a qualidade do produto, os potenciais problemas so chamados de riscos de qualidade
e riscos do produto. Quando o efeito primrio do problema potencial sobre o sucesso do projeto, problemas
potenciais so referidos como riscos do projeto ou planejamento de riscos [Black07] [vanVeenendaal12].
Como mencionado anteriormente, uma iterao comea com o planejamento da iterao, que culmina em
tarefas estimadas em um quadro de tarefa. Estas tarefas podem ser priorizadas em parte com base no nvel de
risco de qualidade associado s mesmas. Tarefas associadas a riscos mais elevados devem comear mais cedo
e envolvem mais esforo de teste. Tarefas associadas a riscos menores devem comear mais tarde e envolvem
menos esforo de teste.
Um exemplo de como o processo de anlise de risco de qualidade em um projeto do gil pode ser realizado
durante o planejamento da iterao descrito nas seguintes etapas:
1. Reunir os membros da equipe do gil, incluindo o testador (es)
2. Listar todos os itens do backlog da iterao atual (por exemplo, em um quadro de tarefa)
3. Identificar os riscos de qualidade associados a cada item, considerando-se todas as caractersticas
relevantes de qualidade
4. Avaliar cada risco identificado, que inclui duas atividades: categorizar o risco e determinar o seu nvel
de risco com base no impacto e na probabilidade de defeitos
5. Determinar a extenso do teste proporcional ao nvel de risco.
6. Escolher a tcnica de teste apropriada para mitigar cada risco, com base no risco, nvel de risco, e a
caracterstica de qualidade pertinente.
O testador ento projeta, implementa e executa testes para mitigar os riscos. Isso inclui a totalidade de
funcionalidades, comportamentos, caractersticas de qualidade e atributos que afetam cliente, usurio e
satisfao das partes interessadas.
Ao longo do projeto, a equipe deve manter-se consciente de informaes adicionais que podem alterar o
conjunto de riscos e/ou o nvel de risco associado a riscos de qualidade conhecidos. Ajuste peridico da anlise
de risco de qualidade, que resulta em adaptaes dos testes, deve ocorrer. Os ajustes incluem a identificao
de novos riscos, reavaliar o nvel de riscos existentes e avaliar a eficcia das atividades de mitigao de risco.
Os riscos de qualidade tambm podem ser atenuados antes do incio da execuo do teste. Por exemplo, se os
problemas com as estrias dos usurios so detectados durante a identificao do risco, a equipe do projeto
pode rever completamente as estrias dos usurios como uma estratgia de mitigao.
32
Certified Tester
Foundation Level Syllabus Agile Tester
progresso de escolha (por exemplo, os tamanhos da camisa que variam de extra pequeno a extra-extragrande). Os valores representam o nmero de pontos da estria, dias de esforo, ou outras unidades nas quais
a equipe estima. A sequncia de Fibonacci recomendada, pois os nmeros na sequncia refletem que a
incerteza cresce proporcionalmente com o tamanho da estria. A estimativa alta significa geralmente que a
estria no bem compreendida ou deve ser dividida em vrias estrias menores.
Os estimadores discutem a funcionalidade e fazem perguntas sobre o proprietrio do produto, conforme
necessrio. Aspectos como desenvolvimento e esforo de teste, complexidade da estria e escopo dos testes
desempenham um papel fundamental na estimativa. Portanto, aconselhvel incluir o nvel de risco de um
item de backlog, alm da prioridade especificada pelo proprietrio do produto, antes do incio da sesso de
planeamento de pquer. Quando a funcionalidade amplamente discutida, cada estimador seleciona
privativamente uma carta para representar a sua estimativa. Todos os cartes so ento revelados ao mesmo
tempo. Se todos os estimadores selecionaram o mesmo valor, este se torna a estimativa. Caso contrrio, os
estimadores discutem as diferenas nas estimativas depois que a rodada de pquer repetida, at que seja
alcanado um acordo, seja por consenso ou pela aplicao de regras (por exemplo, usar a mediana, use a maior
pontuao) para limitar o nmero de rodadas de pquer. Essas discusses garantem uma estimativa confivel
do esforo necessrio para completar itens de backlog do produto solicitados pelo proprietrio do produto e
ajudam a melhorar o conhecimento coletivo do que tem que ser feito [Cohn04].
Durante cada iterao, os desenvolvedores criam cdigo que implementa as funes e funcionalidades
descritos nas estrias de usurios, com as caractersticas de qualidade relevantes, e esse cdigo verificado e
validado atravs de testes de aceitao. Para ser testvel, os critrios de aceitao devem abordar os seguintes
tpicos relevantes [Wiegers13]:
33
Certified Tester
Foundation Level Syllabus Agile Tester
Cenrios (casos de uso): Uma sequncia de aes entre um ator externo (muitas vezes um usurio) e
o sistema, a fim de realizar uma tarefa ou objetivo de negcio especfico.
Regras de negcios: Atividades que s podem ser executadas no sistema sob certas condies
definidas por procedimentos e restries externas (por exemplo, os procedimentos utilizados por uma
companhia de seguros para lidar com reclamaes de seguros).
Interfaces externas: Descries das conexes entre o sistema a ser desenvolvido e o mundo exterior.
Interfaces externas podem ser divididas em diferentes tipos (interface do usurio, interface com outros
sistemas, etc).
Restries: Qualquer projeto e restrio de implementao que restrinja as opes para o
desenvolvedor. Aparelhos com software embutido muitas vezes devem respeitar as restries fsicas,
tais como tamanho, peso e conexes de interface.
Definies de dados: O cliente pode descrever o formato, tipo de dados, valores permitidos e valores
padro para um item de dados na composio de uma estrutura de dados de negcios complexos (por
exemplo, o CEP em um endereo de correio dos EUA).
Alm das estrias de usurios e seus critrios de aceitao associados, outras informaes relevantes para o
testador, incluindo:
Os testadores, muitas vezes, descobrem a necessidade de informaes adicionais (por exemplo, a cobertura de
cdigo) ao longo das iteraes e devem trabalhar em colaborao com o resto dos membros da equipe do gil
para obter estas informaes. As informaes relevantes desempenham um papel fundamental para determinar
se uma atividade especfica pode ser considerada realizada. Este conceito da definio de pronto crucial nos
projetos geis e aplica-se em uma srie de maneiras diferentes, como discutido nas seguintes subsees.
Nveis de Teste
Cada nvel de teste tem sua prpria definio de pronto. A lista a seguir d exemplos que podem ser relevantes
para os diferentes nveis de teste.
Teste da unidade:
100% de cobertura de deciso, sempre que possvel, com revises cuidadosas de todos os caminhos
inviveis
Anlise esttica realizada em todo o cdigo
Defeitos importantes no resolvidos (classificados com base na prioridade e gravidade)
No conhecida nenhuma dvida tcnica inaceitvel restante no projeto e no cdigo [Jones11]
Todos os cdigos, testes de unidade, e resultados de unidade de teste avaliados
Todos os testes de unidade automatizados
Caractersticas importantes esto dentro dos limites acordados (por exemplo, desempenho)
Teste de integrao
Todos os requisitos funcionais testados, incluindo os testes positivos e negativos, com o nmero de
testes com base no tamanho, complexidade e riscos
Todas as interfaces entre as unidades testadas
Todos os riscos de qualidade cobertos de acordo com a medida acordada de testes
No h defeitos importantes no solucionados (priorizados de acordo com o risco e importncia)
Todos os defeitos encontrados so relatados
Todos os testes de regresso automatizados, sempre que possvel, com todos os testes automatizados
armazenados em um repositrio comum
34
Certified Tester
Foundation Level Syllabus Agile Tester
Teste de sistema
Estria do Usurio
A definio de pronto para estrias de usurios pode ser determinada pelos seguintes critrios:
As estrias de usurios selecionados para a iterao so completas, compreendidas pela equipe, e com
critrios de aceitao detalhados e testveis
Todos os elementos da estria do usurio so especificados e avaliados, incluindo os testes de
aceitao da estria do usurio, foram concludos
Tarefas necessrias para implementar e testar as estrias de usurios selecionados foram identificadas
e estimados pela equipe
Funcionalidade
A definio de pronto para funcionalidades, que pode se estender por vrias estrias de usurios ou picos,
pode incluir:
Iterao
A definio de pronto para a iterao pode incluir o seguinte:
Todas as funcionalidades para a iterao esto prontos e so testados individualmente de acordo com
os critrios de nvel de funcionalidade
Todos os defeitos no crticos que no podem ser corrigidos dentro dos limites da iterao adicionados
ao backlog do produto e priorizados
Integrao de todas as funcionalidades para a iterao concluda e testada
Documentao escrita, avaliada e aprovada
Neste ponto, o software potencialmente destacvel, pois a iterao foi concluda com xito, mas nem todas
as iteraes resultam em um lanamento.
Lanamento
A definio de pronto para um lanamento, que pode se estender por vrias iteraes, podem incluir as
seguintes reas:
35
Certified Tester
Foundation Level Syllabus Agile Tester
Cobertura: Todos os elementos da base de teste relevantes para todo o contedo do lanamento foi
coberto por testes. A adequao da cobertura determinada pelo que novo ou alterado, sua
complexidade e tamanho, e os riscos associados de fracasso.
Qualidade: A intensidade de defeito (por exemplo, quantos defeitos so encontrados por dia ou por
transao), a densidade de defeitos (por exemplo, o nmero de defeitos encontrados em comparao
com o nmero de estrias de usurios, esforo e/ou atributos de qualidade), o nmero estimado de
permanncia dos defeitos esto dentro dos limites aceitveis, as consequncias de defeitos no
resolvidos e restantes (por exemplo, a gravidade e de prioridade) so compreendidas e aceitveis, o
nvel residual de risco associado a cada um dos riscos identificados qualidade compreendido e
aceitvel.
Tempo: Se a data de entrega pr-determinada foi cumprida, as consideraes comerciais associadas ao
lanamento e no lanamento devem ser consideradas.
Custo: O custo do ciclo de vida estimado deve ser usado para calcular o retorno sobre o investimento
para o sistema de entrega (ou seja, o custo de desenvolvimento e manuteno calculada deve ser
consideravelmente menor do que as vendas totais esperadas do produto). A maior parte do custo do
ciclo de vida vem muitas vezes da manuteno aps o lanamento do produto, devido ao nmero de
defeitos que escapam produo.
36
Certified Tester
Foundation Level Syllabus Agile Tester
valor limite pode ser utilizada para selecionar os valores de teste quando um cliente limitado no nmero de
itens que escolherem para compra.
Em muitas situaes, os requisitos no funcionais podem ser documentados como estrias de usurio. Tcnicas
de projeto de teste caixa preta (como anlise de valor limite) tambm podem ser utilizadas para criar testes
para caractersticas de qualidade no funcionais. A estria de usurio pode conter requisitos de desempenho
ou confiabilidade. Por exemplo, uma determinada execuo no pode exceder um limite de tempo, ou um
nmero de operaes no pode ser inferior a um determinado nmero de vezes.
Para obter mais informaes sobre o uso das tcnicas de projeto do teste da caixa preta, consulte o programa
Foundation Level [ISTQB_FL_SYL] e o programa Advanced Test Analyst Level [ISTQB_ALTA_SYL].
Para gerenciar o teste exploratrio, um mtodo chamado gesto de testes baseado em sesso pode ser usado.
Uma sesso definida como um perodo ininterrupto de teste que pode durar de 60 a 120 minutos. Sesses de
testes incluem o seguinte:
Cobertura profunda (casos laterais, cenrios, as interaes) A qualidade dos testes depende da capacidade dos
testadores em fazer perguntas pertinentes sobre o que testar. Exemplos incluem o que se segue:
37
Certified Tester
Foundation Level Syllabus Agile Tester
Durante a execuo do teste, o testador usa a criatividade, a intuio, cognio e habilidade para encontrar
possveis problemas com o produto. O testador tambm precisa ter bom conhecimento e compreenso do
software em teste, o domnio do negcio, como o software usado, e como determinar quando o sistema falha.
Um conjunto de heurstica pode ser aplicado durante o teste. A heurstica pode orientar o testador em como
realizar os testes e avaliar os resultados [Hendrickson]. Os exemplos incluem:
Limites
CRUD (Criar, Ler, Atualizar, Deletar)
Variaes de configurao
Interrupes (por exemplo, fazer logoff, desligar, ou reiniciar)
importante para o testador documentar o processo, tanto quanto possvel. Caso contrrio, seria difcil voltar
atrs e ver como um problema no sistema foi detectado. A lista a seguir fornece exemplos de informaes que
podem ser teis ao documento:
Cobertura de teste: quais dados de entrada foram utilizados, quanto foi coberto, e quanto ainda resta a
ser testado
Notas de avaliao: observaes durante os testes, sistema de execuo e funcionalidade em teste
parece estar estvel, os defeitos foram detectados, o que est previsto como a prxima etapa, de acordo
com as observaes atuais, e qualquer outra lista de ideias
Lista de risco/estratgia: quais riscos foram cobertos e quais permanecem entre os mais importantes,
ser a estratgia inicial ser seguida, pois no precisa de quaisquer mudanas
Questes, perguntas e anomalias: qualquer comportamento inesperado, alguma dvida sobre a eficcia
da abordagem, qualquer preocupao com as ideias/tentativas de teste, ambiente de teste, dados de
teste, a incompreenso da funo, script de teste ou o sistema em teste
Comportamento atual: registro do comportamento real do sistema que precisa ser salvo (por exemplo,
vdeo, capturas de tela, arquivos de dados de sada)
As informaes registradas devem ser capturadas e/ou resumidas em alguma forma de ferramentas de status
de gesto (por exemplo, ferramentas de gerenciamento de teste, ferramentas de gerenciamento de tarefas, o
quadro de tarefas), de uma forma que facilite para as partes interessadas a compreenso do status atual de todos
os testes que foram realizados.
38
Certified Tester
Foundation Level Syllabus Agile Tester
3.4.1 Ferramentas de Gesto e Rastreamento de Tarefas
Em alguns casos, as equipes do gil usam quadros de estria/tarefas fsicas (por exemplo, quadro branco,
corkboard) para gerenciar e rastrear estrias de usurios, testes e outras tarefas ao longo de cada sprint. Outras
equipes vo usar software de gerenciamento de ciclo de vida e gerenciamento de tarefas, incluindo quadros
eletrnicas de tarefa. Essas ferramentas servem para os seguintes fins:
Registrar estrias e suas tarefas de desenvolvimento e teste relevantes, para garantir que nada seja
perdido durante um sprint
Capturar estimativas dos membros da equipe em suas tarefas e calcular automaticamente o esforo
necessrio para implementar uma estria, para apoiar sesses de planejamento de iterao eficientes
Tarefas de desenvolvimento associados e tarefas de teste com a mesma estria, para fornecer um
quadro completo do esforo da equipe necessria para implementar a estria
Agregar desenvolvedores e atualizaes de testadores ao status da tarefa ao conclurem o seu trabalho,
fornecendo um resumo calculado atual do status de cada estria, a iterao e o lanamento global.
Fornecer uma representao visual (atravs de mtricas, grficos e dashboards) do estado atual de cada
estria de usurio, a iterao e o lanamento, permitindo que todas as partes interessadas, incluindo as
pessoas em equipes geograficamente distribudas, verificar rapidamente o status
Integrao com ferramentas de gerenciamento de configurao, o que pode permitir o registro
automtico de verificaes do cdigo e realizaes das tarefas, e, em alguns casos, atualizaes de
status automatizado para tarefas.
Permite a comunicao direta em tempo real entre os membros da equipe, em especial equipes
distribudas
Envolve equipes distribudas em reunies dirias
Reduz contas de telefone atravs do uso de tecnologia de voz sobre IP, eliminando restries de custo
que podem reduzir a comunicao do membro da equipe em ambientes distribudos
39
Certified Tester
Foundation Level Syllabus Agile Tester
Essas ferramentas devem ser utilizadas para complementar e ampliar, e no substituir, a comunicao face-aface em equipes do gil.
40
Certified Tester
Foundation Level Syllabus Agile Tester
Ferramentas de teste exploratrio: Ferramentas que captam e registram atividades realizadas em um
aplicativo durante uma sesso de teste exploratrio so benficas para o testador e desenvolvedor, pois
registram as aes tomadas. Isso til quando um defeito encontrado, pois as aes tomadas antes da
falha ocorrida foram captadas e podem ser utilizadas para relatar o defeito para os desenvolvedores.
Registro das etapas realizadas em uma sesso de teste exploratrio pode vir a ser benfico se o teste for,
em ltima anlise, includo no conjunto de testes automatizados de regresso.
41
Certified Tester
Foundation Level Syllabus Agile Tester
4. Referncias
4.1 Normas
[ISTQB_ALTA_SYL]
[ISTQB_ALTM_SYL]
[ISTQB_FA_OVIEW]
[ISTQB_FL_SYL]
4.3 Livros
[Aalst13] Leo van der Aalst and Cecile Davis, "TMap NEXT in Scrum," ICT-Books.com, 2013.
[Adzic09] Gojko Adzic, "Bridging the Communication Gap: Specification by Example and Agile
Acceptance Testing," Neuri Limited, 2009.
[Anderson13] David Anderson, "Kanban: Successful Evolutionary Change for Your Technology
Business," Blue Hole Press, 2010.
[Beck02] Kent Beck, "Test-driven Development: By Example," Addison-Wesley Professional, 2002.
[Beck04] Kent Beck and Cynthia Andres, "Extreme Programming Explained: Embrace Change, 2e"
Addison-Wesley Professional, 2004.
[Black07] Rex Black, "Pragmatic Software Testing," John Wiley and Sons, 2007.
[Black09] Rex Black, "Managing the Testing Process: Practical Tools and Techniques for Managing
Hardware and Software Testing, 3e," Wiley, 2009.
[Chelimsky10] David Chelimsky et al, "The RSpec Book: Behavior Driven Development with Rspec,
Cucumber, and Friends," Pragmatic Bookshelf, 2010.
[Cohn04] Mike Cohn, "User Stories Applied: For Agile Software Development," Addison-Wesley
Professional, 2004.
[Crispin08] Lisa Crispin and Janet Gregory, "Agile Testing: A Practical Guide for Testers and Agile
Teams," Addison-Wesley Professional, 2008.
[Goucher09] Adam Goucher and Tim Reilly, editors, "Beautiful Testing: Leading Professionals
Reveal How They Improve Software," O'Reilly Media, 2009.
[Jeffries00] Ron Jeffries, Ann Anderson, and Chet Hendrickson, "Extreme Programming Installed,"
Addison-Wesley Professional, 2000.
[Jonesll] Capers Jones and Olivier Bonsignour, "The Economics of Software Quality," AddisonWesley Professional, 2011.
[Linz14] Tilo Linz, "Testing in Scrum: A Guide for Software Quality Assurance in the Agile World,"
Rocky Nook, 2014.
[Schwaber01] Ken Schwaber and Mike Beedle, "Agile Software Development with Scrum," Prentice
Hall, 2001.
[vanVeenendaal12] Erik van Veenendaal, "The PRISMA approach", Uitgeverij Tutein Nolthenius,
2012.
[Wiegers13] Karl Wiegers and Joy Beatty, "Software Requirements, 3e," Microsoft Press, 2013.
42
Certified Tester
Foundation Level Syllabus Agile Tester
4.4 Terminologia do gil
Palavras-chave que so encontrados no Glossrio ISTQB Glossrio so identificadas no incio de cada
captulo. Para termos comuns do gil, contamos com os seguintes recursos da Internet que fornecem
definies.
http://guide.agilealliance.org/
http://whatis.techtargetcom/glossary
http://www.scrumalliance.org/
Convidamos os leitores a verificar esses sites caso eles no estejam familiarizados com os termos relacionados
ao gil neste documento. Estes links estavam ativos no momento de lanamento deste documento.
43
Certified Tester
Foundation Level Syllabus Agile Tester
ndice
gerenciamento de testes, 33
automao, 8, 10, 16, 17, 19, 21, 24, 25, 26, 27, 29, 33
Incremento, 12
Integrao contnua, 15
Backlog do Produto, 12
INVEST, 13, 45
Backlog do Sprint, 12
base de conhecimento, 42
Manifesto gil, 4, 8, 9, 11
ciclo de vida, 8, 9, 20, 22, 25, 30, 31, 32, 38, 41, 43
Cobertura, 38, 40
Planejamento de iterao, 34
conceito 3C, 14
planejamento de liberao, 16
critrios de aceitao, 13, 14, 16, 21, 22, 24, 26, 27, 29, 30, 31,
36, 37, 39
planejamento do teste, 33
pquer do planejamento, 35
Proprietrio do Produto, 12
quadrantes de teste, 29, 31, 32
requisitos no-funcionais, 13
Retrospectivas, 4, 14, 32
doze princpios, 9
risco, 11, 16, 17, 19, 20, 22, 23, 24, 25, 29, 33, 34, 35, 37, 38,
39, 40
emparelhamento, 20, 42
Estria, 4, 13, 37
estria do usurio, 8, 11, 13, 22, 29, 31, 37, 38, 39, 40
estrias, 8, 12, 13, 14, 15, 16, 17, 20, 21, 22, 24, 27, 29, 30,
31, 33, 35, 36, 37, 38, 39, 41, 45
feedback inicial, 8, 11
Teste de sistema, 37
testes automatizados, 15, 21, 22, 23, 25, 26, 30, 31, 37, 41, 42,
43
44