SlideShare a Scribd company logo
1 of 42
Scrum e Team Foundation Server
Qualidade ao longo de todo o ciclo de vida da aplicação
Seminário Paranaense de Qualidade de Software
Curitiba, 29/04/2013
Igor Abade V. Leite
Igor.abade@lambda3.com.br
• Igor Abade (@igorabade)
– Microsoft MVP, Visual Studio ALM
– Referência nacional em
Team Foundation Server (TFS)
• Sócio-diretor da Lambda3
– Consultoria
ALM/TFS, Agilidade/Scrum, Arquitet
ura
– Desenvolvimento de Sistemas
– Treinamentos
– Parceira Microsoft Gold ALM
Sobre o Palestrante
Menos Teste, Mais Qualidade
Menos teste, mais qualidade
Como equilibrar a equação?
Menos teste?!?!
• Teste custa caro
– Novos times
– Maior tempo de projeto
• Desenvolvedores
sempre testaram
• “Sempre entreguei meus
projetos”
• Afinal, preciso mesmo
testar?
Não tenho orçamento
para montar um time
de testes
Testes de unidade? Sem
chance! Meu cliente não
vai pagar para meu time
trabalhar dobrado!
No final meu cliente vai
testar tudo de novo
mesmo...
Por que testar?
Exemplos práticos
• USS Yorktown, SmartShip
– Tripulante digitou 0 num campo de um formulário
– “Divide By Zero” desligou a propulsão
– Parado na água por 2h45min
• Ariane 5, vôo 501
– Reaproveitou código do Ariane 4, mas seguiu caminho
diferente devido a mudanças
– Conversão de 64bit para 16bit causou overflow
– Sem tratamento de exceções (melhor desempenho)
• F-22 Raptor
– Em operação no Japão pela primeira vez
– Cruzou Linha Internacional de Data. Computadores
travaram
– Tempo bom permitiu seguir os aviões-tanque ao Havaí
Controle de Qualidade de Software
“temos um requisito que
mudou, o que precisamos
testar?”
Já ouviu falar disso?
“meus testers gastam
muito tempo
testando a mesma
coisa”
“ferramental é caro
(licenças, processos,
pessoas)”
“devs e testers trabalham em
‘silos’ e não falam/não se
comunicam na mesma língua”
“quando meu
sistema estará
pronto para liberar?”
“desenvolvedores dizem
que os defeitos são
inúteis”
• Ping-Pong entre Devs
e Testers
– Bug é “rebatido” de um
lado para o outro
– Enorme esforço
desperdiçado
• Colaboração é baixa
Colaboração com Desenvolvedores
• Por que um bug não é
corrigido?
– Dificuldade em
documentar passos de
reprodução do erro
– Falta de visibilidade das
ações do tester
– Diferenças de ambiente
Colaboração com Desenvolvedores
Test-Last Development
O mercado está cada vez mais competitivo
• Nossos clientes precisam
ir cada vez mais rápido
para o mercado.
• Usuários estão
impacientes.
• Adivinha onde vamos
cortar?
Controle de Qualidade de Software
• Teste é só um dos
aspectos
• Envolve processo de
desenvolvimento
• É preciso garantir
qualidade em três
momentos: Antes
Durante
Depois
Controle de Qualidade:
Antes
• Tudo começa com processo de
desenvolvimento
• “Fazer o certo, do jeito certo, na hora
certa”
– Desenvolvimento Ágil
– Gestão de Requisitos
– Arquitetura / Design
ALM: Application Lifecycle
Management
• Gestão do
Ciclo de Vida da
Aplicação
• Coordenação
– Requisitos
– Modelagem
– Desenvolvimento
– Construção
– Testes
– Manutenção e
operações
• Integração do
Time
Desenvolvimento Ágil:
O Manifesto Ágil
Indivíduos e interação entre eles
mais que processos e ferramentas
Software em funcionamento
mais que documentação abrangente
Colaboração com o cliente
mais que negociação de contratos
Responder a mudanças
mais que seguir um plano
Ou seja, mesmo havendo valor nos
itens à direita, valorizamos mais os
itens à esquerda.
www.manifestoagil.com.br
Lean
Agile
Scrum
XP
Framework de gestão ágil de projetos
Papéis e cerimônias, melhoria contínua
dos times, entrega rápida, limitar
trabalho à capacidade
Cultura ágil, mindset e práticas
Eliminar desperdício
Respeitar as pessoas, foco
principalmente em P&D
Otimizar todo o fluxo
Foco na otimização de todo o processo
de negócios
Práticas de engenharia
Trazer qualidade para dentro do desenvolvimento
– Automação, integração contínua, revisão por
pares etc.
Práticas Ágeis
Scrum
• Iterativo
• Comunicação
• Auto-organizado
• Define
– Papéis
– Artefatos
– Eventos
Elementos do Scrum
Scrum Master
Product Owner
Team
Planejamento Ágil no TFS 2012
Gestão de Requisitos: Storyboarding
Arquitetura:
Diagrama de Camadas
Controle de Qualidade:
Durante
• Qualidade durante construção do código
– Testes de Unidade
– Análise de Código
– Automação de Testes
– Integração Contínua
• Processo de Testes
– Testes Manuais
– Gestão de Laboratório
XP:
Extreme Programming
TDD:
Test-driven Development
CI:
Continuous Integration
• Integração Contínua é
uma prática
• Integrar código cedo e
com frequência, para
evitar “Integration Hell"
• Objetivo final é “parar e
consertar” o mais cedo
possível
Testes de Unidade
Generalista Especialista
Teste Manual Poucos scripts
Cria scripts
para configurar
ambiente, criar
dados
Muitos scripts
Algum
conhecimento
de
programação
Programação
Desenvolve
rotinas de
automação de
testes
Conhecimento
avançado de
programação
Testes de “Caixa Preta”
Testes de “Caixa Branca”
Testes API
70% dos testes
acontecem aqui
Maioria das ferramentas
mira aqui
Processo de Testes
Execução e Automação de Testes
• Microsoft Test Manager
– Planejamento, gestão e
execução de casos de
teste
– Coleta dados de sistema
e logs de eventos
– Captura imagens de tela e
vídeos
– Fast-forward para
aplicativos Windows
Forms, WPF e Web
Automação de Testes de UI
• CodedUI Tests
– Gravador de Ações
– Geração a partir de casos
de teste manuais
– Scripts resilientes
– .NET (C#, VB)
– Windows
Forms, WPF, Web (IE &
Firefox), outras
plataformas
Gestão de Laboratórios
• Laboratórios
Virtuais
• Automação de
Implantação
• Bibliotecas de
VMs
Microsoft Test Manager
Relatório: Requisitos Implementados
Relatório: Evolução dos Testes
Controle de Qualidade:
Depois
• Aplicação em produção
– Detecção de Erros
– Captura Detalhada
– Relatórios e Bugs
Teste de Carga
• Geração de Carga
• Testes /
Monitoramento de
Servidores
(Web, SQL…)
• Carga Distribuída
• Usuários ilimitados
IntelliTrace:
Depuração Histórica
System Center 2012
Operations Manager
• Monitoramento em tempo real de
aplicações
– Solução de problemas na sessão do
usuário
– Coleta de dados de exceções Javascript
• Monitoração de desempenho a partir
da perspectiva do browser
– HTTP, AJAX, JavaScript
• Degradação de Desempenho
– Tamanho de HTML, imagens, scripts, CSS
– Latência de rede, desempenho do
servidor
• Informações Estatísticas
– Contadores por aplicação, página, IP
– Tempo médio de execução no
cliente, falhas/seg, etc.
Intellitrace
Desenvolvimento
Testes
Implantação
Fase do software
Custodosbugs
Custo dos Bugs
@IgorAbade
blog.lambda3.com.br/L3/IgorAbade
www.lambda3.com.br

More Related Content

What's hot

Os principios do DevOps - #MTACWeek 2017
Os principios do DevOps - #MTACWeek 2017Os principios do DevOps - #MTACWeek 2017
Os principios do DevOps - #MTACWeek 2017Guilherme Cardoso
 
Apenas um script de teste para iOS e Android
Apenas um script de teste para iOS e AndroidApenas um script de teste para iOS e Android
Apenas um script de teste para iOS e AndroidElias Nogueira
 
Do UnitTest ao DevOps - Criando times realmente ágeis com o Visual Studio ALM
Do UnitTest ao DevOps - Criando times realmente ágeis com o Visual Studio ALMDo UnitTest ao DevOps - Criando times realmente ágeis com o Visual Studio ALM
Do UnitTest ao DevOps - Criando times realmente ágeis com o Visual Studio ALMGuilherme Cardoso
 
Automação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileAutomação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileElias Nogueira
 
WTM - Workshop Agile Testing
WTM - Workshop Agile TestingWTM - Workshop Agile Testing
WTM - Workshop Agile TestingSamanta Cicilia
 
InterCon - Automatizando Visual Regression Testing
InterCon - Automatizando Visual Regression TestingInterCon - Automatizando Visual Regression Testing
InterCon - Automatizando Visual Regression TestingSamanta Cicilia
 
Coach por Imersão - Buscando a excelência técnica com o time
Coach por Imersão - Buscando a excelência técnica com o timeCoach por Imersão - Buscando a excelência técnica com o time
Coach por Imersão - Buscando a excelência técnica com o timeElias Nogueira
 
Coders On Beer + Ministry Of Testing - Agile Testing
Coders On Beer + Ministry Of Testing - Agile TestingCoders On Beer + Ministry Of Testing - Agile Testing
Coders On Beer + Ministry Of Testing - Agile TestingSamanta Cicilia
 
TOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
TOTVS - Agile Testing e a Importância de se ter Estratégia de TestesTOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
TOTVS - Agile Testing e a Importância de se ter Estratégia de TestesSamanta Cicilia
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Ramon Durães
 
Gerenciando projetos através do VSTS(Visual Studio Team Services)
Gerenciando projetos através do VSTS(Visual Studio Team Services)Gerenciando projetos através do VSTS(Visual Studio Team Services)
Gerenciando projetos através do VSTS(Visual Studio Team Services)Pablo Juan ஃ
 
ATC BSB - Agile Testing
ATC BSB - Agile Testing ATC BSB - Agile Testing
ATC BSB - Agile Testing Samanta Cicilia
 
Tudo o que você precisa saber para começar a automação de testes em dispositi...
Tudo o que você precisa saber para começar a automação de testes em dispositi...Tudo o que você precisa saber para começar a automação de testes em dispositi...
Tudo o que você precisa saber para começar a automação de testes em dispositi...Elias Nogueira
 
Como integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu timeComo integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu timeElias Nogueira
 
Gestão ágil de projetos de software com Scrum 2.0 e Team Foundation Server e ...
Gestão ágil de projetos de software com Scrum 2.0 e Team Foundation Server e ...Gestão ágil de projetos de software com Scrum 2.0 e Team Foundation Server e ...
Gestão ágil de projetos de software com Scrum 2.0 e Team Foundation Server e ...Alvaro Brognoli
 

What's hot (20)

Os principios do DevOps - #MTACWeek 2017
Os principios do DevOps - #MTACWeek 2017Os principios do DevOps - #MTACWeek 2017
Os principios do DevOps - #MTACWeek 2017
 
Visual Studio ALM
Visual Studio ALMVisual Studio ALM
Visual Studio ALM
 
Apenas um script de teste para iOS e Android
Apenas um script de teste para iOS e AndroidApenas um script de teste para iOS e Android
Apenas um script de teste para iOS e Android
 
Do UnitTest ao DevOps - Criando times realmente ágeis com o Visual Studio ALM
Do UnitTest ao DevOps - Criando times realmente ágeis com o Visual Studio ALMDo UnitTest ao DevOps - Criando times realmente ágeis com o Visual Studio ALM
Do UnitTest ao DevOps - Criando times realmente ágeis com o Visual Studio ALM
 
DevOps ... o caminho
DevOps ... o caminhoDevOps ... o caminho
DevOps ... o caminho
 
Automação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileAutomação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e Mobile
 
O Testador Técnico
O Testador TécnicoO Testador Técnico
O Testador Técnico
 
WTM - Workshop Agile Testing
WTM - Workshop Agile TestingWTM - Workshop Agile Testing
WTM - Workshop Agile Testing
 
InterCon - Automatizando Visual Regression Testing
InterCon - Automatizando Visual Regression TestingInterCon - Automatizando Visual Regression Testing
InterCon - Automatizando Visual Regression Testing
 
Coach por Imersão - Buscando a excelência técnica com o time
Coach por Imersão - Buscando a excelência técnica com o timeCoach por Imersão - Buscando a excelência técnica com o time
Coach por Imersão - Buscando a excelência técnica com o time
 
Coders On Beer + Ministry Of Testing - Agile Testing
Coders On Beer + Ministry Of Testing - Agile TestingCoders On Beer + Ministry Of Testing - Agile Testing
Coders On Beer + Ministry Of Testing - Agile Testing
 
TOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
TOTVS - Agile Testing e a Importância de se ter Estratégia de TestesTOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
TOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016
 
Gerenciando projetos através do VSTS(Visual Studio Team Services)
Gerenciando projetos através do VSTS(Visual Studio Team Services)Gerenciando projetos através do VSTS(Visual Studio Team Services)
Gerenciando projetos através do VSTS(Visual Studio Team Services)
 
ALM com VSTS
ALM com VSTSALM com VSTS
ALM com VSTS
 
ATC BSB - Agile Testing
ATC BSB - Agile Testing ATC BSB - Agile Testing
ATC BSB - Agile Testing
 
Tudo o que você precisa saber para começar a automação de testes em dispositi...
Tudo o que você precisa saber para começar a automação de testes em dispositi...Tudo o que você precisa saber para começar a automação de testes em dispositi...
Tudo o que você precisa saber para começar a automação de testes em dispositi...
 
Como integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu timeComo integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu time
 
Qaladies apresentacao
Qaladies apresentacaoQaladies apresentacao
Qaladies apresentacao
 
Gestão ágil de projetos de software com Scrum 2.0 e Team Foundation Server e ...
Gestão ágil de projetos de software com Scrum 2.0 e Team Foundation Server e ...Gestão ágil de projetos de software com Scrum 2.0 e Team Foundation Server e ...
Gestão ágil de projetos de software com Scrum 2.0 e Team Foundation Server e ...
 

Similar to Scrum TFS Qualidade

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?
Menos teste e mais qualidade - como equilibrar essa equação?Igor Abade
 
Automação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasAutomação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasKleitor Franklint Correa Araujo
 
[GUTS-RS] GUTS Talks - Automação de Testes
[GUTS-RS] GUTS Talks - Automação de Testes[GUTS-RS] GUTS Talks - Automação de Testes
[GUTS-RS] GUTS Talks - Automação de TestesGUTS-RS
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMAdriano Bertucci
 
4 engenharia de software
4   engenharia de software4   engenharia de software
4 engenharia de softwareFelipe Bugov
 
Estratégias e Técnicas de Testes - Parte1
Estratégias e Técnicas de Testes - Parte1Estratégias e Técnicas de Testes - Parte1
Estratégias e Técnicas de Testes - Parte1Lorena Caldas
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aLeonardo Molinari
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme ProgrammingRodrigo Branas
 
Sonarqube
SonarqubeSonarqube
SonarqubeCDS
 
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 2012Adriano Bertucci
 
BaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de SoftwareBaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de SoftwareAdriano Bertucci
 
Desenvolvimento de Software
Desenvolvimento de SoftwareDesenvolvimento de Software
Desenvolvimento de SoftwareAdilmar Dantas
 
Engenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelEngenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelFernando Pontes
 
Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Cláudio Amaral
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Elaine Cecília Gatto
 

Similar to Scrum TFS Qualidade (20)

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?
Menos teste e mais qualidade - como equilibrar essa equação?
 
Automação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasAutomação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégias
 
[GUTS-RS] GUTS Talks - Automação de Testes
[GUTS-RS] GUTS Talks - Automação de Testes[GUTS-RS] GUTS Talks - Automação de Testes
[GUTS-RS] GUTS Talks - Automação de Testes
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALM
 
4 engenharia de software
4   engenharia de software4   engenharia de software
4 engenharia de software
 
Estratégias e Técnicas de Testes - Parte1
Estratégias e Técnicas de Testes - Parte1Estratégias e Técnicas de Testes - Parte1
Estratégias e Técnicas de Testes - Parte1
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
 
TesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdfTesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdf
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
 
Sonarqube
SonarqubeSonarqube
Sonarqube
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 
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
 
Aula 3 - Engenharia de Software
Aula 3 - Engenharia de SoftwareAula 3 - Engenharia de Software
Aula 3 - Engenharia de Software
 
BaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de SoftwareBaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de Software
 
Lean agile testing
Lean agile testingLean agile testing
Lean agile testing
 
Desenvolvimento de Software
Desenvolvimento de SoftwareDesenvolvimento de Software
Desenvolvimento de Software
 
Engenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelEngenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentável
 
Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1
 
Palestra Testes Ágeis - SEMAC INF UFRGS
Palestra Testes Ágeis - SEMAC INF UFRGSPalestra Testes Ágeis - SEMAC INF UFRGS
Palestra Testes Ágeis - SEMAC INF UFRGS
 

More from Igor Abade

Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)Igor Abade
 
