Please enable JavaScript.
Coggle requires JavaScript to display documents.
INTRODUCCIÓN A LA ARQUITECTURA DE SOFTWARE - Coggle Diagram
INTRODUCCIÓN A LA ARQUITECTURA DE SOFTWARE
Definiciones
Falta de consenso en definiciones
Definicion de Clements
Proporciona comprensión a alto nivel y suprime detalles
Vista abstracta del sistema con componentes, conducta y coordinación
"Componente" se refiere a elementos de estilo, no tecnologías específicas
La Arquitectura de Software es la organización fundamental de un sistema encarnada en sus componentes
estándar IEEE 610.12.1990
AS: Organización fundamental del sistema en componentes, relaciones, ambiente y principios de diseño y evolución
Modelos de AS
Modelos estructurales
Sostienen que la AS está compuesta por componentes, conexiones entre ellos y (usualmente) otros aspectos tales como configuración
Modelos de framework
se centran en la estructura global coherente de un sistema específico, a menudo relacionado con un dominio particular
Modelos dinámicos
Enfatizan la cualidad conductual de los sistemas
Modelos de proceso
Se concentran en la construcción de la arquitectura, y en los pasos o
procesos involucrados en esa construcción
Modelos funcionales
un conjunto de componentes funcionales, organizados en capas que proporcionan servicios hacia arriba
CAMPOS DE LA ARQUITECTURA DE SOFTWARE
Conjunto heterogéneo de áreas teóricas y prácticas
Evolución de la AS hacia una disciplina en constante cambio y expansión
Diversos campos y focos de investigación
Areas de investigacion
Lenguajes de descripción de arquitecturas
Fundamentos formales de la AS
Técnicas de análisis arquitectónicas
Métodos de desarrollo basados en arquitectura
Recuperación y reutilización de arquitectura
Codificación y guía arquitectónica
Herramientas y ambientes de diseño arquitectónico
Estudios de casos
Reusabilidad en AS
Reusabilidad como justificación clave
Almacenamiento estructurado de información de diseño de alto nivel
Evitar reinvención, validación y re-descripción
Temas fundamentales
Diseño o selección de la arquitectura
Representación de la arquitectura
Evaluación y análisis de la arquitectura
Desarrollo y evolución basados en arquitectura
Recuperación de la arquitectura
MODALIDADES Y TENDENCIAS
En 1990
AS establecida como un dominio separado de la ingeniería y el diseño
Falta de discurso explícito sobre escuelas de AS
Se distinguen aproximadamente seis corrientes
división preliminar de escuelas de AS que se propone
Arquitectura como Etapa de Ingeniería y Diseño Orientada a Objetos
Ligada a UML y Rational
Abstracción en fases iniciales
Relacionada con el modelado y diseño
Predilección por modelado denso y abundancia de diagramas
Enfoque en encapsulamiento en clases y objetos
Arquitectura Estructural Basada en Modelos Estáticos, ADLs y Vistas
Representantes académicos
Uso de descripciones verbales, diagramas de cajas, ADLs y lenguajes formales
No necesariamente coincide con configuración de aplicaciones
Enfoque en el modelado arquitectónico
No se enfoca en lenguajes de programación ni clases/objetos
Estructuralismo arquitectónico radical
Se trata de un desprendimiento de la corriente
anterior
Mayoritariamente europeo
Tendencias que excluyen o corrigen el modelado orientado a objetos
Arquitectura basada en patrones
Reconoce el modelo orientado a objetos, pero no se adhiere rígidamente a UML
Tolerancia hacia modelos de proceso tácticos
Arquitectura procesual
Enfoque en modelos de ciclo de vida y técnicas específicas para la arquitectura de software
Arquitectura basada en escenarios
Es la corriente más nueva
Se trata de un movimiento predominantemente europeo, con centro en Holanda
Conexión con requerimientos y funcionalidad
Uso ocasional de diagramas de casos de uso UML
DIFERENCIAS ENTRE ARQUITECTURA Y DISEÑO
Reconocimiento de diferencias entre diseño e implementación y entre vistas conceptuales y tecnológicas
Diversas interpretaciones y posturas sobre la relación entre arquitectura y diseño:
Una postura afirma que arquitectura y diseño son lo mismo
Otros sostienen que la arquitectura es un nivel de abstracción superior al diseño o simplemente otro paso en el proceso de desarrollo
Taylor y Medvidovic estiman que esta interpretación es la que se encuentra más cerca de la verdad.
Otra perspectiva establece que la arquitectura es algo nuevo y diferente del diseño, pero no especifica en qué aspectos
La AS abarca metodologías de diseño y análisis.
Para Shaw y Garlan la AS es el primer paso en la producción de un diseño de software, en una secuencia que
distingue tres pasos:
Arquitectura
se enfoca en componentes, interacciones y restricciones de alto nivel
Diseño del código
se enfoca en algoritmos, estructuras de datos y detalles de bajo nivel
Diseño ejecutable
Remite al diseño de código a un nivel de detalle todavía más bajo y trata cuestiones tales como la asignación de memoria, los formatos de datos, etcétera.
el ABD describe el sistema en función de los principales elementos y las relaciones entre ellos.
la descomposición de la función
la realización de los requerimientos de calidad y negocios a través de los estilos arquitectónicos
las plantillas de software, un concepto nuevo que incluye patrones que describen la forma en quetodos los elementos de un tipo interactúan con los servicios compartidos y la infraestructura