SlideShare uma empresa Scribd logo
1 de 35
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
 Un aspecto muy importante en arquitectura del software son los patrones tanto
de diseño como de arquitectura
 Los complementan los estilos arquitectónicos
 Ambos se preocupan de los stakeholders
 Los estilos favorecen al tratamiento estructural, la investigación, la teoría
 Los patrones están más cerca del diseño, la práctica, el proceso, el código
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
 Un estilo describe una clase de arquitectura o piezas de la misma.
 Los estilos se pueden reutilizar en situaciones semejantes en el futuro.
 Desde que surgió la arquitectura del software se generalizó la arquitectura cliente
– servidor, posteriormente entró en auge las arquitecturas en capas y las basadas
en componentes y más recientemente las basadas en recursos y servicios
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
Cada estilo describe una categoría de sistemas que incluye
1. Un conjunto de componentes (una base de datos o módulos de computo) que
realizan una función requerida por el sistema
2. Un conjunto de conectores que permiten la comunicación, coordinación y
cooperación entre los componentes
3. Restricciones que definen como se integran los componentes para formar el
sistema
4. Modelos semánticos que permiten que un diseñador entienda las propiedades
generales del sistema al analizar las propiedades conocidas de sus partes.
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
Cuando definimos una arquitectura, la tipificamos y la distinguimos, pero existen
preguntas generales?
 Cuáles son las arquitecturas alternativas?
 La arquitectura elegida abarca todo un contexto?
 La arquitectura elegida es una variante incluida en un conjunto más amplio?
 En que magnitud contrasta con las otras alternativas?
 Cuántas formas podría adoptar?
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
 No solo es cuestión clasificatoria. Optar por una forma arquitectura tiene un valor
distintivo.
 Los estilos se manifiestan en la arquitectura teórica descriptiva; los partidarios de
los estilos se definen como arquitectos.

 Los que se agrupan en torno a patrones se confunden con ingenieros o
diseñadores, incluso con programadores sistemáticos o analistas de software.
 Ambos con mayor o menor grado participan abarcando la Arquitectura del
Software.

 Los estilos se encuentran en el centro de la arquitectura constituyen su escencia.
 Los patrones de arquitectura están claramente dentro de la disciplina, no así los
patrones de diseño.
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
Se establece que una arquitectura se define mediante la afirmación:
Arquitectura del Software = Elementos, Forma y Razón.
- Elementos:
procesamiento:
datos:
conexión:

Suministra la transformación de los datos
Contiene la información a procesar
Llamadas a procedimientos, mensajes, etc.

- Forma: las propiedades y relaciones entre los elementos.
- Razón: motivación para la elección de elementos y sus formas.
Por tanto un estilo arquitectónico es una abstracción de tipos de elementos y
aspectos formales a partir de arquitecturas específicas.
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
 Conjunto de reglas de diseño que identifica las clases de componentes y
conectores que se pueden utilizar para componer el sistema o subsistema junto
con las restricciones locales o globales de la forma en que la composición se lleva
a cabo
Componentes: sistemas encapsulados indicando la forma de empaquetado y
la forma en que interactúan con otros componentes.
Conectores:
los procesos interactúan por medio de protocolos de
transferencia de mensajes o por flujo de datos, etc.
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
 Estilo arquitectónico es una descripción del patrón de los datos y la interacción de
control entre los componentes, ligada a una descripción informal de los beneficios
e inconvenientes del uso del estilo.
 Los estilos son entidades que ocurren en un nivel sumamente abstracto y
puramente arquitectónico.
DISEÑO DE LA ARQUITECTURA
ESTILOS ARQUITECTONICOS
Catalogo de estilos:
 Arquitectura centrada en datos (arquitecturas de pizarra, Data Warehouse)
 Arquitectura de flujo de datos (Tuberías y filtros, proceso secuencial en lotes)
 Arquitecturas de llamada y retorno (llamadas a procedimientos remotos, Modelo
Vista Controlador)
 Arquitecturas orientadas a objetos
 Arquitecturas orientadas a aspecto

 Arquitecturas orientadas a servicios (SOA)
 Arquitecturas estratificadas
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN DATOS
Se fundamenta en el almacenamiento de
datos (archivos o bases de datos) al que
acceden otros componentes que realizan
acciones sobre la los datos.

El cliente accede al repositorio central.

