La arquitectura de software proporciona un marco de referencia para guiar la construcción de un software y permitir que los desarrolladores compartan una línea de trabajo común. Se compone de componentes como clientes, servidores y bases de datos que interactúan a través de llamadas a procedimientos, comportamiento de variables y protocolos. Algunos tipos comunes de arquitectura de software son la arquitectura cliente-servidor, la de tres capas y la orientada a servicios.
2. ARQUITECTURA DE SOFTWARE
La arquitectura de software es un conjunto de patrones que proporcionan un
marco de referencia necesario para guiar la construcción de un software,
permitiendo a los programadores, analistas y todo el conjunto de desarrolladores
del software compartir una misma línea de trabajo y cubrir todos los objetivos y
restricciones de la aplicación. Es considerada el nivel más alto en el diseño de la
arquitectura de un sistema puesto que establecen la estructura, funcionamiento e
interacción entre las partes del software.
3. COMPONENTES E INTERACCIONES
Componentes
• La arquitectura de software se compone por:
• Clientes y servidores.
• Bases de datos.
• Filtros.
• Niveles en sistemas jerárquico.
4. COMPONENTES E INTERACCIONES
Interacciones
Entre los componentes de la arquitectura de software existe un conjunto de
interacciones entre las que sobresalen :
• Llamadas a procedimientos.
• Comportamiento de variables.
• Protocolos cliente servidor.
• Transmisión asíncrona de eventos.
5. CARACTERISTICAS
La arquitectura de software forma la columna vertebral para construir un sistema
de software, es en gran medida responsable de permitir o no ciertos atributos de
calidad del sistema entre los que se destacan la confiabilidad y el rendimiento del
software. Además es un modelo abstracto reutilizable que puede transferirse de
un sistema a otro y que representa un medio de comunicación y discusión entre
participantes del proyecto, permitiendo así la interacción e intercambio entre los
desarrolladores con el objetivo final de establecer el intercambio de conocimientos
y puntos de vista entre ellos.
6. TIPOS DE ARTQUITECTURAS
Para utilizar la arquitectura de software se sigue un conjunto de patrones
arquitectónicos, entre los cuales podemos encontrar:
• Cliente-Servidor
• Blackboar.
• Modelo entre capas.
• Intérprete.
• Orientado a servicios.
7. TIPOS DE ARTQUITECTURAS
Arquitectura CLIENTE-SERVIDOR
Donde el software reparte su carga de computo en dos partes independientes, los
proveedores de los recursos o servicios (servidores) y los demandantes (clientes),
pero sin reparto claro de funciones.
Ventajas
• Centralización del control.
• Escalabilidad.
• Facil mantenimiento
• Tecnologías maduras y robustas.
8. TIPOS DE ARTQUITECTURAS
Arquitectura 3 Capas
Especialización de la arquitectura cliente-servidor donde la carga se divide en tres
partes (o capas) con un reparto claro de funciones: una capa para la presentación
(interfaz de usuario), otra para el cálculo (donde se encuentra modelado el
negocio) y otra para el almacenamiento (persistencia). Una capa solamente tiene
relación con la siguiente.
Ventajas
• Simplifica la comprensión y la organización del desarrollo des sistemas complejos.
• Reduce las dependencias de forma que las capas mas bajas no son conscientes
de ningún detalle de las superiores.
• Esta separación añade una enorme flexibilidad al diseño de la aplicación.
9. TIPOS DE ARTQUITECTURAS
Arquitectura 3 Capas
Capa de presentación
• Presenta el sistema al usuario
• Captura y comunica la información al usuario.
• GUI (Interfaz Grafica del Usuario).
• Entendible, amigable.
Capa de negocio
• En donde residen las funciones que se ejecutan.
• Se reciben las peticiones del usuario.
• Se procesa la información.
• Se envían las respuestas tras el proceso.
Capa de datos
• En donde residen los datos.
• Encargada de gestionar los datos:
• Definir y almacenar.
• Consultar.
• Manipular.
• Controlar.