Please enable JavaScript.
Coggle requires JavaScript to display documents.
Qualidade de Software em Projetos Ágeis - Coggle Diagram
Qualidade de Software em Projetos Ágeis
Projetos Tradicionais
Motivação
Exemplo: modelo cascata
Foco em reproduzir e controlar
Problema em reproduzir
Inibe aprendizado & criatividade
Problema em controlar
Gerenciamento excessivo
Problemas
Preditivo
Burocrático
Forte resistência a mudanças
Rígido
Muito tempo para obter feedback
Orientado a processos
Metodologia Ágil
Técnicas de gerenciamento ágil
Foque nas pessoas
Organize os projetos em iterações
Marco de projeto final só se for necessário
Projeto de alto nível
Plano de iteração com base no JIT
Envolva todos
Tradicional X Ágil
Tradicional
Maior ênfase no planejamento e controle
Orientado pelo planejamento
Escopo = fixo
Custos + Tempo = variáveis
Outras variáveis
Desenvolvedor = hábil
Clientes = pouco envolvido
Requisitos = estáveis
Retrabalho = caro
Planejamento = direciona resultados
Foco = grandes projetos
Objetivo = controle >> resultados
Ágil
Maior ênfase na execução e adaptações
Orientado pelos valores e visões
Escopo = variável
Custo + tempo = fixos
Outras variáveis
Retrabalho = barato
Planejamento = direcionado por resultados
Clientes = comprometido
Foco = projetos exploradores e inovadores
Desenvolvedor = ágil
Objetivo = simplificar
Requisitos = mutável
Papel do gerente
Reconhecer mudanças
Gerenciar as influências externas
Ser mais facilitador
Canalizador de informações
Manter visão geral para o time
Conceitos iniciais
Manifesto ágil (2001)
Software funcional > Documentação abrangente
Colaboração com cliente > Negociação de contratos
Responder a mudanças > Seguir planos
Indivíduos + iterações > Processos + Ferramentas
Objetivo = facilitar desenvolvimento de software
Definição
Maior rapidez
Fluxo de trabalho ágil e flexível
Maior iteratividade
Exemplos
Kanban
Lean
Smart
Scrum
XP
Princípios
Entrega de Produto
Entregas iterativas e funcionais
Entrega de valor
Excelência técnica
Liderança - Colaboração
Exploração
Simplificar
Equipes adaptativas
SCRUM
O que é
Framework que ajuda equipes a trabalharem juntas
Valores
Abertura
Respeito
Foco
Coragem
Comprometimento
Framework
Sprint
Product Backlog
Sprint Planning
Sprint Backlog
Scrum Team
Development
Daily Scrum
1 more item...
Increment
Sprint Review
1 more item...
O Time
Product Owner
Criar e comunicar claramente os itens do Product Backlog
Ordenar os itens do product backlog
Garantir que o Product Backlog é transparente, visível e compreensível.
Desenvolver e comunicar explicitamente o Propósito/Finalidade do Produto
Desenvolvedores
Aderir qualidade de acordo com as definições de Feito
Diariamente adaptar seus planejamentos em direção aos objetivos da Sprint
Criar um plano para a sprint (sprint backlog)
Scrum Master
Ajudar o time de scrum a focar em criar incrementos de alto valor que vão de encontro com a definição de Feito
Lidar com os impedimentos que influenciam o time de scrum progredir
Aconselhar os membros do time do scrum no auto-gerenciamento
Garantir que todos os eventos e etapas do Scrum estão no lugar certo e são positivas, produtivas e dentro do tempo.
Propósitos do Trabalho
Product Goal
Sprint Goal
Definition of Done
XP
e
X
treme
P
rogramming
Valores
Comunicação
Simplicidade
Feedback
Respeito
Coragem
As 12 práticas
TDD
Jogo do planejamento
Cliente no Local
Programação em pares
Refatoramento
Integração contínua
Releases pequenos
Projeto simples
Padrões de codificação
Propriedade coletiva do código
Metáfora
Semana de quarenta horas
Ciclo de Vida
Fase de exploração
Fase de planejamento inicial
Fase de iterações do release
Fase de produção
Fase de manutenção
Fase de morte
Papéis
Cliente
Programador
Testador
Rastreador ou gerente
Treinador
Testes
Escritos antes da programação
Tipos
Teste Unitário
(automatizados. Ex: JUnit)
Teste Funcional de aceitação
(Pode ser automatizado. Ex: Selenium)
Estático (Programação em pares)
Integração (Integração contínua)
Refatoração -> Reteste
Teste Ágil
Manifesto
Testar continuamente
Prevenir defeitos
Entender o teste
Construir o melhor sistema
Time responsável pela qualidade
Características
Mudança x Regressão
Ativos de Teste
Investir em automação
Envolvimento de toda a equipe
Quadrantes
Q1
Testes unitários
Testes de Integração
Q2
Testes funcionais
Protótipos
Q3
Teste exploratório
Testes de aceitação do usuário
Q4
Testes de performance e carga
Teste de segurança
Responsabilidades
Melhorar as estórias do usuário
Ajudar na criação de testes de aceitação
Definir os testes e estimar o esforço (iteração e release)
Definir as estratégias de teste
Equalização do conhecimento
Influência no desenvolvimento do produto
Pair programming / Pair testing
Desenvolvedor também testa
(Testes Unitários, Testes automatizados)
Teste de regressão (Integração Contínua)
Validação de funcionalidades
Manuais
Colaboração entre desenvolvedores, testadores e
stakeholders