Treinamento Agile - Scrum Fundamentos

Post on 11-Apr-2017

140 views 4 download

Transcript of Treinamento Agile - Scrum Fundamentos

www.certsys.com.br 1

Scrum Fundamentos

www.certsys.com.br 2

Sobre o AutorS C R U M T R E I N A M E N T O

Guilherme Magalhaes (guiandmag@gmail.com - @guiandmag) Arquiteto de software, Coach Agile e Palestrante, trabalha com tecnologia da informação há sete anos e atualmente trabalha na Certsys. Possui as certificações OCAJP, OCWSD, OCJPJ, Groovy Certified e Scrum Master Certified. Seus interesses incluem arquitetura de software, metodologias ágeis e conteúdo como Learning 3.0 e Management 3.0. Tecnólogo em Análise e Desenvolvimento de Sistemas (Fiap)

www.certsys.com.br 3

ObjetivosS C R U M T R E I N A M E N T O

História & Conceitos do Agile

Scrum Overview & Começando um projeto Scrum

Executando a Sprint & Finalizando a Sprint

www.certsys.com.br 4

Scrum GuideS C R U M T R E I N A M E N T O

www.certsys.com.br 5

AgileS C R U M T R E I N A M E N T O

AgendaS C R U M T R E I N A M E N T O

História do Agile

Conceitos do Agile

Scrum Overview

Começando um Projeto

Scrum

Executando a Sprint

Finalizando a Sprint

7

www.certsys.com.br

História do Agile

www.certsys.com.br 8

Modelo WaterfallS C R U M T R E I N A M E N T O

O que é AgileAgile

Agile

Agile

Agile

Agile

Agile

www.certsys.com.br 9

WATERFALL

www.certsys.com.br 10

WaterfallS C R U M T R E I N A M E N T O

Requisitos

Análise

Design

Desenvolvimento

Teste

Aceitação

www.certsys.com.br 11

Modelo WaterfallS C R U M T R E I N A M E N T O

www.certsys.com.br 12

Modelo WaterfallS C R U M T R E I N A M E N T O

Análise Design Desenv Teste Deploy

Big Design Up Front (BDUF)

www.certsys.com.br 13

Um Modelo Mais ÁgilS C R U M T R E I N A M E N T O

www.certsys.com.br 14

Análise

Um Modelo Mais ÁgilS C R U M T R E I N A M E N T O

Análise Design Desenv Test Deploy

Análise Design Desenv Test Deploy

DesignDesenvTestDeploy

www.certsys.com.br 15

Manifesto AgileS C R U M T R E I N A M E N T O

ScrumExtreme

Programming (XP)

Crystal Clear

Lean Kanban

Dynamic Systems

Development

Agile Unified Process

Feature Driven Development Agile Modeling

www.certsys.com.br 16

www.certsys.com.br 17

Manifesto AgileS C R U M T R E I N A M E N T O

Indivíduos e Interações Processos e Ferramentas

Criar Software Documentação Compreensiva

Colaboração do Cliente Negociação de Contrato

Responder a Mudanças Seguir um Plano

www.certsys.com.br 18

Manifesto AgileS C R U M T R E I N A M E N T O

Nossa maior prioridade é satisfazer o cliente através da entrega contínua e adiantada de software com valor agregado. Software funcionando é a medida primária de progresso.

Mudanças nos requisitos são bem-vindas, mesmo tardiamente no desenvolvimento. Processos ágeis tiram vantagem das mudanças visando vantagem competitiva para o cliente.

Os processos ágeis promovem desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários devem ser

capazes de manter um ritmo constante indefinidamente.

Entregar frequentemente software funcionando, de poucas semanas a poucos meses, com preferência à menor escala de

tempo.

Contínua atenção à excelência técnica e bom design aumenta a agilidade.

Pessoas de negócio e desenvolvedores devem trabalharo diariamente em conjunto por todo o projeto.

Simplicidade--a arte de maximizar a quantidade de trabalho não realizado--é essencial.

Construa projetos em torno de indivíduos motivados. Dê a eles o ambiente e o suporte necessário e confie neles

