1. Exemplo de um Processo de Software - Scrum
Introdução à
Introduç
Engenharia de Software
Unidade III – Exemplo de um
Processo de Software - Scrum
Pedro de Alcântara dos Santos Neto
pasn@ufpi.edu.br
Exemplo de um Processo de Software - Scrum
Roteiro
Explicaremos o SCRUM seguindo a seguinte
estrutura:
Um breve histórico
histó
Detalharemos os Papéis
Papé
Detalharemos todas as cerimônias prescritas pelo
processo
– Ritual com formalidades a serem seguidas
Detalharemos, dentro das cerimônias, resultados
associados
– Correspondendo aos principais artefatos
a serem gerados nos projetos
Exemplo de um Processo de Software - Scrum
Um breve histórico
histó
Quem usa Scrum?
Scrum?
Jeff Sutherland
Uso inicial do scrum na Easel em 1993
IDX e mais de 500 pessoas usando scrum
Ken Schwaber
Apresentação na OOPSLA 96 com Sutherland
Apresentaç
Três livros sobre Scrum
Mike Beedle
Padrões para o Scrum na PLOPD4
Ken Schwaber and Mike Cohn
Fundaram a Scrum Alliance em 2002, inicialmente
junto com a Agile Alliance
Exemplo de um Processo de Software - Scrum
Para que o Scrum tem sido usado?
Software comercial
Desenvolvimento interno
Desenvolvimento contratado
(terceirização)
(terceirizaç
Projetos de preço fixo
preç
Aplicações Financeiras
Aplicaç
Aplicações certificadas pela isso
Aplicaç
9001
Sistemas embarcados
Sistemas disponíveis 24x7
disponí
Desenvolvimento por hackers
solitários
solitá
Exemplo de um Processo de Software - Scrum
Video games
Sistemas para suporte à vida
Sistemas para controle de satélites
saté
Websites
Software para handhelds
Telefones celulares
Aplicações para redes
Aplicaç
Aplicações de ISV (Independent
Aplicaç
Software Vendors)
Algumas das maiores aplicações em
aplicaç
produção
produç
Microsoft
Yahoo
Google
Electronic Arts
High Moon Studios
Lockheed Martin
Philips
Siemens
Nokia
Capital One
BBC
Intuit
Intuit
Nielsen Media
First American Real Estate
BMC Software
Ipswitch
John Deere
Lexis Nexis
Sabre
Salesforce.com
Time Warner
Turner Broadcasting
Oce
Exemplo de um Processo de Software - Scrum
Para que o Scrum tem sido usado?
Equipes que se auto-organizam
autoO produto evolui em uma série de “Sprints” mensais
sé
Sprints”
O Sprint é um período definido em que se trabalhará buscando
perí
trabalhará
cumprir um objetivo
Os requisitos são listados em um “Product Backlog”
Backlog”
Não há prática de engenharia prescrita (o Scrum
há prá
adequa-se a todas)
adequaUsa regras generativas na criação de um ambiente ágil
criaç
para a entrega de projetos
É uma das “metodologias ágeis”
geis”
1
2. Exemplo de um Processo de Software - Scrum
Os Papéis...
Papé
Exemplo de um Processo de Software - Scrum
Com relação à equipe
relaç
Aconselhado para equipes com pelo menos 3
colaboradores
Idealmente de 5 a 9
Multi-funcional
MultiProgramadores, testadores, webdesigners, etc.
Programadores, testadores, webdesigners,
Tempo integral
– Quando houver estagiários, todos no mesmo turno
estagiá rios,
Trocas só na mudança de Sprints
mudanç
Todos devem sentar junto.
junto.
Ter funções variáveis
funç
variá
podendo ser fixas em um sprint
Pedir ajuda e ajudar sempre que necessário
necessá
Exemplo de um Processo de Software - Scrum
Com relação ao Scrum Master
relaç
Toda equipe deve ter um Scrum Master
Representa a gerência para o projeto
Responsável pela aplicação dos valores
Responsá
aplicaç
e práticas do Scrum
prá
Remove obstáculos
obstá
Garante a plena funcionalidade e
produtividade da equipe
Garante a colaboração entre os
colaboraç
diversos papéis e funções
papé
funç
Escudo para interferências externas
Exemplo de um Processo de Software - Scrum
As Cerimônias...
Exemplo de um Processo de Software - Scrum
Com relação ao Product Owner
relaç
Todo projeto deve ter um Product Owner
Idealmente membro dos clientes do produto
Mas em casos excepcionais um membro da equipe
Ele deve priorizar as ações da equipe
Para isso, deve entender o produto a ponto de priorizar
isso,
sem gerar problemas
Ajusta funcionalidades e prioridades
Aceita ou rejeita o resultado dos trabalhos
Exemplo de um Processo de Software - Scrum
Cerimônias: A Reunião Inicial
2
3. Exemplo de um Processo de Software - Scrum
Exemplo de um Processo de Software - Scrum
A Reunião Inicial
A Reunião Inicial
Definição das
Definiç
estórias/funcionalidades
estó
do produto
Como obter informações sobre o produto?
informaç
Estudando e lendo materiais relacionados
Analisando softwares pré-existentes
pré
Perguntando...
Product backlog
Geralmente feito com a participação de toda a
participaç
equipe + product owner e, opcionalmente,
outros membros representante dos clientes
Um ou mais dias de conversas, com registro dos
dados em um documento
O quê perguntar?
Tente seguir os passos do negócio para se fazer algo
negó
– Sempre que um passo for descrito, questione o que
necessita para aquilo ser exeqüível
exeqüível
– Se existe algo anterior, questione sobre ele
– Repita esses passos até que tudo tenha sido coberto...
até
Equivalente ao levantamento de requisitos
Nos processos tradicionais
Exemplo de um Processo de Software - Scrum
Exemplo de um Processo de Software - Scrum
A Reunião Inicial
Como registrar?
Diagrama de casos de uso fornece uma boa visão
sobre os atores do sistema e funcionalidades
Composto por atores e casos de uso
– Atores são papéis associados ao uso do sistema (e não
papé
pessoas!)
– Casos de uso são as funcionalidades do produto, que
possuem um valor para seus usuários, sem lacunas
usuá
nem superposição com outros casos de uso
superposiç
Exemplo de um Processo de Software - Scrum
Número
de ordem
Caso de uso
1.
Cadastro de
Solicitação de Leito
2.
3.
4.
5.
6.
Descrição
Exemplo de um Processo de Software - Scrum
Número
de ordem
Ator
1.
Intensivista
Autorização de envio Registro da autorização da solicitação para constar na lista de
para lista de espera espera por leitos.
2.
Regulador
Controle da Lista de Controle da lista de espera por leitos, com registro de
evolução dos pacientes, além de registro de entrada ou
Espera
encaminhamento em leitos hospitalares e eventual remoção da
lista.
3.
Auditor
4.
Gerente
5.
Plantonista
6.
Médico
7.
Enfermeira
8.
Auxiliar
9.
Chefe de Setor
Cadastro das solicitações de leitos para pacientes com
necessidades de internação.
Controle da Lista de Controle dos encaminhamentos de pacientes para leitos, com
remoção automática da reserva associada caso não seja
Encaminhamento
realizado o registro de entrada no prazo previsto.
Controle de
Internações
Controle das internações em leitos, com possibilidade registro
de alta, e conseqüente liberação do leito, além de
transferências para outros leitos.
Controle de Leitos
Bloqueio e liberação de leitos.
Definição
Médico plantonista que coordena a UTI no hospital e faz a
solicitação das vagas.
Médico regulador da Central de Leitos, que recebe, avalia e
gerencia as solicitações e eventuais internações.
Médico da Central de Leitos, que visita os hospitais e verifica se as
informações no sistema correspondem à realidade.
Médico regulador da Central de Leitos que atua em casos
excepcionais, controla leitos e usuários do sistema .
Profissional da saúde escalado em plantão, responsável por
verificar a necessidade de internação de um paciente em UTI.
Profissional da medicina escalado em Plantão.
Profissional de enfermagem, escalado em Plantão e responsável
por auxiliar o Intensivista em suas tarefas.
Enfermeira escalada em Plantão responsável por auxiliar o
Intensivista em suas tarefas.
Profissional de saúde responsável por controlar as escalas de
plantão de um hospital.
3
4. Exemplo de um Processo de Software - Scrum
A Reunião Inicial
Exemplo de um Processo de Software - Scrum
A Reunião Inicial
Principal resultado: Product Backlog
Principal resultado: Product Backlog
Representa os requisitos do produto
– Uma lista de todo o trabalho desejado no projeto
Cada item deve ter seu peso de acordo com a
vontade dos usuários
usuá
Priorizado pelo dono do produto
Repriorizado no início de cada Sprint
iní
ID
2481
2567
2344
2211
2332
3221
3342
N ome
Preparar ambiente para integração contínua
Criar projeto base no C VS
Modelar Contrato e Remuneração
Implementar Gestão de Contrato
Implementar Gestão de Remuneração
Testes F uncionais Gest ão de Contrato
Testes F uncionais Gest ão de Remuneração
Prioridade
40
10
10
20
20
50
50
Tem po
Estimado
Tempo Gasto
12
2
1
4
6
8
10
8
14
8
8
Product Backlog
Exemplo de um Processo de Software - Scrum
Cerimônias: A Reunião de Planejamento
Exemplo de um Processo de Software - Scrum
Planejamento
A equipe seleciona itens do Product Backlog com os
quais compromete-se a concluir
comprometeDefinição da carga de trabalho da equipe
Definiç
O Sprint Backlog é criado
Com criação dos cartões
criaç
Tarefas identificadas e estimadas
Criação do gráfico de acompanhamento
Criaç
grá
Definição do local e horário das reuniões diárias
Definiç
horá
diá
Definição do conceito de “feito”
Definiç
feito”
Organização do quadro do projeto
Organizaç
Exemplo de um Processo de Software - Scrum
Planejamento
Exemplo de um Processo de Software - Scrum
Planejamento
É importante a participação do product owner,
participaç
owner,
para entender o funcionamento...
Para determinação da carga de trabalho do
determinaç
grupo, devemos calcular o tempo disponível
disponí
Definir tamanho do Sprint (em dias)
– Normalmente usa-se 2 semanas (10 dias úteis)
usa– Esse número pode ser menor, quando precisamos ter
nú
respostas mais rápidas e para obter dados sobre
rá
produtividade
– Ou maiores, quando as coisas já estão mais estáveis
já
está
4
5. Exemplo de um Processo de Software - Scrum
Exemplo de um Processo de Software - Scrum
Planejamento
Planejamento
Um grande problema: Tarefas não planejadas!
Tarefas que surgem durante o sprint e que
necessitam ser realizadas
Muito comum nos locais que tem softwares em
operação
operaç
Como resolver essa questão, visto que temos que
planejar as atividades?
Fator de ajuste
Percentual de tempo produtivo efetivamente
utilizado para computar carga de trabalho da
equipe
Colaboradores que trabalham 8h/dia, dificilmente
passam 8h realizando tarefas diretamente
relacionadas ao desenvolvimento
– Existe tempo para ler e-mails
e– Conversar com colegas
– Tomar café, ir ao banheiro, etc...
café
– Previsão de tempo para tais tarefas
– Podem ou não fazer parte do sprint
– Registro do tempo gasto, para facilitar novas
estimativas
– O fator de ajuste pode ser utilizado nessa direção!
direç
Um fator de ajuste muito comum é usar 75%
– Mas esse número depende da organização...
nú
organizaç
Exemplo de um Processo de Software - Scrum
Exemplo de um Processo de Software - Scrum
Planejamento
Planejamento
Dedicação dos membros da equipe
Dedicaç
Exemplo
Colaboradores com cargos chaves no processo
precisam ter sua carga de trabalho analisada
– Scrum masters normalmente gastam metade do
tempo útil em tarefas relacionadas à condução do
conduç
processo
– Quando um colaborador assume o papel de Product
owner, provavelmente gaste também metade do
owner,
també
tempo útil com tarefas de verificação e eliminação de
verificaç
eliminaç
dúvidas, além do contato com os usuários do produto
alé
usuá
Objetivo
Duração
Fator de ajuste
Total = dedicação diária * duração sprint * fator ajuste
Contrato e Remuneração
10
0,6
Colaborador
Pedro
Emanoel
Daniel
Danilo
Eric Muniz
Dedicação diária
4
8
8
4
6
Total do Sprint
Cada projeto é uma realidade diferente!
Product owner
Total
24
48
48
24
36
180
Fator de ajuste reduzido
por conta do não
cumprimento dos prazos
Scrum Master
Colaborador em outro projeto
Exemplo de um Processo de Software - Scrum
Planejamento
Total do Sprint
Exemplo de um Processo de Software - Scrum
180
Gráfico de acompanhamento
Grá
Gráfico de acompanhamento
Grá
Representa a quantidade de horas associadas às
tarefas do Sprint
Idealmente, as tarefas deveriam ser finalizadas ao
longo dos dias do Sprint
O gráfico ideal é uma reta que inicia na carga de
grá
trabalho da equipe (180h no exemplo) e finaliza em
0 no último dia do Sprint
A cada tarefa concluída e verificada, devemos
concluí
descer a quantidade de horas no gráfico
grá
h
Gráfico de Acompanhamento
180
170
160
150
140
130
120
110
100
90
80
70
60
50
40
30
20
10
0
0
1
2
3
4
5
Dias do Sprint
Planejamento
6
7
8
9
10
– Discutido mais a frente...
5
6. Exemplo de um Processo de Software - Scrum
Planejamento
Planejamento
Devem ser
utilizados cartões
para representar as
tarefas
NOME
ID
DESCRIÇÃO
Criados no
planejamento
O verso pode ser
utilizado para
observações
observaç
Exemplo de um Processo de Software - Scrum
COMO VERIFICAR
Tempo
Estimado
Tempo
Real
Responsável
pela tarefa
Exemplo de um Processo de Software - Scrum
Planejamento
Divisão dos cartões
Tempo estimado: tempo especificado pela equipe para
realização da tarefa
realizaç
– Como estimar tal tempo? Jogo do planejamento
» Todos da equipe possuem cartas
» Discute-se sobre a tarefa e solicita-se que todos joguem
Discutesolicitacartas representando sua estimativa (viradas para que
ninguém veja a estimativa antes que todos estimem!)
ningué
Exemplo de um Processo de Software - Scrum
Planejamento
Divisão dos cartões
Tempo real:
– Tempo efetivamente utilizado para realização da tarefa
realizaç
– Fundamental seu registro para auxiliar estimativas
futuras
Responsável
Responsá
– Colaborador encarregado de realizar a tarefa
– A princípio não deve ser pré-estabelecido
princí
pré
» Cada um faz o que mais lhe agrada das tarefas
– Mas o bom senso sempre deve imperar!
Divisão dos cartões
ID: identificador da tarefa
– Utilizado para acompanhamento em ferramentas que controlam
a apropriação de horas
apropriaç
Nome
Descrição: texto simples e objetivo descrevendo a tarefa
Descriç
Como verificar: indicação de como deve ser feita a verificação dessa
indicaç
verificaç
tarefa, quando a mesma estiver concluída
concluí
– Embora pareça “dispensável”, quando existem muitas tarefas a
pareç dispensá vel”
verificar, podemos perder o foco no que é importante
» Fortemente aconselhável para toda e qualquer equipe
aconselhá
» Base para construção dos testes para a funcionalidade
construç
Exemplo de um Processo de Software - Scrum
Planejamento
Divisão dos cartões
Tempo estimado:
– Pode-se considerar a média, descartar alguns valores
Podemé
(maior e menor, por exemplo)
– O importante é estabelecer parâmetros de aceitação
aceitaç
»
»
»
»
»
Um “?” indica que mais explicações são necessárias
explicaç
necessá
Um “0” indica algo tão pequeno que não merece estimar
Uma xícara indica necessidade de tempo pra pensar...
xí
Tarefas acima de 16h merecem ser divididas
Estimativas muito diferentes merecem explicações
explicaç
Exemplo de um Processo de Software - Scrum
Planejamento
Como selecionar tarefas para o Sprint?
Sprint?
Deve-se selecionar do Backlog as tarefas mais
Deveimportantes
Encaixando dentro da carga de trabalho indicada
pela equipe
De forma a termos o maior
aproveitamento dessa
carga de trabalho
» O objetivo é seguir o plano, desde que não se crie ilhas do
conhecimento
6
7. Exemplo de um Processo de Software - Scrum
Planejamento
Como selecionar tarefas para o Sprint?
Sprint?
As tarefas selecionadas representam um
compromisso assumido com o Product Owner
Para isso, todos devem concordar e acreditar nas
estimativas
– Mais uma vez o bom senso deve imperar
– Se alguém não acredita no que foi dimensionado
algué
para o Sprint, fale sobre isso!!!
Sprint,
Exemplo de um Processo de Software - Scrum
Planejamento
Definição de Feito (DoD)
Definiç
(DoD)
Para uma tarefa de implementação no modelo:
implementaç
modelo:
– Criação das classes no projeto
Criaç
– Criação do teste de unidade
Criaç
– Inclusão do teste na integração contínua
integraç contí
– Classes no CVS
Para uma tarefa de implementação na visão:
implementaç
visão:
– Criação das classes no projeto
Criaç
– Criação dos testes funcionais com Selenium
Criaç
– Classes no CVS
– Redação do manual do usuário e inclusão no CVS
Redaç
usuá
Exemplo de um Processo de Software - Scrum
Planejamento
Definição do local e horário das reuniões
Definiç
horá
diárias
diá
No planejamento é fundamental especificar tais
dados
Essas reuniões são vitais para o bom andamento do
projeto
Organizar a equipe de forma que todos participem
Exemplo de um Processo de Software - Scrum
Planejamento
Definição de Feito (DoD)
Definiç
(DoD)
Todo projeto deve ter uma definição claro sobre o
definiç
que é considerado feito!
feito!
Para uma tarefa de modelagem, por exemplo:
modelagem,
exemplo:
– Diagrama representando a modelagem feito na
ferramenta JUDE
– Diagrama contido no CVS
– Revisão em conjunto com o Scrum Master
Exemplo de um Processo de Software - Scrum
Planejamento
Definição de Feito (DoD)
Definiç
(DoD)
Podem haver definições de feito gerais na
definiç
organização
organizaç
– Podendo haver especializações por projeto
especializaç
É importante deixá-las clara no planejamento, para
deixá
planejamento,
que todos saibam que existe e com isso garantir sua
utilização!
utilizaç ão!
Dependendo do projeto, novas definições precisam
projeto,
definiç
ser criadas
– O que é feito para uma tarefa de documentação?
documentaç ão?
Exemplo de um Processo de Software - Scrum
Planejamento
Definição da data, horário e local para
Definiç
horá
apresentação dos resultados do Sprint
apresentaç
Definição da data, horário e local para
Definiç
horá
apresentação dos resultados do Sprint
apresentaç
Todos devem saber das datas!
– Problemas quando temos pessoas dedicadas
parcialmente
7
8. Exemplo de um Processo de Software - Scrum
Planejamento
Organização do quadro do projeto
Organizaç
Exemplo de um Processo de Software - Scrum
Planejamento
Organização do quadro do projeto
Organizaç
Os quadros devem ter as seguintes divisões para
tarefas
– Não iniciadas, Em execução, Concluídas, Verificadas
iniciadas,
execuç ão, Concluí das,
Exemplo de um Processo de Software - Scrum
Planejamento
Exemplo de um Processo de Software - Scrum
Cerimônias: A Reunião Diária
Diá
Organização do quadro do projeto
Organizaç
Área para Objetivo do Sprint
Área para o Gráfico de Acompanhamento
Grá
Área para especificar a Equipe
Área para detalhar a data de início e fim do sprint
iní
Área para especificar dia da apresentação dos
apresentaç
resultados
Área para especificar local e horário das reuniões
horá
diárias
diá
Área para especificar o dia da retrospectiva
Exemplo de um Processo de Software - Scrum
A Reunião Diária
Diá
Importante: Deve ser diária!
Importante:
diária!
Exemplo de um Processo de Software - Scrum
A Reunião Diária
Diá
Todos respondem 3 perguntas:
perguntas:
Em torno de 15 minutos
Todos em pé!
1
O que foi feito de ontem pra hoje?
O que foi feito de ontem pra hoje?
Facilita o gerenciamento do tempo
Não é para a solução de problemas
soluç
Problemas devem ser identificados
Sua solução é tratada depois
soluç
Ajuda a evitar reuniões adicionais
desnecessárias
desnecessá
2
O que será feito de hoje até amanhã?
O que será feito de hoje até amanhã?
3
Existe algum impedimento?
Existe algum impedimento?
8
9. Exemplo de um Processo de Software - Scrum
A Reunião Diária
Diá
Exemplo de um Processo de Software - Scrum
Cerimônia: Acompanhamento do Projeto
Problemas são detectados e discutidos
inicialmente
Impedimentos são registrados
Itens não planejados também são registrados
també
para acompanhamento
Todos falam, sob a supervisão do scrum master
falam,
Exemplo de um Processo de Software - Scrum
Acompanhamento do Projeto
Além das reuniões diárias, o Scrum Master
Alé
diá
possui outras tarefas rotineiras:
Verificar tarefas concluídas
concluí
Atualizar gráfico de acompanhamento
grá
Resolver impedimentos
Atuar quando houver desvio no planejamento
Exemplo de um Processo de Software - Scrum
Acompanhamento do Projeto
Verificação das tarefas concluídas
Verificaç
concluí
Idealmente deve ser feito pelo Scrum Master +
Product Owner
Utilizar a definição de “como verificar” existente no
definiç
verificar”
cartão
Seguir a definição de feito
definiç
– Se algum item não coincidir com o especificado,
indicar ao responsável para efetiva conclusão
responsá
– Muito cuidado com os testes!
Para tarefas de implementação
implementaç
– Não se ater somente no funcionamento
– Incluir a análise do código
aná
có
Exemplo de um Processo de Software - Scrum
Acompanhamento do Projeto
Atualização do gráfico de acompanhamento
Atualizaç
grá
Para cada tarefa verificada, baixar número
nú
correspondente à estimativa no gráfico
grá
– Estimativa e não o tempo efetivamente gasto!!!
– Mas pode-se ter uma outra linha com o tempo
podetrabalhado
» Existem controvérsias sobre
contrové
o que utilizar, assim, use as
duas linhas
Exemplo de um Processo de Software - Scrum
Acompanhamento do Projeto
Resolução de impedimentos
Resoluç
Durante as reuniões diárias impedimentos podem
diá
ser identificados
Cabe ao Scrum Master garantir sua resolução
resoluç
– Isso pode significar atuar junto à gerência
Os impedimentos devem ser acompanhados
– Registrar identificação do impedimento
identificaç
» Ou seja, criar cartão diferenciado, associado ao cartão
impedido e deixar isso bem visível
visí
– Registrar solução
soluç
9
10. Exemplo de um Processo de Software - Scrum
Acompanhamento do Projeto
Atuação nos desvios de planejamento
Atuaç
Durante a atualização do gráfico de
atualizaç
grá
acompanhamento podem ser notados grandes
desvios
– O Scrum Master deve atuar para tentar identficar
causas
– Tentando propor contramedidas para reduzir os
atrasos
Atividade freqüente e contínua...
freqü
contí
– Mas sem um guia sobre como agir
– Cada caso é um caso...
Exemplo de um Processo de Software - Scrum
Cerimônias: Apresentação do Sprint
Apresentaç
Exemplo de um Processo de Software - Scrum
Acompanhamento do Projeto
Os membros da equipe devem:
“Pegar” uma tarefa e indicar isso através do quadro
Pegar”
atravé
– Mudando para área “em execução” e registrado-se como
execuç ão” registradoresponsável
responsá
Atualizar registro de tempo gasto na tarefa
– Registrando no meio indicado pela empresa (atualmente
no Quantum)
– Onde não existe meio eletrônico, pode-se usar marcas
poderepresentando tempo gasto (*, |_|, etc.)
Informar a finalização de uma tarefa, com registro do tempo
finalizaç
gasto
– Lembrando que ela pode voltar para “em execução”, caso
execuç ão”
não seja aprovada...
» Ou seja, não finalize no Quantum tarefas ainda não
verificadas...
Exemplo de um Processo de Software - Scrum
Apresentação do Sprint
Apresentaç
Equipe apresenta os resultados obtidos durante
o Sprint
Tipicamente, demonstração de novas
Tipicamente, demonstraç
funcionalidades ou sua arquitetura
Informal
Sem muita preparação
preparaç
– Preocupar-se com o ambiente
Preocupar» reserva de sala, equipamentos
sala,
Sem slides
Toda a equipe participa
Todos são convidados
Exemplo de um Processo de Software - Scrum
Cerimônias: Retrospectiva
Exemplo de um Processo de Software - Scrum
Retrospectiva
Durante o Sprint, é necessário observar o que funciona
necessá
e o que não funciona
Na retrospectiva, isso deve ser discutido por todos
retrospectiva,
Tipicamente uma reunião rápida, com cerca de 1h
pida,
Feita após cada Sprint
apó
Toda a equipe participa
ScrumMaster
Dono do produto
Membros da equipe
Clientes e outros
10
11. Exemplo de um Processo de Software - Scrum
Retrospectiva
A equipe tenta responder a
três questões
O que você achou muito bom
no Sprint e que deveria
continuar sendo feito
O que você achou muito ruim
e não deveria mais ser feito
(ou mudado)
O que não está sendo feito
está
mas deveria iniciar
Retrospectiva
Continuar
Continuar
fazendo
fazendo
Parar de fazer
Parar de fazer
Retrospectiva
Evitar o que foi considerado ruim
Garantir que as coisas boas
continuam
Garantir que o que foi sugerido
iniciar realmente iniciou
Cada membro anota as
respostas em cartões
Cada cartão com uma
resposta
No máximo 3 cartões por
má
pergunta
As resposta similares devem
ser agrupadas
Continuar
Continuar
fazendo
fazendo
Parar de fazer
Parar de fazer
Iniciar a fazer
Iniciar a fazer
Iniciar a fazer
Iniciar a fazer
Exemplo de um Processo de Software - Scrum
Para cada questão registrar as 3
respostas mais utilizadas
Elas devem ser utilizadas pelo
Scrum Master na condução dos
conduç
novos Sprints
Exemplo de um Processo de Software - Scrum
Exemplo de um Processo de Software - Scrum
Final do Sprint
Continuar
Continuar
fazendo
fazendo
Terminei um Sprint, e agora?
Sprint,
Utilize no máximo um dia para pequenos ajustes
má
e realize novo planejamento
Parar de fazer
Parar de fazer
Iniciar a fazer
Iniciar a fazer
Exemplo de um Processo de Software - Scrum
Introdução à
Introduç
Engenharia de Software
Unidade III – Exemplo de um
Processo de Software - Scrum
Pedro de Alcântara dos Santos Neto
pasn@ufpi.edu.br
11