SlideShare ist ein Scribd-Unternehmen logo
1 von 58
Qualidade

Por que testar seu software?
Adriano Bertucci
Microsoft Visual Studio ALM MVP
adriano.bertucci@konia.com.br
Twitter: @adrianobertucci

Charles Santana
Consultor ALM e EPM
Charles.santana@konia.com.br
Twitter: @charlessantana0
Quem sou eu?
• Sócio/Diretor Konia Tecnologia;
• Microsoft Visual Studio ALM MVP;
• Palestrante Microsoft;
• Adora jogar FIFA no XBOX;
• Torcedor do SC Corinthians Paulista! 
adriano.bertucci@konia.com.br
Twitter: @adrianobertucci
Qualidade uma necessidade
Considerando que desenvolvimento de
software representa 25% dos gastos em
software, identificar a causa dos problemas e
falhas nos projetos de desenvolvimento se
torna uma necessidade.
Qualidade uma necessidade
−

O sucesso de um projeto de software pode ser definido por um
triângulo:
Tempo (Prazo)
Orçamento (Custo)
Funcionalidades

−

Funcionalidade

Qualidade

Nos acostumamos em aceitar 2 dos 3
Consideramos isso sucesso?

−

Atualmente o triângulo se transformou
em um quadrado;
Qualidade é a quarta dimensão

Prazo

Orçamento
Caminho para o sucesso...
Ideia

Solução
Como chegamos até aqui?
1
Em 1983, uma III Guerra Mundial, quase teve início, devido a um
bug no software de alerta Soviético. A falha fez com que o
software mostrasse que os E.U.A. tinha lançado cinco mísseis.
A nosso sorte, foi que o Tenente Coronel Stanislav
Petrov, considerou que a informação estava errada e não
ordenou o contra-ataque, evitando assim o inicio da III Grande
Guerra.
2
Em 1990, um bug numa central telefônica da AT&T deixou milhões
de pessoas nos EUA sem comunicação de longa distância. O erro
ocorreu num break do código C, que não foi testado corretamente.
“IF YOU CANNOT TEST IT, DO NOT DO IT.”
3
No primeiro lançamento da série Ariane 5, em 4 de junho de
1996, menos de um minuto após o lançamento, o foguete
francês Ariane 501 se autodestruiu. A falha ocorreu devido a uma
anomalia interna de software, que ocorreu durante a execução de
uma conversão de dados de um número de 64 bits em ponto
flutuante para um inteiro de 16 bits com sinal. O valor do número
em ponto flutuante era maior do que poderia ser representado
pelo inteiro de 16 bits com sinal. O resultado foi um operando
inválido, que acabou gerando a falha.
4
Alguns dos problemas e atrasos no lançamento do maior avião do
mundo, o Airbus A380, foram as incompatibilidades das diferentes
versões usadas do software de projeto e desenho mecânicos
CATIA. Enquanto os sócios franceses utilizavam a última versão,
a fábrica alemã não tinha ainda atualizado a mesma.
5
Em 1998, um erro na navegação da nave espacial Mars Polar
Lander fez com que ela voasse muito baixo e se espatifasse
contra o solo. A falha foi devido a uma empresa terceirizada que
confundiu o sistema de medidas americano e europeu.
6
Uma falha na atualização do software empregado no Ministério do
Trabalho e Pensões britânico, realizada pela empresa
EDS, custou aos contribuintes mais de 1 bilhão de libras em 2004.
7
O efeito do famoso bug do milênio e os bilhões gastos para evitar
o temido desastre que felizmente não sucedeu.
8
Explosão de um laptop da Dell em uma feira de negócios no
Japão em 2006, diante da imprensa e da câmeras, registrando ao
vivo, os relatos de consumidores da marca sobre acidentes do
mesmo tipo ocorridos anteriormente.
9
Um novo sistema de informática da poderosa Siemens para
controlar a emissão de passaportes implantado em 1999 sem
testes suficientes e sem pessoal qualificado para seu
manejo, amargurou as férias de meio milhão de britânicos.
10
Em 2007, uma simples placa de rede defeituosa não permitiu que
parte dos 17.000 aviões do aeroporto de Los Angeles levantasse
vôo.
“Rigorosos testes em sistemas e documentações podem reduzir os
riscos de ocorrência de problemas no ambiente operacional, e
contribui para a qualidade dos sistemas de software se os defeitos
encontrados forem corrigidos antes de implantados em produção.”
(Syllabus BSTQB, 2007)