para fazer o trabalho.

As melhores arquiteturas, requisitos e designs emergem de equipes auto-organizáveis.

O método mais eficiente e eficaz de transmitir informações para e entre uma equipe de desenvolvimento é através de

conversa face a face.

Em intervalos regulares, a equipe reflete sobre como se tornar mais eficaz e então refina e ajusta seu comportamento de

acordo.

www.certsys.com.br

19

Conceitos do Agile

www.certsys.com.br 20

Conceitos Agile – Feedback S C R U M T R E I N A M E N T O

www.certsys.com.br 21

Conceitos Agile – Just in Time – Requisitos e Design S C R U M T R E I N A M E N T O

www.certsys.com.br 22

Conceitos Agile – Entregar Valor de Forma IncrementalS C R U M T R E I N A M E N T O

www.certsys.com.br 23

Conceitos Agile – Lançar Entregáveis ProntosS C R U M T R E I N A M E N T O

Integrado

Documentado

Deployável

Código Completo

Testado

www.certsys.com.br 24

Conceitos Agile – Ritmo SustentávelS C R U M T R E I N A M E N T O

www.certsys.com.br 25

Conceitos Agile – Gerenciamento LeanS C R U M T R E I N A M E N T O

www.certsys.com.br 26

Conceitos Agile – Times Auto-OrganizadosS C R U M T R E I N A M E N T O

www.certsys.com.br 27

Conceitos Agile – ValoresS C R U M T R E I N A M E N T O

Confiança, Coragem e Transparência

www.certsys.com.br 28

Conceitos Agile – Continuous DeliveryS C R U M T R E I N A M E N T O

www.certsys.com.br 29

Conceitos Agile – Abraçando MudançasS C R U M T R E I N A M E N T O

www.certsys.com.br 30

Conceitos Agile S C R U M T R E I N A M E N T O

Inspecionar e Adaptar

www.certsys.com.br 31

Conceitos Agile – Conceito vs ImplementaçãoS C R U M T R E I N A M E N T O

www.certsys.com.br 32

Conceitos Agile – Conceito vs ImplementaçãoS C R U M T R E I N A M E N T O

www.certsys.com.br 33

Conceitos Agile – Conceito vs ImplementaçãoS C R U M T R E I N A M E N T O

Scrum

XP

Lean/Kanban

www.certsys.com.br

34

Scrum Overview

www.certsys.com.br 35

Scrum OverviewS C R U M T R E I N A M E N T O

Papeis

Eventos

Artefatos

www.certsys.com.br 36

Scrum Overview - RolesS C R U M T R E I N A M E N T O

www.certsys.com.br 37

Scrum Overview – Product OwnerS C R U M T R E I N A M E N T O

Maximiza o Valor do Produto

Gerencia o Product Backlog

Representa o Usuário

Única Pessoa

www.certsys.com.br 38

Scrum Overview – Scrum MasterS C R U M T R E I N A M E N T O

Pastor do Scrum

Líder Servo

Remove Impedimentos

Resolve Conflitos

www.certsys.com.br 39

Scrum Overview – Time de DesenvolvimentoS C R U M T R E I N A M E N T O

Cross Funcional

Auto Organizável

Altamente Colaborativo

5 a 9 Membros

www.certsys.com.br 40

Scrum Overview – ArtefatosS C R U M T R E I N A M E N T O

Mercado Alvo

Necessidade / Oportunidade de Negócio

Funcionalidades Chave

Valor para a Empresa

www.certsys.com.br 41

Scrum Overview – Artefatos – Product BacklogS C R U M T R E I N A M E N T O

Fonte Única de Requisitos

Evoluindo Constantemente

Priorizado com Base no Valor

Estimado pelo Time de Desenvolvimento

www.certsys.com.br 42

Scrum Overview – Artefatos – Plano de ReleaseS C R U M T R E I N A M E N T O

Previsão Baseada em Dados Empíricos

Sobreposição no Product Backlog

Atualizado em Toda Sprint

