Qualidade de software com Visual Studio ALM

Adriano Bertucci
Adriano BertucciSócio/Diretor at Konia Tecnologia em Konia Tecnologia
Visual Studio ALM

Qualidade de Software



  Adriano Bertucci               @adrianobertucci   adriano@bertucci.com.br
  Especialista em Soluções ALM
  Microsoft MVP Visual C#        adriano.bertucci   http://www.adrianobertucci.com
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)
                                      Funcionalidade        Qualidade
     Orçamento (Custo)
     Funcionalidades
−   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

−   Ainda consideraremos 2 das 4 dimensões?
Caminho para o sucesso...
Ideia




                            Solução
Como chegamos até aqui?
Passado

  1962 – Acidente com Veers, $18.5M




1978 – Colapso do Hartford Coliseum, $90M
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.
Presente
           Ei, voce informou
                                 Claro! Na minha
           “Não consigo
                                 máquina funciona!
           reproduzir” no
           defeito que enviei!




Testador                                    Desenvolvedor
Presente
                                 Não, porque você
                                 está usando. Pare
            Você tentou          os seus testes que
            reproduzir no meu    eu verifico.
            ambiente de teste?




 Testador                                    Desenvolvedor
Presente
       Certo, vou parar meus    Ainda não consegui
       testes e aí você         reproduzir! Suas
       assume, olha os logs e   informações não
       refaz os passos.         estão claras.




Testador                                     Desenvolvedor
Presente




 Testador   Desenvolvedor
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%
Problemas
− “Visibilidade do andamento do projeto”
− “Não existe comunicação na equipe”
− “Difícil conciliar necessidade do usuário com
  riscos”
− “Modelos de desenvolvimento complexo”
− “Soluções não são testadas”
Causas
“testadores gastam                                   “um requisito mudou,
muito tempo                                          quais testes precisam ser
testando a mesma                                     feitos?”
coisa”                    “desenvolvedores e
                          testadores não falam a
                          mesma língua e trabalham
                          em silos”
“ferramentas são                                      “desenvolvedores dizem
caras (tempo, licenças,                               que os defeitos não
pessoas)”                                             servem para nada”
                             “quando o
                             software estará
                             pronto?”
O que fazer?
−   Padronizar
−   Arquitetar
−   Testar
−   Ter atitude
−   Capacitar
−   Organizar
−   Integrar
−   Fazer manutenção
−   Entregar rapidamente
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

                            Retirado do http://desciclo.pedia.ws
Desenvolvemos a um bom tempo
POG é inadimisível!
  − Por isso temos que estudar!
Desafios comuns para qualidade
Testador   Desenvolvedor
Impacto
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
Visual Studio 2010
Segmentação dos testes
Generalista                                                              Especialista
Testes manuais   Algumas scripts      Scripts          Codificação    Grande
                                                                      experiência em
                 Scripts para setup   AlgumaMaioria das
                                                  Testes              código
      70% dos testes
                 do lab, massa        experiência em
                                                  automatizado
                 dados                 ferramentas de testes
                                      código
       ocorrem aqui
                                             foca aqui
                                      Caixa Preta
                                                          Caixa Branca
                                                                     Testes API
Visual Studio 2010
  Generalista                                                                                            Especialista
  Testes manuais          Algumas scripts           Scripts              Codificação            Grande experiência
                                                                                                em código
                          Scripts para setup do     Alguma experiência   Testes automatizado
                          lab, massa dados          em código


                                                                                       Load Test
                                                                                       Web Test
  Microsoft Test Runner                                                                  Coded UI Test
                                                                                          Unit Testing
                                    Gerenciamento de casos de teste
                                     Gerenciamento de laboratórios
                     Coletores de dados (IntelliTrace™, Impacto de testes, Metricas…)
                                                  Team Foundation Server                          Relatórios
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
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
Testes de Carga e Desempenho



                          Com usuários
                       virtuais ilimitados!
Gestão Laboratórios Integrado
                 − Rapidamente
                   restaura/derruba um
                   ambiente
                 − Bugs podem guardar imagem
                   do ambiente
                 − Integração com processo de
                   build
Qualidade de software com Visual Studio ALM
O que buscamos?

