Baixe o app para aproveitar ainda mais
Prévia do material em texto
No Silver Bullet Resumo Segundo Frederick P. Brooks, similar a filmes de terror busca-se uma bala de prata que mate o lobisomem da evolução do software. Este compara o desenvolvimento do Hardware ao software e explica que aquele apresenta uma drástica redução de custos o tornando mais barato em contrapartida o software não acompanhou nesse sentido, de modo que não existe um método que permitisse a produção em larga escala com custo reduzido. O autor argumenta que essa evolução não foi possível em virtude de alguns aspectos, primeiro que na história da humanidade nada evoluiu tão rápido quanto a computação, em segundo a essência do software, que se demonstra com algo mutável e personalíssimo. O software não é algo que as pessoas tenham facilidade em enxergar como a construção de um prédio, logo o autor afirma que o processo de especificação, design e teste são os principais desafios, já que a diferença de visão entre a especificação e o que o cliente deseja pode ser gritante. Deste modo são destacadas as seguintes propriedades do software pelo autor: Complexidade: O software é mais complexo do que qualquer outra coisa que o ser humano já tenha feito; Conformidade: O ser humano não sabe o que realmente quer; Mutabilidade: O software passa por diversas pressões que ocasionam na mudança de requisitos; Invisibilidade: O software não é algo palpável para o ser humano. Um dos problemas estava relacionado a proximidade da linguagem natural com a linguagem de máquina, logo a primeira tentativa de bala de prata foi a de tornar a linguagem de programação mais natural, saindo da linguagem binária (baixo nível, pois está mais próximo ao que o Hardware entende) para linguagem de alto nível (mais próximo a linguagem natural). Uma segunda solução foi o uso do Time-Sharing, essa abordagem consistia na alternância entre processos, otimizando assim o uso do processador e passando a ideia de que os processos eram respondidos de modo paralelo. Todavia, essas abordagens resolveram parte dos problemas, mas não todos os problemas, não sendo assim a bala de prata esperada. O autor discorre quanto a possíveis soluções como linguagens de programação de auto nível, inteligência artificial, programação automática, programação gráfica, verificação de programas, evolução de ferramentas de desenvolvimento, aperfeiçoamento do Hardware poderiam ser soluções, técnicas orientadas a objeto. Em tese essas tecnologias prometiam atuar como uma espécie de bala de prata que resolveriam os problemas de desenvolvimento. Por fim, existem ainda possíveis soluções do ponto de vista conceitual, a ideia era a de buscar um ciclo de vida mais voltado as demandas dos clientes, de modo que o software pudesse ser aperfeiçoado conforme o melhor entendimento dos requisitos utilizando técnicas como prototipagem, modelos incrementais que hoje são amplamente utilizados. Pontos relevantes O autor mostra que apesar do passar dos anos ainda existem problemas relacionados a mesma temática, ou seja, levantamento e especificação de requisitos, além disso a falta de proximidade dos conceitos do software para os clientes, que ainda se mostram como sendo uma barreira entre o desenvolvimento do software correto, sendo assim o autor levanta proposições com intuito de servirem como uma bala de prata, que como as metodologias anteriores não se traduziram em uma solução completa. Crítica Considerando a época em que fora escrito, o artigo apresenta conceito extremamente relevantes para o cotidiano, todavia houveram diversas soluções apontadas pelo autor que não conseguiram se concretizar e de fato torara-se a tão pretendida bala de prata. Pode-se citar o modelo orientado a objetos, este veio como uma espécie de solução definitiva para tornar a linguagem de programação mais próxima da linguagem do natural, este modelo até conseguiu tornar a modelagem mais natural, mas não se tornou a solução definitiva para todos os problemas, visa a complexidade e dificuldade de entendimento de pessoas estranhas ao ramo da tecnologia da informação.
Compartilhar