Please enable JavaScript.
Coggle requires JavaScript to display documents.
:star: :star: Scrum e Métodos Ágeis - Luiz Duarte - Coggle Diagram
:star: :star:
Scrum e Métodos Ágeis - Luiz Duarte
1. Pra quem não sabe nada de Agile...
O software/produto é um meio e não um fim. É um meio para a solução de um problema ou melhoria de algo que existe.
Vantagens de usar o Scrum
Adaptabilidade
Transparência: Todas as fontes de informação são compartilhadas. Kanban, gráfico BurnDown...
Feedback contínuo: Reunião diária e Sprint Review. Você precisa saber se está no caminho certo. O seu colega precisa saber como pode lhe ajudar e você precisa saber se ele precisa de ajuda também.
Melhoria contínua:
● Você constrói um incremento de produto
● Você mede o desempenho dele
● Você aprende com os erros e refina-o
● Volte ao passo 1
Entrega contínua de valor: Pessoas não gostam de software, as pessoas gostam de ter seus problemas resolvidos. Entregue valor, e rápido.
"Entregue valor continuamente, em pequenas porções mas frequentes, deixando sempre o cliente satisfeito e com um 'gostinho de quero mais.'" (p. 25)
Não é possível entregar tudo o que deseja, dentro do prazo que deseja com o orçamento que quer. Para isso devemos priorizar aquilo que entrega maior valor.
Eficiência: Não faça aquilo que não irá contribuir com o que será entregue. Não há tempo a perder com coisas que não geram valor à meta da sprint. Estimula o Product Owner a manter o backlog priorizado com o que realmente deve entrar no produto na próxima sprint, deixando para um futuro incerto o que não é essencial à aplicação. (p. 26).
Motivação: A reunião diária promove transparência e colaboração, com um ambiente de confiança já que os envolvidos demonstram suporte a quem precisar de ajuda para avançar.
"Quando os times confiam em si mesmos e seus líderes confiam no time, a motivação se torna algo inabalável, gerando a responsabilidade coletiva e o comprometimento, que é o que todo gerente quer da sua equipe e toda empresa quer ver nos seus funcionários."
(p. 26)
Alta velocidade: Quando se entrega valor mais cedo, todos têm a percepção de que o time está avançando mais rápido.
Papéis
Em um Time Scrum não existe hierárquias ou papéis específicos, todos estão comprometidos em fazer o trabalho bem feito, no escopo e prazo estabelecido. Times Scrum devem conter os seguintes papéis:
Product Owner: Gerencia e prioriza o Backlog, deve estar presente e disponível para tirar dúvidas.
Desenvolvedores: Não precisa ser composto apenas por programadores. É autogerenciável, multifuncional e compartilham a responsabilidade pelo sucesso ou fracasso. Devem trabalhar em harmonia. Os devs é quem decidem o quanto conseguem entregar.
Scrum Master: É responsável por aplicar e garantir a adoção do Scrum, lidera para que os objetivos do P.O sejam alcançados e para que os Devs consigam trabalhar sem impedimentos. Geralmente, essa responsabilidade toma muito tempo, o profissional não deve ter outra função em paralelo.
2. Um guia rápido para o Scrum
Pilares do Scrum
Transparência
Etapas importantes devem estar visíveis, o ideal é que todos saibam qual é a sua contribuição para o objetivo maior.
Inspeção
Com certa frequencia, é interessante que haja uma checagem do progresso.
Adaptação
Se algum aspecto desviou para o que havia sido planejado, é preciso que haja um ajuste no processo ou no material. Toda ação deve ser tomada objetivando melhoria.
Os três pilares fazem um ciclo, após adaptações, torna-se estas transparentes e se inspecionam estas para saber se as adaptações estão funcionando.
Sprint
São time-boxes de 1 mês ou menos. Envolve o planejamento, reuniões diárias, revisão, desenvolvimento...Defina um período e deixa a equipe definir como será utilizado esse tempo que possuem. "Dê muito tempo à equipe e ela se tornará menos eficiente, pois terá margem para postergação."
Daily Scrum
É uma curta reunião diária que dura 15 minutos, onde cada pessoa deve falar o que fez ontem, o que fará hoje e se há algum impedimento.
Product Backog
Lista ordenada por prioridade de tudo que deve ser necessário no produto, e origem única dos requisitos para qualquer mudança a ser feita no mesmo. (p. 38).
O que é Scrum?
A definição formal, cunhada pelos criadores Ken Schwaber e Jeff Sutherland, diz que Scrum é ... “Scrum é um framework leve que ajuda pessoas, times e organizações a gerar valor por meio de soluções adaptativas para problemas complexos.” (p. 31).
Eventos
São time-boxes com limite de duração, que pode ser encerrado antes do previsto, mas nunca depois.
3. Roadmap ágil de produto
Matriz Valor x Risco
A matriz de valor x risco é um artefato ágil para dimensionar o tamanho de um projeto ou roadmap, além de ajudar na priorização do mesmo e definição dos épicos e features de um produto. Ela não é uma dinâmica muito boa de aplicar em times grandes, o ideal é que não passe de 5 pessoas. (p. 42).
Considere Risco como qualquer coisa que torne mais arriscado pegar esta feature ou épico para implementar. Pode ser muito esforço necessário, muito custo, desconhecimento dos detalhes, falta de tecnologia ou de pessoal especializado para tocar a tarefa. Pode ser um prazo muito justo ou uma complexidade muito alta de desenvolvimento. Tudo isso representam riscos para que tenhamos sucesso na empreitada deste épico. (pp. 43-44)
4. Histórias de usuários, não tarefas
O Scrum não ensina quais tarefas devem ser organizadas e documentadas a cada sprint. Mas as histórias de usuários ajudam a especificar os requisitos.
O usuário
Toda user story começa com o usuário, todos do time devem conhecer o usuário, saber suas dores, como age, como pensa.
Ponto de vista do usuário
Definido o perfil do usuário, devemos definir o que será desenvolvido.
Motivação
Porque o usuário quer essa funcionalidade? Pra que ela vai servir exatamente? O que isso vai impactar na vida dele?
5. Como estimar o tempo de desenvolvimento
6. Como priorizar o Oroduct Backlog
No escopo está sempre a maior quantidade de desperdício em um projeto e isso aumenta os custos e estoura os prazos. O princípio de Pareto ajuda a reduzir o desperdício.
Princípio de Pareto
80% do uso de uma interface se dá em apenas 20% das funcionalidades. O restante cairá no esquecimento. Não dá pra entregar um Nubank dá vida em duas sprints, mas dá para
priorizar as features baseado no que entrega mais valor ao usuário
o mais rápido possível.
Como chegar a esse nível de priorização?
Conheça o seu produto, o seu time e o mercado. Se está fazendo uma versão nova, observe como os usuários usam sua aplicação Se está lançando um novo produto, entreviste os usuários dos concorrentes. O que o usuário mais utiliza no dia a dia?
Entregue primeiro o que ele espera como mínimo viável.
7. Como refinar o Product Backlog
Importante
Não faz sentido rodar Scrum em um projeto com escopo fechado com o produto final já delimitado. Não é possível saber quais features serão necessário daqui a 6 meses, não há inovação. Os devs não podem estimar mais do que uma sprint e meia, as estimativas podem "perder a validade".
O P.O. define para quem criamos e o porque, mas não o "como".
8. Qualidade e definição de produto
9. Fluxo de valor com Kanban
17. Princípios acima de processos
Princípio 1: Empirismo
Foi criado baseado em décadas de experiências dos fundadores.
Princípio 2: Auto-organização
Pessoas auto-organizadas entregam maior valor e isso requer um alto comprometimento com o time e a empresa.
Princípio 3: Colaboração
Quanto maior o objetivo maior é a necessidade de se trabalhar em grupo.
Princípio 4: Priorização baseada em valor
Entregue valor com frequência e com qualidade. Cliente satisfeito é mais importante que linguagem de programação da moda. Valor é mais importante que tecnologia. O Stakeholder também é seu usuário, a experiência dele também importa.
Princípio 5: Time-boxing
O tempo é considerado uma restrição limitada em Scrum, e que ele deve ser usado para ajudar a gerenciar o planejamento e execução do projeto com eficácia. Os elementos Time-boxed em Scrum incluem os Sprints, as Reuniões Diárias, a Reunião de Planejamento da Sprint, e a Reunião de Revisão da Sprint.
Princípio 6: Iterativo-Incremental
É aquele cujas etapas se repetem indefinidamente, e a cada iteração, um novo incremento do produto é entregue pronto.
13. Aplicando métodos ágeis em sua empresa
11. Programação em... Pares?
15. Contratando profissionais ágeis
12. Retrospectivas de Sprints que funcionam
14. Ensinando Scrum aos outros colaboradores
10. Prazo com BurnDown Chart
16. Contratando profissionais ágeis
Esteja presente online. Perfil no LindedIn e outros canais profissionais, escrever para algum portal ou blog é algo muito bom pois as pessoas atribuem a imagem de experts às pessoas que escrevem sobre algum assunto. Compartilhe conteúdos que tenham relevância com a função pretendida, isso passa a imagem de estudiosa. Participe de eventos, cursos, conferências...