Os dez maiores desastres envolvendo
TI, poderiam ter sido evitados com o teste
de software.
Presente
− Testador reporta um erro após passar horas coletando
evidências de um problema.
− Desenvolvedor diz que não tem informações suficientes.
− Testador refaz os testes coletando mais evidências.
− Desenvolvedor diz que não consegue reproduzir o erro
em sua máquina.
Futuro
• Aplicações em ambientes complexos e distribuídos
• Software + Serviços
• Tecnologia Multi-Touch, Tables, Smarphones, etc.
Preço da qualidade?
Índices de sucesso em projetos
Taxa de falha aceitável?

− Baseado em tempo, orçamento e funcionalidades especificadas
entregues, 68% dos projetos nunca foram colocados em produção ou foram
cancelados.

Extreme Chaos, The Standish Group International, Inc. – 2009
Acima do Custo estimado: 45%

Acima do Prazo esperado: 63%
Funcionalidades entregues: 67%
Impacto no desenvolvimento
Desenvolvedores sentem-se desmotivados
• Bug ping/pong
• Falta de acesso a ambientes seguros
• Tempo para preparação do ambiente excessivo
Testadores não são respeitados
• Preparar testes e ambiente consomem 30%-50% do ciclo de testes
• Maioria dos defeitos fechados como “não-reproduzíveis””
• Ferramentas não integradas ao ciclo de desenvolvimento
Impacto no negócio
• Falta de agilidade para responder ameaças ou oportunidades
• Alta taxa de falha em projetos
• Quem sente “dor” é o usuário final
Bugs existem?
O que dizer sobre P.O.G?
• “A culpa é do Hardware!”
desenvolvedor de software sobre POG
• “A culpa é do Software!“
técnico de manutenção de hardware sobre POG
• “A culpa é da rede!”
vendedor de PC
POG é inadmissível!
• Por isso temos que estudar!
O que fazer?
• Padronizar
• Arquitetar
• Testar
• Ter atitude
• Capacitar
• Organizar
• Integrar
• Fazer manutenção
• Entregar rapidamente
Solução? ALM!
• ALM (Application Lifecycle Management, Gerenciamento do Ciclo
de Vida de Aplicações):
• É a coordenação das atividades do ciclo de vida de
desenvolvimento, incluindo requisitos, modelagem, desenvolvimento,
construção, testes,
manutenção e
operações
Desenvolvedor

Designer

Profissional de Banco
de Dados

Arquiteto
Testador
Gerente de TI ou
de Projetos

Analistas de Negócios

Relatório em Tempo Real






Defeitos – Bug Tracking
Controle de Tarefas
Requisitos de Negócios
Controle de Versão
Avançado

 Metodologia & Processo de
Desenvolvimento
 Automação de Compilação
(build)
 Testes Web
 Teste de Carga
 Testes Unitários

 Análise de Código
 Documentação
de Projeto
 Ferramentas de Arquitetura
 Ferramentas para Banco de
Dados
Por que testar?

Teste de Software
Conceitos Básicos

Teste de Software
Testes - Conceitos
Testes - Conceitos
• Caso de Teste
• Procedimento de Teste
• Critério de Teste
Segmentação dos testes
Generalista
Testes manuais

Especialista
Algumas scripts

Scripts

Scripts para setup
do lab, massa
dados

Alguma
experiência em
código

70% dos testes
ocorrem aqui

Codificação

Testes
Maioria das
automatizado
ferramentas de testes
foca aqui

Grande experiência
em código

Caixa Preta
Caixa Branca

Testes API
Visual Studio 2012
Generalista
Testes manuais

Especialista
Algumas scripts

Scripts

Codificação

Grande experiência em
código

Scripts para setup do
lab, massa dados

Alguma experiência em
código

Testes automatizado

Load Test
Web Test
Coded UI Test
Unit Testing

Microsoft Test Runner

Gerenciamento de casos de teste
Gerenciamento de laboratórios
Coletores de dados (IntelliTrace™, Impacto de testes, Metricas…)
Team Foundation Server

Relatórios
Ciclo de Vida dos Testes
Cenário

Automação

Planejamento

Validação

Especificação

Execução
Analista de Qualidade
• Gestão/Planejamento de Testes
• Testes manuais
• Testes Unitários
• Testes Funcionais de UI
• WinForms, WPF, IE
• Testes de Desempenho
• Web sites
• Carga / estresse
Testes Funcionais