− Qualidade
− Evolução
− Chega de apagar incêndios
Perguntas do dia a dia…
O que tem que ser feito?
 Sistemas novos
 − UML
   −   Component Diagram
   −   Class Diagram
   −   Sequence Diagram
   −   Activity Diagram
   −   Use Case Diagram
Mas como fazer?
 Sistemas existentes
 − Entendo sistemas existentes
    − Código pode ser de difícil manutenção.
    − Identificação via DEBUG

 − Qual o fluxo atual do sistema?
 − Quais são suas dependências?
Dependency Graph
Sequence Diagram
Estamos fazendo certo?
 Garantindo qualidade
 − Comunicação e Integridade
   − Informar ao time qual modelo seguir.
   − O mais importante garanta que eles estão
     seguindo.
Layer Diagram
Qualidade de software com Visual Studio ALM
Adriano Bertucci
         Especialista em Soluções ALM
           Microsoft MVP Visual C#



@adrianobertucci       adriano@bertucci.com.br

adriano.bertucci       http://www.adrianobertucci.com
1 de 44

Recomendados

BaixadaTech 2012 - Qualidade de Software por
BaixadaTech 2012 - Qualidade de SoftwareBaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de SoftwareAdriano Bertucci
1.8K visualizações32 slides
Automação de Teste - BRATESTE 2010 por
Automação de Teste - BRATESTE 2010Automação de Teste - BRATESTE 2010
Automação de Teste - BRATESTE 2010Elias Nogueira
3.3K visualizações35 slides
IBM Rational Piores Práticas em Testes por
IBM Rational Piores Práticas em TestesIBM Rational Piores Práticas em Testes
IBM Rational Piores Práticas em TestesFelipe Freire
2.6K visualizações22 slides
Menos teste e mais qualidade - como equilibrar essa equação? por
Menos teste e mais qualidade - como equilibrar essa equação?Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Igor Abade
723 visualizações37 slides
Pensando TDD por
Pensando TDDPensando TDD
Pensando TDDLuiz Ricardo Silva
1.2K visualizações57 slides
Implementando Implementando eXtreme treme Programming rogramming em em Java Java por
Implementando Implementando eXtreme treme Programming rogramming em em Java JavaImplementando Implementando eXtreme treme Programming rogramming em em Java Java
Implementando Implementando eXtreme treme Programming rogramming em em Java Javaelliando dias
739 visualizações87 slides

Mais conteúdo relacionado

Mais procurados

Automação no Processo de Teste por
Automação no Processo de TesteAutomação no Processo de Teste
Automação no Processo de TesteElias Nogueira
1.3K visualizações44 slides
Teste de Software por
Teste de SoftwareTeste de Software
Teste de SoftwareSérgio Souza Costa
5.3K visualizações107 slides
Automacao de testes mitos e verdades por
Automacao de testes mitos e verdadesAutomacao de testes mitos e verdades
Automacao de testes mitos e verdadesCristiano Caetano
755 visualizações42 slides
Introdução a TDD por
Introdução a TDDIntrodução a TDD
Introdução a TDDDaniel Sobral
757 visualizações26 slides
UnP Eng. Software - Aula 27 por
UnP Eng. Software - Aula 27UnP Eng. Software - Aula 27
UnP Eng. Software - Aula 27Hélio Medeiros
325 visualizações30 slides
Desmistificando agile testing tdc 2011 por
Desmistificando agile testing tdc 2011Desmistificando agile testing tdc 2011
Desmistificando agile testing tdc 2011tatiane_fukuda
1.7K visualizações46 slides

Mais procurados(20)

