Business

Software Craftmen ou Fábrica de Software: quem cria mais valor para o negócio?

Por: , julho 31, 2013

Durante muitos anos, o desenvolvimento de software foi tratado como engenharia, motivo pelo qual as empresas que se dedicam ao seu desenvolvimento eram (e ainda são, em vários casos) chamadas de “fábricas de software”.

Em um mundo sem grandes transformações ou com mudanças ocorrendo de forma lenta, esta metáfora funcionou razoavelmente bem. Como uma disciplina da engenharia, as grandes demandas dos processos de desenvolvimento de software tradicionais eram previsibilidade e redução da variabilidade. O grande objetivo era ter ganhos de escala, redução de desperdício e aumento da eficiência.
A medida que a velocidade das transformações dos negócios está aumentando, esta metáfora já não funciona mais. Já não dá mais para planejar tentando prever o futuro, o risco é muito grande.
Em um mundo mais imprevisível, com oportunidades aparecendo de forma inesperada, para se capturar maior valor do software desenvolvido é necessária uma outra abordagem.
A abordagem dos métodos ágeis, ao contrário da tradicional, inverte a lógica do processo de planejamento: ao invés de evitar a variabilidade e tentar prever o futuro, elas reduzem radicalmente o tempo e o custo para a obtenção de feedback sobre o software que está sendo construído, de tal modo a possibilitar a experimentação de alternativas e o entedimento sobre o futuro a medida que o desenvolvimento avança. Este é o “Embrace Change” do sub-título do livro “XP Explained” de Kent Back, um dos criadores do Manifesto Ágil.
Os métodos ágeis libertam o desenvolvimento de software da necessidade da redução de variabilidade, trazendo com isto toda a capacidade criativa dos desenvolvedores. Deixando de ser meros “codificadores”, eles trazem todo seu engajamento e paixão pela profissão. É o que chamamos de Software Craftsmen.
Uma dúvida que sempre aparece nas discussões sobre agilidade e software craftsmanship é se esta abordagem funciona em todos os cenários.
Criamos o modelo abaixo para tentar responder a esta questão:
 

Solução conhecida

Solução nova

Problema conhecido

Melhores práticas

Componentização

Pacotes

Diferenciação

Software sob-medida

Agile

Problema desconhecido            

“Uma solução em busca de um problema”

Inovação

Transformação de negócio

Lean Startup

 

  • Problema conhecido com solução conhecida: Este é o espaço dos problemas bem delineados, que várias empresas de alguma forma compartilham e que têm soluções já disponíveis, seja na forma de melhores práticas, de software empacotado ou componentizado. Por serem conhecidos por todos, não trazem grandes diferenciações para quem os resolve com soluções já prontas. Este é o espaço onde aparecem os ERPs e outros sistemas de apoio a processos de negócio. Para este tipo de problema, agilidade e software craftsmanship tem pouco a contribuir.
  • Problema conhecido, mas com solução nova: Este é o espaço onde os negócios se diferenciam, criando soluções novas para problemas que já foram mapeados. Criar modos novos de atender o cliente, novas maneiras de entregar os produtos, novos ofertar, novas formas de precificação e cobrança, etc. Neste espaço, a agilidade traz um grande valor, já que é possível experimentar e explorar alternativas.
  • Problema desconhecido, solução nova: Este é o espaço da inovação e da transformação dos negócios. Neste espaço, as empresas encontram oportunidades ainda inexploradas, criando linhas de negócio novas, abrindo novas frentes de faturamento. Este é o espaço onde a agilidade traz o maior valor, mas somente com uma equipe engajada e preocupada com o negócio é que a inovação acontece. Este é o espaço de excelência dos software craftsmen! Aqui a agilidade tem que partir do negócio, e neste ponto o Lean Startup é uma excelente alternativa.
  • Problema desconhecido com solução conhecida: este espaço é o menos interessante, já que é uma tentativa de utilizar uma solução pronta para um problema que ainda não existe. Aqui aparecem os fornecedores tentando “empurrar” soluções onde problemas não existem, o que leva a desperdícios.

 

No cenário de negócios atual, ter uma estratégia clara para a utilização do que os métodos ágeis tem de melhor em projetos que trazem o maior impacto de negócio é essencial. E somente uma equipe de Software Craftsmen podem manter a qualidade necessária para viabilizar esta alternativa.

E aí, você ainda contrata Fábricas de Software?

  • Receba nosso conteúdo em primeira mão.