Professional Documents
Culture Documents
Dedicatria
Dedico esse livro a todos os leitores e visitantes do QualidadeBR, afinal vocs deram
foras para ele chegar no seu primeiro aniversrio. E espero que esse seja o primeiro
aniversrio de muitos.
Contedo
Prefcio por Andr Pantalio ...................................................................... 12
Sobre o Autor .............................................................................................. 13
Sobre o Livro ............................................................................................... 14
Teste e Qualidade de Software.................................................................... 15
1. O Que Qualidade de Software? ........................................................................... 16
2. O Que Bug? ......................................................................................................... 17
3. Qualidades de um especialista em teste .................................................................. 19
4. Defeito, erro e falha. tudo igual? ......................................................................... 20
5. Teste Estrutural X Teste Funcional ........................................................................ 21
6. FURPS+ .................................................................................................................. 22
7. Ambientes de Teste Virtuais................................................................................... 24
8. Quando os testes devem parar? .............................................................................. 26
9. Testar X Debugar.................................................................................................... 27
10. Carreira Teste de Software ................................................................................ 29
11. Qualidade Sem Nome ........................................................................................... 32
12. Testes de sobrevivncia ........................................................................................ 34
13. Fuzz Testing ......................................................................................................... 35
14. A Importncia da Usabilidade .............................................................................. 37
15. Qualidade de Software Processo ou Projeto? .................................................... 40
16. Mercado atual Teste e Qualidade de Software .................................................. 42
17. Tcnicas de Integrao de Sistema Incremental ................................................ 44
18. Tcnicas de Integrao de Sistema Top Down.................................................. 46
19. Por que testar? ...................................................................................................... 48
20. A Importncia do Teste de Software .................................................................... 49
21. Interface Homem-Mquina: Melhores Prticas de Usabilidade ........................... 50
Humor........................................................................................................ 220
1. As Etapas do Desenvolvimento de Software ........................................................ 221
2.Vida de Programador ............................................................................................. 223
Sumrio de Figuras
Figura 1 - (retirada do myoldmac).................................................................................. 17
Figura 2 - (retirada de IBM Archives) ............................................................................ 17
Figura 3 - "Evoluo" do bug ......................................................................................... 20
Figura 4 - FURPS ........................................................................................................... 22
Figura 5 - FURPS+ (retirada de Rational Library) ......................................................... 23
Figura 6 - Hierarquia - rea de Testes ........................................................................... 31
Figura 7 - Exemplo Top Down ....................................................................................... 46
Figura 8 - Seu Creysson ................................................................................................. 57
Figura 9 - Coberturas ...................................................................................................... 58
Figura 10 - Integrao Bottom-up dos mdulos E, F, e G.............................................. 59
Figura 11 - Integrao Bottom-up dos mdulos B, C, e D com o E, F, e G................... 60
Figura 12 - Integrao Bottom-up do mdulo A com todos os outros. .......................... 60
Figura 13 - Big Bang ...................................................................................................... 62
Figura 14 - Ilustrao do uso da tcnica Big - bang ....................................................... 63
Figura 15 - Sanduche de Mortadela do Bar do Man no Mercado SP ........................ 64
Figura 16 - Arquitetura do servidor com 4 mquinas virtuais (retirada do Data Sheet do
VMware Server) ............................................................................................................. 78
Figura 17 - Primeiro passo da instalao do VMware Server ........................................ 79
Figura 18 - Segundo passo da instalao do VMware Server ........................................ 80
Figura 19 - Terceiro passo da instalao do VMware Server......................................... 81
Figura 20 - Quarto passo da instalao do VMware Server ........................................... 81
Figura 21 - Quinto passo da instalao do VMware Server ........................................... 82
Figura 22 - Sexto passo da instalao do VMware Server ............................................. 82
Figura 23 - Visualizao dos servios do VMware Server ............................................ 83
Figura 24 - Login no VMware Server ............................................................................ 83
Figura 25 - Criao da mquina virtual .......................................................................... 84
Figura 26 - Selecionando o sistema operacional que ser instalado ............................... 84
Figura 27 - Configurando a memria e a quantidade de processadores da VM ............. 85
Figura 28 - Criao do disco virtual ............................................................................... 85
Figura 29 - Configurando as propriedades do disco virtual ........................................... 86
Figura 30 - Criando o adaptador de rede ........................................................................ 87
Figura 31 - Ilustrao da conexo Bridged ..................................................................... 87
10
11
12
Sobre o Autor
Sou Fabrcio Ferrari de Campos, certificado ISTQB e CBTS.
Trabalho na rea de Teste e Qualidade de Software na empresa
Voice Technology. Formado em Tecnologia em Anlise e
Desenvolvimento de Sistemas pela Faculdade de Tecnologia
Termomecanica.
Iniciei o QualidadeBR como forma de me motivar a estar estudando constantemente
sobre a rea de Teste e Qualidade de Software, assim como poder compartilhar os
conhecimentos e experincias adquiridos, afinal o conhecimento s tem valor, quando
compartilhado. :)
E tambm para tentar retribuir toda a ajuda que obtive, e ainda obtenho, da comunidade
de Teste e Qualidade de Software.
13
Sobre o Livro
Esse livro uma compilao de todos os posts publicados no blog QualidadeBR, entre
o perodo de 19 de junho de 2008 19 de junho de 2009, em comemorao do
aniversrio de 1 ano do blog.
14
15
16
2. O Que Bug?
O uso do termo bug j antigo, dizem que ele foi criado por Thomas Edison quando um
inseto causou problemas de leitura em seu fongrafo em 1878.
O primeiro bug em computadores possivelmente ocorreu em 1947. Quando os
engenheiros que trabalhavam com o Harvard Mark I, o primeiro computador digital
automtico de larga escala desenvolvido nos EUA, encontraram uma traa entre seus
circuitos, que causou um erro nos clculos da mquina, prenderam-na no livro de
registro e rotularam-na como o primeiro bug encontrado, como vemos na figura 1.
Naquela poca, havia literalmente bugs, devido as propores gigantescas dos
computadores (figura 2), que serviram de abrigo para vrios insetos e at para ratos.
Situao essa, que em muitas vezes ocasionava problemas no sistema.
17
Mas e hoje, em pleno sculo XXI por que os bugs ainda fazem parte das notcias de TI e
so to freqentes?
Errar humano.
Essa frase to prolixa o motivo da existncia dos bugs, afinal por mais experiente que
seja o programador, ele tambm humano (embora alguns duvidem) e passa por dias
ruins. No entanto, no no desenvolvimento que ocorre a maioria dos bugs, segundo
informaes do QAI (Quality Assurance Institute), 36% dos erros encontrados nos
softwares so provenientes da codificao, e os outros 64% so erros de desenho e
anlise.
Um exemplo dessa proporo o bug mais famoso do mundo, o bug do milnio. Quem
no se lembra do temor causado na passagem do ano de 1999 para 2000, devido ao
armazenamento de datas com apenas 2 dgitos para o ano, ficando os restantes
implicitamente entendidos como sendo 19. Desta forma cada data armazenada
deixava de ocupar oito bytes (dois para o dia, dois para o ms e quatro para o ano), e
passava a ocupar somente seis bytes (somente dois no ano). Assim, quando o calendrio
mudasse de 1999 para 2000 o computador iria entender que estava no ano de 19 +
00, ou seja, 1900.
E a deciso do uso de apenas 6 bytes, ocorreu devido a necessidade real de economia de
memria e espao de armazenamento. Hoje isso parece insignificante, mas na poca
isso foi o suficiente para justificar a adoo do padro, tamanho o custo das memrias e
dispositivos de armazenamento.
Para resolver o problema, velhos programadores de COBOL foram tirados da
aposentadoria, para voltar a trabalhar em sistemas muitas vezes desenvolvidos por eles
mesmos, vinte anos antes. Pagando-se a eles 1 dlar por linha revisada.
O bug do milnio foi um marco para a Qualidade e Teste de Software, no qual
percebeu-se o quanto uma falha pode custar caro e como at mesmo o risco de tal, pode
abalar empresas e levar a perda de dinheiro e credibilidade. Tirando como lio
aprendida a importncia do processo de testes, durante o desenvolvimento do software,
para que se possa minimizar a probabilidade e o impacto dos riscos e diminuir o nmero
de defeitos.
Fonte:
http://pt.wikipedia.org/wiki/Bug_do_mil%C3%AAnio
http://www.clubedohardware.com.br/artigos/492/3
18
o
o
o
o
19
Fonte:
Bastos, A.; Rios, E.; Cristalli, R. & Moreira, T. Base de conhecimento em teste de
software. So Paulo, Martins Fontes, 2007.
20
21
6. FURPS+
FURPS um sistema para a classificao de requisitos, o acrnimo representa
categorias que podem ser usadas na definio de requisitos, assim como representam
atributos de Qualidade de Software, sendo ele parte do Rational Unified Process (RUP):
Functionality (Funcionalidade) - representa todo aspecto funcional do software, ou seja
seus requisitos. uma atributo com diversas caractersticas que variam de acordo com a
aplicao. Seu objetivo averiguar se os requisitos foram cumpridos.
Usability (Usabilidade) - o atributo que avalia a interface com o usurio. Possui
diversas subcategorias, entre elas: preveno de erros; esttica e design; ajudas (Help) e
documentao; consistncia e padres.
Reliability (Confiabilidade) - refere-se a integridade, conformidade e interoperabilidade
do software. Os requisitos a serem considerados so: freqncia e gravidade de falha;
possibilidade de recuperao; possibilidade de previso; exatido; tempo mdio entre
falhas (MTBF).
Performance (Desempenho) - avalia os requisitos de desempenho do software. Podendo
usar como medida diversos aspectos, entre eles: tempo de resposta, consumo de
memria, utilizao da CPU, capacidade de carga e disponibilidade da aplicao.
Supportability (Suportabilidade) - os requisitos de suportabilidade agrupam vrias
caractersticas, como: testabilidade, adaptabilidade, manutenibilidade, compatibilidade,
configurabilidade, instalabilidade, escalabilidade, localizabilidade entre outros.
Figura 4 - FURPS
22
Fonte:
Rational Unified Process
Rational Library
Peter Eeles (Process Consultant for IBM Rational)
23
Uma mquina virtual (Virtual Machine VM) pode ser definida como uma
duplicata eficiente e isolada de uma mquina real (Popek and Goldberg).
24
25
26
9. Testar X Debugar
Testar e debugar parecem sinnimos no dicionrio de TI e somente nele, pois o verbo
debugar no existe na lngua Portuguesa. Muitos diriam que testar e debugar a
mesma coisa. Mas na verdade no so, pois cada um tem uma proposta diferente:
Proposta de testar: mostrar que o programa tem bugs.
Proposta de debugar: achar a falha ou o erro que conduziu o programa a falhar
e planejar e executar as mudanas necessrias para a correo do erro.
Fazendo uma analogia com o mundo da Frmula 1: o piloto aps d algumas voltas no
circuito, retorna ao boxes e fala para o seu engenheiro que o carro est saindo muito de
traseira, o engenheiro solicita a equipe de mecnicos a investigao e concerto do
problema. Neste caso, o piloto testou o carro achou um problema e a equipe de
mecnicos ir debugar o carro em busca da causa e soluo do problema.
Debugar normalmente associado a testar, mas eles se diferem nos objetivos,
metodologias e o mais importante na psicologia:
O teste inicia com condies conhecidas, uso de procedimentos predefinidos e
tem resultados previstos; somente se o programa falhar que o teste ser
imprevisvel. J a debugao (debug) parte de circunstncias possivelmente
desconhecidas e o fim no pode ser previsto, exceto estatisticamente.
O teste pode e deve ser planejado, projetado e programado. J a maneira e o
tempo para debugar no podem ser to controlados;
Testar uma demonstrao de que o programa possui falhas ou aparentemente
no. Debugar um processo dedutivo;
Testar prova que o programador cometeu um erro. Debugar a oportunidade do
programador arrumar o erro cometido;
O teste algo previsvel, maante, rgido e s vezes at desumano. A debugao
demanda de intuio, experimentao e de liberdade;
Muitos testes podem ser feitos sem um conhecimento prvio do projeto.
impossvel debugar sem um conhecimento aprofundado do projeto;
Os testes podem ser feitos por outras empresas. A debugao deve ser feita na
prpria empresa desenvolvedora;
Apesar de haver uma slida teoria de teste, na qual estabelecido os limites
tericos para os testes, o que pode ser feito e o que no pode. A debugao
apenas recentemente vem sendo estudada por tericos, alcanando resultados
ainda rudimentares;
27
28
29
30
31
Fugindo dessa definio filosfica, a qualidade central seria como o chassi de um carro:
ele que definir a qualidade do produto final (carro), no adianta ter um motor potente,
ou um bom piloto, se o chassi do carro foi mal projetado.
Alexander, ainda diz que a Qualidade no pode ser fabricada, mas sim gerada,
indiretamente, pelas aes das pessoas. Embora muitos ainda pensem que a Qualidade
esteja intrinsecamente ligada aos processos, metodologias ou ferramentas, quando na
verdade ela est diretamente ligada as pessoas e suas aes.
Aplicando a QWAN em TI, podemos associar ela ao real objetivo de algum programa,
ou seja, aos requisitos do projeto. E esses podem est errados, fazendo com que o
chassi da nossa aplicao fique totalmente prejudicado. Afinal, na maioria das vezes,
a falha est no planejamento do projeto e no no desenvolvimento.
E qual o motivo para esse fato?
A verdade que a Qualidade traduzida muitas vezes at a entrega final do produto, e
durante estas tradues podem ocorrer algumas das seguintes situaes:
O cliente no conseguiu traduzir corretamente o que ele realmente queria;
O gerente teve uma perspectiva diferente da vontade do cliente;
32
33
34
35
36
a extenso na qual um produto pode ser usado por usurios especficos para
alcanar objetivos especficos com efetividade, eficincia e satisfao em um
contexto de uso especfico. (ISO 9241-11)
37
celulares atuais, por isso a interface tambm teve que evoluir e hoje observamos um
padro, que basicamente o de uso de cones e menus.
O celular, assim como a internet, so as duas tecnologias que mais tem sofrido
evolues, quanto a usabilidade. E a razo para isso simples, um grande nmero de
pessoas fazem uso delas, portanto as interfaces tem que serem projetadas, tendo em
mente que pessoas com diferentes graus de instrues tero que ser capazes de usar tais
tecnologias.
Logo percebemos a importncia da usabilidade, que de fornecer uma interface o mais
prxima do usurio e por meio dela que as barreiras entre o software e o usurio vo
diminuindo.
Outro aspecto interessante, que a usabilidade pode ser o fator decisivo pela
adoo/compra de um produto. Um exemplo disso ocorreu na empresa que trabalho.
Estvamos em busca de uma ferramenta de gerenciamento de testes, ficando entre dois
softwares o Bugzilla e o JTester Manager (ferramenta desenvolvida pela prpria
empresa), o Bugzilla ganhava em nmero de funcionalidades, porm tinha um grande
problema, a usabilidade: fluxo no era linear, continha muitos campos em uma mesma
tela, etc. Enquanto o JTester Manager continha as funcionalidades essenciais e uma
tima usabilidade, devido principalmente a sua simplicidade. A deciso ento foi fazer
uso do JTester Manager, pois percebemos que a produtividade com o JTester Manager
seria bem maior do que com o Bugzilla.
Concluso
A usabilidade deve ser encarada com seriedade e ser focada no usurio, afinal ser ele
que far o uso do software. E caso no comearmos a nos preocupar com a usabilidade,
os usurios dos nossos sistemas podem ter um acesso de fria, assim como esse senhor
teve no vdeo abaixo:
Alis, quantas vezes voc mesmo(a) j no se irritou por no ter conseguido realizar
alguma tarefa, devido a falta de usabilidade do software?
38
Fonte:
Nielsen, J. (1993), Usability Engineering. Academic Press, Inc., San Diego.
39
40
41
42
43
44
Desvantagens
A modulao pode ser uma tarefa difcil de ser realizada, pois os mdulos
necessitam ser pequenos, mas com alguma funcionalidade completa;
Em determinadas situaes, a realizao do teste s poder ser feita com a
utilizao de Mock Object.
Consideraes Finais
Na utilizao da abordagem Incremental para a realizao dos testes de integrao,
alguns aspectos devem ser considerados, tendo em vista o nmero de ciclos de testes:
O nmero de mdulos do sistema;
A complexidade dos mdulos;
A complexidade da interface entre os mdulos;
O nmero de mdulos a serem usados para o agrupamento em cada ciclo de
teste;
Verificar se os mdulos a serem integrados foram devidamente testados antes;
O tempo de resposta da equipe de desenvolvimento em cada ciclo de teste.
Por hoje s pessoal. Em breve comentarei sobre a tcnica Top-down, que uma
tcnica de fazer a integrao de forma incremental. At l!
Fonte:
NAIK, Kshirasagar; TRIPATHY, Priyadarshi. Software Testing and Quality
Assurance. Hoboken (New Jersey): John Wiley & Sons, Inc., 2008.
alisson.brito.googlepages.com/ProcessoDeSoftware_AlissonBrito.ppt
45
Como pode ser percebido, o sistema nesse exemplo, o lbum de msica, que
formado por vrias msicas, que sero chamadas de componentes. Por fim, uma msica
formada pela juno de vrios instrumentos, que sero chamados de mdulos.
46
Pela tcnica Top-down iremos primeiro testar os componentes de alto nvel, que so as
msicas, s para depois verificar cada mdulo (instrumento) de cada componente
(msica).
Algo importante de se notar, que no final do Teste de Integrao teremos a integrao
dos mdulos testados e no o sistema como um tudo. Na analogia apresentada, teramos
cada msica verificada e no o lbum inteiro. O teste que verificaria o lbum inteiro
seria o Teste de Sistema.
Vantagens
Permite verificao antecipada de comportamento de alto nvel;
Mdulos podem ser adicionados, um por vez, em cada passo, se desejado;
Permiti a busca em profundidade (depth-first search) e a busca em
largura(breadth-first search).
Desvantagens
Retarda verificao de comportamento de baixo nvel;
Entradas de casos de teste podem ser difceis de formular, por geralmente,
demandar de uma entrada maior de informaes;
Sadas de casos de teste podem ser difceis de interpretar, cada passo executado,
pode gerar um resultado e o Tester dever ficar atento a esses resultados, pois
essas sadas intermedirias pode apresentar alguma inconsistncia.
Bem, hoje vimos como que a tcnica Top-down funciona na realizao dos Testes de
Integrao, espero ter ajudado na compreenso dessa tcnica, caso tenha ficado alguma
dvida, sinta-se vontade em coloc-la nos comentrios. At a prxima!
Fonte:
Teste de Integrao, Sistema e Aceitao, Alexandre Mota. (link)
47
48
49
50
Mais uma revelao, se prepare, essa pode at te surpreender. Por que voc acha que os
usurios ligam tanto para o suporte da sua empresa, muitas vezes com dvidas que nem
so sobre o seu sistema?
1. Porque eles so usurios
2. Porque eles so pessoas carentes e gostam de ouvir uma voz amiga
3. Porque o sistema, realmente no est funcionando
4. Porque eles esto perdidos e nem saber como interagir com o seu sistema
5. Pode ser qualquer resposta citada acima
E a resposta correta a 5 (hehe), pois depende da circunstncia. Mas a alternativa 4
uma que acontece bastante, devido a falta de usabilidade, que necessita ser uma das
caractersticas de Qualidade de Software prioritrias. Principalmente se o sistema a ser
desenvolvido tiver como pblico alvo, os usurios comuns. Afinal de contas, at ns
profissionais de TI, s vezes, nos deparamos com uma interface ruim e ficamos
perdidos.
P.S.: Quem se interessar pelo assunto, e for d uma olhada na monografia, fique
vontade para comentar sobre ela. E se voc for fazer algum trabalho sobre
usabilidade/interface homem-mquina, eu tenho bastante material sobre o assunto e
posso enviar.
51
52
Cobertura de desvio
Cobertura de Caminho
Baseadas em experincia
o
Suposio de erro
Teste exploratrio
53
Segundo o ISTQB Foundation Exam format and question writing guidelines, 29% das
questes do exame so sobre o captulo 4, resultando em 12 questes.
Sabendo disso, resolvi preparar um simulado especial para esse captulo, contendo 20
questes. Segue abaixo o link para download:
http://www.mediafire.com/file/imli0jjmeij/6.Simulado_CTFL-BSTQB (especial
captulo 4).pdf
Quem no tiver os demais simulados publicados num post anterior, pode baix-los pelo
link abaixo (no arquivo tambm est esse do captulo 4):
http://www.mediafire.com/file/ohy4jdwxijw/Simulados_CTFL-BSTQB.zip
Espero que as apresentaes, assim como os simulados, possam ajudar quem estiver se
preparando para a prova.
Bons estudos e boa sorte a todos!
54
24. Excelncia
Acabei de terminar o livro A Cabea de Steve Jobs e em tempo recorde, menos de
uma semana (geralmente eu levo muito mais do que uma semana para ler um livro).
E a voc pode est pensando: L vem o Fabrcio avacalhar e falar sobre algo que no
tem a ver com o foco do blog. Ou ainda, se voc me conhecer melhor, poder pensar:
Putz, l vem ele idolatrar o Steve Jobs, aquele cara que s faz coisas bonitinhas e
carinhas.
Bem, nem vou avacalhar e tambm no vou idolatrar o Steve Jobs, afinal nem preciso o
cara bom ponto final.
E sim comentar sobre a frase abaixo, que est no incio de um dos captulos do livro, e
tem a ver com a rea de Teste e Qualidade de Software:
Seja um padro de qualidade. Algumas pessoas no esto costumadas a um ambiente
onde se espera excelncia. (Steve Jobs)
Ser um padro de qualidade parecer se algo bem forte, neh? Principalmente se for
para uma pessoa ser um padro de qualidade, assim como o Steve Jobs na Apple.
Afinal, felizmente ou infelizmente no encontramos um Steve Jobs entre os candidatos
para uma vaga na nossa empresa.
Acredito que para a nossa realidade, a rea de Teste e Qualidade de Software deve ser
um padro de qualidade para a empresa, e mais precisamente para o projeto na qual est
participando.
E esse padro de qualidade no pode ser qualquer um, tem que ser o mais alto possvel.
Se isso parece abstrato, pense que ns precisamos ser mais exigentes do que o nosso
cliente mais exigente. J que bem melhor a gente reportar uma falha para a equipe de
desenvolvimento, do que o cliente reportar tal falha.
E outro ponto importante, que, alis, retrata muito bem o nvel da maioria das empresas
de TI no Brasil, a falta de costume das pessoas em fazer o seu trabalho com
excelncia, e quando eu digo excelncia no fazer tudo certo de uma vez, o que algo
que eu particularmente, acho impossvel. E sim est sempre se aperfeioando e
transformar o seu produto no melhor de todos.
E neste segundo ponto a equipe de Teste e Qualidade de Sistema tem um papel super
importante, o de est sempre verificando e validando se o processo e produto esto
realmente no nvel que se espera deles.
Muitos podem pensar que perfeccionismo, quando na verdade estamos buscando a
excelncia. E h uma grande diferente em o que perfeito e o que est excelente, o
primeiro nunca pode ser alcanado, j o segundo pode.
55
Mas agora vou te confessar uma coisa querido(a) leitor(a) se fosse achar que isso
difcil de ser aplicado, voc tem toda a razo. Eu tenho muito que melhorar, pois j teve
situaes em que algo no estava to bem feito, mas que funcionava. O famoso:
- T funcionando?
- Sim.
- Ento blz!
E o mais importante na minha opinio, saber dosar entre a excelncia e a sua
realidade, mas com o cuidado de no se acomodar e fazer da sua realidade uma desculpa
para no melhorar.
P.S.: Se algum que saber se eu recomendo o livro claro que sim
uma excelente
fonte de conhecimento sobre um dos gnios contemporneos, Steve Jobs.
56
25. Coberturas
100% de cobertura de comando cobre 100% de cobertura de desvio? Ou o contrrio?
100% de cobertura de caminho garante 100% de cobertura de LCSAJ?
Se algumas dessas perguntas j passaram pela sua cabea, garanto que no foi somente
pela sua. Pela minha e de vrias outras pessoas tambm.
Ento o que voc acha de solucionar de uma vez todas as dvidas quanto as coberturas?
Se t brincando, Fabrcio?
Sei, sei e eu tambm vou te mostrar um esquema para acertar todos os nmeros da
loteria
Que isso pessoal, verdade. Eu agarantiu!!!
Eu criei uma representao grfica de qual cobertura cobre qual, baseada em uma outra
que a leitora Renata Eliza (muito obrigado!) me enviou:
57
Figura 9 - Coberturas
58
59
60
61
Big-Bang
62
Para executar uma integrao usando a tcnica Big-bang necessitamos de stubs e drives
para testar os mdulos isoladamente.
Ela normalmente usada devido s presses do dia a dia e os testes so aplicados para
demonstrar uma operabilidade mnima do sistema.
O maior problema do uso da tcnica Big-bang caso haja alguma falha na interface de
um mdulo com outro, pois neste caso, ser difcil ser preciso e encontrar a causa da
falha. J que ela uma tcnica que usa uma abordagem no incremental.
Vantagens
Conveniente para sistemas pequenos
Desvantagens
Necessita de drivers e stubs para cada mdulo;
S permite o teste em paralelo no incio dos testes;
Localizao difcil da falha;
Fcil perder falhas de interface.
63
Sandwich
Comparao
Para encerrar o ltimo post dessa srie, segue abaixo, uma tabela comparativa das 4
tcnicas de integrao que vimos nessa srie:
64
Integrao
Tempo para o
funcionamento bsico
do programa
Drivers
Stubs
Trabalho em paralelo
no incio
Capacidade de testar
caminhos particulares
Capacidade de
planejar e controlar a
sequncia
Bottom-up Top-down
Cedo
Cedo
Big-bang
Tarde
Sandwich
Cedo
Tarde
Cedo
Tarde
Cedo
Sim
No
Sim
Sim
No
Sim
Sim
Sim
Mdio
Baixo
Alto
Mdio
Fcil
Difcil
Fcil
Mdio
Fcil
Difcil
Fcil
Difcil
Fonte:
Chapter 8 Testing the Programs, Software Engineering: Theory and Practice:
wps.prenhall.com/wps/media/objects/3087/3161346/slides08.ppt
V. Binder. Testing Object-Oriented System: Models, Patterns, and Tools. Addison
Wesley, 2000.
Aula 13 Teste de Software, Walter de Abreu Cybis:
http://www.inf.ufsc.br/~cybis/ine5322/Aula13_Teste_de_SW_cont.pdf
System Integration, Dr. Stphane S. Som. University of Ottawa:
http://www.site.uottawa.ca/~ssome/Cours/SEG3203/integration.pdf
65
66
67
68
69
32 - Neutralizando Falhas
Esses dias estava executando um teste, quando de repente me deparo com uma falha
estranha, algo que sempre funciona, que at uma funcionalidade bsica do sistema,
para de funcionar.
Porm, a falha ocorria de forma intermitente, e havia muitos fatores que poderiam est
influenciando a ocorrncia da falha.
E neste momento, que devemos ter calma e pacincia para investigar melhor o ocorrido.
E no sair j cadastrando a falha no bug tracking. Precisamos antes neutralizar a falha.
70
Tanto na analogia como na situao de teste, havia duas falhas e poderamos (mas no
deveramos) informar a falha da seguinte maneira:
Analogia: De vez em quando a TV est sem sinal.
Situao de teste: O carregamento da pgina, aps ter realizado o cadastro,
demora mais de X segundos de forma intermitente.
Mas aps uma melhor anlise das falhas, conseguimos descobrir o cenrio exato em que
a falha ocorre, e assim elas deixam de ser intermitente e passam a ser fceis de ser
reproduzidas.
Ento neutralizar igual isolar a falha?
Sim, afinal ambas as aes tem o mesmo objetivo: identificar o cenrio exato da falha,
eliminando todos fatores que no influenciam a ocorrncia da falha.
Sempre possvel neutralizar as falhas?
No, e isso ocorre geralmente por trs motivos:
Falta de conhecimento sobre a aplicao que est sob teste;
Os fatores influenciadores da falha esto no nvel estrutural do sistema, portanto
no so possveis de ser descobertos nos testes funcionais;
No h tempo para a investigao.
Qual importncia da neutralizao?
A neutralizao da falha uma das tarefas mais importantes do testador, e exige um
esprito investigativo. Afinal nem sempre a falha fcil de ser descoberta e isolada.
E ela ajuda, e em muito, o trabalho de extermnio de bugs dos nossos amigos
desenvolvedores. Devemos sempre nos preocupar em passar da melhor e mais detalhada
forma o cenrio da falha ( melhor informao a mais do a menos ).
Quando temos um cenrio bem detalhado, o desenvolvedor s vezes consegue descobrir
onde est o bug, s com a leitura do cenrio.
E para encerrar esse post, deixo abaixo uma frase do Sherlock Holmes que tem haver
com o tema do post:
Voc v, mas no observa.
71
72
73
74
possvel e at recomendado que se use mais de uma tcnica ao mesmo tempo, por
exemplo: na reunio de Anlise Causal utilizar o Diagrama de Causa e Efeito.
Concluso
A Anlise de Causa Raiz um importante elemento em qualquer rea de TI, e pode ser
usado em qualquer fase do projeto.
Um momento bom para ela ser usada, durante a reunio de lies aprendidas. Pois
nada melhor do que descobrimos a causa real dos problemas que enfrentamos no
projeto, com todos envolvidos participando e opinando.
Ela tambm poder ser usada pelos desenvolvedores para encontrar a causa para o
defeito, e desta maneira, alm de poder corrigir tal defeito eles ainda podero prevenir a
sua ocorrncia no futuro.
E para finalizar, acredito que clara a necessidade de encontrar a causa raiz dos
problemas que vivenciamos no dia-a-dia, e que essa uma tarefa que deve ser feita em
equipe, sempre que possvel. Afinal, nem sempre a causa de um problema to visvel
ou fcil de ser encontrada, como por exemplo: problemas de performance, s vezes
passamos at meses para descobrir, onde estava o gargalo da aplicao. Mas com
certeza, muito melhor gastar massa ceflica do que desperdiar dinheiro comprando
novos servidores, alm claro, da satisfao e benefcios de ter encontrado o real
motivo do problema.
Fonte:
Software Quality, Module 10: Effective Practices for Quality Analysis Lesson 3:
Root-Cause Analysis (AzIT)
5 Porqus Luiz de Paiva
75
76
77
H algumas limitaes, mas que no afetam a grande maioria dos usurios, como o
suporte de at 8 GB de memria RAM e de 950GB de HD (tanto IDE quanto SCSI) e
de no mximo 4 mquinas virtuais por processador.
Figura 16 - Arquitetura do servidor com 4 mquinas virtuais (retirada do Data Sheet do VMware Server)
78
Aps a tela de acordo da licena aparecer a tela abaixo, onde pode-se mudar o local de
instalao do VMware Server.
79
80
Depois da escolha dos atalhos a serem criados, a tela abaixo ser apresentada, na qual
clicamos em Install para iniciar a instalao do VMware Server.
81
Pronto! J temos o VMware Server instalado. Agora vamos para a parte mais divertida,
a criao da mquina virtual. Mas s na segunda parte deste tutorial. At l!
Fonte:
VMware Server Users Guide, obtido no site da VMware
82
83
do que o local onde os arquivos da sua VM ficaro. Escolha o datastore standard, que
foi criado j na instalao da VMS e clique em Next.
OBS.: Caso voc deseje renomear um datastore ou criar um novo, basta selecionar o
datastore no menu Datastores e depois no menu Commands haver as opes de
configurao do datastore.
Passo 2 Sistema Operacional
O prximo passo a especificao de qual sistema operacional ser instalado na VM,
no nosso caso escolha a opo Linux operating system e no combo box da Version
selecione Ubuntu Linux (32-bit), que ser o sistema operacional que iremos instalar.
84
85
86
HostOnly: cria uma conexo direta com o Host, como tivesse um cabo crossover conectando a VM com o Host. uma boa opo se o interesse isolar a
rede virtual.
87
Para a nossa VM escolhemos o modo de conexo Bridged e marcamos o check box para
que ela se conecte rede ao ligar.
88
Aqui escolhemos a unidade que est o drive de CD/DVD e marcamos o check box para
que ele possa est acessvel ao ligar a VM. Aqui tambm podemos configurar o tipo de
adaptador e o device.
89
90
91
Pronto! J temos uma mquina virtual, porm ela est sem sistema operacional. Mas a
instalao do Ubuntu ser apresentada s na prxima parte do tutorial. At l!
Fonte:
VMware Server Users Guide, obtido no site da VMware
92
93
Para instalar o plugin, basta clicar em Install plug-in, a instalao bem rpida. E
logo aps a instalao o console j poder ser usado, clicando nele o VMware Remote
Console ser aberto.
94
Figura 45 - Host e VM
95
96
O primeiro passo a escolha do idioma que ser usado durante a instalao, escolhido o
idioma clique em Avanar.
97
Escolha o fuso horrio da sua cidade. Lembrando que a hora pode ser ajustada depois da
instalao.
Terceiro passo, a escolha do modelo do seu teclado, caso tenha alguma dvida faa o
teste no campo editvel.
98
Agora a hora de definir o nome do usurio e a sua senha, lembrando que com esse
usurio e senha que voc far login no Ubuntu. Sendo, que esse usurio apenas um
usurio avanado e no o usurio root. O Ubuntu, por questo de segurana, vem com o
usurio root desabilitado, para habilit-lo basta digitar o seguinte comando no terminal:
$ sudo passwd root
password: (digite a senha criada da instalao)
New Password Unix: (digite a senha que ser do root)
Repeat Password Unix: (repita a senha que ser do root)
99
100
Aps ter reiniciado o sistema, j podemos nos divertir no nosso novo sistema.
Lembrando que voc pode acessar a VM de qualquer outro computador da rede,
bastando digitar o IP do Host e a porta do VMS, no nosso caso a porta a 8308.
101
102
Figura 56 - FireShot
103
104
105
106
Download Apache2Triad
Aps feito o download, hora da instalao do Apache2Triad. Ela bem simples, mas
caso voc encontre alguma dificuldade, confira o passo a passo, apresentado na
sequncia.
Instalao do Apache2Triad
A primeira janela que ir aparecer, ser a de customizao da instalao. Voc poder
escolher quais componentes instalar. No nosso caso, iremos instalar tudo, portanto basta
clicar no boto Next >.
Agora a hora de especificar o local, onde ser feita a instalao. Por default, a
instalao feita no diretrio raiz. Caso voc queira mudar, sinta-se vontade, s
lembrando que o local da instalao dever ter, pelo menos, 348.7MB de espao livre.
107
Prximo passo ser setar a senha global, que dever ter no mnimo 8 caracteres, para
acessar os componentes do Apache2Triad. Lembrando que estamos definindo a senha
do root, e com ele que iremos realizar o acesso.
Na prxima tela ser apresentada a licena GNU, basta clicar no boto I Agree
(concordo).
108
109
Ainda restam algumas configuraes que sero feitas automaticamente, bastando para
isso digitar a senha, que foi definida anteriormente, na tela do prompt que se abrir.
Aps, a configurao ser terminada com sucesso. Uma nova tela ser apresentada, basta
clicar no boto OK. O sistema ser reiniciado e voc j poder utilizar o
Apache2Triad.
Instalao do Eventum
Se a instalao do Apache2Triad j fcil. A do Eventum mais ainda.
O primeiro passo fazer o download da verso 2.1.1, no site da MySQL. Segue abaixo,
o link:
Download Eventum
110
111
Aps a instalao, aparecer uma pgina, na qual haver trs informaes importantes:
o link para a pgina do Eventum, o endereo de e-mail para fazer acesso, e a senha de
acesso. Lembrando que esse login poder ser alterado depois.
112
Pronto, j temos o Eventum instalado. E aqui encerro a primeira parte desse tutorial. Na
prxima parte, iremos ver como realizar algumas customizaes, configuraes e fazer
uso da ferramenta. At l!
Se ficou com alguma dvida, ou travou em alguma parte, deixe a sua questo nos
comentrios, pois ela poder ser a dvida de outras pessoas tambm. Sinta-se vontade!
113
114
Internal FAQ - um FAQ interno apresentado, sendo que este necessita ser
criado antes na parte de administrao;
Help - a ajuda do Eventum, que fornecer uma boa noo da ferramenta.
Administrao
Agora veremos uma das principais pginas do Eventum, a de administrao. O meu
intuito apresentar as principais funcionalidades, no ter como falar de todas por dois
motivos: h muitas opes, o que resultaria quase num livro; e o no uso de boa parte
das funcionalidades, o famoso pareto (onde 20% do software mais usado).
Para acessar a pgina de administrao, basta clicar sobre o link Administration .
Toda a navegao pelas opes ocorre na parte da esquerda da pgina, onde elas esto
listadas. Na parte direita, feita toda edio da configurao desejada. As principais
configuraes so:
General Setup aqui voc poder mudar as configuraes de envio de e-mail,
aquelas que voc fez na instalao, podero ser alteradas aqui. H ainda a opo
de configurao de outras funcionalidades, como as dicas dirias (Daily Tips) e a
integrao SCM (Source Code Management - Sistema de Controle de Verso),
sendo que o Eventum suporta o CVS e o Subversion (mais detalhes);
115
116
117
Manage Projects nesta rea voc poder criar e editar os seus projetos. Na
instalao do Eventum um projeto j criado: o Default Project. Voc pode criar
e configurar os seus prprios projetos. Veremos melhor a parte de criao de
projetos mais a frente, alis, o vdeo mostra a criao de um projeto;
Manage Users no Eventum h sete nveis de usurio, sendo que o papel do
usurio est associado ao projeto, ou seja, um usurio pode exercer papeis
diferentes, dependendo de cada projeto:
o Viewer - pode visualizar todas as issues dos projetos que ele est
associado, e no pode criar ou editar issues;
o Reporter permite visualizar todas as issues associadas a ele, e tambm
criar novas issues e enviar e-mail nas issues j existentes;
o Customer - esta uma permisso reservada para uma API de integrao
com o cliente, que permite que voc integre o Eventum com a base de
dados do seu CRM. Quando esta funcionalidade est habilitada, este
papel de usurio pode acessar as issues associadas ao seu prprio cliente.
Permite a criao de issues, atualizao e envio de e-mails de issues j
existentes (mais detalhes);
o Standard User o usurio padro pode visualizar todas as issues dos
projetos que ele est associado, criar/atualizar issues, e enviar e-mail e
notas nas issues existentes;
o Developer ele parecido com o Standard User, porm ainda permite
separar os usurios que iro lidar com as issues, e a equipe de usurios
que no lidar com suas prprias issues;
o Manager permite visualizar todas as issues dos projetos que ele
associado, criar/atualizar issues e enviar e-mails e notas nas issues
existentes, Ele ainda pode, editar a rea de administrao do Eventum,
menos a rea de configurao;
o Administrator - tem acesso total ao Eventum.
118
Criando um projeto
Antes de comear a utilizar o Eventum pra valer necessrio criar um projeto antes. O
Eventum organizado por projeto e cada um pode ter suas caractersticas especficas.
Abaixo, explico cada um dos campos existentes no formulrio de cadastro do projeto.
119
120
121
Fields to display - aqui voc pode definir quais campos podem ser visualizados,
por quais nveis de usurio. Essa configurao opcional;
Columns to display - possibilita a configurao de quais campos sero
apresentados na listagem de issues. Sendo essa configurao opcional.
Essas so as configuraes necessrias para criar um novo projeto. Agora com o seu
projeto pronto, j poderemos cadastrar a nossa primeira issue. Porm, s na prxima
parte desse tutorial, alis, ser a ltima. Onde veremos os seguintes tpicos: reporte e
122
Se voc quiser fazer o download do vdeo, com qualidade mxima e sem esses zooms
(tive que fazer devido a qualidade do vdeo no Youtube), segue abaixo, o link:
http://www.mediafire.com/?wdahjm3zjiy (tamanho 4,62 MB)
Fonte:
http://eventum.mysql.org/wiki/
123
124
125
126
127
128
Na nova tela, clique sobre a opo Adicionar tarefa agendada e na tela que abrir
clique sobre o boto Avanar. Depois selecione o navegador, de sua preferncia, para
executar a tarefa, e clique em Avanar.
129
Agora informe o nome da tarefa e selecione a opo Diariamente, para que a tarefa
seja executada todos os dias.
Na prxima tela, coloque o horrio de incio da tarefa, selecione a opo Todos os dias
e clique no boto Avanar.
130
Antes de concluir a tarefa, marque o check box, pois ser necessrio configurar algumas
opes da tarefa. Marcado o check box, clique no boto Concluir.
131
Agora v na aba Agendar e clique sobre o boto Avanado. Aqui marcamos o check
box Repetir a tarefa. Definimos o intervalo de tempo que ela ser repetida, colocando
5 minutos, e at que horas ela ser executada, at s 23:59. Por fim, marcamos o check
box Se a tarefa estiver em execuo, interromp-la nesta hora., e clicamos no boto
Ok.
132
133
Depois clique sobre o boto Aplicar. Uma nova tela abrir, pedindo a sua senha e
confirmao da mesma. Pronto, j temos nossa tarefa agendada concluda corretamente.
A tarefa criada ir executar o script do Eventum, para envio dos e-mails, a cada 5
minutos. Portanto, aps a criao de uma issue, o e-mail ser enviado no tempo mximo
de 5 minutos. Para verificar se o e-mail foi enviado com sucesso, v na pgina da issue
que se deseja consultar, e clique sobre o link Mail Queue Log (localizado na parte
inferior direita da pgina).
134
Aqui encerro a terceira e ltima parte do tutorial sobre o Eventum. Espero que ele possa
ajud-lo(a), caro leitor(a). Qualquer dvida, crtica, ou sugesto, sinta-se vontade em
colocar nos comentrios. At a prxima!
135
Saiba mais
Quem quiser conhecer mais sobre a ferramenta, recomendo a wiki do Eventum. Caso
tenha algum problema ou dvida, tambm h o frum da MySQL, o FAQ, a lista de
discusso, e o QualidadeBR (hehehe).
136
Certificaes
Certificaes
137
138
139
2. CTFL BSTQB
Nessa semana, comecei um grupo de estudo na empresa que trabalho (Voice
Technology), para a certificao CTFL Certified Tester Foundation Level. Estamos
planejando realizar o exame, j na prxima data, que dia 03 de abril de 2009. Mas o
intuito inicial adquirir maior conhecimento na rea de Testes de Software, e aqueles
que se sentirem confiantes para realizar a prova, a sim, prestar o exame.
Para o primeiro encontro do grupo de estudo, preparei uma apresentao, que est sendo
disponibilizada abaixo, sobre a certificao CTFL BSTQB. A diante, explicarei um
pouco mais sobre a certificao.
Apresentao disponibilizada no SlideShare.
BSTQB
O BSTQB - Brazilian Software Testing Qualifications Board um representante oficial
do ISTQB - International Software Testing Qualifications Board, no Brasil. Ele um o
responsvel pela aplicao do exame para a certificao CTFL. A sua misso :
promover o profissionalismo na rea e o reconhecimento da disciplina teste e qualidade
de software como uma essncia de conhecimento e uma especializao profissional no
Brasil. O BSTQB uma entidade sem fins lucrativos
CTFL
uma das certificaes de Teste de Software mais reconhecidas, tanto no Brasil como
no mundo. Atualmente j so cerca de 32.000 profissionais certificados no mundo.
140
Ela voltada para qualquer pessoa envolvida em teste de software. Isto inclui pessoas
em funes especficas de teste como: testadores, analistas, engenheiros, consultores,
gerentes, usurios que realizam teste de aceite e desenvolvedores de software.
Os objetivos da CTFL BSTQB so esses:
Estar apto a comparar a prtica do teste entre os diferentes pases.
Capacitar os testadores a trocar conhecimento mais facilmente entre as
comisses.
Permitir com que projetos multinacionais/internacionais tenham uma
compreenso comum do empreendimento do teste.
Aumentar o nmero de testadores qualificados ao redor do mundo.
Ter mais impacto como uma iniciativa baseada internacionalmente do que
qualquer abordagem de um pas especfico.
Desenvolver um corpo comum internacional de compreenso e conhecimento
sobre teste e terminologias atravs do Syllabus e aumentar o nvel de
conhecimento sobre teste para todos os participantes.
Promover o teste como uma profisso em mais pases.
Capacitar testadores a obter qualificao reconhecida na sua linguagem nativa.
Permitir o compartilhamento de conhecimentos e recursos entre os pases.
Prover o reconhecimento internacional de testadores e desta qualificao junto a
participao de muitos pases.
A CTFL no expira e vlida internacionalmente.
Requisitos
O nico requisito existente o interesse do candidato, em se qualificar e buscar o
aperfeioamento profissional na rea de Teste de Software. Sendo recomendvel
experincia profissional na rea.
Como se preparar?
A bibliografia recomendada :
ISTQB Glossrio de Termos de Teste (Verso 1.3 Portugus/Brasil);
Syllabus Foundation Level (em Portugus/Brasil);
Normativos ISO/IEC, IEEE, BS, DO e bibliografia citados nos 2 documentos
acima;
Foundations of Software Testing: ISTQB Certification (Dorothy Graham, Erik
van Veenendaal, Isabel Evans, Rex Black);
Software Testing Foundations: A Study Guide for the Certified Tester Exam
(Andreas Spillner, Tilo Linz, Hans Schaefer.
As pessoas que j prestaram o exame, que eu conheo, dizem que estudando bem o
Syllabus e fazendo os simulados, possvel ser aprovado no exame, caso voc j tenha
experincia na rea de Teste de Software.
141
142
143
1.
2.
3.
4.
5.
6.
7.
8.
No site da IBM h um simulado do exame, que pode ser acessado no link abaixo:
http://www14.software.ibm.com/cgi-bin/pwdown/public/httpdl/certify/sam370.pdf
Bem, na minha opinio essa uma excelente oportunidade para adquirir novos
conhecimentos, e ainda poder tirar uma certificao de uma empresa reconhecida
mundialmente, que a IBM.
Eu j marquei o meu exame para o dia 31 de maro, vou ver se consigo tirar a
certificao. Mas pelo que vi nos objetivos da certificao e pelo material fornecido pela
AzIT, a prova oferece um alto grau de dificuldade, principalmente por abordar tanto o
Teste de Software, Qualidade de Software, como o Desenvolvimento de Software.
Portanto, acredito que ser um grande desafio, e o mais importante ser adquirir novos
conhecimentos e poder coloc-los em prtica.
Quem ficou interessado em fazer o exame, melhor correr, pois a gratuidade do exame
somente por um tempo determinado, no sei at quando. Como pode ser conferido no
texto abaixo, retirado do site da AzIT:
Information about the Test:
Cost of the exam: $0 (The test fee is waived for US Citizens during the grant
period. If you are taking the test outside of the US Check with your local
Authorized Prometric test center for testing fees.)
Saiba mais:
Pgina oficial da certificao
Fonte:
http://www-03.ibm.com/certify/tests/ovr370.shtml
http://br.groups.yahoo.com/group/certificacoesqualidadetestedesoftware/
144
145
Quem quiser saber mais sobre a QAMP, confire a apresentao abaixo, ou acesse o site
oficial da QAMP.
Fonte:
News. Industry Leaders Announce New Software Quality Testing Certification. Testing
Experience The Magazine for Professional Testers, Alemanha, Ano1, n4, p. 7,
dezembro, 2008
http://www.qamp.org
146
5. Simulados CTFL-BSTQB
Algo que ajuda muito, na preparao para certificaes a realizao de simulados. E
como disse aqui, montei um grupo de estudo na empresa que trabalho, para a
certificao CTFL-BSTQB.
No comeo dos estudos, todos me perguntavam se eu tinha algum simulado, e eu s
tinha os do grupo do BSTQB, at o momento que entrei em contato com o Luiz
Gustavo, que j obteve a certificao, e me passou uma porrada de simulados (alis,
muito obrigado!). Porm, eles estavam em ingls e como nem todos tm facilidade com
o idioma e a prova aplicada pela BSTQB em portugus, resolvi traduzir esses
simulados.
Bem, chega de conversa, e vamos ao que interessa, os simulados. Segue abaixo, o link
para download dos simulados traduzidos e dos originais em ingls:
http://www.mediafire.com/file/ohy4jdwxijw/Simulados_CTFL-BSTQB.zip
http://www.mediafire.com/file/ejiyunzujvi/Simulados (originais).zip
So 5 simulados traduzidos, dois com 20 questes e trs com 40 questes, que a
quantidade de questes da prova oficial. Ou seja, no total so 160 questes.
J os simulados originais (em ingls) tm 27 questes a mais, por ter algumas repetidas
e outras um pouco estranhas, que preferi no traduzir.
Caso algum encontre algum erro nos simulados, por favor reporte para meu e-mail
(ffc.fabricio@gmail.com.br). E se tiverem alguma dvida, sugesto ou crtica, sintam-se
vontade em comentar.
Espero que os simulados ajudem nos estudos e na futura obteno da certificao.
Bons estudos a todos!
147
148
149
150
Acredito que essa histria de primeiro e segundo IF, pode ter te deixado confuso
querido(a) leitor(a). Ento, vamos facilitar as coisas, abaixo segue o fluxo do cdigo da
questo:
Resoluo
Temos duas maneiras de resolver essa questo: fazendo o fluxo com os caminhos
lgicos possveis (parecido com a figura acima), ou usando a frmula da complexidade
ciclomtica.
Vamos primeiro para a maneira mais difcil, usando a frmula:
M = E N + 2P
M= complexidade ciclomtica
E= nmero de arestas (linhas/caminhos)
N= nmero de nodos
P= nmero de componentes conectados
M= 6 5 + 2X1
M= 1 + 2
M =3
Portanto j sabemos que a complexidade ciclomtica igual a 3.
151
Agora vamos resolver essa mesma questo, de uma maneira mais simples e fcil:
152
Resposta
Alternativa: b) 3
Por hoje s pessoal. No prximo post irei resolver a questo 5 do simulado 2, a que o
Clauriston comentou no post anterior. At l!
153
154
d) 10.000, 99.999
e) 9.999, 10.000, 50.000, 99.999, 100.000
Analisando o enunciado da questo
Pede-se apenas os valores vlidos e usando as tcnicas de classe de equivalncia e de
valores limites.
Resoluo
Seguindo as tcnicas propostas:
Tcnica de classe de equivalncia temos 3 parties:
Invlida mnima = valores menores que 10.000;
Vlida = valores entre 10.000 e 99.999;
Invlida mxima = valores maiores que 99.999.
Tcnica de valores limites temos 4 limites a serem verificados:
Invlido mnimo = 9.999;
Vlido mnimo = 10.000;
Vlido mximo = 99.999;
Invlido mximo = 100.000.
E como a questo pede somente os valores vlidos, chegamos aos seguintes valores:
10.000, 50.000 e 99.999
Da voc pode me perguntar: O 50.000 no necessrio, pois o 10.000 e o 99.999 j
fazem parte da classe de equivalncia vlida.
Bem esse foi o pensamento que tive, quando acreditei que a alternativa D estava correta.
Mas, prestando mais ateno percebi que a questo pede para usar a tcnica de classe de
equivalncia e de valores limites, e apenas valores que caracterizem o uso de cada uma
delas, lembrando que esses valores precisam ser de classes e limites vlidos.
Portanto a alternativa C a correta. Pois:
10.000 = limite mnimo vlido
50.000 = valor da classe de equivalncia vlida
99.999 = limite mximo vlido
Desta maneira estamos claramente usando as duas tcnicas.
155
Resposta
Alternativa: c) 10.000, 50.000, 99.999
Eu j atualizei o simulado 2, com est correo. Quem quiser baix-lo ele est sendo
disponibilizado no link abaixo:
http://www.mediafire.com/file/ohy4jdwxijw/Simulados_CTFL-BSTQB.zip
Peo desculpas, por mais esse erro.
At mais!
156
Read P
Read Q
IF P+Q > 100 THEN
Print Large
ENDIF
If P > 50 THEN
Print P Large
ENDIF
157
Sentena (comando)
Com um nico teste podemos alcanar a cobertura total de sentena, por exemplo:
P = 100
Q=1
Iremos passar pelos dois IFs. Logo cobrimos todas as sentenas: 1,2,3,4,5,6,7,8.
Desvio
J para alcanar a cobertura total de desvio precisamos de dois testes: um que passe
pelos dois IFs e outro que no passe por eles, por exemplo:
Teste 1
P = 100
Q=1
Com estes valores de entrada, iremos passar pelo primeiro IF e tambm pelo segundo.
Teste 2
P = 50
Q=1
Com estes valores de entrada, no iremos passar pelo primeiro IF e nem pelo segundo.
Detalhe da questo: No enunciado da questo pede-se o nmero mnimo de casos de
teste.
Resposta
Alternativa: b) 1 teste de cobertura de sentena (comando), 2 para a cobertura de
desvio
158
1.
2.
3.
4.
5.
6.
7.
if (Condition 1)
then statement 1
else statement 2
fi
if (Condition 2)
then statement 3
fi
a) 2
b) 3
c) 4
d) No h como estimar
Anlise
A questo pede o total de testes para cobrir todas as possibilidades de declaraes
(caminhos), ou seja, pede-se a cobertura de cobertura de caminho.
Quanto ao cdigo, podemos perceber que h dois IFs independentes, como o prprio
enunciado j fala.
Resoluo
A melhor maneira de resolver essa questo fazendo o fluxo do cdigo para pode
visualizar os caminhos existentes:
159
160
Switch PC on
Start outlook
IF outlook appears THEN
Send an email
Close Outlook
ENDIF
161
IF A > B THEN
C=AB
ELSE
C=A+B
ENDIF
Read D
IF C = D Then
Print Error
ENDIF
162
A=0
B = 10
C = ser 10 (o valor de C nem interessa nesse teste)
D = 9 (o valor de D nem interessa nesse teste)
Com o teste 2 passamos pelo ELSE, porque A igual a B e nos levar a linha 4, a nica
pela qual no tnhamos passado.
Cobertura de desvio
Podemos usar os mesmos testes feitos na cobertura de sentena. Mas com uma
diferena: no teste 2, os valores de C e D nos interessam, pois iro cobrir o resultado
falso (a no passagem) do segundo IF.
Portanto, com apenas dois testes tambm alcanamos a cobertura de desvio.
Resposta
Alternativa: b) 2 testes de cobertura de sentena (comando), 2 para a cobertura de
desvio
Dica
Adaptando a minha regra inicial: o nmero de testes para garantir a cobertura de desvio,
na maioria das vezes, ser maior que o nmero de testes para garantir a cobertura de
sentena.
163
164
Resoluo
Cobertura de sentena
Dois testes so necessrios: um para passar pelo primeiro IF e outro para passar pelo
segundo IF. E passando pelos dois IFs, iremos executar todas as sentenas.
Cobertura de desvio
J para a cobertura de desvio preciso 3 testes:
Teste 1
Est passando um bom filme e o cidado vai assistir. (primeiro IF verdadeiro)
Teste 2
Est passando o Fausto e o cidado vai continuar a leitura do jornal de domingo.
(primeiro IF falso)
O cidado acaba de encontrar uma palavra cruzada e logo tenta completar. (segundo IF
verdadeiro)
Teste 3
Est passando de Volta a Lagoa Azul e o cidado vai continuar a leitura do jornal.
(primeiro IF falso)
No h uma palavra cruzada no jornal. (segundo IF falso)
Resposta
Alternativa: e) CS = 2 e CD = 3
165
166
167
168
169
170
Eventos
Dicas
Eventos
171
1. Brateste 2009
Durante os dias 12 e 13 de maro de 2009, So Paulo sediar o 2 Seminrio Brasileiro
de Teste de Software, o Brateste 2009.
O evento ocorrer das 09 s 18 horas, no Renaissance So Paulo Hotel, localizado
na Alameda Santos, 2233 So Paulo, Brasil, sendo organizado pela
ALATS (Associao Latino-Americana de Teste de Software).
Ele voltado para todos os profissionais envolvidos com as atividades de
desenvolvimento e teste de sistemas, trazendo 14 palestras tcnicas, sendo duas
ministradas por Martin Pol, um dos cones globais do setor, autor de diversos livros
sobre o assunto e criador dos modelos TMap e do TPI, ambos usados como referncia
na Europa. O encontro tambm conta com palestras de personalidades renomadas da
Blgica, Amrica Latina e do Brasil.
Alm das novidades do setor, na ocasio haver a apresentao de produtos e servios,
atravs de uma rea de exposio e palestras tcnicas, assim como ofertas da literatura
sobre teste de software, num espao reservado para livrarias especializadas.
A grade (provisria) de palestras do Brateste 2009, segue abaixo:
Horrios
09:0009:15
09:1510:30
10:3011:00
11:0012:00
12:0013:00
13:0013:50
Dia: 12/03/2009
Palestra
Palestrante
Emerson Rios
Abertura
ALATS
Brasil
Martin Pol
The evolution of
Polteq International
Testing
Testing Services
Holanda
Coffee break e visita aos stands
Using offshore
partners for software
factory approach
Luc Vandergoten
BTR Services
Blgica
Mamdouh El Cuera
Mtodos y Tecnologa
(MTP)
Espanha
172
13:5014:40
Preveno de
defeitos
14:4015:30
Fabrica de Teste
Futuro ou realidade
Ricardo Cristalli
iTeste / Quality
Brasil
15:3016:00
16:0016:50
16:5017:40
17:4018:30
18:3019:20
09:0010:30
10:3011:00
11:0012:00
12:0013:00
13:0013:50
Gustavo Quezada
Brasil
Emerson Rios
ALATS
Brasil
Dia: 13/03/2009
Palestra
Palestrante
Martin Pol
Polteq International
Test Outsourcing
Testing Services
Holanda
Coffee break e visita aos stands
Automao de Testes
de M Qualidade:
Como Evitar
Leonardo Molinari
MZP
Brasil
173
13:5014:40
Casos de testes:
como, por que y para
que.
14:4015:30
Benefcios da
utilizao de Testes
Exploratrios em
projetos Offshore e
Onshore
Aderson Bastos de
Souza
Stakeholder
Consultancy Services
Brasil
15:3016:00
16:0016:50
16:5017:40
174
Fonte:
ALATS
175
176
Cultura
Educao
Sem inovao
Qualidade
Sem teste
177
projetos de testes fracassam, devido aos clientes pensarem que tero resultados
imediatos, quando na verdade, os resultados do Teste de Software ocorrem a mdio
e longo prazo.
Mamdouh ainda destacou a existncia de um planejamento consistente e de uma
equipe de teste, formada por especialistas.
O interessante da palestra foi o tratamento do Teste de Software como servio.
Preveno de Defeitos Arndt Von Staa PUC-Rio/Brasil
A quarta palestra do dia foi a segunda melhor (na minha opinio, s perdendo para
a do Martin Pol). O professor Arndt Von Staa, que est na rea de computao h
mais de 47 anos ( ele escreveu o seu primeiro programa em setembro de 1962),
abordou com propriedade a importncia da preveno de defeitos.
Ele iniciou explicando um pouco sobre algumas terminologias (engano, defeito,
erro, falha, etc). Enfatizou a importncia do software ser fidedigno. Argument ou
sobre as crenas existentes em TI, dizendo que no se pode esperar que os sistemas
no possuam defeitos, e que mesmo em sistemas perfeitos pode haver falhas.
No final da apresentao Arndt comentou que podemos obter bons resultados com o
uso de tcnicas formais leves, revises e inspees.
Aps o encerramento da palestra, Arndt Von Staa recebeu o certificado CBTS, por
toda a sua bagagem acadmica e pelos 47 anos de TI. E se tornou o 202 certificado
CBTS do Brasil.
Fbrica de Teste Futuro ou realidade Ricardo Cristalli
iTeste/Quality/Brasil
Logo de incio o Ricardo Cristalli provocou a platia, perguntando se o Teste de
Software pode ser encarado como um projeto, e a grande maioria dos participantes
(incluindo esse que vs fala) levantou a mo. Na sequncia explicou um pouco
sobre o teste ser tratado como projeto, citando o PMI.
Dentre os tpicos abordados pelo Ricardo, destaco: a otimizao de recursos
internos; importncia da automao e da reusabilidade; a necessidade de saber onde
procurar os defeitos; conhecer os atributos do software; testar no uma atividade
simples; o processo deve representar o dia-a-dia; uso de ferramentas, somente se
forem adequadas ao projeto; virtualizao de ambiente de teste; sem especificao
no podemos ter um bom teste.
Para fechar a apresentao, o Ricardo mostrou algumas notcias que mostram que
fbricas de teste so uma realidade no Brasil, dentre as principais esto: CPM
Braxis, T&M Testes e RSI.
178
179
180
181
182
Off-shoring:
Co-sourcing:
Business Process Outsourcing:
Joint Venture:
Right-sourcing:
Blended sourcing;
Near-shoring;
Home shoring.
Bem, para encerrar essa longa cobertura da palestra de Martin, vou deixar alguns
conselhos e experincia que Martin Pol disse:
H uma grande dificuldade no idioma, principalmente na Europa, onde mais
de 23 idiomas so falados;
Gerenciamento e controle, gerenciamento e controle, gerenciamento e
controle, gerenciamento e controle, gerenciamento e controle so muito
importantes (o Martin repetiu muitas vezes essas duas palavras);
Dosar a rigidez e flexibilidade do processo;
Tenha uma direo, antes de entrar na terceirizao;
Defina uma estratgia, selecione um fornecedor, crie o contrato, se preocupe
com a transio e administre e monitore a terceirizao;
O retorno do investimento demora em mdia 1 ano;
Tenha mais de um fornecedor, mas no muitos.
Torne-se especialista;
Pense sobre o divrcio antes de assinar o contrato.
Como vocs puderam perceber, eu nem gostei dessa palestra, na verdade s achei
um pouco longa demais (1h30min). Mas foram 90 minutos muito bem gastos.
Automao de Testes de M Qualidade: Como Evitar Leonardo Molinari
MZP/Brasil
Grande Molinari! Estava ansioso para ver o que ele tinha a falar, afinal ele um dos
grandes nomes da nossa rea aqui no Brasil.
Durante a sua apresentao, ele falou sobre os seguintes assuntos: automao no
resolve tudo, mas uma grande ajuda; automao de testes precisa ser aprendida
183
corretamente; automao de teste no substitui uma equipe de testes; nem tudo pode
ser testado, mesmo usando automao; nem tudo que pode ser testado precisar de
automao.
Bem, minha impresso foi que mesmo com o Leonardo dizendo que no ia chover
no molhado, acabou chovendo no molhado. Porm, levantou pontos importantes,
como:
No podemos falar que uma ferramenta uma porcaria, sem antes a estudar
direito;
Sempre possvel melhorar;
Ir sempre alm da ferramenta;
Estudar, estudar e estudar;
O testador manual no vai morrer, devido ao seu conhecimento sobre o
negcio.
No final da apresentao, Molinari ainda revelou uma surpresa (tcharam!)seu
novo livro sobre Testes de performance, que em breve estar nas melhores livrarias
do pas (hehe).
Experincia de testes com Alta Automao: A Experincia da Falabella Chile
Jorge Maturana Palma (Falabella)/ Chile
Nessa palestra, Jorge Maturama falou sobre o caso de sucesso da Alta Automao,
implantada pelo grupo HDI (o do Marco Bassi). Mostrando um pouco das suas
expectativas com o Teste de Software, o uso da ISO-IEC 926 e ainda a importncia
dos usurios estarem felizes com o produto entregue.
O interessante da palestra foi o fato de uma empresa brasileira, ter ganhado a
licitao do projeto, concorrendo com grandes empresas multinacionais como IBM
e Accenture. E com uma soluo inovadora que a plataforma de Alta Automao
do grupo HDI (que foi apresentada no primeiro dia).
Casos de testes: como, por que y para que Marcelo de los Santos/Uruguai
O Marcelo o diretor da diretoria da ALATS no Uruguai, a primeira diretoria fora
do Brasil. E apresentou a sua experincia com Teste de Software, focando no uso
dos casos de testes, mas tambm comentando sobre: checklist e uso de mquinas
virtuais para a montagem dos ambientes de teste.
Algo interessante que notei, foi o fato, de pases diferentes enfrentarem os mesmos
problemas. Logo surgi uma necessidade em comum, e alianas e trocas de
informaes podem e devem ser feitas. O que mostra que a tentativa da ALATS em
atingir a Amrica Latina muito vlida.
184
185
186
187
188
189
190
191
192
Acredito que esses momentos so bem legais, pois sinto que muitas vezes estamos
muito bitolados com os estudos e o trabalho, e muitos de ns no tem essa oportunidade
de falar sobre o trabalho com pessoas da mesma rea (eu mesmo tenho poucos amigos
que trabalham com Teste de Software, tirando os amigos do trabalho).
E tambm estamos em uma era onde lemos muito e discutimos pouco, alis, esse um
motivo pelo qual esquecemos muitas das coisas que lemos e estudamos.
Agora sobre a primeira parte da palestra, cujo tema era: O ano de lanamento do livro
The Art of Software Testing, por Glenford Myers. O Jos Correia abordou com
bastante propriedade o assunto, comentando sobre os captulos dessa obra que
considerada a bblia do Teste de Software, sempre fazendo comparaes com a poca de
Myers, dcada de 70, e os anos atuais.
Segunda parte do encontro
Aps um belo de um Coffee Break, Jos Correia continuou a sua apresentao,
comentando sobre os captulos do livro de Myers.E ainda falou sobre o futuro do Teste
de Software, tendo como base as 10 tendncias de TI (ele citou as de 2008, que ainda
so vlidas).
O mais legal da apresentao do Jos Correia foi a maneira (bem otimista) que ele
ilustrava o Teste de Software e a sua importncia, tanto quando comentou sobre o livro
de Myers, como quando falou sobre o futuro da nossa rea. Particularmente, tambm
vejo com bastante otimismo o futuro da nossa rea
A concluso que chegamos ao final da apresentao que muitos dos conceitos que
Myers falava em 1979, ainda so vlidos para os dias atuais. Tanto que os livros e
certificaes de Teste de Software, sempre tm como referncia o livro The Art of
Software Testing. E Teste de Software uma rea que est crescendo e ir crescer
ainda muito, pois cada vez ser mais necessrio testar software.
Quem quiser fazer o download da apresentao, ela est sendo disponibilizada no site
da Iterasys, link abaixo:
http://www.iterasys.com.br/downloads/ALATS-SP-Encontro-Mensal-001.pdf
Consideraes finais
Com certeza o primeiro encontro da ALATS foi um sucesso! Pudemos compartilhar
experincias, conhecer novas pessoas da rea e ainda ter uma excelente palestra com o
Jos Correia.
Agora torce para que esses encontros aconteam mensalmente mesmo. E para que isso
acontea, tambm precisamos ajudar. Pessoal participem e divulguem o encontro, quem
sabe a prxima j no pode ser no auditrio do IMAM e com ele lotado!
193
194
195
196
197
198
E para encerrar esse post, nada melhor do que falar sobre o 3 encontro mensal, que ter
Fbio Martinho Campos, grande especialista da rea, palestrando sobre Teste de
Performance, no dia 16 de junho no IMAM.
Abraos a todos! E at o prximo encontro!
Saiba mais:
Quem quiser saber mais sobre os encontros mensais da ALATS em So Paulo, e
tambm fazer o download da apresentao do 2 encontro, segue abaixo o link:
http://www.alats.org.br/Default.aspx?tabid=144
199
200
201
Inscries:
Associados ALATS: R$ 25,00
No Associados: R$ 30,00
A participao na palestra Vale 3 PDTS para a renovao da CBTS
Inscrio e pagamento pelo site:
http://www.alats.org.br/default.aspx?tabid=144
202
Gerncia de Projetos
Gerncia de Projetos
203
204
205
206
207
Talvez, voc at se lembre do que voc comeu ontem, mas e antes de ontem, e na
semana passada?
Se eu fosse pedir para voc me fazer uma documentao do seu almoo por um ms, ela
teria que ser feita antes do almoo, onde voc colocaria qual o restaurante que voc vai
almoar, qual ser o pedido, etc; durante o almoo, situao em que voc falaria sobre a
qualidade da comida escolhida; e aps o trmino do almoo, voc iria descrever como
foi o atendimento e quanto custou o almoo.
Logo percebemos que a documentao uma tarefa que tem que ser feita, durante todo
o projeto e no somente durante uma determinada etapa do projeto.
Bem pessoal, por hoje s. Em breve trarei a segunda parte do 3P. At a prxima!
208
209
210
Modelos
Modelos
211
1. MPS.BR
Pessoal, participei nessa semana de uma palestra sobre MPS.BR, ministrada por Sarah
Kohan e David Yoshida, duas pessoas que participam ativamente na difuso do
MPS.BR no Brasil. Abaixo explico um pouco sobre esse novo programa para Melhoria
de Processo do Software Brasileiro.
O que o MPS.BR?
Ele um programa para Melhoria de Processo do Software Brasileira, criado em
dezembro de 2003, voltado especialmente para pequenas e mdias empresas, com o
objetivo de definir e aprimorar um modelo de melhoria e avaliao de processo
de software.
O MPS.BR tem algum apoio?
O MPS.BR conta com apoio do Ministrio da Cincia e Tecnologia (MCT), da
Financiadora de Estudos e Projetos (FINEP) e do Banco Interamericano de
Desenvolvimento (BID). Sendo coordenado pela Associao para Promoo da
Excelncia do Software Brasileiro (SOFTEX).
O MPS.BR baseado em algum modelo ou norma?
Ele tem como base tcnica trs fontes, sendo elas:
ISO/IEC 12207 A norma ISO/IEC 12207 e suas emendas 1 e 2 estabelecem
uma arquitetura comum para o ciclo de vida de processos de software com uma
terminologia bem definida. Contm processos, atividades e tarefas a serem
aplicadas durante o fornecimento, aquisio, desenvolvimento, operao e
manuteno de produtos de software e servios correlatos.
ISO/IEC 15504 A ISO/IEC 15504 presta-se realizao de avaliaes de
processos de software com dois objetivos: a melhoria de processos e a
determinao da capacidade de processos de uma unidade organizacional.
CMMI O CMMI (Capability Maturity Model Integration) um modelo de
maturidade para o desenvolvimento de software. Sendo um conjunto de boas
prticas para o desenvolvimento de projetos, produtos, servios e integrao de
processos.
Como o MPS.BR est organizado?
Assim como o CMMI, o MPS.BR organizado em nveis de maturidade, nos quais a
melhoria continua do processo e o cumprimento de novos atributos se faz necessrio
para alcanar o nvel acima.
212
Os 7 nveis de maturidade
O MPS.BR define sete nveis de maturidade, que podem ser comparados ao nveis do
CMMI como na figura abaixo:
213
Plano de adequao
o
Avaliao oficial
o
214
Concluso
A melhoria do processo de software uma necessidade cada vez maior nas empresas de
TI. Alm do mais, muitas delas ainda sequer possuem processos definidos. Diante dessa
realidade, o MPS.BR uma forma de alcanar a maturao dos processos que vem
crescendo a cada ano, com novas empresas adquirindo a certificao ou melhorando o
seu nvel. Sendo muito bem aceita no mercado nacional (no mercado internacional ela
ainda no reconhecida). Portanto, a MPS.BR mais recomendada para empresas que
tem sua cartela de clientes localizados no Brasil. Para as demais, ela se apresenta como
um primeiro passo antes do CMMI, j que a sua adequao mais simples e seu custo
menor comparado ao CMMI.
E devemos ter sempre em mente que os modelos, normas e etc, existem para auxiliar na
melhoria do processo da nossa empresa e credibiliz-la perante aos clientes. E s so
possveis de serem conquistados com o envolvimento das pessoas e por isso devemos
estar atento no s a melhoria dos processos, mas tambm a de nossa equipe. Afinal,
como j dizia Carl Gustav Jung No o diploma mdico, mas a qualidade humana, o
decisivo.
Fonte:
http://www.softex.br/mpsBr
SOFTEX. MPS.BR Guia Geral (Verso 1.2), Junho de 2007.
215
Desenvolvimento de Software
Desenvolvimento de Software
216
217
Como pode ser visto na figura acima, de acordo com os cenrios apresentados, a melhor
metodologia seria o RUP. A razo para esse fato, que a figura foi retirada do material
para a certificao IBM Certified Specialist Software Quality, e o RUP um
processo proprietrio criado pela Rational Software Corporation, adquirida pela IBM.
Logo a IBM apresenta o RUP como melhor metodologia, o que pode at ser verdade,
dependendo do projeto de software.
Agora voc pode est se perguntando: Como assim, pode at ser verdade, ou uma
metodologia a melhor ou no !.
A est justamente o erro: tentar definir a melhor metodologia. Buscar a melhor
metodologia para a sua empresa algo louvvel, afinal, boa parte das empresas de TI,
ainda usam a metodologia VAMO QUE VAMO, ou pior ainda, a EMPURRANDO
COM A BARRIGA. Mas selecionar a melhor e coloc-la goela abaixo na sua empresa,
com certeza no o melhor caminho, e ao invs de achar uma soluo, voc vai achar
mais problemas.
218
Para tentar explicar melhor o meu ponto de vista, vou fazer uma analogia com os
eletrodomsticos e eletrnicos da sua casa. Voc como um consumidor atento e sempre
buscando a qualidade, alinhada ao custo-benefcio, tem eletrodomsticos e eletrnicos
das diversas marcas: LG, Sony, Arno, Brastemp, Consul, Bosch, Philips, etc. Cada um
dos eletrodomsticos e eletrnicos atende uma necessidade da sua famlia, e para cada
um h um melhor fabricante, portanto, voc no vai comprar tudo de uma nica marca,
at porque uma nica marca no fabrica todos os tipos de eletrodomsticos e
eletrnicos.
Ao escolher uma metodologia voc tambm tem diversas necessidades e vrias
metodologias que buscam saciar a sua necessidade. Voc at pode encontrar tudo o que
voc precisa em uma nica metodologia, mas dificilmente voc vai seguir todos os seus
conceitos e mtodos. O melhor a ser fazer tentar encontrar um meio-termo, ver o que
h de melhor em cada metodologia e o que se adapta a sua realidade. E quando a sua
realidade mudar, mude tambm a sua metodologia, devemos sempre lembrar que a
mudana no ruim, e sim uma grande oportunidade.
E lembre-se que se uma metodologia funcionou bem em um projeto, era poder no
funcionar to bem em outro projeto, e vice-versa.
Fonte:
Engineering Quality in Software Development, Module 1: Overview of Software
Development Practices (AzIT)
219
Humor
Humor
220
221
222
2.Vida de Programador
Uma homenagem (bem atrasada) aos nossos amigos programadores pelo dia do
programador, comemorado no dia 12 de Setembro.
Fonte:
Cartoon adaptado do blog SuperfolderK28
223
Dicas
Dicas
224
225
226
227
228
229
Saiba mais
Sobre o Yammer
http://www.yammer.com/
http://www.twitterbrasil.org/2008/10/30/um-twitter-para-empresas/
Sobre o Twitter
http://www.twitterbrasil.org
230
Off
Off
231
1. TCC
Ufa! Finalmente consegui terminar o meu TCC (\O/), cujo nome : Interface HomemMquina: Melhores Prticas de Usabilidade. Ele foi o motivo desse ms pouco
produtivo de posts, afinal no consegui fugir da praxe do ms da entrega do TCC,
conhecido tambm, como ms anti-social (rsrs), no qual perdemos finais de semana e
noites em claro, fazendo o bendito trabalho de concluso de curso. Por sorte, no
precisei perder noites de sono, apenas algumas horas.
Mas como dizem: entre mortos e feridos, salvaram-se todos. E estou de volta, a um
dos meus lazeres preferidos que escrever (tem doido para tudo mesmo), se bem, que
nesse ms o que mais fiz foi escrever, e no posso deixar de admitir que apesar de tudo
foi divertido fazer o TCC, alm de ter sido uma experincia nova. E com certeza ele
render vrios posts, pois acredito que a Usabilidade um requisito de Qualidade de
Software que merece maior preocupao e ateno.
Bem, vou parar por aqui, seno vou ter que criar mais uma categoria: Fala que eu te
escuto.
Esse post foi mais para dizer que estou vivo e em breve estarei de frias escolares (desta
vez eterna, pelo menos do curso de ADS da FTT), e poderei dedicar mais tempo para
o QualidadeBR. Espero que vocs continuem acompanhando, pois haver novidades!
232
2. Paixo ou dinheiro?
Caros leitores,
O pessoal que me conhece, sabe que uma das minhas paixes a Formula 1 e como
muitas devem ter ficado sabendo, a equipe Honda deixou a categoria. Mas no ser
sobre a F1 que irei comentar nesse post e sim sobre algo que me preocupa: o prazer em
fazer o que gosta. E aproveito para lhes fazer uma pergunta: Por que voc trabalha?
Logicamente, que uma das primeiras respostas ser para garantir o meu sustento e de
minha famlia (alis, essa seria minha resposta tambm), porm uma vez eu li em algum
lugar (no me lembro onde), que o ser humano ao invs de viver est sobrevivendo.
Para mim, a diferena est na obrigao, quando fazemos algo por obrigao ou algo
que no seja da nossa natureza estamos sobrevivendo. J quando fazemos algo com
amor e nos divertindo, a sim estamos vivendo.
Bem, vou tentar linkar melhor essa histria da F1, apresentada no incio do post, com
o nosso mundo (TI). Vejo muitos colegas meus buscando $$$ e mais $$$, uma busca
sem fim, pois quanto mais temos mais queremos ter. E vejo poucos buscando o prazer,
afinal voc ir passar mais de 86.400 horas (8 horas X 20 dias X 12 meses X 45 anos)
da sua vida trabalhando, isso sem contar as horas extras, que algo muito freqente na
nossa rea.
Na F1 o cenrio atual no muito diferente, os chefes das equipes que antes eram os
apaixonados por velocidade e pela F1, agora so os manda-chuvas de grandes
corporaes que esto mais preocupados com o lucro e aumento do marketing que
conseguiro com a F1. E a maior diferena o fato de quando as coisas vo mal eles so
os primeiros a pularem fora do navio, enquanto os apaixonados lutam at o fim para
tentar manter a categoria, pois h certas coisas que s apaixonados conseguem fazer.
Esse um dos motivos pelo qual diversos sistemas falham e muitos projetos no
terminam. As pessoas no esto comprometidas e sim apenas envolvidas (a
velha histria do porco e da galinha). E a razo da falta de comprometimento muitas
vezes ausncia da paixo, pois voc no ser comprometido com algo que voc no
gosta. Por isso, volto a frisar, que devemos sempre buscar fazer o que a gente gosta,
pois me lembro muito bem, de uma palestra que assisti sobre a rea de Jornalismo,
quando tinha uns 15 anos, onde uma jornalista, disse: Se voc for bom, com certeza
voc ganhar bem..
Para encerrar esse post, aqui fica uma dica, de algum que ainda no encontrou a mina
de ouro, mas que j descobriu a sua estrada: Siga os seus princpios, quando encontrar
um atalho, siga o seu corao ao se deparar com uma bifurcao e siga a sua
inteligncia ao se deparar com os obstculos.
Nota: Como vocs perceberam, estou tentando trazer assuntos diferentes e no apenas
sobre Testes e Qualidade de Software, pois muitas vezes gosto de compartilhar
233
234
3. Apresentao TCC
Na semana passada, para ser mais exato, na sexta-feira dia 12 do 12 (que coisa, hein),
fiz a minha apresentao da defesa de trabalho de concluso de curso.
Na apresentao, para variar, fiquei hiper nervoso, mas segundo o pessoal que estava
presente, foi legal a apresentao. A parte que eu gostei, foi a das perguntas. Todo
mundo se preocupa muito nessa hora, mas eu estava tranquilo, afinal acredito que
ningum sabia mais do assunto do que eu e o Jayson, minha dupla de TCC. E ns
gostamos bastante do assunto, ento seria at legal confrontar opinies com o pessoal da
banca.
As perguntas foram bem legais, gerou bastante discusso. Duas delas eu achei bem
interessante, uma foi sobre a usabilidade nos celulares e a outra sobre o impacto no
hardware, causado por uma boa usabilidade.
Na primeira, a discusso gerada foi em torno da usabilidade do celular, que est num
passo a frente da existente nos computadores. Fato que justificado, devido ao nmero
de usurios de celulares que muito maior e mais diversificado que os de computador,
logo, a preocupao com a usabilidade, se torna mais inerente no desenvolvimento dos
softwares para celular.
A segunda questo tocou no assunto entre usabilidade versus desempenho. Muitos
sistemas com uma usabilidade melhor, acabam sendo mais pesados e exigindo mais do
hardware, exemplo o Pacote Office 2007, que mesmo tendo uma melhor usabilidade do
que a verso 2003, ainda no emplacou. Ou seja, de nada vale uma interface mais usual,
se ela no consegue ser processada pelo hardware. Mas, para ter uma interface com boa
usabilidade no preciso oferecer um design mais pesado, muitas vezes, a simplicidade
resolve boa parte dos problemas de usabilidade, como exemplo temos o navegador do
Google, o Chrome, e a distribuio Linux Linpus.
Quem quiser conferir a apresentao, ela est sendo disponibilizada no link abaixo, caso
algum tenha alguma dvida, sugesto ou crtica, sinta-se vontade em colocar nos
comentrios.
Download da apresentao
Para encerrar esse post, tenho alguns agradecimentos a fazer (hehehe), de pessoas que
ajudaram no desenvolvimento desse trabalho:
- Ao Jayson, minha dupla de TCC, que sempre esteve preocupado com a qualidade do
trabalho e mostrou grande dedicao, mesmo nos momentos difceis.
- Ao Andr Pantalio, que uma das pessoas que eu tenho um prazer enorme de
trabalhar, e que me emprestou vrios materiais sobre usabilidade e deu boas idias para
o trabalho.
235
- Ao Prof. Ms. Flvio Viotti, que mesmo com as dificuldades que tivemos, ainda estava
sempre nos cobrando e se preocupando com o andamento do TCC.
- Por fim, a todos os alunos de ADS6, pelas risadas, conhecimentos, emoes e brigas,
vividas nesses trs anos, que com certeza ficaro na memria e no corao para toda a
vida.
236
237
5. Errar humano
Hoje, conversando com um amigo meu no trabalho, sobre como foram os testes durante
a atualizao do ambiente de produo, ele me disse que ele acabou errando em uma
mudana e teve que derrubar e subir novamente o ambiente, que acarretou em um
pequeno atraso na atualizao. Isso durante os testes de performance, que so
executados no ambiente de produo, logo aps, os testes funcionais.
O que me chamou dessa histria toda, no foi o fato dele ter cometido um erro, e sim a
cara e a forma que ele me contou. Como se ele tivesse feito algo, realmente ruim, como
se a falha tivesse ocorrido devido a uma falta de ateno o algo do tipo. Mas no, a falha
ocorreu, devido a complexidade do teste e do sistema. Para se ter uma idia, na nossa
equipe, ele a nica pessoa que executa os testes de performance e HA (HighAvailability), e tais testes exigem um alto conhecimento da aplicao e sua arquitetura,
alm da ferramenta utilizada, o SIPp. O que torna esse profissional, um diferencial para
a equipe. E o erro cometido por ele, eu no iria cometer, pois no tenho conhecimento
suficiente para fazer esses testes, logo no iria tentar fazer o teste.
Logo, percebemos algo muito importante, s erra aquela pessoa que tenta. Sei que errar
parece ser algo ruim. E parcela desse pensamento, deve-se a nossa formao acadmica,
na qual quando cometamos algum erro, logo recebamos alguma punio ou um belo
de um X vermelho.
Isso faz com que a gente, tente evitar ao mximo um erro, principalmente na equipe de
Qualidade e Testes, onde caamos falhas, que so originrias de um erro de alguma
outra pessoa. Mas, tenha a certeza, que mesmo evitando os erros, estamos sempre
correndo o risco de errar, pelo simples fato, de sermos humanos. E ns aprendemos
muito mais com um erro, do que com um acerto.
O que errado a pessoa no reconhecer o prprio erro, e pior ainda no tentar.
Lgico, que se voc ficar na sua cama deitado, voc no vai cometer nenhum erro.
Assim, como um carro no quebra, se ficar na garagem.
Por isso, se as pessoas te crucificarem por um erro, lembre-se de uma frase, dita por
algum bem conhecido: perdoa-lhes, pois eles no sabem o que fazem.
E para mim, errar no tentar.
238
6. Entusiasmo
Hoje lendo meus feeds sobre Frmula 1, vi uma notcia muito legal sobre o retorno do
Rubens Barrichello F1. Eu particularmente, sempre gostei do Rubinho, um sujeito
sereno, que nunca se deixou ser levado pelo sucesso ou influenciado pelo mundo da F1,
e o que mais me chama a ateno a sua persistncia e entusiasmo.
Ele tem 36 anos, uma famlia, 9 vitrias na F1, dois vice-campeonatos e uma condio
financeira invejvel. E poderia muito bem se aposentar da F1 e curtir a sua famlia, mas
no, ele continua com o mesmo nimo de um garoto que comeou ontem na F1. E se ele
conseguir ou no obter bons resultados na ex-Honda, agora Brawn GP, s o tempo
poder dizer. Mas com certeza ele j obteve uma grande vitria esse ano, a de provar a
todos que ainda tem competncia para fazer o que mais gosta.
Agora, outro acontecimento que me chamou ateno essa semana, a estria do Ronaldo
(o fenmeno) pelo Corinthians. E olha que eu sou Palmeirense, mas mesmo assim no
resisti ao ver na Globo.com que ele ia entrar em campo, e liguei a TV para ver a sua
estria.
E assistindo ao jogo, pude perceber a raa e vontade com que ele jogava muito maior do
que muitos jogadores que comearam ontem a jogar. Mesmo sem ritmo de jogo e ainda
fora do peso ideal, ele correu, se movimentou, chutou e driblou com a vontade de um
estreante.
O Ronaldo com certeza mais uma prova do que o entusiasmo pode fazer, um jogador
que j passou por muitas leses bem srias, ganhou duas copas do mundo (1994 e
2002), foi trs vezes eleito o melhor do mundo e mesmo assim, ainda continua se
esforando para voltar a jogar futebol, aps de mais de um ano sem jogar.
Acredito que o entusiasmo algo necessrio em qualquer rea, para qualquer
profissional. Precisamos buscar ser entusiastas em tudo que fazemos. E muitas vezes
precisamos entusiasmar as pessoas, pois o trabalho em equipe algo fundamental na
nossa rea, e com uma equipe entusiasmada as chances de um projeto ser um sucesso e
at superar as expectativas muito alta.
Quantas vezes voc j no ouviu frases do tipo: Voc no vai conseguir fazer isso;
Desisti muito complicado; O projeto est atrasado, a gente no vai conseguir
entregar no prazo; Voc est perdendo o seu tempo fazendo isso; e tantas outras.
Mas essas frases s fazem os entusiastas ficarem com mais e mais vontade de
conquistar o que deseja.
Deixo abaixo, uma frase muito boa sobre entusiasmo:
O entusiasmo a maior fora da alma. Conserva-o e nunca te faltar poder para
conseguires o que desejas. Napoleo Bonaparte
239
240
O gerente do projeto por mais que ele seja competente no conseguir gerenciar todas as
equipes e as tarefas, ele precisa de outras pessoas para ajud-lo. Os desenvolvedores no
conseguiro garantir que o sistema estar de acordo com os requisitos sem a nossa
ajuda.
Em equipe, grandes obstculos se tornam menores. Exemplos diversos:
mais fcil fazer dieta junto com os seus amigos (as), j que todos vo evitar ir
numa churrascaria ou comer uma feijoada na quarta-feira;
Estudar para uma prova em grupo, onde todos pensaro em como resolver uma
questo confusa e compreender melhor um captulo difcil;
Gravar um CD de rock sozinho algo quase impossvel, j que temos pelo
menos trs instrumentos (guitarra, baixo e bateria), embora Dave Grohl, tenha
tocado todos os instrumentos do primeiro lbum do Foo Fighters sozinho.
Hoje em dia vivenciamos o progresso, e com ele muitas coisas se tornaram mais fceis,
porm os nossos desafios esto cada vez mais difceis. Portanto temos que trabalhar
duro e em equipe. A velha histria de que a unio faz a fora.
Se um projeto d certo ou errado a culpa ou a glria no sero apenas de uma nica
pessoa e sim de todos.
E para terminar, no adianta temos uma excelente infra-estrutura, usar a melhor
metodologia, ter um bom prazo, seno temos uma boa equipe. As pessoas so e sempre
sero o diferencial, a razo do fracasso ou do sucesso de um projeto. No tente
terceirizar a culpa para a metodologia e nem se vangloriar sozinho. E quando eu falo em
pessoas os clientes tambm esto inclusos, alis, so os primeiros que devem est
comprometidos com o sucesso do projeto.
Eu sou parte de uma equipe. Ento, quando veno, no sou eu apenas quem vence. De
certa forma, termino o trabalho de um grupo enorme de pessoas. - Ayrton Senna
Um floco de neve uma das mais frgeis criaes, mas veja o que eles conseguem
fazer quando se juntam! - Autor desconhecido
241
8. A Importncia da Maturidade
Aviso:
Este post fruto da experincia do autor desse blog, no baseado em teorias ou
grandes autores, mas os mesmos ajudaram esse autor a chegar as concluses que iro d
forma a esse post, cuja essncia foi extrada da prtica.
O que maturidade?
Maturidade na sua essncia voc saber o que quer e como alcanar o seu objetivo, sem
prejudicar as pessoas e de forma tica e moral.
Exemplo:
Ao chegar numa certa idade, voc no ter mais os seus pais para tomar a deciso por
voc, e em certos momentos da sua vida, geralmente no momento que voc mais
precisar, no poder contar com a opinio de um amigo ou familiar. Porm ter a sua
inteira disposio a sua maturidade, ela que ir te ajudar.
Maturidade no mundo de TI
A maturidade no mundo de TI algo no muito comum, ou pelo menos no era at
pouco tempo. E o motivo para eu ter chegado nessa concluso bem fcil de entender,
quantos projetos que voc j viu atrasar ou serem cancelados? Muitos no !? E olha
que eu nem perguntei a quantidade de projetos que foram para a produo sem ter a
qualidade desejadaputz, mas verdade, que qualidade desejada? Para mim se tiver
funcionando t timo.
Para ilustrar a importncia da maturidade no mundo de TI vou citar um exemplo de uma
empresa que quase ningum conhece, o Google. Enganam-se aqueles que acham que o
Google aquele palavro, parecido com soda, e ponto final. Na verdade o Google
maturo. Larry Page e Sergey Brin, os fundadores do Google, nunca imaginaram,
acredito eu, que iriam construir uma empresa como o Google, logo quando estavam
crescendo, perceberam que precisavam de algum com experincia para ajudar a
gerenciar o Google, e assim contrataram Eric Schmidt, que tinha uma experincia de 20
anos na Novell.
Voc faz idia da complexidade que gerenciar uma empresa como o Google, ou como
a Microsoft? Eu tambm no fao, mas com certeza no uma das tarefas mais fceis, e
para se manter entre os grandes preciso muita maturidade.
Uma atitude matura que o Google tem, dentre as vrias, a liberdade que eles do aos
colaboradores. L voc pode dedicar 20% de seu tempo em projetos independentes. E
no precisa ficar preso 8 horas na sua baia, pode sair para relaxar (jogar um pouco de
video game, deitar num puff, jogar sinuca com os amigos, etc).
242
243
J do outro lado, precisamos ter um cliente que saiba que o seu fornecedor (ns) est
comprometido com a sua satisfao, e que entenda que ele tambm um fator para o
sucesso do projeto. Ele ter que ser mais participativo com a equipe, tentar compreender
melhor as suas reais necessidades e avaliar sempre se toda informao foi passada para
o seu fornecedor, de maneira clara e objetiva.
E como voc pode perceber, o mais importante para a maturidade de um processo so as
pessoas, portanto as pessoas tambm precisam ser maduras o suficiente para entenderem
os seus papis, afinal os profissionais de TI no so meros escovadores de bits e sim
causadores da mudana e do progresso da empresa.
E algo que mudou bastante a maneira como vejo o desenvolvimento de software foi a
leitura e compreenso do Manifesto gil (leia voc tambm ), que traz princpios que
podem aprimorar e tornar mais eficiente o seu processo.
Estude sobre metodologias, modelos, estudos de caso, faa e use as lies aprendidas,
etc. Pois mesmo no podendo aplicar na prtica tudo que voc estudou, com certeza, em
um certo momento, voc ter a chance de mudar algo, tendo como base algo que voc
estudou.
Como posso medir a maturidade da minha empresa?
Acredito que algo mais importante do que certificaes, logicamente que tendo uma
viso interna do processo, so as cinco caractersticas, que cito abaixo:
A empresa est tendo lucro;
Os clientes esto satisfeitos com o produto entregue;
A equipe est motivada;
O ambiente de trabalho propicia discusso e o surgimento de novas idias;
Sempre h algum pentelho mudando algo.
Antes de terminar, s gostaria de deixar claro mais uma coisa: no sou contra CMMI,
MPS.BR, ISO, etc, pelo contrrio, elas ajudam bastante a melhoria do processo da
empresa e principalmente a credibilidade, perante o mercado. No entanto, penso que um
nvel excelente de maturidade alcanado, quando o seu processo tem total conscincia
das dificuldades e necessidades, e consegue se adaptar as novas realidades, desafios e
principalmente, no fica preso a uma prtica, metodologia ou modelo.
Um dia voc aprende que maturidade tem mais a ver com os tipos de experincia que
se teve e o que voc aprendeu com elas, do que com quantos aniversrios voc
celebrou. (William Shakespeare)
Abraos! E se quiserem concordar ou discordar de algo, sintam-se vontade, at porque
a maior parte do que falei, so opinies que tenho hoje, talvez at eu no futuro, discorde
de algo.
244
Curiosidades do QualidadeBR
Ele nasceu no dia 19 de junho de 2008;
O ms mais agitado (com maior nmero de posts) foi o de maro de 2009,
causado pela srie de posts com resolues de questes do exame
CTFL/BSTQB;
O ms menos agitado foi o de novembro de 2009, devido ao TCC que o autor
estava escrevendo para a concluso da sua graduao;
Todo contedo publicado no QualidadeBR est sob a licena Creative
Commons:
o Os leitores podem:
Copiar, distribuir, exibir e executar a obra;
Criar obras derivadas.
o Sob a seguinte condio:
Atribuio - Voc deve dar crdito ao autor original, da forma
especificada pelo autor ou licenciante.
Os cinco posts mais vistos do QualidadeBR so:
1. Certificao: IBM Certified Specialist Software Quality;
2. Simulados CTFL-BSTQB;
3. FURPS+;
4. Tutorial Eventum (parte 1);
5. Teste Estrutural (White Box) X Teste Funcional (Black Box).
E os cinco posts menos vistos so:
84. Qualidades de um especialista em teste;
85. Qualidade Sem Nome;
86. Feliz Ano Novo;
87. Padro de nomes de componentes;
88. Adiado o 3 Encontro Mensal da ALATS.
Alguns nmeros alcanados pelo QualidadeBR nesse um ano de vida:
o Mais de 17.000 visualizaes de pginas;
o 88 posts publicados;
o 158 comentrios;
o Uma mdia 1.9 posts por semana;
o 47 leitores do feed.
245
As Caras do QualidadeBR
246