Automação no Processo de Teste por Elias Nogueira
Automação no Processo de TesteAutomação no Processo de Teste
Automação no Processo de Teste
Elias Nogueira1.3K visualizações
Teste de Software por Sérgio Souza Costa
Teste de SoftwareTeste de Software
Teste de Software
Sérgio Souza Costa5.3K visualizações
Automacao de testes mitos e verdades por Cristiano Caetano
Automacao de testes mitos e verdadesAutomacao de testes mitos e verdades
Automacao de testes mitos e verdades
Cristiano Caetano755 visualizações
Introdução a TDD por Daniel Sobral
Introdução a TDDIntrodução a TDD
Introdução a TDD
Daniel Sobral757 visualizações
UnP Eng. Software - Aula 27 por Hélio Medeiros
UnP Eng. Software - Aula 27UnP Eng. Software - Aula 27
UnP Eng. Software - Aula 27
Hélio Medeiros325 visualizações
Desmistificando agile testing tdc 2011 por tatiane_fukuda
Desmistificando agile testing tdc 2011Desmistificando agile testing tdc 2011
Desmistificando agile testing tdc 2011
tatiane_fukuda1.7K visualizações
Ctai Teste De Software Aula 2 por Victor Hugo Germano
Ctai Teste De Software Aula 2Ctai Teste De Software Aula 2
Ctai Teste De Software Aula 2
Victor Hugo Germano17.4K visualizações
Qualidade de Software com Microsoft Visual Studio por Adriano Bertucci
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual Studio
Adriano Bertucci2.9K visualizações
Introdução a Testes de Software - Unidade I por João Lourenço
Introdução a Testes de Software - Unidade IIntrodução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade I
João Lourenço6.1K visualizações
Testes de Software & Ferramentas de Testes por Paulo César M Jeveaux
Testes de Software & Ferramentas de TestesTestes de Software & Ferramentas de Testes
Testes de Software & Ferramentas de Testes
Paulo César M Jeveaux17.2K visualizações
Minicurso - Teste de software (CACSI 2015) por Vanilton Pinheiro
Minicurso - Teste de software (CACSI 2015)Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)
Vanilton Pinheiro2.3K visualizações
Palestra Teste de Software: princípios, ferramentas e carreira por Taís Dall'Oca
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
Taís Dall'Oca2.2K visualizações
Gerenciando Testes Com Qualidade V2a por Leonardo Molinari
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
Leonardo Molinari404 visualizações
Introdução a Automação de Teste de Software por Camilo Ribeiro
Introdução a Automação de Teste de SoftwareIntrodução a Automação de Teste de Software
Introdução a Automação de Teste de Software
Camilo Ribeiro6.8K visualizações
Qualidade - Porque testar seu software? por Adriano Bertucci
Qualidade - Porque testar seu software?Qualidade - Porque testar seu software?
Qualidade - Porque testar seu software?
Adriano Bertucci3.1K visualizações
Desenvolvimento em .Net - Testes Unitários por Vitor Silva
Desenvolvimento em .Net - Testes UnitáriosDesenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes Unitários
Vitor Silva1.4K visualizações
Ctai Teste De Software Aula 1 por Victor Hugo Germano
Ctai Teste De Software Aula 1Ctai Teste De Software Aula 1
Ctai Teste De Software Aula 1
Victor Hugo Germano22.1K visualizações
Automacao testes automatizados por Cristiano Caetano
Automacao testes automatizadosAutomacao testes automatizados
Automacao testes automatizados
Cristiano Caetano1.1K visualizações
ALM - Testes Exploratórios por Alan Carlos
ALM - Testes ExploratóriosALM - Testes Exploratórios
ALM - Testes Exploratórios
Alan Carlos3.8K visualizações

Destaque

Server Plugins - Team Foundation Server por
Server Plugins - Team Foundation ServerServer Plugins - Team Foundation Server
Server Plugins - Team Foundation ServerAdriano Bertucci
904 visualizações14 slides
Métodos Ágeis - Aula 01 por
Métodos Ágeis - Aula 01Métodos Ágeis - Aula 01
Métodos Ágeis - Aula 01Adriano Bertucci
507 visualizações48 slides
DevOps... O caminho! - Monitoramento de aplicações com App Insights por
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 InsightsAdriano Bertucci
1.1K visualizações36 slides
Métodos Ágeis por
Métodos ÁgeisMétodos Ágeis
Métodos ÁgeisAdriano Bertucci
1.1K visualizações79 slides
Iniciando com .NET no Visual studio 2013 por
Iniciando com .NET no Visual studio 2013Iniciando com .NET no Visual studio 2013
Iniciando com .NET no Visual studio 2013Rogério Rodrigues
7.1K visualizações18 slides
Microsoft ALM = Produtividade por
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = ProdutividadeAdriano Bertucci
1.6K visualizações83 slides

