Metodologia Ágil: saiba o que é usando Magic: The Gathering'
Entenda conceitos importantes da Metodologia Ágil usando o 'Magic: The Gathering'
O objetivo deste artigo é explicar alguns dos conceitos de Metodologia Ágil usando o card game Magic The Gathering. Para começar, vale entender um pouco da história.
A HISTÓRIA DO MANIFESTO ÁGIL E DO MAGIC
A Metodologia Ágil, popularmente difundida hoje em dia, surgiu a partir de uma reunião de 17 importantes figuras, que já praticavam um método de Gestão denominado "Métodos Leves". Essa reunião ocorreu em Utah em 2001 e culminou na criação do Manifesto Ágil.
O Manifesto Ágil é uma declaração com o intuito de descrever os 12 princípios que fundamentam o desenvolvimento ágil de software. A história do Manifesto e seus princípios você pode conferir em seu site oficial.
Já o Magic: The Gathering ou apenas Magic como é popularmente conhecido, faz parte de uma categoria de jogos chamada Trading Card Game ou TCG e ocupa o posto de mais importante e influente TCG da atualidade.
Foi criado em 1993 por Richard Garfield e é publicado até hoje pela editora Wizards of the Coast. Conta com mais de 38 milhões de jogadores e colecionadores ao redor do mundo e mais de 18.000 cards únicos publicados.
Para se ter uma idéia da dimensão do Magic, seu jogo Online, chamado Magic: Arena, arrecadou sozinho mais de 500 milhões de dólares no primeiro semestre de 2019.
Evolução do Logo de Magic ao longo de 26 anos de existência
Dado um pouco de história, nesse artigo abordaremos 5 pontos com analogias entre conceitos de Metodologia Ágil e Magic, que serão: Fases, Backlog, T-Shirt Size, WIP e LeadTime/ CycleTime.
CONHECENDO AS FASES DE DESENVOLVIMENTO
Iniciando com as Fases, é muito simples de explicar: tanto o Magic quando o Ágil seguem algum tipo de fluxo. No exemplo mostrado, utilizei uma ferramenta da Objective chamada Taskboard para mostrar o fluxo do ágil e um print no Magic:Arena para mostrar o fluxo do Magic.
1 – Backlog / Fase de Compra
No Magic se joga com um conjunto de cards pré-selecionados, formando seu baralho. Isso se equipara ao Backlog de tarefas, pois você decide o que irá compor mesmo antes de efetuar qualquer ação
2 – Fila / Primeira Fase Principal
Após as cartas saírem do baralho (Backlog) elas são colocadas em sua mão, o que se assemelha a Fila/TO DO.
Nesse momento do jogo você decide o que vai sair da sua mão e entrar em jogo, muito similar ao processo de priorização de atividades dentro dos conceitos de Metodologia Ágil.
Do baralho (Backlog) para a mão (Fila) e da fila para o campo de batalha (Doing).
3 – Doing / Fase de Combate
Após decidido qual ação será executada (priorização), você coloca a carta em jogo. Isso equivale à iniciar o processo de desenvolvimento (Doing) daquilo que você puxou da fila.
4 – Testes / Segunda Fase Principal
A fase de testes é onde tudo que foi desenvolvido na etapa anterior passa por uma avaliação e revisão. Muito similar ao Magic: Arena, onde se analisam as ações efetuadas nas etapas anteriores.
5 – Done / Fase final
Após concluída todas as análises e testes, uma tarefa entra em Done, encerrando seu ciclo. Tal qual no Magic, onde é nessa fase que encerra-se seu turno.
Apesar de não abordar no detalhe todas as 5 fases, darei um pequeno destaque ao Backlog pela variedade de pontos que podem ocorrer aqui para quesitos de comparação.
O Backlog é basicamente tudo o que está planejado para ser feito, mas ainda não iniciado ou colocado na fila para ser iniciado.
As atividades saem do Backlog e entram para fila de desenvolvimento assim como as cartas saem do baralho do Magic (backlog) para a sua mão (Fila).
Para uma atividade sair do backlog e entrar na fila precisa-se de uma análise para saber se a mesma possui os requisitos necessários para ser iniciada.
A análise de priorização, replanejamento ou despriorização é efetuada por uma figura detentora de tais conhecimentos ou skills. Pode ser o PO, o GP, SM, Coach, LT ou qualquer papel que represente alguém com skills suficientes para efetuar essa análise e tomar essa decisão.
Como critério de comparação, no Magic também há diversas formas de se definir o que sairá do baralho e entrará em sua mão, mostrando assim o mesmo nível de análise, priorização e ordenação de necessidade dos conceitos de Metodologia Ágil.
O destaque para o Backlog trata-se justamente pela semelhança. No Magic, você escolhe tudo que irá compor seu baralho, retira o que não é útil e mantém apenas aquilo que trará algum valor para sua estratégia. Para o desenvolvimento de sistemas não há diferença pois no Backlog permanece apenas aquilo que pode/deve trazer algum valor para o resultado final de cada atividade de forma individual ou coletiva.
USANDO O T-SHIRT SIZE PARA CATEGORIZAÇÃO DE ATIVIDADES
Na sequência, falaremos um pouco de Categorização de Atividades, usando o formato T-Shirt Size como exemplo.
Essa é apenas uma das formas de se categorizar algo, que foi escolhida por estar profundamente difundida dentro da Objective.
Para entender a analogia que será feita, preciso explicar primeiramente algumas coisas exclusivas do Magic.
Para toda e qualquer carta ser jogada, utiliza-se a "Mana". Um exemplo dessa carta é a Planície, conforme imagem à esquerda. Cada carta possui um custo diferente de Mana, conforme mostrado no canto superior direito de cada carta (a direita). Para uma carta entrar em jogo, deve-se pagar seu custo, "gastando" o equivalente de mana.
Entendendo o conceito, vamos a primeira analogia:
Pensando no custo de mana e no T-Shirt Size, concluímos que essa é uma forma simples e direta de categorizar o quanto gastaríamos para uma carta entrar em jogo, tal qual o esforço necessário estimado para concluir uma atividade de desenvolvimento.
Essas informações farão mais sentido no próximo tópico, WIP!!!
O QUE SIGNIFICA WIP
Basicamente, WIP, ou Work in Progress, é o limite de trabalho simultâneo que pode ser realizado por um indivíduo ou time.
Dentro do que o conceito busca, um time não deve executar mais trabalhos ou tarefas do que sua capacidade permite. Utilizando Magic para exemplificar, conseguimos iniciar apenas uma atividade de tamanho P, que consumiu todo nosso WIP. Para novas tarefas, mesmo de igual tamanho, precisamos primeiro liberar espaço em nosso WIP. No caso de desenvolvimento seria como se tivéssemos um WIP para 1 atividade de tamanho P por vez.
Tomando isso como base, temos um dos lemas da empresa baseado na metodologia ágil: STOP STARTING, START FINISHING!
Continuando, na imagem abaixo, temos um exemplo de liberação e aumento de WIP.
Com isso, podemos pegar novas atividades. Nesse exemplo, podemos pegar 1 atividade de tamanho P e uma PP. Ou então, 2 atividades de tamanho PP e sobrar WIP.
Essa "sobra" pode ser chamada de "Slack", que é uma reserva de esforço para outras atividades ou situações inesperadas. Essa reserva pode ser consumida em uma atividade PP emergencial, uma apoio, qualitividade, etc.
Limitar e controlar o WIP do time ajuda em diversos pontos, sejam eles de previsibilidade ou mesmo de noção de vazão do time, que é o chamado Throughput. Essa é uma tarefa complicada, mas que sem sombra de dúvidas traz resultados muito importantes.
ENTENDENDO O CONCEITO DE LEAD TIME E CYCLE TIME
A seguir falaremos um pouco de Lead e Cycle Time. Entender esse conceito é bem simples. O Lead Time é a diferença de tempo desde que uma tarefa é criada e colocada no Backlog até a mesma ser concluída.
Cycle Time é parte do tempo do Lead Time, que corresponde ao tempo em que uma atividade leva para sair da fila e inicia seu desenvolvimento, até sua conclusão.
Usando uma analogia do Magic novamente, lembra que temos 5 fases por turno? Então, o Lead Time (em azul) seria da fase de compra até o fim de seu turno. O Cycle Time (em amarelo) por sua vez, seria da fase de combate até o fim de seu turno.
Em nossa Taskboard, assim como mostrado na imagem, Lead Time engloba do "Backlog" ao "Done" enquanto "Cycle time" compõe do "Doing" até o "Done". Dentro do Cycle Time extraímos um novo dado, o Effort Time, que é a quantidade de tempo real gasta desenvolvendo aquela atividade. Dessa maneira, atualizamos o T-Shirt size para refletir a realidade.
Espero que tenham gostado deste artigo simples com analogias entre Magic e alguns conceitos de Metodologia Ágil. Gostaria de entender um pouco mais sobre times ágeis e por onde começar? Assista ao Webinar "Como escalar agilidade dentro das empresas" realizado por nossos Agile Coaches: