Home  >  Acervo

A resposta mágica para gerenciamento de projetos de software

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

Guilherme Sesterheim*

16/02/2018 às 9h18

projeto software
Foto:

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

Deixe uma resposta