Assistindo a primeira video-aula da pós graduação em Engenharia de Software na PUC Minas, o professor Dr. Humberto Neto levantou um ponto que me chamou atenção.
Na história da informática, o hardware evoluiu (e ainda evolui) muito mais em muito menos tempo do que o software.
Segundo ele, por um motivo básico, o principal recurso do software ainda é a mente humana, enquanto que, o processo de produção de hardware necessita cada vez menos da interação humana. A medida que pesquisas avançam com descobertas em novas tecnologias, basta um projeto para que a produção de hardware aconteça.
Ainda no vídeo, foram levantados algumas áreas que ocorrem falhas na construção do software, elas estão relacionadas ao:
- Processo: como cronogramas, gerência de recursos, qualquer problema relacionado a planejamento.
- Produto: requisitos de software mudam. FATO!, isso atrapalha o cronograma e pode gerar problemas no software. Além disso, adicionar novos requisistos depois que o escopo está fechado, também acarreta problemas.
- Tecnologia: qualquer tecnologia utilizada no software como bibliotecas, frameworks, etc. Tanto superestimar os beneficions de um framework quanto a troca durante a produção de software prejudicam o cronograma.
Por enquanto é isso. :)