Please enable JavaScript.
Coggle requires JavaScript to display documents.
Diseño arquitectónico, Ventajas, Desventajas, control, servicio web,…
Diseño arquitectónico
Diseño arquitectónico
¿Qué es?
Proceso de diseño inicial
Identifica subsistemas y establece el control y comunicación
Actividades principales son decisiones
Estructuración del sistema
Descomposición modular
Modelado del control
Se construyen una serie de documentos de la arquitectura del sistema
Modelo estructural estático
Modelo de proceso dinámico
Modelo de interfaz
Modelos de relación
Modelo de distribución
Principales condiciones no funcionales y sus
“restricciones"
Rendimiento
Protección
Disponibilidad
Mantenibilidad
Sistemas distribuidos
Ventajas
Compartición de recursos
Apertura
Concurrencia
Escalabilidad
Tolerancia a defectos
Desventajas
Complejidad
Seguridad
Manejabilidad
Impredecibilidad del sistema
Sistemas peer-to-peer
Arquitectura descentralizada
tolerante a fallos
Arquitectura semicentralizada
Los nodos actúan como
servidores para facilitar las comunicaciones
Sistemas de Sistemas Orientados a Servicios
Servicio web
Representación estándar
Componentes de un servicio web:
Proveedor de servicios
Solicitante del servicio
Ventajas
Pagar por los servicios sólo en función del uso
Aplicaciones más pequeñas
Construcción a medida
Estándares basados en XML
SOAP
WSDL
UDDI
Calidad y diseño del software
Representaciones de software que se pueden evaluar a si mismas
Sin esto se corre el riesgo de construir un sistema poco fiable
Organización del sistema
¿En qué se basa?
Identificar subsistemas o capas
Relaciones entre subsistemas
Los modelos organizacionales más usados son:
Modelo de depósito o repositorio
Datos compartidos en una base de datos central
Ventajas
Compartición eficiente
Ligera abstracción el manejo de datos
Centralización
Integración directa
Desventajas
Modelo de datos común
Difícil integración de subsistemas “externos”
Dificulta la evolución
Estandarización de las políticas
Dificultad para distribuir
Modelo cliente servidor
Conjunto de servicios y servidores asociados junto a los clientes
Componentes
Conjunto de servidores
Conjunto de clientes
Una red
Ventaja
Modelo de sistemas distribuido, sin relación 1:1
Estructura de 3 capas
Capa de presentación
Capa de procesamiento de la aplicación
Capa de administración de datos
Modelo cliente servidor en "Dos capas"
Un servidor (o más idénticos) y un conjunto de clientes
Servidor responsable de la administración de datos
Ventajas
Distribuye el procesamiento lógico
Aprovecha la capacidad de procesamiento de los clientes
Los ATM no se conectan directamente a la base de datos
Desventajas
Administración del sistema más compleja
Aumenta el coste del mantenimiento
Modelo cliente servidor en "Tres capas"
Son procesos separados lógicamente en procesadores separados
Componentes
Administración de datos
Servicios de aplicación
Presentación
Ventaja
Es escalable de forma sencilla
Modelo de capas o máquina abstracta
Modela la interacción entre subsistemas
Ventaja
Arquitectura cambiable y portable
Preservando la interfaz
Cuando cambia la interfaz de una capa no afecta a todas
Re implementar capas internas
Desventajas
Difícil estructurar los sistemas
Rendimiento afectado por los muchos niveles de interpretación
Modelado de control
Control centralizado
Un subsistema tiene la responsabilidad de controlar el sistema
Modelo de llamada-retorno
Ventaja
Es sencillo analizar los flujos de control
Inconveniente
Excepciones complicadas de gestionar
Modelo del administrador
Un componente del sistema se designa como administrador y controla ciertas funciones
Control basado en eventos
Modelos de transmisión
Politica de control no está en el controlador, los subsistemas deciden
Ventajas
Evolución sencilla
Cualquier subsistema puede activar otros subsistemas
Desventajas
Los subsistemas no saben si los eventos se manejarán
Poco conocimiento de otros subsistemas
Modelos dirigidos por interrupciones
Resultan útiles para sistemas de tiempo real
Ventaja
Permite dar respuestas muy rápidas a los eventos
Desventaja
Complejo de programar y difícil de validar
Se rigen por eventos generados en el exterior
Introducción, Objetivos del Diseño.
Se definen objetivos como:
Descomponer el sistema en subsistemas
Seleccionar estrategias para la construcción
Descomposición modular
Modelos principales de descomposición modular
Modelo orientado a objetos
El sistema se descompone en un conjunto de objetos que se comunican entre ellos
Módulos son objetos con estado privado
Entidades reales comprensibles
Difícil representar entidades complejas
Modelo de flujo de datos
Sistema descompuesto en módulos funcionales
Los datos fluyen de una función a otra y se van transformando
Incluye información sobre la secuencia de operaciones
Ventajas
Se suele utilizar cuando se heredan sistemas centralizados
La interfaz migra a los PC’s
La aplicación misma actúa como servidor
Desventajas
Gran carga de procesamiento para el servidor
Gran cantidad de tráfico en la red
Desaprovecha la capacidad de cálculo