2. Que es un Diseño Arquitectónico?
Representa la estructura de los datos y los componentes del
programa que se requieren para construir un sistema
basado en computadora.
Constituye el estilo arquitectónico que tendrá el sistema, la
estructura y las propiedades de los componentes que ese
sistema comprende, y las interrelaciones que tienen lugar
ente todos los componentes arquitectónicos del sistema.
De modo simple, se puede considerar que està compuesta
por la estructura jerárquica de los componentes
(módulos), la manera en la que los dichos componentes
interactúan y la estructura de datos que es utilizada por
dichos componentes
3. Quien lo hace?
Los Ingenieros en Sistemas pueden diseñar tanto los
datos como la arquitectura, pero cuando se trata de
construir sistemas grandes y complejos, el trabajo es a
menudo asignado a especialistas.
El diseñador de una base de datos crea la arquitectura
de datos para el sistema. El “Arquitecto de Sistema”
selecciona un estilo arquitectónico apropiado a los
requisitos derivados durante el análisis de la ingeniería
del Sistema y de los requisitos del software
4. Tipos de Modelos
Modelos estructurales.- representan la arquitectura como
una colección organizada de componentes.
Modelos Frameworks.- identifican patrones de diseño
arquitectónico repetibles que se encuentran en aplicaciones
similares.
Modelos dinámicos.- muestran los aspectos del
comportamiento dinámico de la arquitectura, indicando
cómo la estructura o la configuración del sistema pueden
cambiar en función de eventos externos.
Modelos de procesos.- se enfocan en el diseño de los
proceso del negocio que el sistema debe soportar.
Modelos funcionales.- pueden utilizarse para representar
la jerarquía funcional de un sistema.
5. Porque es importante?
Facilita la comunicación entre los diferentes participantes
en el desarrollo .
Resalta las decisiones de diseño que pueden tener un
gran impacto en todo el proceso de desarrollo posterior.
Aporta una visión de cómo se estructura el sistema y
cómo sus componentes trabajan juntos.
6. Estilos Arquitectónicos
Modelos de descomposición de sistemas
Modelo de almacen central
Cliente/Servidor
Modelos de Maquinas Abstractas
Modelos de Control
Centralizado
Modelo de eventos
Modelo de descomposición Modular
Modelo de flujo de Datos
Modelo Orientado a Objetos
Modelos de dominio Especifico
7. Estilos Arquitectónicos
Arquitectura centrada en los Datos
Arquitectura centrada en el flujo de Datos
Arquitectura llamada y respuesta (call and return)
Arquitectura Orientada a Objetos
Arquitectura en Capas
Un problema puede satisfacerse mediante diferentes
estructuras a las que se llegarán posiblemente utilizando
técnicas distintas.
A veces la frontera entre dos estilos no está muy clara, lo
que provoca que haya mezclas entre ellos.
8. Arquitectura Centrada en lo datos
Como parte central de esta arquitectura aparece un
almacén de datos, el cual es accedido de manera
frecuente por otros componentes que actualizan,
añaden, borran o modifican dichos almacenes
El software cliente accede a un repositorio central.
Repositorio pasivo.- el cliente software accede a los
datos independientemente de cualquier cambio en los
datos o a las acciones de otros clientes software.
Repositorio activo (pizarra).- el repositorio envía
información a los clientes cuando los datos de su interés
cambian, siendo por tanto un ente activo.
9. Arquitectura centradas en
datos proporcionan
integridad, es decir, los
componentes existentes
pueden cambiar y pueden
añadirse nuevos componentes
a la arquitectura sin que
afecte a otros clientes. A su
vez los datos pueden ser
pasados entre clientes a
través de mecanismos que
coordinen dicha transferencia
de información.
Componentes cliente
ejecutan procesos
independientemente.
10. Arquitectura Centrada en el Flujo
de Datos
Se basa en el patrón “pipe and filter” (tuberías y filtros).
Este consta de un conjunto de componentes
denominados “filtros” conectados entre si por “tuberías”
que transmiten datos desde un componente al siguiente.
Cada filtro trabaja de manera independiente de los
componentes que se encuentran situados antes o
después de ella. Se diseñan de tal modo que esperan un
conjunto de datos en un determinado formato y obtiene
como resultado otros datos de salida en un formato
específico.
Si el flujo degenera en una única línea de
transformación, se denomina secuencial batch.
12. Arquitectura llamada y respuesta
(Call and Return)
Permite a los diseñadores software conseguir estructuras
de programas relativamente fáciles de modificar y
escalar.
Podemos encontrar diferentes estilos dentro de este
tipo:
Programa principal/subprograma.- Descompone las
funciones en una jerarquía de control donde el programa
principal invoca a los otros programas subordinados, los
cuales pueden a su vez invocar otros.
Llamada de procedimiento remoto.- Los componentes de l
a arquitectura son distribuidos entre diferentes
ordenadores de la red.
14. Arquitectura Orientada a Objetos
Los componentes del sistema encapsulan datos y
operaciones que deben utilizarse para manipular dichos
datos. La comunicación y coordinación entre
componentes se realiza mediante envío de mensajes.
En esencia es un sistema parecido al anterior, donde se
enfatiza el empaquetamiento entre datos y operaciones
que permiten manipular y acceder a dichos datos.
15. Arquitectura en Capas
Se definen un conjunto de niveles o capas, cada nivel
interno que se atraviesa se aproxima más al nivel del
conjunto de instrucciones máquina.
Sistemas en capas puros.- cada capa sólo puede
comunicarse con la vecinas. Esta solución aunque puede
ser menos eficiente en algunos casos, facilita la
portabilidad de los diseños