Estilos / tipos arquitecturas
Estilos Peer to Peer
Arquitecturas basadas en recursos
Conocido como REST
Intefaz que conecta varios sistemas basados en HTTP
Basada en servicios composición de varios estilos básicos
Código a demanda e interfaz uniforme
Máquina virtual
Sistemas sin estado
Sistemas en capas
Cliente-servidor
Cache
Repositorio replicado
Arquitecturas orientadad a servicios
Un web service esta diseñado para soportar interacción Maquina-a-maquina sobre una red
Web services basados en XML similar al HTML
Arquitecturas basadas en eventos
Basados en actores, daemons y redes de conmutación por paquetes
Integración reactiva o Transmisión selectiva
Ocho categorías
Operadores replicados que comparten una bolsa de tareas
Coordinación entre procesos de servidor decentralizados
Token passing incompletos
Broadcast entre procesos en grafos completos
Pruebas y ecos entre grafos incompletos
Interacción de ida y vuelta o pulsación entre procesos vecinos
Requerimientos y respuestas entre clientes y servidores
Flujo de datos a través de redes de filtros
Procesos o entidades independientes que se comunican a través de mensajes
Cada entidad envia mensajes a otras entidades, pero no controlarlas directamente.
Enfatiza la modificabilidad por medio de la separación de las diversas partes de la computación.
Estilo de código Móvil
Arquitectura de maquinas virtuales
Representación del estado actual del programa que se simula
Representación del estado del control de la máquina
Memoria del pseucódigo para la intepretación
Maquina de interpretación de tareas
Pseudo-programa que incluye su programa mismo
Interpretes basados en tablas
Procesadores de lenguaje de comando
Los sistemss basados en reglas
Interpretes
Enfatiza en la portabilidad
Estilo centrado de datos
Utilizado
Arquitecturas de pizarra
Programación evolutiva
Modelos multiagentes
Robotica
Utilizado en inteligencia artificial distribuida o cooperativa
Arquitecturas basadas en Hypertexto
Base de datos
Repositorios
Integrabilidad de los datos
Fuente de referencia
Estilos y patrones en la estrategia de arquitectura de Microsoft.
Carlos Reynoso-Nikolás Kicillof
UNIVERSIDAD DE BUENOS AIRES
Versión 1.0 Marzo de 2004
Estilos heterogéneos
Arquitecturas basadas en atributos
Basada en un framework de razonamiento
Cualitativo
Cuantitativo
Sistemas de control de procesos
Bucle de control
Elementos de datos
Mecanismos que cambian valores de variables y algoritmos
Mantiene ciertos valores dentro de ciertos rangos de valores
Mantiene la relación entre componentes
Arquitecturas específicas de dominios
Sistemas de transición de estados
Sistemas para control de procesos industriales
Estilo de llamada y retorno
Arquitecturas basadas en componentes
Compomentes diseñados y que pueden ser utilizados en muchas aplicaciones
Facil adquisición
Unidades compuestas por interfaces especificas contractualmente y de dependencias del contexto explícitas
Arquitecturas orientadas a objetos
Desventaja que se necesita conocer de la instancia para poder utilizarla
Los objetos son llamados por invocaciones desde funciones o procedimientos
Tiene polimorfismo
Tiene encapsulamiento
Tiene herencia
El objeto no puede ser accesado desde otro objeto
Objetos o tipos de datos abstractos
Arquitectura en capas
Modelo básico cliente-servidor
Servidor realiza la petición del cliente
Cliente solicita servicios
La capa superior se sirve de los servicios de las capas inferiores
Cada capa proporciona servicios hacia la capa superior
De organización jerárquica
Modelo-vista-controlador MVC
Usuario modifica los datos y quedan debidamente registrados
Mostrar los datos al usuario
Tomar datos almacenados
Sistemas jerárquicos en capas
Sistemas orientados a objetos
Sistemas basados en llamados a procesimientos remotos
Arquitectura basada en programa principal y subrutinas
Utilizados en sistemas de gran escala
Se enfatiza por su modificabilidad y escalabilidad
Estilo de flujo de datos
Aplica metología de pipelines y pipes (tuberias y filtros)
Pipelines
Desventaja de procesos almacenados en buffer. Lentititud o perdida de información
Aplicado en páginas Web por ejemplo páginas de compra en línea
Procesamiento de datos por lotes
La salida de un componente es la entrada de otro
Permite la conexion entre componentes
Permite la reutilización de código y ser modificado