-
Edsger Dijkstra y la estructuración del software
Dijkstra, de la noción de sistemas operativos organizados en capas que se comunican sólo con las capas adyacentes y que se superponen “como capas de cebolla”. Inventó o ayudó a precisar además docenas de conceptos: el algoritmo de camino más corto, los stacks, los vectores, los semáforos, los abrazos mortales. -
Conferencia NATO Software Engineering Conference
Fue el evento donde se estableció la ingeniería de software como una disciplina -
Primer vistazo a la arquitectura de software
En la conferencia de la NATO de 1969, P. I. Sharp formuló apreciaciones con base en las ideas de Dijkstra, indicando que la ingeniería de software era diferente a la “arquitectura de software” y que debía ponerse más énfasis en ésta. -
Diseño estructurado y de modelos
Estos modelos comenzaron a basarse en una estrategia más orgánica, evolutiva y cíclica. Poco a poco el diseño se fue independizando de la implementación, y se forjaron herramientas, técnicas y lenguajes de modelado específicos. -
Parnas propone diversos principios de diseño
David Parnas, demostró que los criterios seleccionados en la descomposición de un sistema impactan en la estructura de los programas y propuso diversos principios de diseño que debían seguirse a fin de obtener una estructura adecuada, en 1972, introdujo los conceptos de ocultamiento de información, estructuras de software y familias de programas, enfatizando siempre la búsqueda de calidad del software. -
Brooks y las primeras arquitecturas
Frederick Brooks, diseñador del sistema operativo OS/360 y Premio Turing 2000, utilizaba el concepto de arquitectura del sistema para designar “la especificación completa y detallada de la interfaz de usuario”. También distinguía entre arquitectura e implementación; mientras aquella decía qué hacer, la implementación se ocupa de cómo. -
El paradigma de la Programacion Orientada a Objetos
Los métodos de desarrollo estructurado demostraron no escalar suficientemente y fueron dejando el lugar a un nuevo paradigma, el de la programación orientada a objetos. -
La arquitectura de software en el estado que conocemos
El primer estudio en que aparece la expresión “arquitectura de software” en el sentido en que hoy lo conocemos es sin duda el de Perry y Wolf; ocurrió en 1992, aunque el trabajo se fue gestando desde 1989. En él, los autores proponen concebir la AS por analogía con la arquitectura de edificios, una analogía de la que luego algunos abusaron , otros encontraron útil y para unos pocos ha devenido inaceptable. -
Gang of Four (Patrones GoF)
1990 se considera década del surgimiento de los patrones, cristalizada el texto de la Banda de los Cuatro (Gang of Four), estudiados por Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides. Se contemplan 3 tipos de patrones; de creación, estructurales y de comportamiento. -
Patrones POSA.
Presentados en el clásico libro Pattern-Oriented Software Architecture (POSA), en este libro se presenta patrones de arquitectura divididos en cuatro categorías; de mar a estructura, sistemas distribuidos, sistemas interactivos y sistemas adaptables. -
Se publica la versión definitiva de la recomendación IEEE Std 1471
En ésta se procura homogeneizar y ordenar la nomenclatura de descripción arquitectónica y homóloga los estilos como un modelo fundamental de representación conceptual. -
Arquitectura de software en la actualidad
En el transcurso de los años, la complejidad y tamaño de los sistemas software se fue incrementado de manera espectacular. La capacidad para responder rápidamente ante los cambios y optimizar los procesos de negocio es un factor clave para la competitividad y el crecimiento de las organizaciones.