Olá pessoal! Estou animadíssima com meu novo projeto de jogo e pretendo manter este blog mais atualizado conforme o desenvolvimento do jogo avança. Porém hoje vim falar do Scrum, um framework para tornar o processo do desenvolvimento do game mais eficiente.
Não vou falar do Scrum em si, das definições e tals pois já existe muito material sobre isso na internet (o guia oficial do Scrum tem 16 páginas apenas, dá para ler na pausa para um café rs). Vou falar como ele tem ajudado a nossa equipe a trabalhar de forma mais eficiente e identificar claramente o que está sendo entregue e, por consequência, ver o andamento do projeto de forma contínua.
Acima temos um exemplo de algumas
tarefas do nosso Trello, (excelente ferramenta para gerenciar projetos e
tarefas) do que precisa ser feito, do que está em andamento e do que já foi concluído.
O mais legal desse framework é
você ir refinando as entregas sem ter que esperar o produto final estar todo pronto.
As reuniões diárias de 15 min são ótimas, pois à medida que vamos fazendo as
tarefas da sprint daquela semana, vou pedindo as modificações e no sábado (que
fixamos para ser o dia da entrega das tarefas da semana) elas já estão feitas e
a entrega, quase sempre, não precisa de mais nenhum ajuste (e se precisar
ficará para a próxima semana, na próxima sprint).
Imagine a seguinte situação: você
tem um artista que está fazendo o background do seu jogo. Você diz a ele, no
domingo, como quer que o cenário fique. Ele te entrega o primeiro estudo no próximo
sábado à tarde. Como é a primeira vez que você está olhando a imagem, pode ser
que você queira fazer vários ajustes, e lá se vai mais uma semana para uma nova
entrega.
Com o Scrum esses ajustes já
seriam solicitados durante a semana. Todo dia fazemos nossa reunião e neste
momento é mostrado como está ficando a imagem. Se tem algo a mudar, já peço e a
pessoa já corrige. No dia seguinte, ele me mostra novamente como está o
andamento, e se necessário, peço novo ajuste e assim vai até chegar na data
final de entrega (todo sábado). Abaixo temos alguns exemplos das versões
originais e modificadas após a solicitação de ajustes.
Imagine fazer isso apenas uma vez
por semana ou por mês. Isso atrasaria demais o projeto como um todo. Então
essas reuniões curtas são essenciais para ir polindo o que precisa ser entregue
naquela semana enquanto a tarefa está em andamento.
Optamos também por sprints mais
curtas, de uma semana: no domingo planejamos o que vamos fazer e entregar no próximo
sábado. Nos dias úteis trabalhamos nas tarefas, sempre fazendo a reunião diária
de 15 min e ajustando as coisas, se necessário. No sábado (último dia das
nossas sprints) verificamos o que foi efetivamente entregue. Se algo planejado não
foi entregue analisamos o motivo. Foi serviço demais? Apareceu algum
impedimento? Se sim, por que não foi resolvido nas reuniões diárias? Algum
outro motivo? Aqui a intenção não é punitiva, nem procurar culpados e sim de
melhoria. O que podemos fazer para melhorar nossas entregas na próxima sprint?
Precisamos identificar os problemas ou gargalos e resolvê-los.
Resumo das nossas semanas:
- Domingo: reunião de sprint
backlog onde verificamos quais itens do product backlog iremos entregar naquela
semana (no geral, dura 1h)
- Segunda a sexta: realização das
tarefas para aquela semana (objetivos da sprint) com reuniões diárias de 15 min
- Sábado: entrega das tarefas,
reunião de sprint review e sprint retrospective
Evitamos: trabalhar nas tarefas
aos sábados e domingos (não é uma regra)
Desta forma, estamos sempre avançando e melhorando nossos processos. O mais legal é ver claramente o que está sendo entregue. Eu gostei tanto do Scrum que fiz minha pós em metodologias ágeis e tirei a certificação: Argon Scrum Master Certified. No meu trabalho atual (sim, tenho um emprego formal e o desenvolvimento de jogos AINDA é uma atividade secundária), alguns departamentos já utilizam o Scrum e existe um incentivo para obter essas certificações, então resolvi tirar.
Recomendo a todos os pequenos desenvolvedores
que adotem o Scrum ou algum framework ágil (outro exemplo é o Kanban). Trabalhando
sozinho ou em equipe, tenho certeza que o Scrum irá melhorar a produtividade e eficiência
dos processos sejam eles quais forem.
Recomendo ainda a seguinte
bibliografia para entender o Scrum:
- Guia oficial do Scrum
- Scrum: como fazer o dobro do
trabalho na metade do tempo
- Scrum um guia de bolso um
companheiro de viagem inteligente
O Scrum pode ser utilizado para qualquer coisa. Tente implementar na sua vida para resolver problemas, criar bons hábitos, ser mais produtivo, etc, você irá se surpreender com os resultados.
Então é isso pessoal, espero ter
mais atualizações em breve! Obrigada a todos pela visita!
Nenhum comentário:
Postar um comentário