Está en la página 1de 5

Instituto Tecnológico de Apizaco

Ingeniería en Tecnologías de la Información y


comunicaciones

Arquitecturas de Software

Catedrático: C. Jose Juan Hernandez Mora

Compendio
CUADRO COMPARATIVO DE LAS PRINCIPALES
ARQUITECTURAS DE SOFTWARE

Yoel Muñoz Zecua


Arquitectura de Características Recomendaciones
software para la aplicación

Patrón de arquitectura • Describe la Este patrón se puede


por capas descomposición de utilizar para estructurar
servicios de forma que la programas que se
mayoría de la interacción pueden descomponer en
ocurre solamente entre grupos de subtareas,
capas vecinas. cada una de las cuales se
• Las capas de una encuentra en un nivel
aplicación pueden residir particular de abstracción.
en la misma máquina Cada capa proporciona
física (misma capa) o servicios a la siguiente
puede estar distribuido capa superior.
sobre diferentes
computadores (n-capas).
• Los componentes de
cada capa se comunican
con otros componentes
en otras capas a través
de interfaces muy bien
definidas.
• Este modelo ha sido
descrito como una
“pirámide invertida de
reuso” donde cada capa
agrega responsabilidad y
abstracción a la capa
directamente sobre ella.

Arquitectura • Es quien inicia El componente del


cliente-servidor solicitudes o peticiones, servidor proporcionará
tienen por tanto un papel servicios a múltiples
activo en la comunicación componentes del cliente.
(dispositivo maestro o Los clientes solicitan
amo). servicios del servidor y el
• Espera y recibe las servidor proporciona
respuestas del servidor. servicios relevantes a
esos clientes. Además, el
• Por lo general, puede servidor sigue
conectarse a varios escuchando las
servidores a la vez. solicitudes de los
- Normalmente interactúa clientes.
directamente con los
usuarios finales mediante
una interfaz gráfica de
usuario.
• Al iniciarse esperan a
que lleguen las
solicitudes de los
clientes, desempeñan
entonces un papel pasivo
en la comunicación.
• Tras la recepción de una
solicitud, la procesan y
luego envían la respuesta
al cliente.
• Por lo general, acepta
las conexiones de un gran
número de clientes (en
ciertos casos el número
máximo de peticiones
puede estar limitado).

Arquitectura Los clústeres son • En la replicación de la


maestros-esclavo usualmente empleados base de datos, la base de
para mejorar el datos maestra se
rendimiento o la considera como la fuente
disponibilidad por encima autorizada y las bases de
de la que es provista por datos esclavas se
una sola máquina, sincronizan con ella.
típicamente siendo más • Periféricos conectados a
económico que un bus en un sistema
computadores informático (unidades
individuales de rapidez y maestra y esclava).
disponibilidad
comparables. La
construcción de los
ordenadores del clúster
es más fácil y económica
debido a su flexibilidad.

Arquitectura peer to peer • Escalabilidad La mayor parte de los


• Robustez nodos de Internet no
• Descentralización disponen de una dirección
• Distribución de costes IP fija o siquiera accesible
entre los usuarios para otros nodos de
• Anonimato Internet. Este es el caso,
• Seguridad por ejemplo, de los nodos
que se conectan a través
de redes locales como
Wifi o Ethernet, de
aquellos que tienen algún
tipo de cortafuegos y
NAT o de los que se
conectan a través de la
mayor parte de los ISPs
del mundo.

Modelo Vista Controlador • El Modelo contiene una La arquitectura MVC


representación de los (modelo, vista,
datos que maneja el controlador) consiste en
sistema, su lógica de un patrón de diseño de
negocio, y sus software que se utiliza
mecanismos de para separar en tres
persistencia. componentes los datos,
• La vista, o interfaz de la metodología y la
usuario, que compone la interfaz gráfica de una
información que se envía aplicación. La gran
al cliente y los ventaja que posee esta
mecanismos de técnica de programación
interacción con éste. es que permite modificar
• El Controlador, que cada uno de ellos sin
actúa como intermediario necesidad de modificar
entre el Modelo y la los demás, lo que permite
Vista, gestiona el flujo de desarrollar aplicaciones
información entre ellos y modulares y escalables
las transformaciones para que se puedan actualizar
adaptar los datos a las fácilmente y añadir o
necesidades de cada uno. eliminar nuevos módulos
o funcionalidades de
forma paquetizada, ya
que cada “paquete”
utiliza el mismo sistema
con sus vistas, modelos y
controladores.

También podría gustarte