www.certsys.com.br 43

Scrum Overview – Artefatos – Sprint BacklogS C R U M T R E I N A M E N T O

Itens do Product Backlog para a Sprint

Plano para Entregar um Incremento de Produto

Time de Desenvolvimento é o Dono

Dinâmico e Altamente Visível

www.certsys.com.br 44

Scrum Overview – Artefatos – Burndown ChartS C R U M T R E I N A M E N T O

Acompanha o Trabalha Restante por Dia

Atualizado pelo Time de Desenvolvimento

Mostrado Permanentemente

www.certsys.com.br 45

Scrum Overview – Artefatos – Lista de ImpedimentoS C R U M T R E I N A M E N T O

Bloqueador da Performance

Atualizado pelo Time Scrum

Monitorado pelo Scrum Master

www.certsys.com.br 46

Scrum Overview – Eventos – Sprint PlanningS C R U M T R E I N A M E N T O

Determina o que será Entregue

Performance / Capacidade Passado

Determina como será Entregue

Cria o Sprint Backlog

www.certsys.com.br 47

Scrum Overview – Eventos – SprintS C R U M T R E I N A M E N T O

1 Mês ou Menos

Objetivo Claro

Potencial Entrega de um Incremento

Escopo é Definido pelo Time Scrum

www.certsys.com.br 48

Scrum Overview – Eventos – Daily ScrumS C R U M T R E I N A M E N T O

15 Minutos

Inspecionar o Trabalho Feito Ontem

Plano de Trabalho pra Hoje

Identificar Possíveis Impedimentos

www.certsys.com.br 49

Scrum Overview – Eventos – Product Backlog GrommingS C R U M T R E I N A M E N T O

Esclarecer e Estimar Novos Itens

Rever a Prioridade dos Itens

Menos Detalhes em Itens com Baixa Prioridade

Em torno de 10% da Sprint

www.certsys.com.br 50

Scrum Overview – Eventos – Sprint ReviewS C R U M T R E I N A M E N T O

Demo Incremento do Produto

Extrair Feedback dos Stakeholders

Planejar o que Virá Depois

Rever o Plano de Release

www.certsys.com.br 51

Scrum Overview – Eventos – Sprint RetrospectiveS C R U M T R E I N A M E N T O

Inspecionar e Adaptar

O que foi bom?

O que pode ser melhor?

Plano para Melhorias

www.certsys.com.br 52

Scrum Overview – O que vem a seguir?S C R U M T R E I N A M E N T O

www.certsys.com.br

53

Começando um Projeto Scrum

www.certsys.com.br 54

Começando um Projeto Scrum – Sprint ZeroS C R U M T R E I N A M E N T O

Visão do Produto

Product Backlog Inicial

Plano de Release Inicial

Modelo de Arquitetura & Práticas de Código

Ambiente de Integração Continua

Pequenas Entregas Incrementais

www.certsys.com.br 55

Começando um Projeto Scrum – Criar a Visão do ProdutoS C R U M T R E I N A M E N T O

Mercado Alvo

Funcionalidades Principais

Necessidade de Mercado

Valor para a Empresa

www.certsys.com.br 56

Começando um Projeto Scrum – Qualidades de um Visão de ProdutoS C R U M T R E I N A M E N T O

Amplo e Inspirador

Pequeno e Compreensível

Claro e Estável

De Fácil Acesso

Frequentemente Revesitado

www.certsys.com.br 57

Começando um Projeto Scrum – O que vai no Product Backlog?S C R U M T R E I N A M E N T O

Requisitos do Usuário

Bugs

Requisitos Técnicos

www.certsys.com.br 58

Começando um Projeto Scrum – User StoriesS C R U M T R E I N A M E N T O

Pequena e Simples

Focado em Discussões

Perspectiva do Usuário

Como um (Papel) Eu quero(Alguma Funcionalidade)

Para então(Algum Beneficio).

www.certsys.com.br 59

Começando um Projeto Scrum – User StoriesS C R U M T R E I N A M E N T O

