Sobre la llamada Ingeniería Informática (E.W. Dijkstra)Comentarios
Mostrar comentarios como
(Plano | Hilos)
Muy buena la entrada, pero no comprendo la reflexión final. Quizá sea porque "Ingeniería Informática" (Computer Engineering) e "Ingeniería del Software" (Software Engineering) tienen la misma relación que la Medicina y la Cirugía. Y nunca criticaría a la medicina por lo que se hace en "Corporación Dermoestética". La ingeniería del hardware está bastante más madura que la del software (probablemente sin alcanzar aún su madurez total).
Desde mi punto de vista (dejando a un lado el software), la diferencia entre "Computer Engineering" y "Computer Science" salta a la vista en el propio nombre. Y no veo el motivo para que ambas no puedan coexistir. Como ciencias químicas y la ingeniería química. Sí estoy totalmente de acuerdo en que todas las ciencias, ingenierías y estudios en torno a la informática son jóvenes, inexpertas, llenas de intuiciones e implusos cuan adolescentes desbocadas. Como la psicología en el siglo XIX. Aún tienen un halo incluso religioso. Hay que esperar a que maduren, y quién sabe, quizá de aquí a un tiempo algún Newton de la informática ponga orden en el caos intuitivo que ahora es todo, o un Einstein de la programación descubra la unificación de los modos de programar. O quizá, al ritmo que van las cosas, en 100 años no exista la informática y los ingenios sean tan avanzados que los programadores como la conocemos sean una anécdota del pasado como los copistas medievales. Quizá esos ingenios utilicen a la humanidad como baterías alcalinas.
El problema de la Ingeniería de la Computación, es que así como otras disciplinas están limitadas y reguladas por unas leyes físicas concisas, no ocurre lo mismo con ésta. El universo del desarollo de software es tan amplio como lo son las propias matemáticas (es decir, virtualmente infito) pero, ¿a alguien se le ocurriría crear la Ingeniería de las Matemáticas?
Existen unas leyes físicas que le permiten a un arquitecto determinar con seguridad si la estructura que está diseñando se sostendrá en pie. En cambio, el uso de cualquiera de las metodologías de desarrollo que contempla la Ingeniería del Software, no garantiza en absoluto que el código desarrollado no pueda fallar en unas determinadas circunstancias. De hecho, ni siquiera garantiza que vaya a realizar correctamente la función para la que fue diseñado, y mucho menos que la realice de una forma razonablmente eficiente. Es por ello que, en la práctica, lo que denominamos Ingeniería del Software, realmente no es más que un conjunto de buenas prácticas; consejos y recomendaciones basados en la experiencia de otros programadores. Por esta razón Dijkstra dice que la máxima de ésta es "Cómo programar si no sabes hacerlo". Añadir comentario
|
Calendario
BuscarCategoríasAdministración del Blog |
|||||||||||||||||||||||||||||||||||||||||||||||||
Fulianito tenía un plan. Le daba vueltas una y otra vez a la frase que cambiaría su vida: "(...) un número infinito de monos tecleando sobre un número infinito de máquinas de escribir por tiempo infinito, producirían la mejor novela de la Historia (...)".
Tracked: Oct 26, 03:26