DevOps em grandes empresas - Mito ou Realidade?
DevOps em grandes empresas - Mito ou Realidade?DevOps em grandes empresas - Mito ou Realidade?
DevOps em grandes empresas - Mito ou Realidade?Igor Abade
 
Serverless Computing no Microsoft Azure
Serverless Computing no Microsoft AzureServerless Computing no Microsoft Azure
Serverless Computing no Microsoft AzureIgor Abade
 
Chega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoIgor Abade
 
Microsserviços .NET no Azure
Microsserviços .NET no AzureMicrosserviços .NET no Azure
Microsserviços .NET no AzureIgor Abade
 
Introdução ao Habitat
Introdução ao HabitatIntrodução ao Habitat
Introdução ao HabitatIgor Abade
 
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abadeAcelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abadeIgor Abade
 
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTSProvisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTSIgor Abade
 
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)Igor Abade
 
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)Igor Abade
 
Desktop App Converter: Trazendo Apps Win32 para a Windows Store
Desktop App Converter: Trazendo Apps Win32 para a Windows StoreDesktop App Converter: Trazendo Apps Win32 para a Windows Store
Desktop App Converter: Trazendo Apps Win32 para a Windows StoreIgor Abade
 
Acelere - e melhore! - o feedback com testes automatizados rápidos
Acelere - e melhore! - o feedback com testes automatizados rápidosAcelere - e melhore! - o feedback com testes automatizados rápidos
Acelere - e melhore! - o feedback com testes automatizados rápidosIgor Abade
 
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)Igor Abade
 