“Como um comprador online, eu quero poder fazer a busca no catalogo do site, para então, conseguir encontrar itens para comprar.”

www.certsys.com.br 60

Começando um Projeto Scrum – User Story CardS C R U M T R E I N A M E N T O

Catalogo de Busca

Como um comprador online, eu quero poder fazer a busca no catalogo do site, para então, conseguir encontrar itens para comprar.

www.certsys.com.br 61

Começando um Projeto Scrum – Condição de SatisfaçãoS C R U M T R E I N A M E N T O

Requerimento para Aceitação

Especificações não Detalhadas

Representar Testes

www.certsys.com.br 62

Começando um Projeto Scrum – Condição de Satisfação para essa user storyS C R U M T R E I N A M E N T O

• Deve buscar pelo titulo, descrição e categoria.

• Permitir técnicas avançadas de busca, como por exemplo, aspas duplas, AND, OR, +, -.

• Resultados devem retornar em menos de 5 segundos

www.certsys.com.br 63

Começando um Projeto Scrum – Condição de Satisfação para essa user storyS C R U M T R E I N A M E N T O

1. Abrir a página.2. Entrar com palavras.3. Iniciar busca.4. Verificar o resultado do catalogo, e se retorna os itens

corretos.

www.certsys.com.br 64

Começando um Projeto Scrum – User Story Card – AtrásS C R U M T R E I N A M E N T O

Como testar1. Abrir a página.2. Entrar com palavras.3. Iniciar busca.4. Verificar o resultado do catalogo, e se retorna os itens

corretos.

Outros Testes:• Deve buscar pelo titulo, descrição e categoria.• Permitir técnicas avançadas de busca, como por exemplo,

aspas duplas, AND, OR, +, -.• Resultados devem retornar em menos de 5 segundos

www.certsys.com.br 65

Começando um Projeto Scrum – Qualidade de boas User StoriesS C R U M T R E I N A M E N T O

Invest

ndependenteegociávelalorosostimávelmall/pequenoestável

www.certsys.com.br 66

Começando um Projeto Scrum – Quebrando as User StoriesS C R U M T R E I N A M E N T O

Tema

User StoryÉpico

www.certsys.com.br 67

Começando um Projeto Scrum – Como quebrar as User StoriesS C R U M T R E I N A M E N T O

Catalogo Online

Pagamento Online

Minha Conta

Adicionar Item do Catalogo ao

Carrinho

Navegar pelo Catalogo

Buscar no Catalogo

Busca Avançada

Refinar Busca

Tema Épico User Story

www.certsys.com.br 68

Começando um Projeto Scrum – Papeis e PersonasS C R U M T R E I N A M E N T O

Comprador Frequente

Suzy

Comprador não frequente

João

www.certsys.com.br 69

Começando um Projeto Scrum – Priorizando o Product BacklogS C R U M T R E I N A M E N T O

Valor de Negócio

ROI (Valor/Esforço)

Politica

Agrupamento de Funcionalidades

www.certsys.com.br 70

Manter os Clientes

Começando um Projeto Scrum – Priorizando o Product BacklogS C R U M T R E I N A M E N T O

Determinando Valor de Negócio

Aumento de Receita

Redução de Custo

Atração para Novos Usuários

www.certsys.com.br 71

Começando um Projeto Scrum – Priorizando o Product BacklogS C R U M T R E I N A M E N T O

Catalogo de Busca

Como um comprador online, eu quero poder fazer a busca no catalogo do site, para então, conseguir encontrar itens para comprar.

Registrar novo usuário

Como uma pessoa, eu quero a seguinte habilidade para o seguinte valor de negócio

Login

Como uma pessoa, eu quero a seguinte habilidade para o seguinte valor de negócio

Inserir Itens no Catálogo

Como uma pessoa, eu quero a seguinte habilidade para o seguinte valor de negócio

50251510100 Pontos

8007005001001 para 1000

www.certsys.com.br 72

Começando um Projeto Scrum – Estimando de maneira AgileS C R U M T R E I N A M E N T O

Estimando Agile

www.certsys.com.br 73

