Created
January 22, 2014 10:43
-
-
Save agnaldo4j/8556722 to your computer and use it in GitHub Desktop.
Baby steps agile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sugestões de práticas para melhora da previsibilidade na execução de Sprints. | |
1. Gerenciar e manter backlog atualizado e priorizado(PO ou ProxyPO) | |
Princípio: Tornar o PO ou ProxyPO comprometido com o resultado do produto | |
Valor: Visão de produto melhorado a cada revisão e conhecimento do que é mais importante. | |
Prática: Reservar 8 ou 16 horas por semana para revisar o backlog, levando em consideração o que já foi entregue, mudanças de mercado e mudanças de visão do produto. | |
2. Doutrinar o cliente para uso da ferramenta de gestão de backlog (JIRA) (ProxyPO) | |
Princípio: Tornar o PO ativo e comprometido com o resultado do produto | |
Valor: PO ou ProxyPO, percebe a organização interna de como seu projeto esta sendo conduzido | |
Prática: Pode ser realizado durante a revisão de backlog em par com ProxyPO | |
3. Sprint deve conter a definição de testes de aceitação (PO ou ProxyPO) | |
Princípio: Tornar o PO ativo e comprometido com o resultado do produto | |
Valor: Sincronizar percepção de qualidade no que se refere a produto entre TEAM, PO ou ProxyPO | |
Prática: Durante a revisão de backlog, descrever como deveria funcionar cada história. | |
4. Monitorar a velocidade do time (Scrum Master, Team Leader) | |
Princípio: Diminuir a imprevisibilidade e conhecer as pessoas do time | |
Valor: Conseguir melhores estimativas para sprint, passando segurança para o PO ou ProxyPO | |
Prática: Ao final de cada sprint, calcula-se a velocidade média do time, baseado na soma de todas as tarefas executadas, podemos utilizar burndown para ver a velocidade durante a sprint e um gráfico chamado cumulative flow para olhar a velocidade geral do projeto. | |
5. Testes funcionais baseados nos testes de aceitação (Team) | |
Princípio: Manter o time seguro de que as mudanças realizadas não afetarão outras partes do sistema. | |
Valor: Entregar o software funcionando com uma qualidade aceitável pelo PO ou ProxyPO | |
Prática: Criar testes usando selenium e realizar, se possível, diariamente por cada integrante do time. | |
6. Reserva de no mínimo 4 horas por semana para refactoring e code review (Team) | |
Princípio: Melhorar o conhecimento do time em OOD, SOLID Principles e arquitetura de sistemas | |
Valor: Ter um código de fácil manutenção, mantendo a velocidade constante do time e a qualidade nas entregas. | |
Prática: Reunir o time toda a sexta-feira, no período da tarde, para rever e refatorar o código, aproveitando para passagem de conhecimento de OOD, SOLID e arquitetura, etc. | |
7. Padronizar forma de desenvolvimento de CRUD(simples e complexos) (Team, Process Manager) | |
Princípio: Estabelecer padrões conhecidos de execução em situações de tarefas repetitivas. | |
Valor: Velocidade de execução, melhoria na estimativa e com possibilidade de melhorias no processo como um todo. | |
Prática: A cada mês um comitê avalia os CRUDS dos projetos, executa as melhorias sugeridas pelos documentos de Kaizen, determina novo padrão e informa via canal de comunicação o novo formato e como reproduzi-lo. | |
8. Padronizar forma de desenvolvimento de Javascript (Team, Process Manager) | |
Princípio: Estabelecer padrões conhecidos de execução em situações de tarefas repetitivas. | |
Valor: Ter uma manutenção de baixo custo e com uma qualidade aceitável para o frontend assim como é feito para o backend. | |
Prática: Utilizar o Ember ou Angular e técnicas de OOD e SOLID Principles para esse fim. | |
9. Realizar Kaizen ao final de cada sprint (Team, PO, ProxyPO, Process Manager) | |
Princípio: Fortalecer o processo de aprendizado e melhoria contínua dos processos da organização como um todo. | |
Valor: Constante avaliação do processo em execução. | |
Prática: Ao final de cada sprint, os participantes do projeto se reúnem para determinar o que não está funcionando adequadamente, gerando um documento com ações e responsáveis por melhorias no processo para o próximo sprint. | |
10. Revisar e garantir que todos conheçam o processo usado, utilizar documento gerado na reunião de Kaizen para determinar ações de melhoria. (Process Manager) | |
Princípio: Fortalecer o processo de aprendizado e melhoria contínua dos processos da organização como um todo. | |
Valor: Uniformidade e aumento da previsibilidade com a possibilidade de medir e melhorar a forma de como são desenvolvidos os produtos pela organização. | |
Prática: O ciclo PDCA é utilizado para executar as melhorias solicitadas nas reuniões de Kaizen | |
11. Documentar processo e tarefas do processo (Process Manager) | |
Princípio: Fortalecer o processo de aprendizado e melhoria contínua dos processos da organização como um todo. | |
Valor: Pessoas podem iniciar suas atividades sabendo o que é exigido e esperado de cada atividade do processo. | |
Prática: Ter um respositório de documento conhecido onde se possa encontrar documentação para cada atividade dentro do processo de execução de um produto pela organização. | |
12. Medir qualidade do processo (Process Manager) | |
Princípio: Fortalecer o processo de aprendizado e melhoria contínua dos processos da organização como um todo. | |
Valor: Validar qualidade do processo em execução para alcançar os objetivos estabelecidos pela organização. | |
Prática: Medir o tempo de execução de tarefas, do ciclo de desenvolvimento, da ociosidade no processo, também medir o entendimento e as falhas causadas pelo processo. | |
Considerações finais | |
Estas sugestões estão concentradas no operacional, com apenas alguns tópicos direcionados ao gerenciamento tático. Dessa maneira, esse documento não é um plano completo de aplicação de Agile, são apenas considerações pontuais para melhorias nas operações de criação / design / implementação de produtos pela organização. | |
Um plano completo de adoção do Agile, engloba todas essas áreas do gerenciamento. | |
Metodologias como Scrum, Extreme Programming, Lean Software Development e Kanban, são um conjunto de valores, princípios e práticas empacotadas para a iniciação de uma cultura LEAN, que é um processo contínuo de melhoria e conhecimento. | |
Valeu caarlos, vou usar o modelo md que vc fez para outro gist.
Só não tive tempo ainda.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
muda pra markdown (ou apenas quebre as linhas em 80c)... tá dificil de ler por causa do scroll horizontal...