Reseña Histórica del Software
La primera generación
de computadoras aparece a finales de la década de 1940. Eran de enormes
dimensiones y muy costosas. El poder computacional era muy pobre comparado con
las computadoras de la actualidad. La relación entre el hardware y el software
era demasiado estrecha, los programas se escribían de una manera bastante
especializada (lenguaje de máquina) y por lo tanto, el concepto de software
como una parte “independiente” del hardware se veía todavía muy lejano. Debido
precisamente a esta relación entre hardware-software, las personas que operaban
las computadoras debían de poseer cierto nivel de conocimientos sobre el
funcionamiento de las mismas, así como de los programas que necesitaban para
hacerlas funcionar. En ese entonces no existían los usuarios convencionales,
todos eran usuarios especializados, en su gran mayoría científicos o
ingenieros.
Entre esos usuarios
expertos, era muy común que se diera el intercambio de programas así como el
compartir mejoras hechas a los mismos. A estas mejoras en el software se les
conoce como hacks y a estos primeros expertos o grupos de la programación se
les empezó a llamar hackers. En general a los hackers les interesa conocer el
funcionamiento detallado de los sistemas informáticos y de su seguridad,
manteniendo una actitud ética. Algunos traspasan esta línea y se convierten en
lo que la comunidad hacker ha denominado cracker.
En los inicios de la
computación, cuarenta (40) y cincuenta (50), no existían las licencias de
software. El software era libre y los programas se intercambiaban como se hace
con las recetas de cocina. Este espíritu perduró en la comunidad de
programadores durante años como algo natural, hasta que con el tiempo las
restricciones derivadas de licencias de uso, implementadas por desarrolladores
de software y las grandes compañías, plantearon la necesidad de fijar una línea
divisora entre el software libre y el software propietario.
Posteriormente, el
software se empezó a ver más como una gran colección de pequeños fragmentos de
código, susceptible de ser modificado y adaptado. Las computadoras de
escritorio empezaban a volverse cada vez más populares y accesibles a un número
mayor de personas. Había también una mayor cantidad de programadores probando
cosas nuevas, escribiendo sus propias aplicaciones e iniciando una gran variedad
de proyectos. Sin embargo, había una importante limitante, la gran mayoría del
software que se utilizaban en ese momento era propietario y venía protegido por
licencias que regulaban su uso y distribución, a finales de la década de los
sesenta (60), la cual permitía la interconexión entre redes de computadoras de
las diversas universidades empezó el
surgimiento de la primera comunidad global que se alzaba sobre los valores y
principios del software libre. Los grupos hasta entonces dispersos de hackers,
pudieron a través de la red, sumar esfuerzos, intercambiar conocimientos y
colaborar entre sí. Los proyectos involucraban cada vez más desarrolladores de
software, quienes estaban dispersos geográficamente alrededor del mundo y
utilizaban el correo electrónico como medio de comunicación para hacer llegar
sus aportaciones.
En 1990 La crisis del
software se fundamentó en el tiempo de creación de éste, ya que en la
creación del mismo no se obtenían los resultados deseados, además de un gran
costo y poca flexibilidad.
Básicamente, la
crisis del software se refiere a la dificultad en escribir programas libres de
defectos, fácilmente comprensibles, y que sean verificables. Las causas son,
entre otras, la complejidad que supone la tarea de programar, y los cambios a
los que se tiene que ver sometido un programa para ser continuamente adaptado a
las necesidades de los usuarios.
Además, no existen
todavía herramientas que permitan estimar de una manera exacta, antes de
comenzar el proyecto, cuál es el esfuerzo que se necesitará para desarrollar un
programa. Este hecho provoca que la mayoría de las veces no sea posible estimar
cuánto tiempo llevará un proyecto, ni cuánto personal será necesario. Cuando se
fijan plazos normalmente no se cumplen por este hecho. Del mismo modo, en
muchas ocasiones el personal asignado a un proyecto se incrementa con la
esperanza de disminuir el plazo de ejecución.
Por último, las aplicaciones de hoy en día son programas
muy complejos, inabordables por una sola persona. En sus comienzos se valoró
como causa también la inmadurez de la ingeniería de software, aunque todavía
hoy en día no es posible realizar estimaciones precisas del coste y tiempo que
necesitará un proyecto de software

No hay comentarios:
Publicar un comentario