Categorias
Tech

3 motivos para a falha de projetos de software

Trabalhando por muitos anos no desenvolvimento, já tive a oportunidade de participar de muitos projetos de software. Boa parte deles como membro de equipe, alguns como Scrum Master e outros como freelancer, fazendo todo o trabalho sozinho.

Isso me trouxe alguma experiência no quesito projeto de software.

Acompanhei projetos que deram muito certo e outros que nem tanto. Sobre estes sempre fica a pergunta: “por que este projeto falhou?”.

Cada projeto tem suas características específicas, mas para me aprofundar mais nos motivos gerais das falhas resolvi fazer uma rápida pesquisa para procurar artigos acadêmicos que falam sobre esse assunto.

Analisando alguns deles fica claro quais são os principais motivos listados.

  • objetivos não realistas ou não articulados
  • software que não atende às reais necessidades do negócio
  • requisitos de sistema, requisitos dos usuários e especificação de requisitos mal definidos
  • gestão de projeto deficiente
  • metodologias/práticas de desenvolvimento desleixadas
  • prazos e orçamentos do projeto
  • estimativas imprecisas dos recursos necessários
  • má comunicação entre clientes, desenvolvedores e usuários
  • uso de tecnologia imatura
  • pressões comerciais
  • satisfação do cliente
  • qualidade do produto
  • entre outros (lista completa neste artigo)

Como podemos perceber, são muitas as possíveis causas de um projeto de software ser malsucedido.

Essas pesquisas foram feitas com diversos projetos e estão em artigos espalhados por aí, mas eu quero focar naqueles motivos que já senti na pele, como um envolvido no projeto.

1. Requisitos de sistema mal definidos

Este é um caso muito mais comum do que se imagina. Acontece o tempo todo e já passei por diversos projetos com esse problema, por isso ele está no topo da minha lista.

Análise de requisitos é um processo complicado e demorado. É preciso da atenção de um profissional especialista e que vai conseguir levantar exatamente tudo que é preciso para que aquele projeto de software atenda às necessidades dos interessados.

Isso faz parte de projetos de softwares mais tradicionais e não necessariamente funciona do mesmo jeito em projetos ágeis, em empresas que necessitam de entregas mais constantes como as startups de tecnologia ou que possuem prazo e orçamento mais apertado como as fábricas de software menores.

Acontece que não ter um levantamento de requisitos tradicional não libera ninguém de levantar requisitos.

Talvez alguns gestores não entendam que o uso de métodos ágeis não é desculpa para que as descrições de tarefas sejam muito bem pensadas e completas.

“Gastar” tempo levantando requisitos bem definidos com os stakeholders (as partes interessadas no projeto) aumenta as chances de uma entrega mais assertiva e rápida do software.

2. Gestão de projeto deficiente

Eis um tópico extremamente genérico e que afeta muito os projetos de software. Uma má gestão pode significar diferentes problemas para a equipe, incluindo o tópico anterior.

Mesmo que as equipes ágeis sejam autogerenciáveis segundo a teoria, normalmente existe alguém que centraliza essa tarefa mais do que os outros membros. Além disso, em muitos casos, os executivos da empresa costumam não permitir tanta autonomia para que a equipe se gerencie.

A gestão de projetos deficiente acaba tendo um impacto muito grande na motivação da equipe, na falha de comunicação, na necessidade de retrabalho, na má administração dos recursos e dos prazos, etc.

Já presenciei alguns casos de má gestão e a responsabilidade pela falha do projeto costuma sobrar para os membros da equipe…

3. Qualidade do produto

Em alguns casos na minha experiência o produto tinha um potencial incrível, poderia trazer muito valor para os usuários… mas simplesmente não funcionou quando eles precisaram.

A qualidade do produto faz parte do valor agregado entregue em qualquer projeto.

É muito comum existir um membro da equipe focado nesse assunto. Uma pessoa para garantir a qualidade do software e mantê-lo sempre na sua melhor versão possível, sem erros e sem problemas de usabilidade.

Projetos de software que falham por falta de qualidade do produto não precisam de muita explicação, não é…

Eis um investimento que vale a pena, mas que muitas vezes é subestimado pelos responsáveis do projeto.

Entre outros…

Os motivos selecionados aqui são os que mais me chamaram a atenção por acontecerem em diversos projetos os quais eu participei. Por isso estão nesta lista em ordem de importância.

Na minha experiência pessoal eu não vejo um motivo específico para a falha de projetos de software e sim uma combinação de problemas que se acumulam e minam o projeto como um todo.

Em diversos dos casos que presenciei mais de um desses itens estavam combinados com outros também descritos na primeira lista retirada dos artigos pesquisados no início dessa publicação.

O que fazer?

Pessoalmente, acredito que uma das formas de evitar a falha de um projeto é ouvindo as pessoas envolvidas. Aproveitar a experiência de quem participa do desenvolvimento para tentar entender o que está acontecendo durante todo o processo.

Uma liderança mais aberta e que se importa com a opinião dos envolvidos tem maior chance de identificar um possível motivo de falha antes que o mesmo se torne irreversível para o projeto.

A chave é não esperar o projeto chegar em um nível crítico para então parar para analisar o que pode estar dando errado.

Por isso as empresas que mais crescem e entregam tecnologias incríveis valorizam tanto os profissionais que colaboram para que isso aconteça. Mantendo sempre um ambiente com menos fricção para comunicação e mais atenção ao que está acontecendo durante as iterações de desenvolvimento.

Para você, quais são os maiores motivos para a falha em projetos de software? Deixe sua opinião sobre o assunto nos comentários.

Até a próxima!

Categorias
Crônicas Empreendedorismo

A dificuldade com a pontualidade

