Top Banner
Scrum Guilherme Cardoso Especialista ALM & DevOps | Arquiteto de Software [email protected] / @guilhermescard blog.guilhermescardoso.com.br Aplicando metodologias ágeis no desenvolvimento de software
54

Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Feb 20, 2017

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Scrum

Guilherme CardosoEspecialista ALM & DevOps | Arquiteto de Software

[email protected] / @guilhermescardblog.guilhermescardoso.com.br

Aplicando metodologias ágeis no desenvolvimento de software

Page 2: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 3: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 4: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 5: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 6: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 7: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

12 princípios ágeis

Page 8: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 9: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Engenharia de Software

Page 10: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 11: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 12: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

O que é o Scrum ?

Um processo framework que possibilita pessoas tratarem problemas complexos e adaptativos enquanto produzem criativamente e entregam produtos com alto valor de negócio

Page 13: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

O Scrum

Page 14: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 15: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

O que é o Scrum ?

Um processo framework que possibilita pessoas tratarem problemas complexos e adaptativos enquanto produzem criativamente e entregam produtos com alto valor de negócio

Page 16: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

O Scrum é …

- Leve de rodar- Simples de entender- Extremamente dificil de dominar- Empírico- Iterativo e incremental

Page 17: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

O Scrum é …

Page 18: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

O Scrum é …

- Clientes se tornam parte da equipe de desenvolvimento (os clientes devem estar genuinamente interessados na saída);

- Entregas frequentes e intermediárias de funcionalidades 100% desenvolvidas;

- Planos frequentes de mitigação de riscos desenvolvidos pela equipe;

- Discussões diárias de status com a equipe de desenvolvimento;

Page 19: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

O Scrum não é …

Um processo ou tecnica para construir produtos, é um framework dentro do qual pode ser empregados varios processos ou tecnicas.

Page 20: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Mitos

Scrum vai contra gestão formal (PMBOK por exemplo)Scrum não gera documentaçãoScrum não formaliza nadaScrum gera desorganização…

Page 21: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Pilares

Adaptação

Inspeção

Page 22: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Transparência …

- Visibilidade dos requisites- Visibilidade do andamento- Visão do todo- Visão do future do projeto

Page 23: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Transparência …

Page 24: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Inspeção …

- Inspecionar os artefatos gerados- Inspecionar os resultados alcançados- Inspecionar o resultado do projeto- Constante, a todo momento, diariamente

Page 25: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Adaptação …

- Ajuste nos desvios- Correções de itens fora do padrão, fora do escopo,

etc.

Page 26: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 27: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 28: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 29: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 30: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Framework Scrum …

- Papeis - Eventos- Artefatos

Page 31: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Papeis

- Product Owner (PO)- Scrum Master (SM)- Development Team (DT, Team)

Page 32: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Product Owner (PO)

- Responsável (único) pela gestão do Backlog- Responsável por avaliar o ROI das demandas- Suas decisões devem ser respeitados

Page 33: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Development Team

- Auto-gerenciaveis- Multifuncionais- Responsabilidade compartilhada ou ‘bola divida’- De 6 a 10 pessoas – Todos desenvolvedores

Page 34: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Scrum Master

- Facilitador- Remove inpeditivos- Ensina, instrui e lidera o time rumo ao objetivo

definido pelo PO

- NÃO delega nada- NÃO atribui tarefas- NÃO é responsável por gerenciar projetos

Page 35: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Framework Scrum …

- Papeis - Eventos- Artefatos

Page 36: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Eventos

- Sprint- Sprint Planning- Daily Scrum- Sprint Review- Sprint Retrospective

Page 37: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Sprint

- Intervalo definido- Rodada, onda, fase, tiro, corrida, etc.- 1 mes ou menos- Inclui TODAS as atividades (planejamento,

desenvolvimento, entrega, review)

Page 38: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Sprint Planning

- Planejamento do trabalho que será realizado- 8hs para uma sprint de 30 dias- Dividida em 2 partes:

- O que será entregue: discussão e explicação dos itens- Como será entregue: gera as tarefas

- Gera como saída o sprint backlog

Page 39: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Daily Scrum

- Micro reunião diária de planejamento- 15 minutos para que TODOS falem- Responde a 3 perguntas

- O que fiz desde a ultima daily- O que vou fazer até a proxima daily- Quais os impeditivos estão tendo

- Não é coordenada pelo SM

Page 40: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Sprint Review

- Cerimônia de inspeção- Pode adaptar o backlog caso necessário- 4hs para uma sprint de 30 dias

Page 41: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Sprint Retrospective

- Oportunidade para o time se auto-inspecionar- Gera melhoria no trabalho e nos produtos- Cria um plano de melhoria continua- 3hs para uma sprint de 30 dias

Page 42: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Framework Scrum …

- Papeis - Eventos- Artefatos

Page 43: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Artefatos

- Product Backlog- Sprint Backlog

- Planning Poker ???- Kanban ???- Burndow Chart ???- Definition of Done ???- …

Page 44: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Product Backlog

- Relação de itens do produto – ordenada pelo PO- Única origem de requisitos (PBI)- Qualquer mudança deve ser feita no Backlog

Page 45: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Sprint Backlog

- Itens da Sprint- Acompanha o objetivo da Sprint

Page 46: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Outros artefatos- Planning Poker ???- Objetivo da Sprint (sprint goal) ???- Kanban ???- Sprint Burndow Chart ???- Release Burndow Chart ???- Definition of Done ???

Page 47: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 48: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software
Page 49: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Hands on …

- Sprint Planning: 10 min

- Sprint: 30 min (3 dias de 10 min)- Daily: 1 minut

- Sprint Review: 5 min- Sprint Retrospective: 5 min

Page 50: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Hands on …

- Sprint Planning

- PO explica o problema- SM facilita a reunião- O que o dev. Team consegue entregar ?

Page 51: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Hands on …

- Daily Scrum

- O que fiz desde o ultimo daily- O que vou fazer até o proximo- Impeditivos ?

Page 52: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Hands on …

- Sprint Review

- Apresenta para o PO o produto- Chegamos ao objetivo ?

Page 53: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Hands on …

- Sprint Retrospective

- O que foi bom ?- O que melhorar ?- Ações de melhoria !

Page 54: Scrum - Aplicando Metodologias Ageis no Desenvolvimento de Software

Referências

• Site Manifesto Ágil – História da origem do paradigma de desenvolvimento ágilhttp://www.agilemanifesto.org/iso/ptbr/• Site Scrum Overview – Projeto Eclipse

http://epf.eclipse.org/wikis/scrumpt/• Site Implementing Scrum

http://www.implementingscrum.com/• Scrum – Wikipedia

https://pt.wikipedia.org/wiki/Scrum_(desenvolvimento_de_software)