Tecnologia da Informação

 

 

 

 

 O Problema
     No início, os programadores conversavam com os clientes e geravam código .baseado no que eles entendiam das necessidades deles. Se o sistema fosse pequeno e o programador esperto, este processo acabava convergindo para algo que o cliente gostasse o suficiente para usar. Porém, a manutenção dos sistemas gerados era totalmente dependente do programador original e o código era, normalmente, de baixa qualidade. Além disso, em projetos maiores, que exigissem uma equipe de desenvolvimento, este processo artesanal simplesmente não funcionava.
     Depois vieram os processos. Análise Estruturada, Análise Essencial, RUP. Foram tantos ! Todos prometiam a mesma coisa: livrar a criação de software do elemento humano. Tornar o desenvolvimento em um processo semi-automático baseado em uma rigorosa formalização. Mas o fato é que o desenvolvimento de software é um processo criativo que não é ajudado em nada pelo excesso de burocracia. Desenvolver software se tornou caro e ineficiente. Mas quando a formalização não atingiu os resultados esperados a solução invariavelmente foi "o processo ainda está frouxo demais, aumentemos o grau de formalização!".

 A Solução

     Entre o desenvolvimento artesanal desenfreado e os processos burocratizados existem muitos graus de variação. É possível desenvolver software ou prestar serviços de suporte de maneira organizada sem apelar para a burocracia. Mas isto exige uma compreenção mais profunda de como as pessoas realmente trabalham de maneira produtiva.
     Selecionei alguns textos que podem apontar para a direção correta.