www.actiongroup.com.br
Testes de Carga e Desempenho

Com usuários
virtuais ilimitados!
Execução e Automação
• Ferramenta independente
• Permite a execução de casos de
teste
• Coleta dados de sistema e logs de
eventos
• Captura imagens de tela e vídeos
• Automatiza testes de aplicativos
Windows Forms, WPF e Web
Derrubando as barreiras
• Bugs ricos
• Passos reproduzidos
automaticamente
• Vídeos como evidência
• Informações de sistema
• IntelliTrace™
• Imagens do ambiente de
testes completo
Gestão Laboratórios Integrado
• Rapidamente restaura/derruba
um ambiente
• Bugs podem guardar imagem
do ambiente
• Integração com processo de
build
Science to Business
Copyright – Direitos autorais
Copyright © 2011-2013 Konia Tecnologia. Este documento é inédito e a advertência precedente é fixada para proteger Konia Tecnologia. no caso de
publicação não autorizada. Todos os direitos reservados. Nenhuma parte deste documento pode ser reproduzida em qualquer forma, inclusive fotocópia
ou transmissão eletrônica para qualquer computador, sem autorização prévia por escrito de Konia Tecnologia. As informações contidas neste
documento são confidenciais e propriedade da Konia Tecnologia. e não podem ser usadas ou reveladas exceto quando expressamente autorizado por
escrito por Konia Tecnologia.

Weitere ähnliche Inhalte

Was ist angesagt?

Automacao de testes mitos e verdades
Automacao de testes mitos e verdadesAutomacao de testes mitos e verdades
Automacao de testes mitos e verdades
Cristiano Caetano
 
Testes de Software & Ferramentas de Testes
Testes de Software & Ferramentas de TestesTestes de Software & Ferramentas de Testes
Testes de Software & Ferramentas de Testes
Paulo César M Jeveaux
 
Automação de Testes de Aceitação em Sistemas Web
Automação de Testes de Aceitação em Sistemas WebAutomação de Testes de Aceitação em Sistemas Web
Automação de Testes de Aceitação em Sistemas Web
Rodrigo Veiga
 

Was ist angesagt? (20)

Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
 
Medindo a performance de aplicações web com JMeter
Medindo a performance de aplicações web com JMeterMedindo a performance de aplicações web com JMeter
Medindo a performance de aplicações web com JMeter
 
Trabalho qualidade de software sistemas de informação
Trabalho qualidade de software   sistemas de informaçãoTrabalho qualidade de software   sistemas de informação
Trabalho qualidade de software sistemas de informação
 
Automacao de testes mitos e verdades
Automacao de testes mitos e verdadesAutomacao de testes mitos e verdades
Automacao de testes mitos e verdades
 
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo CristalliDesenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
 
Integração Contínua
Integração ContínuaIntegração Contínua
Integração Contínua
 
Fundamentos de Testes de Software - Qualidad
Fundamentos de Testes de Software - QualidadFundamentos de Testes de Software - Qualidad
Fundamentos de Testes de Software - Qualidad
 
Palestra - Usabilidade - A Experiência do Usuário no Aplicativo do Censo
Palestra - Usabilidade - A Experiência do Usuário no Aplicativo do CensoPalestra - Usabilidade - A Experiência do Usuário no Aplicativo do Censo
Palestra - Usabilidade - A Experiência do Usuário no Aplicativo do Censo
 
Palestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreiraPalestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreira
 
Testes em aplicativos móveis
Testes em aplicativos móveisTestes em aplicativos móveis
Testes em aplicativos móveis
 
TESTE DE SOFTWARE PARA MOBILE (S40 & WP)
TESTE DE SOFTWARE PARA MOBILE (S40 & WP)TESTE DE SOFTWARE PARA MOBILE (S40 & WP)
TESTE DE SOFTWARE PARA MOBILE (S40 & WP)
 
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...
 
Microsoft - Application Lifecycle Management - Visão Geral
Microsoft - Application Lifecycle Management - Visão GeralMicrosoft - Application Lifecycle Management - Visão Geral
Microsoft - Application Lifecycle Management - Visão Geral
 
Uma Sprint na Vida do Tester
Uma Sprint na Vida do TesterUma Sprint na Vida do Tester
Uma Sprint na Vida do Tester
 
