Tuesday, October 9, 2012

La ingeniería de software



En esta entrada me gustaría compartir con ustedes, algunas reflexiones sobre la ingeniería de software y su sentido dentro de la ingeniería de sistemas y la computación.


El software es un producto que requiere especial cuidado en su fabricación. A diferencia de un edificio o de un vehículo, el software debe estar en una continua actualización, el software siempre tiene que adaptarse a nuevas circunstancias o condiciones. Un vehiculo, por ejemplo, puede pasar años enteros sin cambiar, sólo recibiendo mantenimiento, en cambio con el software no ocurre lo mismo ¿Cuando fue la ultima vez que viste un cambio en Facebook?, una cosa es segura no será la última vez que Facebook cambie.

Fabricar software, como lo sugiera la imagen, requiere un ejercicio muy disciplinado del método de la ingeniería, requiere habilidades muy altas para la comunicación, para la planeación, para el desarrollo del producto final, para ponerlo en funcionamiento y para, finalmente, determinar qué cosas hay que cambiar qué cosas hay que mejorar.

Actualmente el software está por doquier, en tu celular, en el carro en el que te transportas. El software facilita las tareas más comunes como ir a supermercado o pagar los servicios públicos. El software posibilita la creación de vídeo juegos o de efectos especiales en las películas de estreno. El software es tan común que no es fácil notar su presencia o su importancia.

Para notar la importancia de esta rama de la ingeniería, haz el siguiente ejercicio: Te imaginas el mundo sin Google... ¿De qué forma seria posible encontrar una página en Internet?

La misión de Google es organizar la información mundial y hacerla accesible y utilizable desde cualquier parte del mundo, para lograrlo Sergey Brin y Larry Page, dos excelentes ingenieros de sistemas y matemáticos crearon un software al que llamaron "Page rank" que se basa en los enlaces entrantes a una página para organizar y categorizar la información disponible en Internet y de paso crear una industria multimillonaria. Un poco de material complementario, para conocer algo más de la historia de Google:







Google es sólo un ejemplo de tantos de lo poderosa que pueden resultar las herramientas de la ingeniería de software si se usan apropiadamente y disciplinadamente. Seguramente muchas personas se consideran lejos de tener las capacidades de construir una empresa como Google, pero estoy seguro de que ese sentimiento no debe estar lejos de lo que sintieron Larry Page y Sergey Brin cuando ingresaron al doctorado en la Universidad de Stanford. En aquel entonces estoy seguro de que no contaban con muchas más cosas de las que tienes tú dispones en este mismo momento ¿qué nos hace falta?, ¿qué estamos esperando?







2 comments:

  1. Creo que la imagen que pusiste como alusión a la interpretación del desarrollo de software es bastante ilustrativa (perfecta) con respecto a lo que verdaderamente sucede al desarrollar un producto de software, inclusive considero que esto no solo aplica para el software, sino para la mayoría de productos "a la medida"sea cual sea su naturaleza. El hecho de comunicar ideas, entender y comprender totalmente lo que otra persona desea dar a enterar, es un proceso dificultoso, por no decir que el más complicado de todos y que en ocasiones llega a ser "imposible". En lo personal, la comunicación es el punto de partida para la mayoría de problemas en los proyectos.

    ReplyDelete
  2. En resumidas cuentas, sin temor a equivocarme, la ingeniería de software es un conocimiento con un poder increible, será que lo estamos utilizando correctamente?

    ReplyDelete