Repositorio pasivo: El software cliente accede a los datos independientemente de los
cambios de los datos o de las acciones del software de otro cliente.
Repositorio pizarrón: el repositorio envía notificaciones a los clientes cuando los
datos de su interés cambian, siendo por tanto un ente activo.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN DATOS
Arquitectura en pizarra:
Imagine un número de estudiantes que están escribiendo en la pizarra al mismo
tiempo tratando de resolver un problema.
Y si le añadimos un maestro que primero le pide a cada estudiante lo que quiere
escribir en la pizarra y decide qué estudiante tiene la mejor idea. Y cuando el
estudiante haya terminado, el proceso se repite.
Esta es la idea detrás de la arquitectura en pizarra. Los estudiantes se llaman
fuentes de conocimiento. El profesor se denomina “intérprete de comandos de
control”
En la Arquitectura en Pizarra varios subsistemas especializados pueden reunir sus
conocimientos para construir una posible solución parcial o aproximada.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN DATOS
Arquitectura en pizarra:
La idea detrás de la Arquitectura de Pizarra es una colección de programas
independientes que trabajan conjuntamente en una estructura de datos común.
Cada programa especializado trabaja para la solución de una parte específica de la
tarea general, y todos los programas trabajan juntos en la solución total.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN DATOS
Arquitectura en pizarra:
Fuente de conocimiento. La fuente de conocimiento es un componente que se añade
a la solución del problema. Puede ser cualquier cosa que se lee de un cierto nivel de
pizarra, y propone una modificación a los componentes de la pizarra.

Pizarra. Es la estructura de datos común de las fuentes de conocimiento. Es capaz de
representar a todos los estados de algún espacio del problema. Contiene varios
niveles de descripción con respecto al espacio del problema.
Intérprete de comandos de control. Determina que fuente de conocimiento tiene la
oportunidad de cambiar la pizarra. En cada ejecución, identifica los cambios a la
pizarra, activa las fuentes de conocimiento apropiadas, selecciona una de estas y la
ejecuta.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN DATOS
Almacén de datos:
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN DATOS
Almacén de datos:
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:
 Enfatiza la reutilización y la modificabilidad
 Adecuada para sistemas con trasformaciones de datos en pasos sucesivos (cuando
los datos de entrada se transforman en datos de salida mediante una serie de
componentes para el cálculo o la manipulación. )

 Ejemplos: arquitecturas de tuberías y filtros y las de proceso secuencial en lotes
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:

Tuberías y filtros
 Una tubería (pipeline) es una arquitectura que conecta componentes
computacionales (filtros) a través de los conectores (pipes) y las comunicaciones
se ejecutan como un flujo.
Filtro

Filtro

Filtro

Filtro

Filtro
Filtro

Tuberías

Filtro

Filtro

Filtro

Filtro
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:

Tuberías y filtros
 Los filtros no necesariamente realizan únicamente tareas de filtrado sino que
ejecutan formas variables de transformación

 Esta diseñado para esperar la entrada de datos con cierta forma y producir su