Ser pontual é uma característica que todos esperam de profissionais sérios. A pontualidade passa profissionalismo, mostra que a pessoa está levando a sério aquela relação profissional e, mais do que tudo, demonstra respeito. Respeito pelo próximo.

Nos dias de hoje grande parte dos profissionais tem um problema sério de falta de tempo. A frase que mais ouço é: “Gostaria que o dia tivesse 32 horas!”. Isso me lembra um texto escrito pela minha sócia no blog da nossa empresa sobre a pressa, vale a pena dar uma olhada.

Mas se todo mundo tem um problema com tempo, porque as pessoas insistem em não ser pontuais? Qual é a dificuldade em agendar um horário e chegar nele ao compromisso?

A maioria das pessoas vai usar a famosa desculpa do trânsito ruim, mas se ela fosse mesmo válida, em uma reunião pela internet não deveríamos ter atrasos, certo? Pois é. Tanto faz se o compromisso é presencial ou virtual, as pessoas se atrasam.

Mas por que isso acontece?

Em uma palestra do Murilo Gun ele contou que foi participar de um grupo de estudos do Googlee da NASA nos EUA e diversas pessoas do mundo inteiro estavam presentes. Logo de cara o coordenador perguntou quem achava que atrasar cinco minutos para um compromisso não era problema e praticamente todos os presentes levantaram a mão respondendo que não era um problema. Ele repetiu a pergunta para 10 minutos de atraso e menos pessoas levantaram suas mãos. Quando ele aumentou o tempo da pergunta para 15 minutos, apenas os argentinos e os brasileiros acharam que não haveria problema.

O que quero dizer com isso é que o atraso, ou o desrespeito pelo tempo do próximo, é uma questão cultural. Nos atrasamos porque somos acostumados, desde cedo, a não respeitar o tempo alheio. Quantas vezes, ainda no final da adolescência, eu me lembro de marcar com os amigos e pegar carona com aquele único que podia usar o carro do pai e quando chegávamos na casa de algum dos outros caronas era necessário esperar por mais de 15 minutos porque ele não estava pronto. Uma falta de respeito imensa com quem está fazendo o favor de lhe buscar em casa, não acha?

Quantas vezes já ouvimos a expressão “tempo é dinheiro”? Ela não deve ser lida de forma literal. Na minha opinião, é apenas uma maneira de demonstrar que o tempo é um bem valioso de cada pessoa e deve ser respeitado como tal.

É lógico que me atraso também em alguns momentos, não estou dizendo aqui que as pessoas devem ser perfeitas, mas quando o atraso passa a ser algo comum e já esperado das pessoas, é muito triste. “Vou marcar as 15h o compromisso que deveria ser das 16h porque sei que tal pessoa vai chegar só depois das 15h30.” Não é um absurdo isso ter que acontecer?

Existem dezenas de ferramentas hoje em dia para evitar o atraso. O app do Google nos mostra a melhor momento de sair para chegar em determinada hora em algum lugar, o Waze mostra o caminho com menos trânsito, o Google Maps mostra a rota do transporte público e o tempo que levará para percorrer tudo, o evento no celular pode ser marcado para avisar com antecedência sobre o compromisso para que você possa se programar e até um simples despertador pode resolver o problema de sair no horário.

Atraso é falta de organização e não deveria ser tomado como algo comum.

Obs: Comecei a escrever no horário marcado para uma reunião. Já terminei o texto e ela ainda não começou…

Categorias
Crônicas Empreendedorismo

Por que um ambiente de trabalho mais relaxado é mais produtivo?

Estar de bom humor e descansado faz toda a diferença na produtividade de uma pessoa. O site da Revista Galileu publicou uma notícia trazendo dados de uma pesquisa científica que mostra como funciona nosso cérebro no momento em que temos uma boa ideia.

De toda a explicação sobre a pesquisa, a parte mais interessante, e a qual dou enfoque nesse texto, é o último parágrafo.

Os cientistas avisam – ou dão a dica – de que bom humor e mentes descansadas podem ser fatores importantes na hora daquele “Eureca!”. Para concluir, o autor diz: “Existe um processo importante de consolidação da memória que só acontece quando dormimos. Elas são transformadas e podem trazer detalhes escondidos para situações no dia a dia. Dormir bastante é ótimo para ter insights”.

Na área de tecnologia, por exemplo, passamos o tempo todo buscando soluções para os problemas do usuário e para isso precisamos de boas ideias. É um trabalho técnico, mas que exige muita criatividade.

Isso não se resume somente à area de tecnologia. Como um gestor espera que o membro de sua equipe seja pró-ativo, traga ideias inovadoras sobre como executar seu trabalho, se o mesmo não tem um ambiente que facilite esse processo?

É por isso que, cada vez mais, empresas com ambientes inovadores e premiados pela qualidade que proporcionam aos seus trabalhadores tem apresentado ótimos resultados ano após ano. Sentir-se bem no local de trabalho faz toda a diferença no resultado que o colaborador irá gerar para a empresa.

Infelizmente, muitas empresas ainda não entenderam que seu maior recurso não é a tecnologia ou o método que empregam, mas sim as pessoas que a estão empregando. Pressionar o colaborador por resultados sem nem sequer se importar se ele está bem é um tiro no pé para qualquer gestor.

Eu acredito que, em algumas áreas, a gestão de colaboradores deve ser repensada e deve-se usar o exemplo dos cases de sucesso que cada vez mais aparecem por aí. Já temos casos de empresas brasileiras dando o exemplo, como a Chaordic de Florianópolis, que em 2013 ganhou prêmio Great Place to Work de melhor empresa para trabalhar em Santa Catarina.

Os exemplos estão aí, basta seguí-los. Se não for pela motivação dos colaboradores e a vontade que tem de trabalhar nestes locais, que seja pelos resultados financeiros que elas apresentam.