Historia y Evolución del software
Flores H. Alfredo O.
CBTis 110 Turno V.
Soporte y mantenimiento de equipos de cómputo
Unidad 3 Instalación y configuración de software
Introducción
Todo sistema informático está construido a base de un hardware y un software. El hardware se podría deducir como todo aquello que es táctil y se puede manipular con mucho cuidado; éste mismo se encarga de brindar la potencia y rendimiento a nuestro sistema informático. Pero sin un software adecuado nuestro sistema no serviría para nada, da ahí la importancia del software, ya que es el encargado de administrar el hardware, y si hablamos de un software de sistema, como el Sistema Operativo (SO), se encarga de administrar tanto el hardware como el software. Hoy veremos en gran detalle la historia y evolución del software y su ingeniería.
Historia y Evolución del software
Sin lugar a duda, los sistemas informáticos han evolucionado al paso del tiempo, su arquitectura, capacidad, velocidad, rendimiento, etc. Han evolucionado sorprendentemente. Ha generado un gran cambio en la vida del ser humano, antes no se concebía un mundo con la tecnología que hoy tenemos, y ahora no se concibe una vida sin ella.
La evolución del software empieza a la par con la del hardware, pero se enfocó y se dieron continuos cambios en la del hardware, mientras se contemplaba el software como algo más, a lo mejor ignorando que éste es el encargado de darle vida a una computadora. Durante los primeros años de la evolución del software, el enfoque hacia el hardware era tan grande, que había pocos artistas para la programación de una computadora, y el desarrollo era virtualmente y sin una planificación. La mayoría del software se desarrollaba y era utilizado por la misma persona u organización, en este entorno personalizado del software, el diseño era un proceso implícito, realizado en la mente de alguien, y la documentación normalmente no existía. Estos primeros años datan de la década de los cincuentas hasta la década de los sesentas.
Durante la segunda era (desde la mitad de la década de los sesentas hasta finales de los setentas), la multiprogramación y los sistemas multiusuarios introdujeron nuevos conceptos de interacción máquina hombre. Los sistemas de tiempo real podían recoger, analizar y transformar datos de múltiples fuentes, controlando los procesos y produciendo salidas en mili-segundos en vez de en minutos. Los avances en los dispositivos de almacenamiento en línea condujeron a la primera generación de sistemas de gestión de base de datos. Se estableció el software como producto y llegaron las "casa del software", donde éste se desarrollaba para una amplia distribución en un mercado multidisciplinario. Pero todos los programas tenían que ser modificados, corregidos o adaptados a nuevos dispositivos, estas actividades crearon el mantenimiento del software.
Lo que marcó la tercera era de esta evolución (de mediados de los setentas a finales de la década de los ochentas) y quisiera resaltar, fue que, se produce la llegada de los microprocesadores y las computadoras personales. El hardware de las computadoras personales había convertido rápidamente en un producto estándar, mientras que el software que se suministraba con ese hardware, es lo que marcaba y muy posiblemente es lo marca y marcará la diferencia.
La cuarta era está marcada a las tecnologías orientadas a los objetos y está desplazando rotundamente a enfoques de desarrollo de software más convencionales en muchas áreas de aplicación. Potentes máquinas personales controladas por SO sofisticados se han convertido en la norma. Pero aún continúan los problemas asociados con el software.
Historia de la ingeniería del software
El término de ingeniería del software se introdujo por primera vez a finales de la década de los sesentas. Las primeras metodologías de desarrollos de software hasta entonces, eran inadecuadas para la construcción del software. Desde entonces se han buscado mejores técnicas para el desarrollo de manipulación del software.
En particular, la calidad de un sistema de software está gobernada por la calidad del proceso utilizado para mantenerlo y desarrollarlo.
Evolución del software
1968: Surge la crisis del software pues el proceso de desarrollo de software sobrepasa los costos y el tiempo estimados y tiene demasiadas fallas. Se acuña el nombre de Ingeniería de software.
1969 - 19771: Se establecen los primeros principios como resultado de la investigación en buenas prácticas de programación. Tales como: Diseño descendente (Top-Down), Refinamiento sucesivo, Modularidad, Surgen los lenguajes estructurados y la noción de desarrolladores de software dirigidos por un líder.
1972 - 1973: Surge la programación estructurada y el concepto de estilo de programación. Aparece el concepto de ciclo de vida en el desarrollo de software. Se proponen ayudas para la administración y de apoyo en el desarrollo.
1974 - 1975: Se inicia el manejo de la noción de confiabilidad y calidad del software. Se inician las pruebas sistemáticas, la noción de corrección formal, modelos de tolerancia a fallas y confiabilidad total.
1976 - 1977: Se pone atención a las fases anteriores a la codificación como análisis de requerimientos, especificación y diseño. Surgen las técnicas como abstracción y descomposición modular. Se hacen esfuerzos para integrar y validar las fases sucesivas del desarrollo.
1978 -1980: Incremento en el uso de herramientas automatizadas de desarrollo de software. Se llevan a cabo cursos de ingeniería de software. Los principios desarrollados en 69 a 71 se usan masivamente en la industria del software.
1980 - 1985: Se inician las herramientas automatizadas para cada fase del
ciclo de vida siguiendo la programación estructurada.
1986 - 1995: Aparece el paradigma orientado a objetos para el desarrollo
de software grande. Promueve conceptos como la abstracción, la hacia el rehúso. Se inicia el uso masivo de técnicas automatizadas de desarrollo de software.
1995-2003: La evaluación de los procesos evita especificaciones incompletas o anómalas, la aplicación incorrecta de metodologías, etc. Para ello se utilizan distintos modelos de madurez de procesos que tienen como objetivo apoyar distintas estrategias de desarrollo y evaluación para así lograr una mejora continua en los productos. Cabe resaltar que no se debe aplicar alguno de estos modelos de madurez bajo el supuesto de mejorar en su calidad sin antes establecer y definir los procesos correspondientes. En particular, la calidad de un sistema de software está gobernada por la calidad del proceso utilizado para desarrollarlo y mantenerlo.
Conclusión
No sé si nos encontremos en el final de la cuarta era, o estemos en el comienzo de una quinta era, lo que sí sé, es que la tecnología promete avances sorprendentes, llegar a materializar la imaginación de toda persona.
Bibliografía
No hay comentarios:
Publicar un comentario