salida (al siguiente filtro) de una forma específica. (no es necesario que el filtro
conozca el funcionamiento de los filtros vecinos.


La aplicación típica es un procesamiento clásico de datos:

-

El cliente hace un requerimiento
El requerimiento se valida
Un web Service toma el objeto de la base de datos
Este objeto se convierte en html
Se efectúa la representación en pantalla
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:

Tuberías y filtros
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:

Tuberías y filtros
Ejemplo: Unix
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:

Tuberías y filtros
Ejemplo: Compiladores
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:

Tuberías y filtros
Este estilo se podría usar cuando:
 Se puede especificar la secuencia de un número conocido de pasos
 No se requiere esperar la respuesta asincrónica de cada paso
 Se busca que todos los componentes de abajo sean capaces de inspeccionar y
actuar sobre los datos que vienen de arriba (no viceversa).
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:

Tuberías y filtros
Ventajas:






Simple de entender e implementar
Facilidad de mantenimiento y mejora
Facilidad de diagnostico
Fuerza un procesamiento secuencial
Ejecución concurrente

Desventajas:





Demasiado simplista
No maneja condicionales, bucles y otras lógicas de control de flujo
No apto para situaciones interactivas
Problemas de rendimiento (los datos se transmiten de forma completa)
DISEÑO DE LA ARQUITECTURA
ARQUITECTURA CENTRADA EN FLUJO DE DATOS:

Estilo secuencial por lotes
En el estilo secuencial por lotes (batch sequential) los componentes son
programas independientes; el supuesto es que cada paso se ejecuta hasta
completarse antes que se inicie el paso siguiente.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS DE LLAMADA Y RETORNO:

Con esta arquitectura se obtiene una estructura de programa que resulta
relativamente fácil de modificar y cambiar de tamaño.
Existen dos subestilos:
Arquitectura de programa principal/subprograma:
Esta estructura de programa clásica separa la función en una jerarquía de
control donde un programa “principal” invoca a varios componentes de
programa, que a su vez pueden invocar a otros componentes.
Arquitectura de llamada a procedimiento remoto:
Los componentes de una arquitectura de programa principal/subprograma se
distribuyen entre varias computadoras de una red.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS DE LLAMADA Y RETORNO:

Arquitectura de programa principal/subprograma:
La programación procedimental precede a la programación orientada a objetos.
La llamada a procedimiento convencional es una llamada en el mismo sistema
en el que se invoca y se llama a un procedimiento local.
 Un procedimiento o función es una estructura de control que proporciona la
abstracción a una acción.
 La acción de una función se invoca a través de una llamada a función.
 Para usar diferentes variables una llamada a función debe tener argumentos
 El valor o referencia de cada argumento se pasa a la función.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS DE LLAMADA Y RETORNO:

Programa
Principal

Subprograma
controlador
Subprograma
de aplicación

Subprograma
controlador
Subprograma Subprograma
de aplicación de aplicación

Subprograma
de aplicación

Subprograma
controlador
Subprograma
de aplicación

Subprograma
de aplicación

Subprograma
de aplicación
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS DE LLAMADA Y RETORNO:

Arquitectura de llamada a procedimiento remoto:
El objetivo de RPC es extender a los sistemas distribuidos el mecanismo de
llamadas a procedimientos y subrutinas de los lenguajes de programación.
RPC está basado en el modelo cliente - servidor
RPC permite que un proceso localizado en una máquina pueda ejecutar código
localizado en otra máquina remota, sin preocuparse por la comunicación entre
ambas.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS DE LLAMADA Y RETORNO:

Arquitectura de llamada a procedimiento remoto:
En el modelo de llamada a procedimiento remoto, un proceso realiza una
llamada a procedimiento de otro proceso que posiblemente este localizado
remotamente.

 Los datos se pasan a través de argumentos.
 Cuando un proceso recibe una llamada, se ejecuta la acción codificada en el
procedimiento.
 Se notifica la finalización de la llamada al proceso que lo invoca
 Si existe un valor de retorno se envía desde el proceso invocado
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS DE LLAMADA Y RETORNO:

Arquitectura de llamada a procedimiento remoto:
En RPC, todos los parámetros que se utilicen en las llamadas han de ser pasados
por valor; y no por referencia, ya que ambos procedimientos se ejecutan en
espacios de memoria diferentes.

Para que estos parámetros puedan ser enviados a través de la red, es necesario
que sean serializables, es decir, convertibles en una corriente de bytes.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS ORIENTADAS A OBJETOS:

Los componentes de un sistema encapsulan los datos y las operaciones que
deben aplicarse para manipular los datos. La comunicación y coordinación entre
los componentes se consigue mediante el paso de mensajes.
Los componentes de este estilo son
los objetos, o más bien instancias de
los tipos de dato abstractos.
Los objetos representan una clase de
componentes llamados managers,
debido a que son responsables de
preservar la integridad de su propia
representación.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS ORIENTADAS A OBJETOS:

• Los componentes del estilo se basan en principios OO: encapsulamiento,
herencia y polimorfismo. Son asimismo las unidades de modelado, diseño e
implementación, y los objetos y sus interacciones son el centro de las
incumbencias en el diseño de la arquitectura y en la estructura de la aplicación.
• Las interfaces están separadas de las implementaciones. En general la
distribución de objetos es transparente, y no importa si los objetos son locales o
remotos.
• Restricciones: una interfaz pueda ser implementada por múltiples clases. Los
componentes y objetos interactúan a través de invocaciones de funciones y
procedimientos.
Hay muchas variantes del estilo; algunos sistemas, por ejemplo, admiten que los
objetos sean tareas concurrentes; otros permiten que los objetos posean
múltiples interfaces.
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS EN CAPAS:

Hay varias capas definidas, cada una de ellas realiza operaciones que se acercan
progresivamente al conjunto de instrucciones de la máquina.
En la capa externa los componentes sirven a las operaciones de interfaz del
usuario.

En la capa interna los componentes sirven como interfaz con el sistema
operativo.
Las capas intermedias proporcionan servicios de utilería y de SW de aplicaciones
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS EN CAPAS:

Módulos

Capa de la
interfaz de
usuario
Capa de la
Aplicación

Capa de
Utilerías
Capa
Centra
l
DISEÑO DE LA ARQUITECTURA
ARQUITECTURAS EN CAPAS:

Ventajas
 Facilita la descomposición del problema en varios niveles de abstracción.
 Soporta fácilmente la evolución del sistema, los cambios sólo afectan a las
capas vecinas
 Se pueden cambiar las implementaciones respetando las interfaces con las
capas adyacentes
Desventajas
 No todos los sistemas pueden estructurarse en capas
 A menudo es difícil encontrar la separación en capas adecuadas

Mais conteúdo relacionado

Mais procurados

Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 
Enfoque estructurado enfoque oo
Enfoque estructurado   enfoque ooEnfoque estructurado   enfoque oo
Enfoque estructurado enfoque ookarlanm07
 
Modelo componentes
Modelo componentesModelo componentes
Modelo componentesmartin
 
Diagrama de interaccion(secuencia y colaboracion)
Diagrama de interaccion(secuencia y colaboracion)Diagrama de interaccion(secuencia y colaboracion)
Diagrama de interaccion(secuencia y colaboracion)marianela0393
 
Diagramas de implementacion
Diagramas de implementacionDiagramas de implementacion
Diagramas de implementacionZonickX
 
Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareRoberth Loaiza
 
Metodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMetodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMiguel Rodríguez
 
Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasYESENIA CETINA
 
Metodologias para el desarrollo del software
Metodologias para el desarrollo del softwareMetodologias para el desarrollo del software
Metodologias para el desarrollo del softwareyeltsintorres18
 
Diferencias entre scrum y xp
Diferencias entre scrum y xp Diferencias entre scrum y xp
Diferencias entre scrum y xp deborahgal
 

Mais procurados (20)

Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
Enfoque estructurado enfoque oo
Enfoque estructurado   enfoque ooEnfoque estructurado   enfoque oo
Enfoque estructurado enfoque oo
 
Modelo componentes
Modelo componentesModelo componentes
Modelo componentes
 
Metodología RUP
Metodología RUPMetodología RUP
Metodología RUP
 
Diagrama de interaccion(secuencia y colaboracion)
Diagrama de interaccion(secuencia y colaboracion)Diagrama de interaccion(secuencia y colaboracion)
Diagrama de interaccion(secuencia y colaboracion)
 
Diagramas de implementacion
Diagramas de implementacionDiagramas de implementacion
Diagramas de implementacion
 
Diagrama de Componentes
Diagrama de ComponentesDiagrama de Componentes
Diagrama de Componentes
 
Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de Software
 
Capas de la ingenieria de software
Capas de la ingenieria de softwareCapas de la ingenieria de software
Capas de la ingenieria de software
 
Estándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de NegociosEstándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de Negocios
 
Metodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMetodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y Emergentes
 
Estilos arquitectónicos
Estilos arquitectónicosEstilos arquitectónicos
Estilos arquitectónicos
 
Sistema Operativo Distribuido
Sistema Operativo DistribuidoSistema Operativo Distribuido
Sistema Operativo Distribuido
 
Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadoras
 
Transacciones
TransaccionesTransacciones
Transacciones
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
Metodologias para el desarrollo del software
Metodologias para el desarrollo del softwareMetodologias para el desarrollo del software
Metodologias para el desarrollo del software
 
Principios diseño del software
Principios diseño del software Principios diseño del software
Principios diseño del software
 
Diferencias entre scrum y xp
Diferencias entre scrum y xp Diferencias entre scrum y xp
Diferencias entre scrum y xp
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 

Semelhante a 2 2 estilos arquitectonicos

Diseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareDiseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareAndresRealp1
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareJosé Antonio Sandoval Acosta
 
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-IntroducciónLuis Fernando Aguas Bucheli
 
Principios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwarePrincipios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwareJose Patricio Bovet Derpich
 
Análisis y diseño de sistemas sesion 13 - diagrama de componentes y despliegue
Análisis y diseño de sistemas   sesion 13 - diagrama de componentes y despliegueAnálisis y diseño de sistemas   sesion 13 - diagrama de componentes y despliegue
Análisis y diseño de sistemas sesion 13 - diagrama de componentes y despliegueGianfrancoEduardoBra
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónicoDamián Rotta
 
Capitulo 3 arquitecturas_de_desarrollo_web
Capitulo 3 arquitecturas_de_desarrollo_webCapitulo 3 arquitecturas_de_desarrollo_web
Capitulo 3 arquitecturas_de_desarrollo_webgabiar1708
 
Desarrollo De Software Para Internet
Desarrollo De Software Para InternetDesarrollo De Software Para Internet
Desarrollo De Software Para Internetsamgeo
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónicolandeta_p
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónicolandeta_p
 
Unidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasUnidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasSergio Sanchez
 

Semelhante a 2 2 estilos arquitectonicos (20)

Diseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareDiseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-software
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de software
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónico
 
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
 
1-Unidad 1. Arquitectura de Diseño
1-Unidad 1. Arquitectura de Diseño1-Unidad 1. Arquitectura de Diseño
1-Unidad 1. Arquitectura de Diseño
 
9.diseño de la arquitectura
9.diseño de la arquitectura9.diseño de la arquitectura
9.diseño de la arquitectura
 
Principios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwarePrincipios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del software
 
Diseño
DiseñoDiseño
Diseño
 
Análisis y diseño de sistemas sesion 13 - diagrama de componentes y despliegue
Análisis y diseño de sistemas   sesion 13 - diagrama de componentes y despliegueAnálisis y diseño de sistemas   sesion 13 - diagrama de componentes y despliegue
Análisis y diseño de sistemas sesion 13 - diagrama de componentes y despliegue
 
6t
6t6t
6t
 
Patrones
PatronesPatrones
Patrones
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónico
 
Sistemas I (II Bimestre)
Sistemas I (II Bimestre)Sistemas I (II Bimestre)
Sistemas I (II Bimestre)
 
Capitulo 3 arquitecturas_de_desarrollo_web
Capitulo 3 arquitecturas_de_desarrollo_webCapitulo 3 arquitecturas_de_desarrollo_web
Capitulo 3 arquitecturas_de_desarrollo_web
 
Arquitectura. de Software. en ambientes distribuidos.
Arquitectura. de Software. en ambientes distribuidos.Arquitectura. de Software. en ambientes distribuidos.
Arquitectura. de Software. en ambientes distribuidos.
 
Desarrollo De Software Para Internet
Desarrollo De Software Para InternetDesarrollo De Software Para Internet
Desarrollo De Software Para Internet
 
Unidad 4. diseno del sistema
Unidad 4. diseno del sistemaUnidad 4. diseno del sistema
Unidad 4. diseno del sistema
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
 
Unidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasUnidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De Sistemas
 

Mais de landeta_p

4 1 personalizacion de metodologias
4 1 personalizacion de metodologias4 1 personalizacion de metodologias
4 1 personalizacion de metodologiaslandeta_p
 
2 diseño de la arquitectura
2 diseño de la arquitectura2 diseño de la arquitectura
2 diseño de la arquitecturalandeta_p
 
1 4 estandares
1 4 estandares1 4 estandares
1 4 estandareslandeta_p
 
1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseñolandeta_p
 
1_1 Introduccion
1_1 Introduccion1_1 Introduccion
1_1 Introduccionlandeta_p
 

Mais de landeta_p (7)

4 1 personalizacion de metodologias
4 1 personalizacion de metodologias4 1 personalizacion de metodologias
4 1 personalizacion de metodologias
 
3 2 bpm
3 2 bpm3 2 bpm
3 2 bpm
 
3 1 mde mda
3 1 mde mda3 1 mde mda
3 1 mde mda
 
2 diseño de la arquitectura
2 diseño de la arquitectura2 diseño de la arquitectura
2 diseño de la arquitectura
 
1 4 estandares
1 4 estandares1 4 estandares
1 4 estandares
 
1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño
 
1_1 Introduccion
1_1 Introduccion1_1 Introduccion
1_1 Introduccion
 

Último

TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfJonathanCovena1
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxlupitavic
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 

Último (20)

TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdf
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 

2 2 estilos arquitectonicos

  • 1. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS  Un aspecto muy importante en arquitectura del software son los patrones tanto de diseño como de arquitectura  Los complementan los estilos arquitectónicos  Ambos se preocupan de los stakeholders  Los estilos favorecen al tratamiento estructural, la investigación, la teoría  Los patrones están más cerca del diseño, la práctica, el proceso, el código
  • 2. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS  Un estilo describe una clase de arquitectura o piezas de la misma.  Los estilos se pueden reutilizar en situaciones semejantes en el futuro.  Desde que surgió la arquitectura del software se generalizó la arquitectura cliente – servidor, posteriormente entró en auge las arquitecturas en capas y las basadas en componentes y más recientemente las basadas en recursos y servicios
  • 3. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS Cada estilo describe una categoría de sistemas que incluye 1. Un conjunto de componentes (una base de datos o módulos de computo) que realizan una función requerida por el sistema 2. Un conjunto de conectores que permiten la comunicación, coordinación y cooperación entre los componentes 3. Restricciones que definen como se integran los componentes para formar el sistema 4. Modelos semánticos que permiten que un diseñador entienda las propiedades generales del sistema al analizar las propiedades conocidas de sus partes.
  • 4. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS Cuando definimos una arquitectura, la tipificamos y la distinguimos, pero existen preguntas generales?  Cuáles son las arquitecturas alternativas?  La arquitectura elegida abarca todo un contexto?  La arquitectura elegida es una variante incluida en un conjunto más amplio?  En que magnitud contrasta con las otras alternativas?  Cuántas formas podría adoptar?
  • 5. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS  No solo es cuestión clasificatoria. Optar por una forma arquitectura tiene un valor distintivo.  Los estilos se manifiestan en la arquitectura teórica descriptiva; los partidarios de los estilos se definen como arquitectos.  Los que se agrupan en torno a patrones se confunden con ingenieros o diseñadores, incluso con programadores sistemáticos o analistas de software.  Ambos con mayor o menor grado participan abarcando la Arquitectura del Software.  Los estilos se encuentran en el centro de la arquitectura constituyen su escencia.  Los patrones de arquitectura están claramente dentro de la disciplina, no así los patrones de diseño.
  • 6. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS Se establece que una arquitectura se define mediante la afirmación: Arquitectura del Software = Elementos, Forma y Razón. - Elementos: procesamiento: datos: conexión: Suministra la transformación de los datos Contiene la información a procesar Llamadas a procedimientos, mensajes, etc. - Forma: las propiedades y relaciones entre los elementos. - Razón: motivación para la elección de elementos y sus formas. Por tanto un estilo arquitectónico es una abstracción de tipos de elementos y aspectos formales a partir de arquitecturas específicas.
  • 7. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS  Conjunto de reglas de diseño que identifica las clases de componentes y conectores que se pueden utilizar para componer el sistema o subsistema junto con las restricciones locales o globales de la forma en que la composición se lleva a cabo Componentes: sistemas encapsulados indicando la forma de empaquetado y la forma en que interactúan con otros componentes. Conectores: los procesos interactúan por medio de protocolos de transferencia de mensajes o por flujo de datos, etc.
  • 8. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS  Estilo arquitectónico es una descripción del patrón de los datos y la interacción de control entre los componentes, ligada a una descripción informal de los beneficios e inconvenientes del uso del estilo.  Los estilos son entidades que ocurren en un nivel sumamente abstracto y puramente arquitectónico.
  • 9. DISEÑO DE LA ARQUITECTURA ESTILOS ARQUITECTONICOS Catalogo de estilos:  Arquitectura centrada en datos (arquitecturas de pizarra, Data Warehouse)  Arquitectura de flujo de datos (Tuberías y filtros, proceso secuencial en lotes)  Arquitecturas de llamada y retorno (llamadas a procedimientos remotos, Modelo Vista Controlador)  Arquitecturas orientadas a objetos  Arquitecturas orientadas a aspecto  Arquitecturas orientadas a servicios (SOA)  Arquitecturas estratificadas
  • 10. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN DATOS Se fundamenta en el almacenamiento de datos (archivos o bases de datos) al que acceden otros componentes que realizan acciones sobre la los datos. El cliente accede al repositorio central. Repositorio pasivo: El software cliente accede a los datos independientemente de los cambios de los datos o de las acciones del software de otro cliente. Repositorio pizarrón: el repositorio envía notificaciones a los clientes cuando los datos de su interés cambian, siendo por tanto un ente activo.
  • 11. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN DATOS Arquitectura en pizarra: Imagine un número de estudiantes que están escribiendo en la pizarra al mismo tiempo tratando de resolver un problema. Y si le añadimos un maestro que primero le pide a cada estudiante lo que quiere escribir en la pizarra y decide qué estudiante tiene la mejor idea. Y cuando el estudiante haya terminado, el proceso se repite. Esta es la idea detrás de la arquitectura en pizarra. Los estudiantes se llaman fuentes de conocimiento. El profesor se denomina “intérprete de comandos de control” En la Arquitectura en Pizarra varios subsistemas especializados pueden reunir sus conocimientos para construir una posible solución parcial o aproximada.
  • 12. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN DATOS Arquitectura en pizarra: La idea detrás de la Arquitectura de Pizarra es una colección de programas independientes que trabajan conjuntamente en una estructura de datos común. Cada programa especializado trabaja para la solución de una parte específica de la tarea general, y todos los programas trabajan juntos en la solución total.
  • 13. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN DATOS Arquitectura en pizarra: Fuente de conocimiento. La fuente de conocimiento es un componente que se añade a la solución del problema. Puede ser cualquier cosa que se lee de un cierto nivel de pizarra, y propone una modificación a los componentes de la pizarra. Pizarra. Es la estructura de datos común de las fuentes de conocimiento. Es capaz de representar a todos los estados de algún espacio del problema. Contiene varios niveles de descripción con respecto al espacio del problema. Intérprete de comandos de control. Determina que fuente de conocimiento tiene la oportunidad de cambiar la pizarra. En cada ejecución, identifica los cambios a la pizarra, activa las fuentes de conocimiento apropiadas, selecciona una de estas y la ejecuta.
  • 14. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN DATOS Almacén de datos:
  • 15. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN DATOS Almacén de datos:
  • 16. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS:  Enfatiza la reutilización y la modificabilidad  Adecuada para sistemas con trasformaciones de datos en pasos sucesivos (cuando los datos de entrada se transforman en datos de salida mediante una serie de componentes para el cálculo o la manipulación. )  Ejemplos: arquitecturas de tuberías y filtros y las de proceso secuencial en lotes
  • 17. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS: Tuberías y filtros  Una tubería (pipeline) es una arquitectura que conecta componentes computacionales (filtros) a través de los conectores (pipes) y las comunicaciones se ejecutan como un flujo. Filtro Filtro Filtro Filtro Filtro Filtro Tuberías Filtro Filtro Filtro Filtro
  • 18. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS: Tuberías y filtros  Los filtros no necesariamente realizan únicamente tareas de filtrado sino que ejecutan formas variables de transformación  Esta diseñado para esperar la entrada de datos con cierta forma y producir su salida (al siguiente filtro) de una forma específica. (no es necesario que el filtro conozca el funcionamiento de los filtros vecinos.  La aplicación típica es un procesamiento clásico de datos: - El cliente hace un requerimiento El requerimiento se valida Un web Service toma el objeto de la base de datos Este objeto se convierte en html Se efectúa la representación en pantalla
  • 19. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS: Tuberías y filtros
  • 20. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS: Tuberías y filtros Ejemplo: Unix
  • 21. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS: Tuberías y filtros Ejemplo: Compiladores
  • 22. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS: Tuberías y filtros Este estilo se podría usar cuando:  Se puede especificar la secuencia de un número conocido de pasos  No se requiere esperar la respuesta asincrónica de cada paso  Se busca que todos los componentes de abajo sean capaces de inspeccionar y actuar sobre los datos que vienen de arriba (no viceversa).
  • 23. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS: Tuberías y filtros Ventajas:      Simple de entender e implementar Facilidad de mantenimiento y mejora Facilidad de diagnostico Fuerza un procesamiento secuencial Ejecución concurrente Desventajas:     Demasiado simplista No maneja condicionales, bucles y otras lógicas de control de flujo No apto para situaciones interactivas Problemas de rendimiento (los datos se transmiten de forma completa)
  • 24. DISEÑO DE LA ARQUITECTURA ARQUITECTURA CENTRADA EN FLUJO DE DATOS: Estilo secuencial por lotes En el estilo secuencial por lotes (batch sequential) los componentes son programas independientes; el supuesto es que cada paso se ejecuta hasta completarse antes que se inicie el paso siguiente.
  • 25. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS DE LLAMADA Y RETORNO: Con esta arquitectura se obtiene una estructura de programa que resulta relativamente fácil de modificar y cambiar de tamaño. Existen dos subestilos: Arquitectura de programa principal/subprograma: Esta estructura de programa clásica separa la función en una jerarquía de control donde un programa “principal” invoca a varios componentes de programa, que a su vez pueden invocar a otros componentes. Arquitectura de llamada a procedimiento remoto: Los componentes de una arquitectura de programa principal/subprograma se distribuyen entre varias computadoras de una red.
  • 26. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS DE LLAMADA Y RETORNO: Arquitectura de programa principal/subprograma: La programación procedimental precede a la programación orientada a objetos. La llamada a procedimiento convencional es una llamada en el mismo sistema en el que se invoca y se llama a un procedimiento local.  Un procedimiento o función es una estructura de control que proporciona la abstracción a una acción.  La acción de una función se invoca a través de una llamada a función.  Para usar diferentes variables una llamada a función debe tener argumentos  El valor o referencia de cada argumento se pasa a la función.
  • 27. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS DE LLAMADA Y RETORNO: Programa Principal Subprograma controlador Subprograma de aplicación Subprograma controlador Subprograma Subprograma de aplicación de aplicación Subprograma de aplicación Subprograma controlador Subprograma de aplicación Subprograma de aplicación Subprograma de aplicación
  • 28. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS DE LLAMADA Y RETORNO: Arquitectura de llamada a procedimiento remoto: El objetivo de RPC es extender a los sistemas distribuidos el mecanismo de llamadas a procedimientos y subrutinas de los lenguajes de programación. RPC está basado en el modelo cliente - servidor RPC permite que un proceso localizado en una máquina pueda ejecutar código localizado en otra máquina remota, sin preocuparse por la comunicación entre ambas.
  • 29. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS DE LLAMADA Y RETORNO: Arquitectura de llamada a procedimiento remoto: En el modelo de llamada a procedimiento remoto, un proceso realiza una llamada a procedimiento de otro proceso que posiblemente este localizado remotamente.  Los datos se pasan a través de argumentos.  Cuando un proceso recibe una llamada, se ejecuta la acción codificada en el procedimiento.  Se notifica la finalización de la llamada al proceso que lo invoca  Si existe un valor de retorno se envía desde el proceso invocado
  • 30. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS DE LLAMADA Y RETORNO: Arquitectura de llamada a procedimiento remoto: En RPC, todos los parámetros que se utilicen en las llamadas han de ser pasados por valor; y no por referencia, ya que ambos procedimientos se ejecutan en espacios de memoria diferentes. Para que estos parámetros puedan ser enviados a través de la red, es necesario que sean serializables, es decir, convertibles en una corriente de bytes.
  • 31. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS ORIENTADAS A OBJETOS: Los componentes de un sistema encapsulan los datos y las operaciones que deben aplicarse para manipular los datos. La comunicación y coordinación entre los componentes se consigue mediante el paso de mensajes. Los componentes de este estilo son los objetos, o más bien instancias de los tipos de dato abstractos. Los objetos representan una clase de componentes llamados managers, debido a que son responsables de preservar la integridad de su propia representación.
  • 32. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS ORIENTADAS A OBJETOS: • Los componentes del estilo se basan en principios OO: encapsulamiento, herencia y polimorfismo. Son asimismo las unidades de modelado, diseño e implementación, y los objetos y sus interacciones son el centro de las incumbencias en el diseño de la arquitectura y en la estructura de la aplicación. • Las interfaces están separadas de las implementaciones. En general la distribución de objetos es transparente, y no importa si los objetos son locales o remotos. • Restricciones: una interfaz pueda ser implementada por múltiples clases. Los componentes y objetos interactúan a través de invocaciones de funciones y procedimientos. Hay muchas variantes del estilo; algunos sistemas, por ejemplo, admiten que los objetos sean tareas concurrentes; otros permiten que los objetos posean múltiples interfaces.
  • 33. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS EN CAPAS: Hay varias capas definidas, cada una de ellas realiza operaciones que se acercan progresivamente al conjunto de instrucciones de la máquina. En la capa externa los componentes sirven a las operaciones de interfaz del usuario. En la capa interna los componentes sirven como interfaz con el sistema operativo. Las capas intermedias proporcionan servicios de utilería y de SW de aplicaciones
  • 34. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS EN CAPAS: Módulos Capa de la interfaz de usuario Capa de la Aplicación Capa de Utilerías Capa Centra l
  • 35. DISEÑO DE LA ARQUITECTURA ARQUITECTURAS EN CAPAS: Ventajas  Facilita la descomposición del problema en varios niveles de abstracción.  Soporta fácilmente la evolución del sistema, los cambios sólo afectan a las capas vecinas  Se pueden cambiar las implementaciones respetando las interfaces con las capas adyacentes Desventajas  No todos los sistemas pueden estructurarse en capas  A menudo es difícil encontrar la separación en capas adecuadas