Testes de Software & Ferramentas de Testes
Testes de Software & Ferramentas de TestesTestes de Software & Ferramentas de Testes
Testes de Software & Ferramentas de Testes
 
Ágil na Prática
Ágil na PráticaÁgil na Prática
Ágil na Prática
 
Application Insights - Monitore a sua aplicação em tempo real
Application Insights - Monitore a sua aplicação em tempo realApplication Insights - Monitore a sua aplicação em tempo real
Application Insights - Monitore a sua aplicação em tempo real
 
Automação de Testes de Aceitação em Sistemas Web
Automação de Testes de Aceitação em Sistemas WebAutomação de Testes de Aceitação em Sistemas Web
Automação de Testes de Aceitação em Sistemas Web
 
[UNIP2015] Testando a Performance de Aplicações Web com JMeter
[UNIP2015] Testando a Performance de Aplicações Web com JMeter[UNIP2015] Testando a Performance de Aplicações Web com JMeter
[UNIP2015] Testando a Performance de Aplicações Web com JMeter
 
Sbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para ScrumSbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para Scrum
 

Ähnlich wie Qualidade - Porque testar seu software?

Testes de software(feed_back)
Testes de software(feed_back)Testes de software(feed_back)
Testes de software(feed_back)
Ramon Tanoeiro
 

Ähnlich wie Qualidade - Porque testar seu software? (20)

Contr avali engenharia de software-introdução
Contr avali   engenharia de software-introduçãoContr avali   engenharia de software-introdução
Contr avali engenharia de software-introdução
 
Qualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projetoQualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projeto
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Teste de software
Teste de software Teste de software
Teste de software
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidade
 
Dba Testes Gerentes B2
Dba Testes Gerentes B2Dba Testes Gerentes B2
Dba Testes Gerentes B2
 
Testes de software(feed_back)
Testes de software(feed_back)Testes de software(feed_back)
Testes de software(feed_back)
 
1 engenharia de software
1   engenharia de software1   engenharia de software
1 engenharia de software
 
Teste de Performance - 3º Encontro da ALATS
Teste de Performance - 3º Encontro da ALATSTeste de Performance - 3º Encontro da ALATS
Teste de Performance - 3º Encontro da ALATS
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016
 
Qualidade de Software com Visual Studio 2012
Qualidade de Software com Visual Studio 2012Qualidade de Software com Visual Studio 2012
Qualidade de Software com Visual Studio 2012
 
Engenharia de software
Engenharia de software Engenharia de software
Engenharia de software
 
Sonarqube
SonarqubeSonarqube
Sonarqube
 
SonarQube
SonarQubeSonarQube
SonarQube
 
Reusabilidade na Utilização de Frameworks Automatizados
Reusabilidade na Utilização de Frameworks Automatizados Reusabilidade na Utilização de Frameworks Automatizados
Reusabilidade na Utilização de Frameworks Automatizados
 
engenharia de software e web, modelo john december
engenharia de software e web, modelo john decemberengenharia de software e web, modelo john december
engenharia de software e web, modelo john december
 
TesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdfTesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdf
 
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes AutomatizadosScrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
 
DevOps e App Insights
DevOps e App InsightsDevOps e App Insights
DevOps e App Insights
 

Mehr von Adriano Bertucci

Mehr von Adriano Bertucci (10)

Criando indicadores de time com VSTS e POWER BI
Criando indicadores de time com VSTS e POWER BICriando indicadores de time com VSTS e POWER BI
Criando indicadores de time com VSTS e POWER BI
 
DevOps... O caminho! - Monitoramento de aplicações com App Insights
DevOps... O caminho! - Monitoramento de aplicações com App InsightsDevOps... O caminho! - Monitoramento de aplicações com App Insights
DevOps... O caminho! - Monitoramento de aplicações com App Insights
 
Métodos Ágeis
Métodos ÁgeisMétodos Ágeis
Métodos Ágeis
 
Trabalhando com ALM na nuvem
Trabalhando com ALM na nuvemTrabalhando com ALM na nuvem
Trabalhando com ALM na nuvem
 
Server Plugins - Team Foundation Server
Server Plugins - Team Foundation ServerServer Plugins - Team Foundation Server
Server Plugins - Team Foundation Server
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = Produtividade
 
Métodos Ágeis - Aula 01
Métodos Ágeis - Aula 01Métodos Ágeis - Aula 01
Métodos Ágeis - Aula 01
 
