Please enable JavaScript.
Coggle requires JavaScript to display documents.
"Visión de Arquitecturas de Software existente" - Coggle Diagram
"Visión de Arquitecturas de Software existente"
Tipos de arquitectura
Arquitecturas Distribuidas
Definición
Es un sistema de ordenadores conectados en red, que comunican y coordinan sus acciones mediante una comunicación por mensajes con un protocolo prefijado, que aparentan una única entidad.
Ventajas
Modularidad: permite una gran flexibilidad y posibilita su escalabilidad.
Fallos independientes de los componentes: Cada componente del sistema pudiera fallar de manera independientemente, y los demás continuarían ejecutando sus acciones.
Desventajas
Complejidad: Los sistemas distribuidos son más complejos que los sistemas centralizados.
Seguridad: Puede accederse al sistema desde varias computadoras diferentes, y el tráfico en la red puede estar sujeto a escuchas indeseadas.
Manejabilidad: Las computadoras en un sistema pueden ser de diferentes tipos y pueden ejecutar versiones diferentes de sistemas operativos.
Componentes
Base de datos
Procesos
Presentación
Arquitecturas Cliente Servidor
Definición
Consiste en que un cliente realice peticiones a otro programa (el servidor) que le da respuesta
Componentes
Cliente: Programa ejecutable que participa activamente en el establecimiento de las conexiones.
Servidor: Es un programa que ofrece un servicio que
se puede obtener en una red
Ventajas
Administración centrada en el servidor
Mejora de la seguridad
Desventajas
Coste elevado
Dependencia del servidor
Arquitecturas SOA
Definición
Integra los elementos del software, trabajan en conjunto para formar una aplicación en distintos sistemas
Desventajas
SOA depende de la implementación de estándares
Incrementalmente se hace difícil y costoso el ser capaz de cumplir con los protocolos y hablar con un servicio
No es para aplicaciones con alto nivel de transferencia.
Componentes
Cliente
servicio
Registro de servicios
Consumidor de servicios
Infraestructura
Ventajas
Comercialización más rápida y mayor flexibilidad
Mantenimiento sencillo
Reducción de costos gracias a una mayor agilidad y un desarrollo más eficiente.
Arquitecturas REST
Ventajas
Experiencia de usuario
Menos recursos del servidor
Fiabilidad, escalabilidad, flexibilidad
Independencia de tecnologías/lenguajes
Separación cliente/servidor
Definición
Es una arquitectura de desarrollo web que puede ser utilizada en cualquier cliente HTTP, es mucho más simple que otras arquitecturas ya existentes como pueden ser XML-RPC o SOAP.
Desventajas
Puede surgir des-sincronización
Requiere una mayor cantidad de conocimientos
Componentes
Servidor
Cliente
Arquitecturas MVC.
Componentes
Modelo: Es la representación de la información, gestiona todos los accesos a dicha información
Vista: Hace de intermediario entre la 'vista'
y el 'modelo
Controlador: (información y lógica de negocio) en un formato adecuado para interactuar (usualmente la interfaz de usuario)
Desventajas
La separación de conceptos en capas agrega complejidad al sistema
La cantidad de archivos a mantener y desarrollar se incrementan considerablemente
Ventajas
Crea independencia de funcionamiento
Facilita agregar nuevos tipos de datos según requerimientos
Es mucho mas sencillo agregar múltiples representaciones de los mismos datos.
Definición
Es un patrón de arquitectura, que separa los datos y principalmente lo que es la lógica de negocio de una aplicación
Arquitecturas Cloud Computing.
Definición
La arquitectura de nube constituye la forma en la que se integran las distintas tecnologías para crear las nubes, es decir, los entornos de TI que extraen, agrupan y comparten los recursos escalables en una red.
Componentes
Servidores
Aplicación
Plataforma
Infraestructura
Ventajas
Ahorro de costes
Las actualizaciones de software son instantáneas
Aumento de la fiabilidad de los datos
Desventajas
No funciona bien con conexiones de baja velocidad
Algunas veces puede ser demasiado lento
Los datos almacenados pueden no estar seguros
Definición
La arquitectura de software pude ser representada en varias vistas. Cada vista de la arquitectura trata un conjunto concreto de problemas y específico de interesados en el proceso de desarrollo
Visión
Cada vista de la arquitectura trata un conjunto
de problemas, son extractos que ilustran los elementos significativos arquitectónicamente de los modelos
Vistas
Vista de Guion
de uso
Contiene guiones de uso
y casos de ejemplo que abracan riesgos técnicos de clases o de comportamientos significativos
Vista Logica
Contiene las clases de diseño más importantes y su organización en paquetes y subsistemas, y la organización de estos paquetes y subsistemas en capas
Vista de Implementación
contiene una visión general del Modelo de implementación y su organización en términos de módulos en paquetes y capas.
Vista de Proceso
Contiene la descripción de las tareas (proceso y hebras) implicadas, sus interacciones y configuraciones y la asignación de clases y objetos de diseño a tareas.
Vista de despliegue
contiene la descripción de los diferentes nodos físicos para la mayoría de las configuraciones típicas de la plataforma y la asignación de tareas (de la vista de proceso) a los nodos físicos
Documento de Arquitectura de Software
Este producto de trabajo proporciona una visión general arquitectónica completa del sistema, mediante una serie de vistas arquitectónicas diferentes para representar diferentes aspectos del sistema.