Começando um Projeto Scrum – Estimando de maneira AgileS C R U M T R E I N A M E N T O

Granularidade

www.certsys.com.br 74

Começando um Projeto Scrum – Estimando de maneira AgileS C R U M T R E I N A M E N T O

Estimando com Time Boxes

www.certsys.com.br 75

Começando um Projeto Scrum – Estimando de maneira AgileS C R U M T R E I N A M E N T O

Story Points

Estimativa de Tamanho High Level

Baseado em Escala Relativa

Estimado pelo Time

Não Baseado em Duração

www.certsys.com.br 76

Começando um Projeto Scrum – Estimando de maneira AgileS C R U M T R E I N A M E N T O

Story Points

1

10

2

20

3

30

5

40

8

50

www.certsys.com.br 77

Começando um Projeto Scrum – Estimando de maneira AgileS C R U M T R E I N A M E N T O

Story Points

Catalogo de Busca

Como um comprador online, eu quero poder fazer a busca no catalogo do site, para então, conseguir encontrar itens para comprar.

Valor de Negócio: 600

Registrar novo usuário

Como uma pessoa, eu quero a seguinte habilidade para o seguinte valor de negócio

Valor de Negócio: 900

Login

Como uma pessoa, eu quero a seguinte habilidade para o seguinte valor de negócio

Valor de Negócio: 700

5 38

www.certsys.com.br 78

Começando um Projeto Scrum – Estimando de maneira AgileS C R U M T R E I N A M E N T O

Plano de Entrega2

5

3

5

3

3

5

3

3

