tribunal de justiÇa de pernambuco diretoria de informÁtica visão geral scrum janeiro/2010
TRANSCRIPT
TRIBUNAL DE JUSTIÇA DE PERNAMBUCOTRIBUNAL DE JUSTIÇA DE PERNAMBUCO
DIRETORIADIRETORIA DEDE INFORMÁTICAINFORMÁTICA
Visão GeralVisão Geral
ScrumScrum
Janeiro/2010
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralCaracterísticas
Equipes que se auto-organizam
O produto evolui em uma série de “Sprints” mensais
Os requerimentos são listados em um “Product Backlog”
Não há prática de engenharia prescrita (adequa-se a todas)
É uma das “metodologias ágeis”
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralManifesto Ágil - Valores
Processos e ferramentasProcessos e ferramentas
Indivíduos e interações
Indivíduos e interações
ao invés
de
Seguir um planoSeguir um planoResposta à mudançasResposta à mudanças
www.agilemanifesto.org
Documentação abrangente
Documentação abrangente
Software que funciona
Software que funciona
Negociação de contrato
Negociação de contrato
Colaboração do cliente
Colaboração do cliente
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Imagem disponível em: www.mountangoatsoftware.com/scrum
Ciclo Scrum
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralCiclo Scrum
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralSprints
Projetos Scrum progridem em uma série de “sprints”• Similar às iterações do XP
Ocorre em um período de duas a quatro semanas
Um período constante leva a um melhor “ritmo”
O produto é projetado, codificado e testado durante o sprint
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Nenhuma mudança durante o Sprint
Planeje a duração dos sprints de acordo com o máximo tempo com o qual você pode se comprometer
Change
Mudanças
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
•Product Owner•Scrum Master•Equipe
Papéis
•Planejamento•Revisão•Retrospectiva•Reunião diária
Cerimônia
•Product backlog•Sprint backlog•Burndown charts
Artefatos
Scrum Framework
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
•Planejamento•Revisão•Retrospectiva•Reunião diária
•Product backlog•Sprint backlog•Burndown charts
Artefatos
•Product Owner•Scrum Master•Equipe
Papéis
Cerimônia
Scrum Framework
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralProduct Owner
Define as funcionalidades do produtoDecide datas de lançamento e conteúdoResponsável pela rentabilidade (ROI)Prioriza funcionalidades de acordo com o valor
de mercadoAjusta funcionalidades e prioridadesAceita ou rejeita o resultado dos trabalhos
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralScrum Master
Representa a gerência para o projetoResponsável pela aplicação dos valores e
práticas do ScrumRemove obstáculosGarante a plena funcionalidade e produtividade
da equipeGarante a colaboração entre os diversos papéis
e funçõesEscudo para interferências externas
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralEquipe
Entre 5 e 9 pessoasMulti-funcional
• Programadores, testadores, desenvolvedores de interfaces, etc.
Tempo integral• Raras exceções (Ex.: Administrador de Base de Dados)
Auto-organizável• Idealmente, sem títulos, ainda que possível
Trocas só na mudança de Sprints
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
•Product Owner•Scrum Master•Equipe
Papéis
•Planejamento•Revisão•Retrospectiva•Reunião diária
Cerimônia
•Product backlog•Sprint backlog•Burndown charts
Artefatos
Scrum Framework
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralPlanejamento da Sprint
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
TIMEBOX!
Planejamento da Sprint
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralPlanejamento da Sprint
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
ParticipamTime
Scrum MasterProduct Owner
Reunião de estratégia
Definir o objetivo da Sprint
Estimar e priorizar o Product Backlog
Comprometimento do Time
Planning 1
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
12
3
Planning Poker
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralPlanning 1
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
ParticipamTime
Scrum Master
Reunião de planejamento tático
Dividir as estórias em tarefas
Reunião de designer de software
Planning 2
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Planejamento
Priorização
• Análise e avaliação do product backlog
• Objetivo do sprint
Plano
• Decidir como chegar ao objetivo (projeto)
• Cria tarefas do sprint backlog a partir dos itens do product backlog (user stories / funcionalidades)
• Horas no sprint backlog
ObjetivoObjetivo
SprintbacklogSprint
backlog
Condições de negócioCondições de negócio
Capacidades da equipe
Capacidades da equipe
Product backlogProduct backlog
TecnologiaTecnologia
Produto atual
Produto atual
Resumo: Planejamento
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
A equipe seleciona itens do Product Backlog com os quais compromete-se a concluir
O Sprint Backlog é criado• Tarefas identificadas e estimadas (1 a 16 horas)• De forma colaborativa, não apenas feito pelo ScrumMaster
Planejamento de alto nível é considerado
Resumo: Planejamento
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralResumo: Planejamento
Quero que os usuários do portal possam planejar suas férias, escolhendo itinerários online.
Quero que os usuários do portal possam planejar suas férias, escolhendo itinerários online.
Modelagem (8 horas)Codificar interface (4)Escrever textos (4)Codificar a classe foo (6)Atualizar testes de performance (4)
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralScrum diário
Parâmetros• Diário• 15 minutos
Todos em pé!Não é para a solução
de problemas• Todo mundo é convidado• Apenas os membros da equipe, ScrumMaster, dono do
produto podem falarAjuda a evitar reuniões adicionais
desnecessárias
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralTrês questões, para todos
O que fizeste ontem?O que fizeste ontem?1
O que vais fazer hoje?O que vais fazer hoje?2
Há algum obstáculo?Há algum obstáculo?3
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralTrês questões, para todos
As respostas não são um “relatório” para o ScrumMaster
Elas são COMPROMISSOS perante os pares
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralRevisão do Sprint
Equipe apresenta os resultados obtidos durante o Sprint
Tipicamente, demonstração de novas funcionalidades ou sua arquitetura
Informal• 2 horas de duração• Sem slides
Todo o time participaO cliente é convidado
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralRetrospectiva do Sprint
Periodicamente, observe o que funciona e o que não funciona
Tipicamente de 15 a 30 minutosFeita após cada SprintToda a equipe participa
• ScrumMaster• Dono do produto• Membros da equipe• Clientes e outros
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralInicia, Pára, Continua
A equipe discute o que gostaria de:
Iniciar a fazerIniciar a fazerIniciar a fazerIniciar a fazer
Parar de fazerParar de fazerParar de fazerParar de fazer
Continuar Continuar fazendofazendo
Continuar Continuar fazendofazendo
Esta é uma das várias maneiras de se conduzir
uma retrospectiva
do Sprint
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
•Product Owner•Scrum Master•Equipe
Papéis
•Planejamento•Revisão•Retrospectiva•Reunião diária
Cerimônia
•Product backlog•Sprint backlog•Burndown charts
Artefatos
Scrum Framework
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralProduct Backlog
Os requerimentos Uma lista de todo o trabalho
desejado no projeto Idealmente, na forma em que
cada item tenha seu peso de acordo com a vontade do cliente ou usuários
Priorizado pelo dono do produto
Repriorizado no início de cada Sprint
Este é o Product Backlog
Este é o Product Backlog
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Item do Backlog Estimativa
Permitir que o usuário faça uma reserva 3
Permitir que o usuário cancele a reserva 5
Permitir a troca de datas da reserva 3
Permitir que empregadod do hotel gerem relatórios de lucratividade
8
Melhorar manipulação de erros 8
... 30
... 50
Exemplo de Product Backlog
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Uma estória de usuário, ou user story, é um requisito de sistemas de software
formulado com uma ou duas sentenças em linguagem natural.
User Story
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
User stories são uma maneira rápida de lidar com requisitos do cliente
User Story
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Como “usuário do sistema”
Quero “funcionalidade”
Para “valor de negócio”
Mike Cohn
User Story
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Mike Cohn
Como Gestor, Quero que as informações pessoais dos clientes fiquem gravadas em formato criptografado no banco de dados, Para garantir a privacidade e a segurança dos dados dos meus clientes.
Critérios de aceitação: - Ter os dados armazenados no banco de dados e arquivos de troca do sistema usando algoritmo de criptografia do tipo chave publica/chave privada.
Exemplo de uma User Story
User Story
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Breve declaração que ilustre o foco do trabalho durante o Sprint
Base de Dados
Serviços financeiros
Ciências da vidaFuncionalidades para estudos genéticos da população
Criar suporte para indicadores de desempenho em tempo real
Fazer com que a aplicação rode no SAL Server além do PostgreSQL
Objetivo da Sprint
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralGerenciando o Sprint Backlog
Cada indivíduo escolhe o trabalho que fará• Trabalhos nunca são atribuídos
Atualização diária da estimativa do trabalho restante Qualquer membro da equipe pode adicionar, apagar ou
mudar tarefas O trabalho aparece a partir do Sprint Se uma tarefa não é clara, defina-a como um item com
uma quantidade maior de tempo e subdivida-a depois Atualize as coisas a serem feitas na medida em que se
tornam mais conhecidas
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
TarefasTarefasCodificar interface de usuário
Codificar regra de negócio
Testar
Escrever help online
Escrever a classe foo
SegSeg8
16
8
12
8
TerTer4
12
16
8
QuaQua QuiQui
4
11
8
4
SexSex
8
8
Adicionar log de erros
8
10
16
8
8
Sprint Backlog
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralBurndown Chart
Hora
s
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralBurndown Chart
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Hora
s
40
30
20
10
0Seg Ter Qua Qui Sex
50
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralEscalabilidade
Equipe de 7 ± 2 pessoas• Escalabilidade através de equipes de equipes
Fatores de escala• Tipo de aplicação• Tamanho da equipe• Dispersão da equipe• Duração do projeto
Scrum é usado em projetps envolvendo mais de 500 pessoas
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralScrum de Scrums
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geral
Scrum de Scrums de Scrums
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralDificuldades
O que é difícil em Scrum?
Detalhes podem escapar se não for gerenciado corretamente
Criar e manter um Product Backlog requer trabalho
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralDicas de Leitura
Agile and Iterative Development: A Manager’s Guide by Craig Larman Agile Estimating and Planning by Mike Cohn Agile Project Management with Scrum by Ken Schwaber Agile Retrospectives by Esther Derby and Diana Larsen Agile Software Development Ecosystems by Jim Highsmith Agile Software Development with Scrum by Ken Schwaber and Mike Beedle Scrum and The Enterprise by Ken Schwaber User Stories Applied for Agile Software Development by Mike Cohn Artigos semanais em www.scrumalliance.org
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralCopyright
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralAutores
Criação:• Mike Cohn• [email protected]• www.mountaingoatsoftware.com• +1 (720) 890-6110 (escritório)
Tradução e adaptação:• Cesar Brod• [email protected]• www.brod.com.br
Adaptação da Adaptação:• Gustavo Carvalho + Juliana Xavier• [email protected], [email protected]
TJPE.DINFO.GETEC.UMCSTI
Scrum – Visão geralDúvidas | Sugestões
50
UMCSTI: [email protected]
Telefone: 3419.3649