Suporte a macros na sua aplicação com PowerShell
Suporte a macros na sua aplicação com PowerShellSuporte a macros na sua aplicação com PowerShell
Suporte a macros na sua aplicação com PowerShellIgor Abade
 
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)Igor Abade
 
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Igor Abade
 
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)Igor Abade
 
Além do pen-drive: empacotando seu software para distribuição e implantação (...
Além do pen-drive: empacotando seu software para distribuição e implantação (...Além do pen-drive: empacotando seu software para distribuição e implantação (...
Além do pen-drive: empacotando seu software para distribuição e implantação (...Igor Abade
 
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Igor Abade
 
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)Igor Abade
 

More from Igor Abade (20)

Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
Introdução à SRE (.Net Vale Tech Saturday - DevSecOps)
 
DevOps em grandes empresas - Mito ou Realidade?
DevOps em grandes empresas - Mito ou Realidade?DevOps em grandes empresas - Mito ou Realidade?
DevOps em grandes empresas - Mito ou Realidade?
 
Serverless Computing no Microsoft Azure
Serverless Computing no Microsoft AzureServerless Computing no Microsoft Azure
Serverless Computing no Microsoft Azure
 
Chega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como código
 
Microsserviços .NET no Azure
Microsserviços .NET no AzureMicrosserviços .NET no Azure
Microsserviços .NET no Azure
 
Introdução ao Habitat
Introdução ao HabitatIntrodução ao Habitat
Introdução ao Habitat
 
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abadeAcelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
Acelere - e melhore! - o feedback com testes automatizados rápidos - igor abade
 
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTSProvisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
Provisionando ambientes de Dev e Teste com Azure DevTest Labs e VSTS
 
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)
 
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
Gestão de ciclo de vida de Banco de Dados: Já passou da hora! (TDC POA 2016)
 
Desktop App Converter: Trazendo Apps Win32 para a Windows Store
Desktop App Converter: Trazendo Apps Win32 para a Windows StoreDesktop App Converter: Trazendo Apps Win32 para a Windows Store
Desktop App Converter: Trazendo Apps Win32 para a Windows Store
 
Acelere - e melhore! - o feedback com testes automatizados rápidos
Acelere - e melhore! - o feedback com testes automatizados rápidosAcelere - e melhore! - o feedback com testes automatizados rápidos
Acelere - e melhore! - o feedback com testes automatizados rápidos
 
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)
 
Suporte a macros na sua aplicação com PowerShell
Suporte a macros na sua aplicação com PowerShellSuporte a macros na sua aplicação com PowerShell
Suporte a macros na sua aplicação com PowerShell
 
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
 
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
 
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
Keynote - Trilha Negócios (DevOps Summit Brasil 2016)
 
Além do pen-drive: empacotando seu software para distribuição e implantação (...
Além do pen-drive: empacotando seu software para distribuição e implantação (...Além do pen-drive: empacotando seu software para distribuição e implantação (...
Além do pen-drive: empacotando seu software para distribuição e implantação (...
 
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
 
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
Acelerando a criação de testes usando IntelliTest (Visual Studio Summit 2015)
 

Scrum TFS Qualidade

  • 1. Scrum e Team Foundation Server Qualidade ao longo de todo o ciclo de vida da aplicação Seminário Paranaense de Qualidade de Software Curitiba, 29/04/2013 Igor Abade V. Leite Igor.abade@lambda3.com.br
  • 2. • Igor Abade (@igorabade) – Microsoft MVP, Visual Studio ALM – Referência nacional em Team Foundation Server (TFS) • Sócio-diretor da Lambda3 – Consultoria ALM/TFS, Agilidade/Scrum, Arquitet ura – Desenvolvimento de Sistemas – Treinamentos – Parceira Microsoft Gold ALM Sobre o Palestrante
  • 3. Menos Teste, Mais Qualidade Menos teste, mais qualidade Como equilibrar a equação?
  • 4. Menos teste?!?! • Teste custa caro – Novos times – Maior tempo de projeto • Desenvolvedores sempre testaram • “Sempre entreguei meus projetos” • Afinal, preciso mesmo testar? Não tenho orçamento para montar um time de testes Testes de unidade? Sem chance! Meu cliente não vai pagar para meu time trabalhar dobrado! No final meu cliente vai testar tudo de novo mesmo...
  • 5. Por que testar? Exemplos práticos • USS Yorktown, SmartShip – Tripulante digitou 0 num campo de um formulário – “Divide By Zero” desligou a propulsão – Parado na água por 2h45min • Ariane 5, vôo 501 – Reaproveitou código do Ariane 4, mas seguiu caminho diferente devido a mudanças – Conversão de 64bit para 16bit causou overflow – Sem tratamento de exceções (melhor desempenho) • F-22 Raptor – Em operação no Japão pela primeira vez – Cruzou Linha Internacional de Data. Computadores travaram – Tempo bom permitiu seguir os aviões-tanque ao Havaí
  • 6. Controle de Qualidade de Software
  • 7. “temos um requisito que mudou, o que precisamos testar?” Já ouviu falar disso? “meus testers gastam muito tempo testando a mesma coisa” “ferramental é caro (licenças, processos, pessoas)” “devs e testers trabalham em ‘silos’ e não falam/não se comunicam na mesma língua” “quando meu sistema estará pronto para liberar?” “desenvolvedores dizem que os defeitos são inúteis”
  • 8. • Ping-Pong entre Devs e Testers – Bug é “rebatido” de um lado para o outro – Enorme esforço desperdiçado • Colaboração é baixa Colaboração com Desenvolvedores
  • 9. • Por que um bug não é corrigido? – Dificuldade em documentar passos de reprodução do erro – Falta de visibilidade das ações do tester – Diferenças de ambiente Colaboração com Desenvolvedores
  • 11. O mercado está cada vez mais competitivo • Nossos clientes precisam ir cada vez mais rápido para o mercado. • Usuários estão impacientes. • Adivinha onde vamos cortar?
  • 12. Controle de Qualidade de Software • Teste é só um dos aspectos • Envolve processo de desenvolvimento • É preciso garantir qualidade em três momentos: Antes Durante Depois
  • 13. Controle de Qualidade: Antes • Tudo começa com processo de desenvolvimento • “Fazer o certo, do jeito certo, na hora certa” – Desenvolvimento Ágil – Gestão de Requisitos – Arquitetura / Design
  • 14. ALM: Application Lifecycle Management • Gestão do Ciclo de Vida da Aplicação • Coordenação – Requisitos – Modelagem – Desenvolvimento – Construção – Testes – Manutenção e operações • Integração do Time
  • 15. Desenvolvimento Ágil: O Manifesto Ágil Indivíduos e interação entre eles mais que processos e ferramentas Software em funcionamento mais que documentação abrangente Colaboração com o cliente mais que negociação de contratos Responder a mudanças mais que seguir um plano Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda. www.manifestoagil.com.br
  • 16. Lean Agile Scrum XP Framework de gestão ágil de projetos Papéis e cerimônias, melhoria contínua dos times, entrega rápida, limitar trabalho à capacidade Cultura ágil, mindset e práticas Eliminar desperdício Respeitar as pessoas, foco principalmente em P&D Otimizar todo o fluxo Foco na otimização de todo o processo de negócios Práticas de engenharia Trazer qualidade para dentro do desenvolvimento – Automação, integração contínua, revisão por pares etc. Práticas Ágeis
  • 17. Scrum • Iterativo • Comunicação • Auto-organizado • Define – Papéis – Artefatos – Eventos
  • 18. Elementos do Scrum Scrum Master Product Owner Team
  • 20. Gestão de Requisitos: Storyboarding
  • 22. Controle de Qualidade: Durante • Qualidade durante construção do código – Testes de Unidade – Análise de Código – Automação de Testes – Integração Contínua • Processo de Testes – Testes Manuais – Gestão de Laboratório
  • 25. CI: Continuous Integration • Integração Contínua é uma prática • Integrar código cedo e com frequência, para evitar “Integration Hell" • Objetivo final é “parar e consertar” o mais cedo possível
  • 27. Generalista Especialista Teste Manual Poucos scripts Cria scripts para configurar ambiente, criar dados Muitos scripts Algum conhecimento de programação Programação Desenvolve rotinas de automação de testes Conhecimento avançado de programação Testes de “Caixa Preta” Testes de “Caixa Branca” Testes API 70% dos testes acontecem aqui Maioria das ferramentas mira aqui Processo de Testes
  • 28. Execução e Automação de Testes • Microsoft Test Manager – Planejamento, gestão e execução de casos de teste – Coleta dados de sistema e logs de eventos – Captura imagens de tela e vídeos – Fast-forward para aplicativos Windows Forms, WPF e Web
  • 29. Automação de Testes de UI • CodedUI Tests – Gravador de Ações – Geração a partir de casos de teste manuais – Scripts resilientes – .NET (C#, VB) – Windows Forms, WPF, Web (IE & Firefox), outras plataformas
  • 30. Gestão de Laboratórios • Laboratórios Virtuais • Automação de Implantação • Bibliotecas de VMs
  • 34. Controle de Qualidade: Depois • Aplicação em produção – Detecção de Erros – Captura Detalhada – Relatórios e Bugs
  • 35. Teste de Carga • Geração de Carga • Testes / Monitoramento de Servidores (Web, SQL…) • Carga Distribuída • Usuários ilimitados
  • 37. System Center 2012 Operations Manager • Monitoramento em tempo real de aplicações – Solução de problemas na sessão do usuário – Coleta de dados de exceções Javascript • Monitoração de desempenho a partir da perspectiva do browser – HTTP, AJAX, JavaScript • Degradação de Desempenho – Tamanho de HTML, imagens, scripts, CSS – Latência de rede, desempenho do servidor • Informações Estatísticas – Contadores por aplicação, página, IP – Tempo médio de execução no cliente, falhas/seg, etc.
  • 40.

Editor's Notes

  1. It is also important to understand where most testing happens in the spectrum of general testing to the more technical specialist testing.The Generalist Testers are usually professional testers with no coding background. Often these testers are experts in the business process or tool that is being developed. On the opposite side of the spectrum is the Specialist. This is a tester with strong coding skills.A fun side note: Microsoft’s testers are usually converted developers and tend to be on the specialist side of the graph.Black-box testing is a method of testing software that tests the functionality of an application as opposed to its internal structures or workings (see white-box testing). Specific knowledge of the application's code/internal structure and programming knowledge in general is not required. Test cases are built around specifications and requirements, i.e., what the application is supposed to do. It uses external descriptions of the software, including specifications, requirements, and design to derive test cases. These tests can be functional or non-functional, though usually functional. The test designer selects valid and invalid inputs and determines the correct output. There is no knowledge of the test object's internal structure.White-box testing (a.k.a. clear box testing, glass box testing, transparent box testing, or structural testing) is a method of testing software that tests internal structures or workings of an application as opposed to its functionality (black-box testing). An internal perspective of the system, as well as programming skills, are required and used to design test cases. The tester chooses inputs to exercise paths through the code and determine the appropriate outputs. It is analogous to testing nodes in a circuit, e.g. in-circuit testing (ICT). While white-box testing can be applied at the unit, integration and system levels of the software testing process, it is usually done at the unit level. It can test paths within a unit, paths between units during integration, and between subsystems during a system level test. Though this method of test design can uncover many errors or problems, it might not detect unimplemented parts of the specification or missing requirements. White-box test design techniques include: Control flow testing Data flow testing Branch testing Path testingAPI testing (application programming interface) – is a specific type of White Box testing of the application focusing on public and private APIs<Question to Audience>Looking at this spectrum, where does most testing happen today? <collect answers and click>Where do most testing tools target today? <collect answers and click>