BaixadaTech 2012 - Qualidade de Software
-
Upload
adriano-bertucci -
Category
Technology
-
view
2.501 -
download
6
Transcript of BaixadaTech 2012 - Qualidade de Software
QUALIDADE DE SOFTWARE COM
VISUAL STUDIO 2012
ADRIANO BERTUCCI
• Sócio/Diretor da Konia Tecnologia• Microsoft Visual Studio ALM MVP• Fascinado por:
– Conhecimento;– História;– Filosofia;
• Adora jogar um FIFA (BertucciLife)
E-mail: [email protected] | Twitter: @adrianobertucci
Desafios – Problemas comuns
• Requisitos de negócios não são gerenciados de forma efetiva
• Ferramentas e dados dispersos• Testes não alinhados aos objetivos de negócios • Falta de orientações e processos definidos• Problemas de comunicação entre os membros da
equipe• Visibilidade limitada do status do projeto para
tomada de decisões
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 eoperações
Analista de Negócio Gerente de
Projeto
Time de Desenvolvimento
Test
Operações
RequisiçãoDe Mudança
Cenários
Requerimentosde Negócio
Bugs
Tarefas
Erros emProdução
Builds
Implantação
Processo de Trabalho
Itens de trabalho são a unidade de comunicação entre as pessoas do time
Como esta a saúde do seu projeto?
• Cronograma e controle de atividades?• Controle de defeitos?• Quais cenários foram testados com sucesso?• Cobertura do código testado?• Rotatividade do código – estabilização?• Requisições de mudanças gerenciadas
adequadamente?• Controle sobre que fontes foram alterados por
causa de determinado requisito / correção?
Indicadores de Qualidade
Planejamento de Projetos
Relatórios em Excel
Desempenho da Equipe
Requisitos Implementados
Defeitos – Bug Tracking
Controle de Tarefas
Requisitos de Negócios
Controle de VersãoAvançado
Metodologia & Processode Desenvolvimento
Automação de Compilação (build)
Testes Web
Teste de Carga
Testes Unitários
Análise de Código
Documentaçãode Projeto
Ferramentas de Arquitetura
Ferramentas para Bancode Dados
Relatório em Tempo Real
Testador
Desenvolvedor
Arquiteto
Gerente de TI ou de ProjetosAnalistas de Negócios
DBADesigner
QUALIDADE DE SOFTWARE?
QUALIDADE DE SOFTWARE
• A qualidade de software é uma área deconhecimento da engenharia de software queobjetiva garantir a qualidade do softwareatravés da DEFINIÇÃO e NORMATIZAÇÃO dePROCESSOS DE DESENVOLVIMENTO.
Fonte: Wikipedia
Qualidade – Pontos Importantes
Teste ≠ QualidadeAntes -> Durante -> Depois
Desafios comuns para qualidade
Qualidade uma necessidade
• O sucesso de um projeto de software pode ser definido por um triângulo:
• Nos acostumamos em aceitar 2 dos 3– Consideramos isso sucesso?
Funcionalidade
Prazo Orçamento
QualidadeFuncionalidade
Prazo Orçamento
• Atualmente o triângulo se transformou em um quadrado;– Qualidade é a quarta dimensão
Caminho para o sucesso
Ideia
Solução
Impacto de uma falha
1978 – Colapso do Hartford Coliseum, $90M
1962 – Acidente com Veers, $18.5M
Impacto no cicloDesenvolvedores 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
O que fazer?• Padronizar
• Arquitetar
• Testar
• Ter atitude
• Capacitar
• Organizar
• Integrar
• Fazer manutenção
• Entregar rapidamente
Teste de Software
Segmentação dos testes
Generalista Especialista
Testes manuais Algumas scripts
Scripts para setup do lab, massadados
Scripts
Alguma experiênciaem código
Codificação
Testes automatizado
Grande experiênciaem código
Caixa Preta
Caixa Branca
Testes API
70% dos testes
ocorrem aqui
Maioria das
ferramentas de testes
foca aqui
O que fazer?
Team Foundation Server Relatórios
Web Test
Load Test
Coded UI Test Unit Testing
Gerenciamento de casos de testeGerenciamento de laboratórios
Microsoft Test Runner
Coletores de dados (IntelliTrace™, Impacto de testes, Metricas…)
Generalista Especialista
Testes manuais Algumas scripts
Scripts para setup do lab, massa dados
Scripts
Alguma experiência em código
Codificação
Testes automatizado
Grande experiência em código
O que fazer?
Cenário
Planejamento
Especificação
Execução
Validação
Automação
DEMO
DÚVIDAS????
E-mail: [email protected] Twitter: @adrianobertucci
PROGRAMA JOVEM TALENTO
O que buscamos em um profissional?
• Transparência
• Atitude
• Espírito de Equipe
• Valorização do profissional
• Descontração
• Comprometimento
• Respeito
O que oferecemos?
• Rendimento Compatível;
• Aprendizado Garantido;
• Ambiente Descontraído;
• Plano de Carreira;
Como participar?
Email para: [email protected]
Assunto: Eu sou um TALENTO!
Conteúdo:
• Porque gostaria de atuar com ALM?
• Porque me considero um talento em TI?
• Que professional sou eu?
• Meus pontos fortes e meus pontos fracos.