Gestão > Gestão de Projetos

A resposta mágica para gerenciamento de projetos de software

O segredo para aplicar as melhores práticas é o seu mindset. Saiba como

16 de Fevereiro de 2018 - 09h18

Em uma olhada rápida nos projetos de diversas áreas que me deparei recentemente, pude perceber como as pessoas perseguem de forma errada uma única metodologia de gerenciamento de projetos para aplicar a todos eles. Além disso, quando procuram por “metodologias ágeis”, o que a maioria deles quer dizer é “use Scrum para tudo”.

Porém, diferentes clientes possuem necessidades diferentes. É comum ser questionado sobre metodologias de desenvolvimento de software. A questão principal é que, mesmo dentro da mesma companhia, haverá diversas formas de gerenciar projetos. Não há um único padrão. Depende das pessoas, da maturidade do time para agir, por exemplo:

A abordagem tradicional / cascata / CMMI:
Ainda o mais comum dentro de grandes organizações. Fornece informação executiva e concreta sobre o projeto aos gerentes. Foca em muitos processos e arquivos para manter rastreio de tudo que está acontecendo no projeto. Mapeamento de dependências, de comunicações, controle de escopo, e muitas outras ações serão feitas pelo gerente. E custará caro!

A abordagem Scrum:
Mais flexibilidade, menos processo, mas ainda alguns problemas. Scrum permitirá que o projeto seja mais dinâmico, devido ao foco menor em processos e arquivos. O que o Scrum diz é “continue mandando trabalho e nós continuaremos entregando”. Possui muitos benefícios: menos tempo perdido em burocracia, “customer first” mindset, etc. Porém, possui alguns problemas: é difícil de se trabalhar com datas e dependências, e as dailies perdem o valor facilmente.

As práticas XP:
Flexível, a proposta aqui é encontrar valor rapidamente, feedback em toda parte. XP se destaca em encontrar valor o mais rápido possível com o mindset MVP (Mínimo Produto Viável, em tradução livre). Também ajuda a melhorar as práticas do time constantemente devido a ciclos de feedbacks constantes. Para tanto, é preciso um time muito disciplinado para executar, caso contrário, a equipe pode perder o foco devido à falta de práticas de controle.

A abordagem DevOps:
Autoatendimento, sem gargalos e automação. DevOps tem sido a palavra mais dita em TI, durante o último ano pelo menos, mas pouquíssimas pessoas de fato o praticam. Ele foca em fazer com que todos que realmente importam ao projeto trabalhem juntos, e isto inclui o time de negócios, experiência de usuário, DEV e OPS, entre outros. Eles precisam ter autonomia para tomar decisões. Os desenvolvedores precisam ter o mindset de autoatendimento, caso contrário, dependerão de outras pessoas para finalizar seu trabalho. DevOps também trará alguns desafios, como os DEVs que não gostarão da operação e o time de OPS que não gostará de criar código.

Todos os modelos acima foram apresentados com benefícios e problemas que trazem. Cada um deles pode ser útil se aplicado ao contexto correto. Então, nenhum deles é a resposta mágica para quaisquer que sejam os problemas que você está encarando em seus projetos.

O cenário perfeito é agregar práticas, experimentar, até que você encontre o melhor modelo para você e seu time. Mas como fazer isso? Pense nos seus objetivos reais, tente olhar de cima. Seus esforços devem focar as principais metas, em desenvolvimento de software:

- Entregue valor constantemente: mudar o fundo da aplicação de azul para vermelho pode ser legal. Mas isto realmente agrega valor ao negócio? Qual é a diferença ao projeto ou ao usuário final? Foque no que realmente importa e não apenas em criar mais código.

- Customer first: a razão para todo projeto de desenvolvimento de software existir é o usuário final. Sempre foque em agradá-lo. Se a opinião dele não for positiva sobre o que você estiver entregando, ele não usará sua ferramenta, e seu projeto será inútil. Seu cliente final está feliz? Ele sente que o software tem boa experiência de uso? Ele encontra valor usando sua ferramenta?

- Experimentação: a forma mais rápida de se melhorar as coisas, mesmo quando você não sabe o que deve aprimorar. Experimentar depois de uma boa retrospectiva é algo para ser feito frequentemente.

-Foco nas pessoas: a chave para alcançar todos os pontos acima. Se as pessoas estiverem felizes e encontrarem valor na sua organização, confiarem em você e gostarem do ambiente e das rotinas, elas farão e testarão tudo que o time idealizar.

Então, a resposta para você aplicar as melhores práticas de desenvolvimento aos seus projetos é o seu mindset. Uma vez que seu mindset estiver alinhado aos objetivos que você precisa alcançar, esquecendo quaisquer vícios em processos anteriores, o caminho correto será naturalmente criado pelo time.

*Guilherme Sesterheim é líder de área de desenvolvimento de software na ilegra e mestre em computação aplicada