Hetzel, descrevia um processo de evoluo dos testes e lanava um documento que chamou
de Plano de Testes. Esse documento, base de todas as metodologias de teste que usamos
hoje em dia, segundo o artigo citado, deveria ser escrito a partir dos requisitos do sistema e
por si s j ajudava a reduzir a quantidade de defeitos dos sistemas, dando aos testadores os
objetivos a serem alcanados durante a atividade de teste. Isso nos leva a uma concluso
bvia, que reporta existncia do documento Plano de Testes h mais de 20 (vinte) anos,
ainda que a popularizao do seu uso seja mais recente.
Embora desde a dcada de 70, como vimos nos pargrafos anteriores, j existissem
trabalhos mostrando que o teste precisava ser re-estruturado, essa mudana s comeou a
ocorrer de fato no final da dcada de 90. Decidiu-se ento tratar o teste de software no
mais como uma atividade do processo de desenvolvimento, mas sim como um processo
independente. Desta forma o teste passaria a ser executado por uma equipe de especialistas
com o objetivo de diminuir o nmero de defeitos que estavam sendo passados para a
produo. Essa soluo vem sendo gradativamente adotada pelas empresas, com os
resultados esperados, qual seja, softwares com ndices de qualidade melhores. No entanto
essa mudana organizacional inesperada, e ainda no completamente absorvida, trouxe
tambm novos problemas a serem tratados. No adianta apenas testar, mas sim testar bem.
Os custos podem cair na etapa final, mas inicialmente os investimentos so maiores. Se a
rea de teste no estiver bem organizada os defeitos vo continuar a ocorrer num estgio
onde os custos so maiores. Cogitou-se ento em modelos que permitissem rea de teste
de software atingir nveis de maturidade, melhorando, desta forma, os resultados esperados.
A lgica passou a ser a seguinte, alm de implantar a rea de teste de software, que por si
s trar resultados imediatos, ainda vamos criar um processo de melhoria contnua, com
resultados cada vez melhores.
Os modelos de maturidade de teste de software
Ao mesmo tempo em que se comeava a implantar as reas de teste nas empresas, os
especialistas j se preocupavam com os modelos que permitissem a sua melhoria. Data da
dcada de 1990 os primeiros modelos de maturidade de teste. O que interessante, pois
talvez 80% ou mais das empresas que desenvolviam software, ainda no trabalhavam com
equipes especialistas em teste de software. Atualmente existe uma verdadeira sopa de
letrinhas envolvendo esses modelos de maturidade de teste de software conforme listado
adiante:
Alguns desses modelos partiram do CMM e depois foram adaptados ao CMMI, porm
apesar desse pressuposto, possuem atualmente, pouca ou nenhuma ligao com eles. Se
tomarmos como exemplo o TMM, cuja base original o CMM, mas a equivalncia hoje
muito pequena. Ou seja, ficaram a separao por estgios e talvez nada mais.
Nveis do TMM
1
Descrio
Inicial
Fase de definio
Integrao
Gesto e medies
Os mesmos requisitos que servem para desenvolver o software tambm servem para criar
os artefatos de teste, inclusive com uma ressalva, pois muitas empresas ainda produzem
requisitos de teste a partir dos requisitos do usurio. Devemos aceitar que a rea de teste
precisa de uma gerncia de requisitos.
Nvel F
O nvel F exige as seguintes reas de processo:
Aquisio
Gerncia de Configurao
Gerncia de Qualidade
Medio
A rea de processo de Aquisio com toda certeza pode ser usada pela rea de teste pois os
seus projetos envolvem aquisies, principalmente na parte de automao especfica. De
qualquer forma essa tambm no uma rea obrigatria.
Cada projeto de teste de software produz inmeros artefatos, tais como Planos de Teste,
Procedimentos de Teste, Casos de Teste e diversos Relatrios de Teste. Nunca demais
lembrar que os casos de teste podem chegar aos milhares num nico projeto, e, alm disso,
devem ser passveis de reastreabilidade a partir do requisito. No temos nenhuma dvida
que a gerncia de configurao deve contemplar a rea de teste.
Usando o prprio manual de implementao do MPS.BR encontramos a seguinte
afirmativa:
O propsito do processo Garantia da Qualidade assegurar que os produtos de trabalho e
a execuo dos processos estejam em conformidade com os planos e recursos
predefinidos.
No existe uma distino sobre quem est cumprindo os processos mas sim se os processos
esto sendo cumpridos, o que nos leva a concluir que essa rea tambm atende aos projetos
de teste de software.
Um processo como o de teste de software, que produz importantes indicadores de
qualidade, no poderia deixar de contemplar a rea de medio. Para citarmos o exemplo
mais bvio, temos o nmero de defeitos encontrados num projeto de teste de software, que
pode ser categorizado de diversas formas, tornando-se um indicador crtico no processo de
tomada de decises.
Nivel E
O nvel E exige as seguintes reas de processo:
Gerncia de Projetos
Avaliao e Melhoria do Processo Organizacional
Definio do Processo Organizacional
Nivel D
O nvel D exige as seguintes reas de processo:
Desenvolvimento de Requisitos
Integrao de Produto
Projeto e Construo do Produto
Validao
Verificao
Este talvez seja o nvel mais difcil de ser entendido pela rea de teste de software, pois
possui algumas sutilezas que iremos discutir adiante. No h dvida que a rea de
Desenvolvimento de Requisitos importante tambm para os projetos de teste de software.
A elicitao dos requisitos de teste, aqueles que sero usados na elaborao dos testes, um
trabalho que com toda certeza vai envolver a gerncia e o desenvolvimento dos requisitos.
Por outro lado, convm lembrar que a mesma rea de processo poder suportar os projetos
de desenvolvimento e os projetos de teste de software, e que, muitas vezes, uma
caracterizao mais especfica dos requisitos dever ser utilizada.
A rea de Anlise de Deciso e Resoluo com toda certeza tambm necessria para um
projeto de teste de software. Testar software uma atividade que envolve tomada de
decises e conseqentemente a avaliao de alternativas. Por exemplo, qual a ferramenta
mais adequada para a execuo de um determinado tipo de teste? O teste pode ser feito
manualmente ou melhor automatiz-lo? Qual o melhor ambiente para aquele tipo de
teste? Tudo isso so decises que requerem avaliar alternativas de soluo.
Nivel B
O nvel B exige as seguintes reas de processo:
Gerncia de Projetos (evoluo)
Como j falamos anteriormente estamos tratando de um projeto de teste de software,
paralelo e aderente ao projeto de desenvolvimento do software.
Nivel A
O nvel A exige as seguintes reas de processo:
Anlise de Causa de Problemas e Resoluo
A rea de processo Anlise de Causa de Problemas e Resoluo se fundamenta na
identificao da causa de variaes de desempenho do processo com o intuito de serem
tomadas aes que diminuam a sua ocorrncia no futuro. Como estamos tratando do
processo de teste de software este o contexto da melhoria de desempenho e no vimos
nenhuma restrio quanto a sua aplicao nesse processo.
Concluses
De todas as reas de processo avaliadas e estudadas apenas trs delas poderiam gerar algum
tipo de discusso quanto a sua aplicabilidade rea de teste de software que so as
seguintes:
Integrao de Produto
Validao
Verificao
Todas as outras reas so perfeitamente aplicveis quando consideramos um projeto de
teste de software conduzido por uma equipe independente de teste de software. Neste
artigo mostramos que algumas reas poderiam ser compartilhadas pelos dois processos
(desenvolvimento e teste) ou projetos, como foi o caso, por exemplo, de Gerncia de
Riscos, Garantia da Qualidade ou Gerncia de Configurao. Em resumo podemos, de
forma genrica, afirmar que quando consideramos o Teste de Software como um projeto
que est baseado num processo, fica fcil entender que a maior parte das reas de processo
perfeitamente aplicada a rea em questo.
A rea de processo Integrao do Produto coberta pelos testes de sistema e pelos testes de
integrao. O que conhecemos como Procedimento de Teste ou Roteiro de Teste representa
a execuo de um conjunto de Casos de Teste de forma integrada para verificar um
Bibliografia:
Rios, E. & Moreira T. Teste de Software. Rio de Janeiro, AltaBooks, 2006.
Institute of Electrical and Electronics Engineers, IEEE Std 829, Standard for Software
Testing Documentation, Nova Iorque, IEEE Computer Society, 1998.
Rios, E. Anlise de Riscos em Projetos de Teste de Software, Rio de Janeiro, AltaBooks,
2005.
Pol M, Teunissem R, Veenendaal E. Van. Software Testing: A guide to the TMap
Approach. Boston, Addison Wesley, 2002.
Softex. MPS.BR Melhoria de Processo do Software Brasileiro Guia de Implementao.
Braslia. 2007.