Velocidade = 8 {{{

}}

www.certsys.com.br

79

Executando a Sprint

www.certsys.com.br 80

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Determinando o que será trabalhado2

5

3

5

3

3

5

3

3

Velocidade = 11

Capacidade do Time

João está de férias por 1 semana

Marcos está doente, 2 semanas de licença

www.certsys.com.br 81

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Determinando o Tamanho de uma Sprint

www.certsys.com.br 82

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Identificando o Objetivo da Sprint

“Implementar a busca no catálogo com opções avançadas de busca”

www.certsys.com.br 83

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Criando o Sprint BacklogCatalogo de Busca

Como um comprador online, eu quero poder fazer a busca no catalogo do site, para então, conseguir encontrar itens para comprar.

Criar a página de busca: 6 horas

Lógica da query: 8 horas

Teste da busca: 12 horas

www.certsys.com.br 84

Começando um Projeto Scrum – Qualidade de boas User StoriesS C R U M T R E I N A M E N T O

SMART

pecificeasurablechievableelevantime Boxed

www.certsys.com.br 85

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Catalogo de Busca

Como um comprador online, eu quero poder fazer a busca no catalogo do site, para então, conseguir encontrar itens para comprar.

Criar a página de busca: 6 horas

Lógica da query: 8 horas

Teste da busca: 12 horas

Nós estamos comprometidos com isso!

www.certsys.com.br 86

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Trabalhando como um time Scrum

Sentar Junto

Trabalhar iteritavamente

Limitar o Trabalho com progresso

www.certsys.com.br 87

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Executando o Daily Scrum

www.certsys.com.br 88

Executando uma Sprint – Executando o Daily ScrumS C R U M T R E I N A M E N T O

Mesmo Lugar & Tempo

Reunião de Planejamento

Média de 15 Minutos

Inspecionar o Progresso

www.certsys.com.br 89

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Executando o Daily Scrum

O que você fez ontem?

O que você vai fazer hoje?

Houve algum impedimento?

www.certsys.com.br 90

Executando uma Sprint – ExecutandoS C R U M T R E I N A M E N T O

Práticas de Engenharia

www.certsys.com.br 91

Executando uma Sprint – Práticas de EngenhariaS C R U M T R E I N A M E N T O

Camada Database

Lógica de Negócio

Serviços

Apresentação

Registrar N

ovo Usuário

Login

Catálogo de B

usca

Funcionalidades sobre Camadas

www.certsys.com.br 92

Executando uma Sprint – Práticas de EngenhariaS C R U M T R E I N A M E N T O

YAGNI Principio

www.certsys.com.br 93

Executando uma Sprint – Práticas de EngenhariaS C R U M T R E I N A M E N T O

Code Review

www.certsys.com.br 94

Executando uma Sprint – Práticas de EngenhariaS C R U M T R E I N A M E N T O

Integração Continua

www.certsys.com.br 95

Executando uma Sprint – Práticas de EngenhariaS C R U M T R E I N A M E N T O

TDD

www.certsys.com.br 96

Executando uma Sprint – Testes + Testes = SucessoS C R U M T R E I N A M E N T O

Teste Unitário

Teste de Funcionalidade

Teste Integrado

www.certsys.com.br 97

Executando uma Sprint – Definição de ProntoS C R U M T R E I N A M E N T O

www.certsys.com.br 98

Executando uma Sprint – QA no AgileS C R U M T R E I N A M E N T O

90%

10%

Funcionalidades

Outros

Tempo Produtivo

Tempo perdido• bugs• Tasks manuais• Burocrácia• Baixa qualidade

Funcionalidades

Automação de Testes

Necessidades internas(Rituais, Reuniões, Build …)

Melhoria continua(Ferramentas, Processos…)

Refatoração

Outros

Realidade Ideal

Dedicar tempo para automação e necessidades internas faz a equipe mais produtiva. Além disso, os membros da equipe terá mais tempo para desenvolver novos recursos e inovação de produtos

www.certsys.com.br 99

Executando uma Sprint – Melhores PráticasS C R U M T R E I N A M E N T O

Kanban

Lean UX

Continuous integration

Agile Portfolio Management

DevOps

Lean Startup

XP

Scrum

AutonomyIncreased accountability

Meaning

Cross-functional teams

Metric-Driven

Frugal Innovation

ContinuousDeployment

TDD

www.certsys.com.br 100

Executando uma Sprint – Melhores PráticasS C R U M T R E I N A M E N T O

Gerenciamento &Organização

Processo &Metodologia

Business &Produto

Engenharia de Software

www.certsys.com.br 101

Executando uma Sprint – Grooming PBS C R U M T R E I N A M E N T O

10% da Sprint

Estimar Novas Estórias

Revisar Estórias com Alta Prioridade

Mais D

etalhes

www.certsys.com.br

102

Finalizando a Sprint

www.certsys.com.br 103

Finalizando a Sprint – Sprint ReviewS C R U M T R E I N A M E N T O

www.certsys.com.br 104

Finalizando a Sprint – Sprint ReviewS C R U M T R E I N A M E N T O

Demo do que está feito

Rever o Progresso

Rever o que não foi feito

Discutir os Próximos Passos

www.certsys.com.br 105

Finalizando a Sprint – Entregando um Incremento de ProdutoS C R U M T R E I N A M E N T O

Potencialmente Empacotável

Endurecimento da Sprint

Entrega não deve ser um evento

www.certsys.com.br 106

Finalizando a Sprint – Sprint RetrospectivaS C R U M T R E I N A M E N T O

www.certsys.com.br 107

Finalizando a Sprint – Sprint RetrospectivaS C R U M T R E I N A M E N T O

Todas as Vozes são Iguais

Priorizar (Voto)

Focar em Melhoria

Agir

www.certsys.com.br 108

Finalizando a Sprint – Sprint RetrospectivaS C R U M T R E I N A M E N T O

O que foi bom? O que foi ruim?

Time tem Melhor

Visibilidade

Melhor ideia sobre o que

trabalhar

Eu gostei do Board

Melhorar Testes

Unitários

Daily Dura Muito

Testes Unitários

Melhor input da Gerencia

Testes Poderiam

Ser melhor

Daily Não Traz Valor

www.certsys.com.br 109

ResourcesS C R U M T R E I N A M E N T O

https://www.agilealliance.org/pt/

https://www.scrumalliance.org/

https://www.scrum.org/

110

Para mais informações sobre a certsys entre no site

www.certsys.com.br

Muito Obrigado!