Arquivo

Textos com Etiquetas ‘fábrica de software’

Fábrica de Software é uma Besteira.

6, maio, 2011 Sem comentários

O maior desserviço à área de Desenvolvimento de Software já criado na nossa história recente foi o termo “Fábrica de Software”. Pior ainda depois que a Índia implementou esse conceito em larga escala, tornando-o famoso e com credibilidade.

Digo isso porque a partir do momento que se encara “Desenvolvimento de Software” como uma tarefa de “Fábrica”, onde entra uma especificação de um lado e sai um software do outro, você acabou de destruir qualquer inovação na área. Pior ainda, considera que todo programador é necessariamente um “operário”.

Porque estamos falando de “Fábrica”, os cursos de “Engenharia de Software” se tornaram mais populares que os de “Ciências da Computação”. E mais paradoxal ainda é ver estudantes se formando como “engenheiros” mas trabalhando como “pedreiros”.

Mais ruim ainda é quando gerentes de TI, “CIO”s, “CTO”s, que sequer foram da área de software, sequer escreveram uma linha, acham que entendem como se faz software. Dado que o mercado fala de “Fábrica”, o que eles vão implementar são “linhas de produção” e junto com isso todos os procedimentos que colocam o operário em linha. Planilhas de horas, métricas de linhas de código, ou pontos de função ou pontos de história ou qualquer bobagem dessas, gantt charts e cronogramas “precisos” de entrega, etc.

A metáfora está completamente errada. Desenvolvedores não são operários, e sim os “arquitetos” propriamente ditos. O trabalho de operário em software é do compilador, este sim, que empilha um byte sobre o outro seguindo uma especificação: o código do software. Repetindo: o código do software é a especificação, a planta baixa, e o compilador é o operário que faz o trabalho braçal.

O que chamamos hoje de “arquitetos” não são arquitetos, na verdade não são nada. Não há como ser um arquiteto sem ser um programador sênior antes. Um bom programador pode se tornar um arquiteto.

Agora, o problema é que o conceito de “Fábrica” se espalhou rapidamente. O governo e as instituições de ensino abraçaram isso. Me deixa extremamente triste visitar áreas do Brasil onde as únicas opções de trabalho para programadores são essas “Fábricas”. As faculdades também se depreciaram para atender essa demanda e formar “operários” com diplomas de “engenheiros”, e assim toda uma nova geração de programadores pensa com cabeça de operário.

Uma ressalva para ser politicamente correto: não tenho nada contra operários, muito pelo contrário, é uma profissão tão respeitada como qualquer outra. Porém, ninguém vende operários de obra como arquitetos e nem os próprios operários se acham arquitetos.

Eis porque digo que foi um desserviço: toda uma geração inteira de programadores desperdiçada pensando em software enquanto empilhar tijolo. Levará pelo menos mais 2 gerações inteiras para, talvez, conseguirmos reverter isso.

Agora pensemos: e se em vez de “Fábrica” mudássemos o termos para algo mais adequado como “Atelier de Software”? Como isso mudaria a forma como você pensa e trabalha com software?

Fonte: Site Info

Fábrica de Software e Tecnologia de ponta: resultados garantidos

29, outubro, 2009 Sem comentários

O termo fábrica de software pode nos levar, a princípio, a uma distorção sobre a compreensão de seu processo de produção de softwares. Afinal de contas, o termo “fábrica” nos remete a um ambiente de produção em série, com alta produtividade e amplamente difundido em diversos setores da economia.

A distorção está, justamente, quando imaginamos o processo de produção de software como algo que pode ser realizado em série, o que não é, de fato. O desenvolvimento de software passa por diversas etapas, desde o planejamento, arquitetura, construção e qualidade, até chegarmos ao processo de homologação onde o cliente realizará o “test-drive” do software. E é justamente a necessidade dos clientes, que por mais que sejam similares, não são exatamente as mesmas que acabam tornando o software distinto de outros já produzidos.

O grande desafio é produzir software atendendo às necessidades do cliente sob aspectos funcionais e de qualidade, cumprindo prazos cada vez menores e torná-lo viável aos investimentos dos clientes. A resposta para o desafio vai muito além, mas envolve também, o que fazer e o provável caminho para a evolução deste segmento, que é uma abordagem de gestão flexível considerando as diversas características de cada projeto e cliente, suportados pelos pilares incondicionais para uma empresa que desenvolve software que são os processos, a tecnologia e pessoas.

A abordagem gerencial flexível envolve o atendimento diferenciado aos projetos e clientes de cada segmento de mercado, proporcionando relação de parceria com clientes. Esta abordagem tem como objetivo garantir a satisfação do investidor sob todos os aspectos operacionais e diminuir a sensação de investimento em algo não palpável. Afinal de contas, durante o processo de construção do software para os que não participam do processo de produção, somos simplesmente sinônimos de investimento, documentos, reuniões e cronogramas. 

O processo de desenvolvimento claro e definido para todos os colaboradores, mantém a evolução das etapas de construção nos eixos e por meio de  controle por parte da empresa, maximizando o investimento do cliente e traduzindo os esforços em resultados práticos. O processo deve ter como característica mecanismos de melhorias contínuas, aperfeiçoando rotinas a cada novo software produzido
.
A tecnologia tem a sua contribuição através da arquitetura inteligente, que possibilita a construção modular de aplicativos e organização de forma que novos softwares possam “utilizar novamente” as funcionalidades já desenvolvidas diminuindo prazos, custos e o risco do ineditismo na construção do software, cito o ineditismo como risco, pois os mercados e tecnologias são dinâmicos e provavelmente pouquíssimos clientes se aventurarão em um investimento que utilize algo totalmente inédito, a não ser que isto seja indispensável.

E por fim, as pessoas responsáveis por movimentar as engrenagens dos processos são ativo mais valioso de toda a empresa que atua neste segmento. Profissionais capazes e motivados fazem a diferença neste complexo processo produtivo. Além disso, o custo operacional em mão de obra especializada é facilmente justificável por meio dos resultados obtidos.

Portanto, quem imagina uma “fábrica” no sentido da palavra, pode perceber que o processo é bem diferente do que o imaginado. Mas qualquer empresa que pretende aventurar-se neste complexo, mas promissor mercado, deve se preparar não para produzir em série, mas para garantir aos clientes que o dinheiro investido será aplicado em tecnologia de ponta, com ambiente operacional controlado através de processos e que os resultados e a satisfação sejam garantidos.

Fonte: Site Baguete