DevSecOps

20 jun, 2014

Desenvolvimento de software – produto manufaturado ou intelectual?

Publicidade

O que é um produto manufaturado?

São produtos que devem ser entregues “exatamente iguais” para todos os clientes, como um Tênis Nike Flyknit Air Max. Não importa aonde você compre e quantos existam, a sua cópia vai ser exatamente igual a todas outras existentes. Outro exemplo seria a construção de um bolo de chocolate por uma padaria, seguindo um formato padrão que defini seu preço.

Uso de processo para produto manufaturado?

Definir um processo para a criação de um produto manufaturado foi umas das coisas mais fanáticas que aconteceram na humanidade (veja a revolução industrial). Quando se cria um produto manufaturado sem um processo rígido, é possível que esse produto tenha grandes chances de não ficar no formato exato especificado para ele, ocasionando seu descarte, gerando desperdícios de tempo, recursos e matéria prima. Ou seja,  prejuízo total.

Por isso um processo prescritivo é fundamental para evitar qualquer tipo de erro ou desperdício. Um processo determinístico prescreve os passos, quantidades de matéria prima, o cronograma, o custo, data de início e data de fim. Aproveitando o exemplo do bolo de chocolate de uma padaria, poderíamos dizer que ao vender esse bolo por um preço X, o responsável já esteja fazendo o cálculo do custo de produzi-lo. Mas se o confeiteiro não seguir o processo exato de construção e suas medidas utilizado para medir o preço, é bem provável que o cliente não recebe aquilo que realmente pagou.

Veja que o modelo de fabricação industrial é classificado com linear e tem o foco no determinismo voltado ao modelo de construção.

O que é um produto intelectual?

São produtos que devem ser entregues como “únicos para cada cliente” contendo caraterísticas particulares e específicas, como uma pintura de quadro, um livro ou uma música. Ninguém no mundo vai ter aquele mesmo produto igual. Em caso de isso acontecer nós os classificamos como plágio.

Uso de processo para produto intelectual?

Quando se cria um livro, o autor pode começá-lo pelo meio, ter possíveis ideias para o seu final e quando estiver escrevendo o final ter novas ideias para o início. E quando ele estiver escrevendo o início, ele pode ter novas ideias melhores no meio já escrito e assim voltar a alterar o conteúdo do meio. No final de tudo, ele ainda pode rever toda a sua obra e decidir mudar algo, acrescentar ou retirar algo.

Da mesma forma na criação de uma música, que pode ser iniciado pelo seu refrão e seguir outras partes. A música depois de pronta, ainda pode ser alterada a qualquer momento para compor melhorias julgadas necessário pelo seu autor. Diante disso, se entende que um produto intelectual não pode ser construído dentro um processo determinístico, uma vez que ele se torna um impedimento para a inspiração do seu autor.

Será que o próprio autor do livro não teria a liberdade de poder alterar o meio da história quando estivesse escrevendo o último capitulo? Será que um pintor não poderia acrescentar mais cores no seu quadro quando estivesse o terminando, julgando positivamente necessário? Se ambos seguissem um processo determinístico, que o impedisse de alterar partes anteriores já prontas, eles não teriam como fazer. Agora eu te pergunto: isso faz sentido para você?

Criar um produto intelectual é uma atividade puramente intelectual que se caracteriza pela necessidade de sucessivas revisõesalteraçõescorreções até que o autor julgue a sua forma final. Diante disso, poderíamos afirmar que existe um processo para criar um produto intelectual e ele é chamado de Processo Adaptativo, no qual o produto passar por constantes revisões e correções até assumir forma desejada.

Veja que o modelo de fabricação intelectual é classificado com não-linear e tem ausência de determinismo.

Desenvolvimento de software é um produto manufaturado ou intelectual?

Diante dessas informações, eu te pergunto novamente: no seu modelo mental atual, criar um software é uma atividade intelectual ou manufaturada? Será que o cliente não pode mudar de ideia quando ele receber aquele novo processo depois de implementado e testado? Será que o cliente não pode ter novas ideias depois uma nova funcionalidade em produção?

Você é aquele gestor de projetos ou aquele programador que fica “irritadinho” quando o cliente muda o plano original depois de entregue? Isso só prova que você está vivendo o desenvolvimento de software como um modelo de fabricação industrial  e seu cliente, por sua vez, está partindo do princípio que está construindo uma obra intelectual particular. Veja que a consequência disso é que o custo, cronograma e funcionalidades nunca batem com o planejado. Assim ninguém fica feliz!

Existe duas formas para resolver isso: a primeira é dizer para o cliente que o sistema não é uma obra intelectual, com processo definido é ele não pode mudar nada depois de pronto. Mas quem ta pagando o sistema? Isso te deixa uma última opção: sair da sua zona de conforto e adotar outra filosofia de gestão de projetos de software.