Destaque(8)

Server Plugins - Team Foundation Server por Adriano Bertucci
Server Plugins - Team Foundation ServerServer Plugins - Team Foundation Server
Server Plugins - Team Foundation Server
Adriano Bertucci904 visualizações
Métodos Ágeis - Aula 01 por Adriano Bertucci
Métodos Ágeis - Aula 01Métodos Ágeis - Aula 01
Métodos Ágeis - Aula 01
Adriano Bertucci507 visualizações
DevOps... O caminho! - Monitoramento de aplicações com App Insights por Adriano Bertucci
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
Adriano Bertucci1.1K visualizações
Métodos Ágeis por Adriano Bertucci
Métodos ÁgeisMétodos Ágeis
Métodos Ágeis
Adriano Bertucci1.1K visualizações
Iniciando com .NET no Visual studio 2013 por Rogério Rodrigues
Iniciando com .NET no Visual studio 2013Iniciando com .NET no Visual studio 2013
Iniciando com .NET no Visual studio 2013
Rogério Rodrigues7.1K visualizações
Microsoft ALM = Produtividade por Adriano Bertucci
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = Produtividade
Adriano Bertucci1.6K visualizações
Trabalhando com ALM na nuvem por Adriano Bertucci
Trabalhando com ALM na nuvemTrabalhando com ALM na nuvem
Trabalhando com ALM na nuvem
Adriano Bertucci922 visualizações
Criando indicadores de time com VSTS e POWER BI por Adriano Bertucci
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
Adriano Bertucci678 visualizações

Similar a Qualidade de software com Visual Studio ALM

Qualidade de Software com Visual Studio 2012 por
Qualidade de Software com Visual Studio 2012Qualidade de Software com Visual Studio 2012
Qualidade de Software com Visual Studio 2012Adriano Bertucci
2.9K visualizações36 slides
TesteDeSoftware_WorkshopSINFO2014.pdf por
TesteDeSoftware_WorkshopSINFO2014.pdfTesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdfBruno Zolotareff dos Santos
3 visualizações53 slides
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d... por
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...Igor Abade
3.6K visualizações42 slides
Introdução a Testes de Software por
Introdução a Testes de SoftwareIntrodução a Testes de Software
Introdução a Testes de SoftwareIgor Takenami
887 visualizações20 slides
Teste de software por
Teste de softwareTeste de software
Teste de softwareRodrigo Cardoso Alves Fonte
528 visualizações36 slides
Teste de software por
Teste de software Teste de software
Teste de software Allan Almeida de Araújo
121 visualizações36 slides

Similar a Qualidade de software com Visual Studio ALM(20)

Qualidade de Software com Visual Studio 2012 por Adriano Bertucci
Qualidade de Software com Visual Studio 2012Qualidade de Software com Visual Studio 2012
Qualidade de Software com Visual Studio 2012
Adriano Bertucci2.9K visualizações
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d... por Igor Abade
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...
Igor Abade3.6K visualizações
Introdução a Testes de Software por Igor Takenami
Introdução a Testes de SoftwareIntrodução a Testes de Software
Introdução a Testes de Software
Igor Takenami887 visualizações
Quebrando barreiras entre desenvolvimento e operação de software com DevOps por José Alexandre Macedo
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
José Alexandre Macedo1.4K visualizações
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer... por Igor Abade
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...
Igor Abade477 visualizações
Como aumentar a produtividade da sua equipe por Wende Mendes
Como aumentar a produtividade da sua equipeComo aumentar a produtividade da sua equipe
Como aumentar a produtividade da sua equipe
Wende Mendes637 visualizações
SonarQube por CDS
SonarQubeSonarQube
SonarQube
CDS531 visualizações
O que é Teste de Software? por testedesoftwarepe
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
testedesoftwarepe918 visualizações
DevOps - Melhores práticas na plataforma microsoft por Igor Abade
DevOps - Melhores práticas na plataforma microsoftDevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoft
Igor Abade1K visualizações
Desenvolvimento Guiado por Testes por elliando dias
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
elliando dias449 visualizações
Keynote Visual Studio Summit 2016 por Ramon Durães
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016
Ramon Durães624 visualizações
Introdução ao Teste de Software - Uma abordagem prática por Fabrício Campos
Introdução ao Teste de Software - Uma abordagem práticaIntrodução ao Teste de Software - Uma abordagem prática
Introdução ao Teste de Software - Uma abordagem prática
Fabrício Campos30.8K visualizações
Vi ebts implantação de fábrica de teste - desafios, resultados e melhores p... por Welington Monteiro
Vi ebts   implantação de fábrica de teste - desafios, resultados e melhores p...Vi ebts   implantação de fábrica de teste - desafios, resultados e melhores p...
Vi ebts implantação de fábrica de teste - desafios, resultados e melhores p...
Welington Monteiro678 visualizações
Automação de testes para equipes agile por Alini Rebonatto
Automação de testes para equipes agileAutomação de testes para equipes agile
Automação de testes para equipes agile
Alini Rebonatto931 visualizações

