Software como meta-produtoSoftware como meta-produto
Luis Renato Woiski Guilherme
Apresentação
• Introdução;• Software como produto;• Meios de armazenar conhecimento;• Software como não-produto;• O real produto de um software.
Introdução
• Produto é algo que alguém:– projeta;– constrói;– testa;– embala;– vende;
Software como produto
• Ok, então software é um produto já que alguém:– O projeta (nem sempre);– O constrói (pelo menos tenta);– O testa (corrige milhões de bugs);– O embala (coloca na caixinha de CD);– O vende.
Software como produto
• Mais que isso, o software é:– Mantido (correção);– Melhorado (updates);– Patenteado;– Licenciado;– Pago.
• Como qualquer produto fruto da tecnologia!
Software como produto
• Mas então software é um produto e ponto final?– De jeito nenhum. Isso é algo que é dito por
quem produz software e nós aceitamos como se fosse a verdade absoluta.
• Então, o que é SOFTWARE?
Os 5 meios de armazenar conhecimento
• DNA (8 bilhões de anos);• Cérebro (2,5 milhões de anos);• Hardware;• Livros (7000 B.C.);• Software (50 anos).
DNA
• Armazena conhecimento de como criar a vida;
• De certa forma, o conhecimento ali armazenado foi posto pela natureza, pela vida, pelo meio.
• Uma espécie que não evolui, se extingue.• Conhecimento persistente, mas difícil de
atualizar. Gera artefatos físicos para interagir com o mundo.
Cérebro
• Pode armazenar informações, apagá-las, recuperá-las, mudá-las, e adicioná-las;
• Temos o conhecimento por instinto (DNA) e o resto nós podemos aprender;
• Ou então, criar;• Conhecimento volátil, de rápidas
mudanças, intencional, que através do corpo pode interagir com o mundo.
Hardware
• Junto com quem a opera, forma o conhecimento. Um martelo é apenas uma ferramenta, mas se usada por uma pessoa que detém conhecimento, pode gerar mais conhecimento;
• Conhecimento persistente, difícil de atualizar, intencional, e existe para interagir com o mundo.
Livros
• Dá acesso ao conhecimento que em algum momento partiu do cérebro;
• Faz com que o conhecimento resista ao tempo e espaço;
• Conhecimento persistente, lento para atualizar, intencional, mas sem nenhuma capacidade de mudar o mundo sozinho.
Software
• É recente, e é um excelente meio de armazenar conhecimento;
• Muitas pessoas fazem a tradução do conhecimento dos outros meios para este meio;
• Persistente, de rápida atualização, intencional, ativo.
Qual escolher?
• É difícil armazenar novos conhecimentos no DNA;
• Ferramentas não permitem variar o conhecimento;
• Cérebro detém o conhecimento só para uma pessoa;
• Um livro possui o conhecimento, mas sozinho não faz nada.
Software, é claro!
• Armazenar o conhecimento em um Software permite que este conhecimento seja executado;
• Em outras palavras, faz com que o conhecimento seja usado;
• Possuo umdeterminado conhecimento. Posso trabalhar para você usando este conhecimento, posso escrever um livro sobre ele, ou então posso colocar em um software e você poderá executá-lo.
Software não é um produto...
• Produto é o conhecimento a ele agregado;• É necessário saber construir esse
conhecimento:– Comentar todo o código gera apenas um
“livro”;– Não realizar nem isso, faz com que o
conhecimento “evapore” (cérebro);– Não é necessário perder tempo escrevendo
códigos, e sim projetando-o, gerando conhecimento que pode ser reaproveitado.
O real produto de um software
• Quem cria o conhecimento é o cérebro;• Todas a parafernália de desenvolvimento
de software, como estruturas, módulos, representações, não são necessárias para as máquinas e para o software, e sim para o cérebro.
O real produto de um software
• Aprender é mais importante que construir. Mesmo que seja uma coisa que aprendemos quando algo falha, é necessário armazenar este conhecimento, para que possa ser monitorado e usado;
• “O produto não é o software, o produto é o conhecimento que vai com o software”.
Dúvidas? Perguntas?