O Go Horse, mais uma pedra em nosso sapato

Manifesto Ágil

BLOG

Amaro Filho

5 min read

Dentro do ambiente de desenvolvimento de softwares, uma das metodologias mais utilizadas é a Ágil e um dos frameworks mais comentados é o SCRUM. Porém, apesar de facilitar o trabalho das squads e de entregar incrementos geradores de valor ao produto final com mais rapidez, se mal utilizados podem na verdade se tornar um enorme gargalo, conduzindo a um ambiente cíclico de desenvolvimento que nunca termina, conhecido como “go horse”, alinhado a uma rotina contínua de estresse, da falta de comunicação e clareza nas tarefas e da má interpretação do SCRUM como a arte de fazer o dobro na metade do tempo.

Surgem-se então iniciativas mirabolantes e implementações de processos duvidosos criados para tentar minimizar tais efeitos, contribuindo na verdade para o crescimento de um novo método de desenvolvimento:

O Cascágil, com o framework Go Horse!

E se você acha que está livre desse método pitoresco, mas está envolvido num time de desenvolvimento onde os prazos são absurdos, onde não há um Roadmap do produto, onde e-mails solicitando aprovação de toda mínima alteração são mais valiosos do que as interações humanas, onde não se sabe por que se está fazendo tal tarefa, mas se sabe apenas que o chefe pediu, onde não existe o refactoring mas sim o rework; e por fim, onde prega-se utilizar o SCRUM mas você nem se lembra de quando ocorreu a última retrospectiva de uma Sprint, parabéns! Seu onbording já foi feito com sucesso, você já pode se considerar um novo usuário dessa metodologia e sua certificação Cascágil Go Horse será emitida em breve.

O Manifesto Ágil

Indivíduos e interações mais do que processos e ferramentas é um dos itens de valor presentes no manifesto Ágil. Logo, torna-se aceitável que uma ligação telefônica possa esclarecer e definir um ponto sem a necessidade de se redigir um grande documento norteador para a tomada de decisão e/ou mesmo pô-la em pauta da próxima reunião da presidência marcada para a próxima semana.

Além do mais, hoje mais do que nunca, o timming certo para se lançar um produto é um fator determinante para o sucesso de todo negócio, e aguardar até que todos os pontos de atenção, todas as features e todo o processo de desenvolvimento esteja concluído para que se possa então lançar o produto no mercado, pode levá-lo ao fracasso antes mesmo de ser lançado.

O cascágil Go Horse

No ambiente Cascágil Go Horse, o problema só é seu problema se seu nome estiver no Doc da classe e o teste é para iniciantes, pois não há tempo alocado para testes na Sprint. Aliás, qual é mesmo a meta dessa Sprint? Parece piada, mas nesse ambiente, o prazo e o tempo são mais relativos que a teoria do Albert Einstein e se você costuma parar para pensar em soluções melhores, não é Go Horse, pois Go Horse não pensa, faz a primeira coisa que vem à mente. Não existe segunda opção, a única opção é a mais rápida.

Toda essa “burocracia”, falta de planejamento, comunicação aberta, e pressão desenfreada por resultados nebulosos torna o ambiente de desenvolvimento estressante, desmotivado e lento. Por exemplo, enquanto um dos princípios do SCRUM fala em Empirismo, onde a coleta de feedback por parte dos Stakeholders é constante, levando a melhora contínua e a entregas constantes, por sua vez, a falta ou a dificuldade de comunicação torna o desenvolvimento uma verdadeira odisseia. Já o medo de errar, por não se conhecer claramente o produto a ser desenvolvido ou por não se ter acesso ao seu Roadmap, aliado a metas quantitativas focadas em erros e acertos causa dúvidas, incertezas, e mata um outro princípio do SCRUM que é a colaboração, pois ninguém quer ser responsável pelo erro de outro.

Agora, com todo esse pequeno cenário de caos instalado, surge a figura do chefe, que ao contrário do líder, não assume os erros, não conhece o produto, e instala mesmo que em doses homeopáticas o jargão já muito conhecido: Manda quem pode, obedece quem tem juízo! Sim, já temos o cenário perfeito para Go Horse e o Cascágil. Ele traz do Ágil o princípio do Software em funcionamento mais que documentação abrangente, porém traz do Cascata a necessidade da aprovação detalhada de todo o design antes da implantação. Ele traz do XP a refatoração, no entanto faz com que o desenvolvedor esteja tão interessado em concluir a tarefa quanto o gerente de projeto em se livrar dessa feature ou desse cliente, e se possível nunca mais ouvir a palavra refatorar na vida.

Como citado em vários outros artigos facilmente encontrados na internet, o Go Horse assassina o MVP ao entrar num ciclo interminável de desenvolvimento, sem planejamento, ou sem entregas programadas, ou sem ambos, e ainda mais sem visão clara do produto, muitas vezes vendo-o apenas como mais um projeto a ser realizado e não como um produto de valor a ser entregue.

Mas afinal, onde então devemos focar para conseguirmos melhorar este cenário?

Na equipe de desenvolvimento, nos gestores do projeto, na organização em si, ou no cliente?

A resposta é: Em todos!

Pois todos somos parte importante nesse ambiente de mudanças e representamos um elo nesta enorme corrente. Em um ambiente SCRUM, o gerente de projetos pode atuar como um SCRUM Master, sendo um facilitador do time, removendo impedimentos, garantindo que o time esteja orientado pelas práticas e valores do SCRUM.

A organização por sua vez, deve promover iniciativas constantes que garantam que todos os envolvidos aprendam qual seu papel na metodologia Ágil, assim como trabalhar em conjunto com o Product Owner afim de efetuar um esforço contínuo para que os Stakeholders também compreendam o processo. O time de desenvolvimento deve ter visão clara dos itens do backlog, comunicação aberta entre si e serem auto-organizados.

Em resumo, metodologia Ágil é mais do que um processo a ser implementado ou uma linguagem de desenvolvimento a ser aprendida, trata-se de uma mudança na forma de pensar e agir que exige a interação, a compreensão e a participação de todos os envolvidos no processo, e isso pode levar meses para se alcançar.

O SCRUM por sua vez, segundo sua própria definição encontrada em seu guia, é um framework simples de entender, porém extremamente difícil de dominar, mas isso não quer dizer que não seja possível, ou que devemos desistir de ambos – o Ágil e o SCRUM – devido aos desafios diários encontrados.

Por fim, como diz um velho ditado em inglês bem conhecido:

“Hold your horses”! Ou no Português literal: “Segura teus cavalos”!

Por Amaro Filho

Product Owner com grande experiência trabalhando em equipes alocadas em diferentes países, como Índia Brasil e Canadá,  trabalhando em ambiente Agile com framework SCRUM e utilizando diferentes tecnologias  para gestão. Background em business e segunda formação em tecnologia pela Brigham Young University Idaho. Pai, marido, cozinheiro nas horas livres e rato de academia.