Último

TechConnection 2023 Floripa Azure Container Apps por
TechConnection 2023 Floripa Azure Container AppsTechConnection 2023 Floripa Azure Container Apps
TechConnection 2023 Floripa Azure Container AppsWalter Coan
5 visualizações14 slides
Skills e Squads, como trabalhar? por
Skills e Squads, como trabalhar?Skills e Squads, como trabalhar?
Skills e Squads, como trabalhar?Annelise Gripp
28 visualizações13 slides
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023 por
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023MAPA - CONTABILIDADE EMPRESARIAL - 54/2023
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023AcademiaDL
38 visualizações4 slides
Competências para extrair inovação na tecnologia! por
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!Annelise Gripp
15 visualizações11 slides
certificado excel.pdf por
certificado excel.pdfcertificado excel.pdf
certificado excel.pdfjuniorcarvalho136
5 visualizações1 slide
Competências para extrair inovação na tecnologia! por
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!AnneliseGripp1
9 visualizações11 slides

Último(8)

TechConnection 2023 Floripa Azure Container Apps por Walter Coan
TechConnection 2023 Floripa Azure Container AppsTechConnection 2023 Floripa Azure Container Apps
TechConnection 2023 Floripa Azure Container Apps
Walter Coan5 visualizações
Skills e Squads, como trabalhar? por Annelise Gripp
Skills e Squads, como trabalhar?Skills e Squads, como trabalhar?
Skills e Squads, como trabalhar?
Annelise Gripp28 visualizações
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023 por AcademiaDL
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023MAPA - CONTABILIDADE EMPRESARIAL - 54/2023
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023
AcademiaDL38 visualizações
Competências para extrair inovação na tecnologia! por Annelise Gripp
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!
Annelise Gripp15 visualizações
certificado excel.pdf por juniorcarvalho136
certificado excel.pdfcertificado excel.pdf
certificado excel.pdf
juniorcarvalho1365 visualizações
Competências para extrair inovação na tecnologia! por AnneliseGripp1
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!
AnneliseGripp19 visualizações
Shift left DevOps Experience por Walter Coan
Shift left DevOps ExperienceShift left DevOps Experience
Shift left DevOps Experience
Walter Coan5 visualizações
DevFest2023-Pragmatismo da Internet das Coisas por Walter Coan
DevFest2023-Pragmatismo da Internet das CoisasDevFest2023-Pragmatismo da Internet das Coisas
DevFest2023-Pragmatismo da Internet das Coisas
Walter Coan20 visualizações