Métodos Ágeis - Aula02
Métodos Ágeis - Aula02Métodos Ágeis - Aula02
Métodos Ágeis - Aula02
 
Novidades do Visual Studio 2013
Novidades do Visual Studio 2013Novidades do Visual Studio 2013
Novidades do Visual Studio 2013
 
DevOps
DevOpsDevOps
DevOps
 

Qualidade - Porque testar seu software?

  • 1. Qualidade Por que testar seu software? Adriano Bertucci Microsoft Visual Studio ALM MVP adriano.bertucci@konia.com.br Twitter: @adrianobertucci Charles Santana Consultor ALM e EPM Charles.santana@konia.com.br Twitter: @charlessantana0
  • 2. Quem sou eu? • Sócio/Diretor Konia Tecnologia; • Microsoft Visual Studio ALM MVP; • Palestrante Microsoft; • Adora jogar FIFA no XBOX; • Torcedor do SC Corinthians Paulista!  adriano.bertucci@konia.com.br Twitter: @adrianobertucci
  • 3. Qualidade uma necessidade Considerando que desenvolvimento de software representa 25% dos gastos em software, identificar a causa dos problemas e falhas nos projetos de desenvolvimento se torna uma necessidade.
  • 4. Qualidade uma necessidade − O sucesso de um projeto de software pode ser definido por um triângulo: Tempo (Prazo) Orçamento (Custo) Funcionalidades − Funcionalidade Qualidade Nos acostumamos em aceitar 2 dos 3 Consideramos isso sucesso? − Atualmente o triângulo se transformou em um quadrado; Qualidade é a quarta dimensão Prazo Orçamento
  • 5. Caminho para o sucesso... Ideia Solução
  • 7. 1 Em 1983, uma III Guerra Mundial, quase teve início, devido a um bug no software de alerta Soviético. A falha fez com que o software mostrasse que os E.U.A. tinha lançado cinco mísseis. A nosso sorte, foi que o Tenente Coronel Stanislav Petrov, considerou que a informação estava errada e não ordenou o contra-ataque, evitando assim o inicio da III Grande Guerra.
  • 8. 2 Em 1990, um bug numa central telefônica da AT&T deixou milhões de pessoas nos EUA sem comunicação de longa distância. O erro ocorreu num break do código C, que não foi testado corretamente. “IF YOU CANNOT TEST IT, DO NOT DO IT.”
  • 9. 3 No primeiro lançamento da série Ariane 5, em 4 de junho de 1996, menos de um minuto após o lançamento, o foguete francês Ariane 501 se autodestruiu. A falha ocorreu devido a uma anomalia interna de software, que ocorreu durante a execução de uma conversão de dados de um número de 64 bits em ponto flutuante para um inteiro de 16 bits com sinal. O valor do número em ponto flutuante era maior do que poderia ser representado pelo inteiro de 16 bits com sinal. O resultado foi um operando inválido, que acabou gerando a falha.
  • 10. 4 Alguns dos problemas e atrasos no lançamento do maior avião do mundo, o Airbus A380, foram as incompatibilidades das diferentes versões usadas do software de projeto e desenho mecânicos CATIA. Enquanto os sócios franceses utilizavam a última versão, a fábrica alemã não tinha ainda atualizado a mesma.
  • 11. 5 Em 1998, um erro na navegação da nave espacial Mars Polar Lander fez com que ela voasse muito baixo e se espatifasse contra o solo. A falha foi devido a uma empresa terceirizada que confundiu o sistema de medidas americano e europeu.
  • 12. 6 Uma falha na atualização do software empregado no Ministério do Trabalho e Pensões britânico, realizada pela empresa EDS, custou aos contribuintes mais de 1 bilhão de libras em 2004.
  • 13. 7 O efeito do famoso bug do milênio e os bilhões gastos para evitar o temido desastre que felizmente não sucedeu.
  • 14. 8 Explosão de um laptop da Dell em uma feira de negócios no Japão em 2006, diante da imprensa e da câmeras, registrando ao vivo, os relatos de consumidores da marca sobre acidentes do mesmo tipo ocorridos anteriormente.
  • 15. 9 Um novo sistema de informática da poderosa Siemens para controlar a emissão de passaportes implantado em 1999 sem testes suficientes e sem pessoal qualificado para seu manejo, amargurou as férias de meio milhão de britânicos.
  • 16. 10 Em 2007, uma simples placa de rede defeituosa não permitiu que parte dos 17.000 aviões do aeroporto de Los Angeles levantasse vôo.
  • 17. “Rigorosos testes em sistemas e documentações podem reduzir os riscos de ocorrência de problemas no ambiente operacional, e contribui para a qualidade dos sistemas de software se os defeitos encontrados forem corrigidos antes de implantados em produção.” (Syllabus BSTQB, 2007) Os dez maiores desastres envolvendo TI, poderiam ter sido evitados com o teste de software.
  • 18. Presente − Testador reporta um erro após passar horas coletando evidências de um problema. − Desenvolvedor diz que não tem informações suficientes. − Testador refaz os testes coletando mais evidências. − Desenvolvedor diz que não consegue reproduzir o erro em sua máquina.
  • 19. Futuro • Aplicações em ambientes complexos e distribuídos • Software + Serviços • Tecnologia Multi-Touch, Tables, Smarphones, etc.
  • 21. Índices de sucesso em projetos Taxa de falha aceitável? − Baseado em tempo, orçamento e funcionalidades especificadas entregues, 68% dos projetos nunca foram colocados em produção ou foram cancelados. Extreme Chaos, The Standish Group International, Inc. – 2009 Acima do Custo estimado: 45% Acima do Prazo esperado: 63% Funcionalidades entregues: 67%
  • 22. Impacto no desenvolvimento Desenvolvedores sentem-se desmotivados • Bug ping/pong • Falta de acesso a ambientes seguros • Tempo para preparação do ambiente excessivo Testadores não são respeitados • Preparar testes e ambiente consomem 30%-50% do ciclo de testes • Maioria dos defeitos fechados como “não-reproduzíveis”” • Ferramentas não integradas ao ciclo de desenvolvimento Impacto no negócio • Falta de agilidade para responder ameaças ou oportunidades • Alta taxa de falha em projetos • Quem sente “dor” é o usuário final
  • 24. O que dizer sobre P.O.G? • “A culpa é do Hardware!” desenvolvedor de software sobre POG • “A culpa é do Software!“ técnico de manutenção de hardware sobre POG • “A culpa é da rede!” vendedor de PC
  • 25. POG é inadmissível! • Por isso temos que estudar!
  • 26. O que fazer? • Padronizar • Arquitetar • Testar • Ter atitude • Capacitar • Organizar • Integrar • Fazer manutenção • Entregar rapidamente
  • 27. Solução? ALM! • ALM (Application Lifecycle Management, Gerenciamento do Ciclo de Vida de Aplicações): • É a coordenação das atividades do ciclo de vida de desenvolvimento, incluindo requisitos, modelagem, desenvolvimento, construção, testes, manutenção e operações
  • 28. Desenvolvedor Designer Profissional de Banco de Dados Arquiteto Testador Gerente de TI ou de Projetos Analistas de Negócios Relatório em Tempo Real     Defeitos – Bug Tracking Controle de Tarefas Requisitos de Negócios Controle de Versão Avançado  Metodologia & Processo de Desenvolvimento  Automação de Compilação (build)  Testes Web  Teste de Carga  Testes Unitários  Análise de Código  Documentação de Projeto  Ferramentas de Arquitetura  Ferramentas para Banco de Dados
  • 29.
  • 30. Por que testar? Teste de Software
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 47. Testes - Conceitos • Caso de Teste • Procedimento de Teste • Critério de Teste
  • 48. Segmentação dos testes Generalista Testes manuais Especialista Algumas scripts Scripts Scripts para setup do lab, massa dados Alguma experiência em código 70% dos testes ocorrem aqui Codificação Testes Maioria das automatizado ferramentas de testes foca aqui Grande experiência em código Caixa Preta Caixa Branca Testes API
  • 49. Visual Studio 2012 Generalista Testes manuais Especialista Algumas scripts Scripts Codificação Grande experiência em código Scripts para setup do lab, massa dados Alguma experiência em código Testes automatizado Load Test Web Test Coded UI Test Unit Testing Microsoft Test Runner Gerenciamento de casos de teste Gerenciamento de laboratórios Coletores de dados (IntelliTrace™, Impacto de testes, Metricas…) Team Foundation Server Relatórios
  • 50. Ciclo de Vida dos Testes Cenário Automação Planejamento Validação Especificação Execução
  • 51. Analista de Qualidade • Gestão/Planejamento de Testes • Testes manuais • Testes Unitários • Testes Funcionais de UI • WinForms, WPF, IE • Testes de Desempenho • Web sites • Carga / estresse
  • 53. Testes de Carga e Desempenho Com usuários virtuais ilimitados!
  • 54. Execução e Automação • Ferramenta independente • Permite a execução de casos de teste • Coleta dados de sistema e logs de eventos • Captura imagens de tela e vídeos • Automatiza testes de aplicativos Windows Forms, WPF e Web
  • 55. Derrubando as barreiras • Bugs ricos • Passos reproduzidos automaticamente • Vídeos como evidência • Informações de sistema • IntelliTrace™ • Imagens do ambiente de testes completo
  • 56. Gestão Laboratórios Integrado • Rapidamente restaura/derruba um ambiente • Bugs podem guardar imagem do ambiente • Integração com processo de build
  • 57.
  • 58. Science to Business Copyright – Direitos autorais Copyright © 2011-2013 Konia Tecnologia. Este documento é inédito e a advertência precedente é fixada para proteger Konia Tecnologia. no caso de publicação não autorizada. Todos os direitos reservados. Nenhuma parte deste documento pode ser reproduzida em qualquer forma, inclusive fotocópia ou transmissão eletrônica para qualquer computador, sem autorização prévia por escrito de Konia Tecnologia. As informações contidas neste documento são confidenciais e propriedade da Konia Tecnologia. e não podem ser usadas ou reveladas exceto quando expressamente autorizado por escrito por Konia Tecnologia.

Hinweis der Redaktion

  1. Caso de Teste: descreveumacondição particular a sertestadae é compost porvalores de entrada, restrições para suaexecução e um resultadooucomportamentoesperadoProcedimento de Teste: é a descrição dos passosnecessários para executar um ouvárioscasos;Critério de Teste: serve para selecionar e avaliarcasos de teste de forma a aumentar as possibilidades de provocarfalhasou, quandoissonãoocorre, estabelecer um nivel de confiançanacorreção; Ex: Cobertura dos Testes
  2. We have release a significant set of capabilities in the 2010 release around testing and more specifically around integration of testing and development. Testers don’t often like to spend time in Visual Studio, so we build a rich WPF application ground up for the testers and non-technical users so they can use it easily and not have to interact with development tools. However the ALM integration ensures that developers benefit from the work the testers are doing while working in their IDE.All of the capabilities are based on Team Foundation Server which provides the single unified view of a teams effort across a software project. We have introduced several data collectors that provide key insights that developers often need to resolve bugs. These include the IntelliTrace data collector which provides developers the ability to move back in time to find out how a bug was encountered. Notably present is also the Test Impact collector which provides testers visibility into what new test cases need to be tested when code is changed by the developers. Lab Management is a set of integrated capabilities that can be used across the developer and testers that eliminates wasted cycles in setting up & tearing down machines, proving access to environment snapshots so developers can connect to test environments to debug issues and more. Test case management allows teams to better manage their testing effort, get traceability across requirements and also help teams adapt testing efforts to agile, water fall or other processes. Coded UI is a new test type that allows specialist testers to do UI automation and integrate that into the TFS build workflow.Web & Load Testing continue to be improved from our previous releases and provide teams that ability to do performance, load and stress testing and makes these tools more affordable so more people in the team can do such testing. Microsoft Test Runner allows generalist testers to execute their planned or exploratory tests and allows them log rich bugs with rich data that developers need. Lets take a quick peek at specific capabilities that help break the walls between dev & test and how lab management integration into ALM eliminates waste across build hand off
  3. Breaking Silo’s is possible because a the Rich Bug which includes information that is very valuable to a developers but at the same time is captured and attached to a bug with little to no effort on the testers part. Capturing information such as test steps, IntelliTrace and environment snap shot allows developers and testers to help eliminate the “no repro” situation.
  4. Integrated lab management democratizes virtualization into the application lifecycle by allowing quick set up and tear down of complex multi machine environments allowing developers and testers to test in production like environments. Integrated snap shot on bug empowers the testers to auto attach a link to the environment they are testing on allowing developers to easily recreate problems. Integration to the build work flow and extending the build activities allows teams to automate their builds such that they 1) Build their application, 2) Create or restore their environment to a clean known state 3) deploy the bits on clean state environment 4) execute automated unit and automation tests such that the entire build work flow is automated eliminating a lot of wasted cycles for teams while waiting for a build and understanding the quality of the build.