Qualidade de software com Visual Studio ALM

  • 1. Visual Studio ALM Qualidade de Software Adriano Bertucci @adrianobertucci adriano@bertucci.com.br Especialista em Soluções ALM Microsoft MVP Visual C# adriano.bertucci http://www.adrianobertucci.com
  • 2. 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.
  • 3. Qualidade uma necessidade − O sucesso de um projeto de software pode ser definido por um triângulo: Tempo (Prazo) Funcionalidade Qualidade Orçamento (Custo) Funcionalidades − 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 − Ainda consideraremos 2 das 4 dimensões?
  • 4. Caminho para o sucesso... Ideia Solução
  • 6. Passado 1962 – Acidente com Veers, $18.5M 1978 – Colapso do Hartford Coliseum, $90M
  • 7. 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.
  • 8. Presente Ei, voce informou Claro! Na minha “Não consigo máquina funciona! reproduzir” no defeito que enviei! Testador Desenvolvedor
  • 9. Presente Não, porque você está usando. Pare Você tentou os seus testes que reproduzir no meu eu verifico. ambiente de teste? Testador Desenvolvedor
  • 10. Presente Certo, vou parar meus Ainda não consegui testes e aí você reproduzir! Suas assume, olha os logs e informações não refaz os passos. estão claras. Testador Desenvolvedor
  • 11. Presente Testador Desenvolvedor
  • 12. Futuro − Aplicações em ambientes complexos e distribuídos − Software + Serviços − Tecnologia Multi-Touch, Tables, Smarphones, etc.
  • 14. Í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%
  • 15. Problemas − “Visibilidade do andamento do projeto” − “Não existe comunicação na equipe” − “Difícil conciliar necessidade do usuário com riscos” − “Modelos de desenvolvimento complexo” − “Soluções não são testadas”
  • 16. Causas “testadores gastam “um requisito mudou, muito tempo quais testes precisam ser testando a mesma feitos?” coisa” “desenvolvedores e testadores não falam a mesma língua e trabalham em silos” “ferramentas são “desenvolvedores dizem caras (tempo, licenças, que os defeitos não pessoas)” servem para nada” “quando o software estará pronto?”
  • 17. O que fazer? − Padronizar − Arquitetar − Testar − Ter atitude − Capacitar − Organizar − Integrar − Fazer manutenção − Entregar rapidamente
  • 19. 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 Retirado do http://desciclo.pedia.ws
  • 20. Desenvolvemos a um bom tempo
  • 21. POG é inadimisível! − Por isso temos que estudar!
  • 22. Desafios comuns para qualidade
  • 23. Testador Desenvolvedor
  • 24. Impacto 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
  • 26. Segmentação dos testes Generalista Especialista Testes manuais Algumas scripts Scripts Codificação Grande experiência em Scripts para setup AlgumaMaioria das Testes código 70% dos testes do lab, massa experiência em automatizado dados ferramentas de testes código ocorrem aqui foca aqui Caixa Preta Caixa Branca Testes API
  • 27. Visual Studio 2010 Generalista Especialista Testes manuais Algumas scripts Scripts Codificação Grande experiência em código Scripts para setup do Alguma experiência Testes automatizado lab, massa dados em código Load Test Web Test Microsoft Test Runner Coded UI Test Unit Testing Gerenciamento de casos de teste Gerenciamento de laboratórios Coletores de dados (IntelliTrace™, Impacto de testes, Metricas…) Team Foundation Server Relatórios
  • 28. 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
  • 29. Testes Funcionais www.actiongroup.com.br
  • 30. 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
  • 31. Derrubando as barreiras − Bugs ricos − Passos reproduzidos automaticamente − Vídeos como evidência − Informações de sistema − IntelliTrace™ − Imagens do ambiente de testes completo
  • 32. Testes de Carga e Desempenho Com usuários virtuais ilimitados!
  • 33. Gestão Laboratórios Integrado − Rapidamente restaura/derruba um ambiente − Bugs podem guardar imagem do ambiente − Integração com processo de build
  • 35. O que buscamos? − Qualidade − Evolução − Chega de apagar incêndios
  • 36. Perguntas do dia a dia…
  • 37. O que tem que ser feito? Sistemas novos − UML − Component Diagram − Class Diagram − Sequence Diagram − Activity Diagram − Use Case Diagram
  • 38. Mas como fazer? Sistemas existentes − Entendo sistemas existentes − Código pode ser de difícil manutenção. − Identificação via DEBUG − Qual o fluxo atual do sistema? − Quais são suas dependências?
  • 41. Estamos fazendo certo? Garantindo qualidade − Comunicação e Integridade − Informar ao time qual modelo seguir. − O mais importante garanta que eles estão seguindo.
  • 44. Adriano Bertucci Especialista em Soluções ALM Microsoft MVP Visual C# @adrianobertucci adriano@bertucci.com.br adriano.bertucci http://www.adrianobertucci.com