Introducción: El software necesita el diseño arquitectónico para representar el diseño del software. IEEE define el diseño arquitectónico como «el proceso de definir una colección de componentes de hardware y software y sus interfaces para establecer el marco para el desarrollo de un sistema informático». El software creado para sistemas basados en computadora puede exhibir uno de estos muchos estilos arquitectónicos.
Cada estilo describirá una categoría de sistema que consta de:
- Un conjunto de componentes (por ejemplo: una base de datos, módulos computacionales) que realizarán una función requerida por el sistema.
- El conjunto de conectores ayudará en la coordinación, comunicación y cooperación entre los componentes.
- Condiciones de cómo se pueden integrar los componentes para formar el sistema.
- Modelos semánticos que ayudan al diseñador a comprender las propiedades generales del sistema.
El uso de estilos arquitectónicos es para establecer una estructura para todos los componentes del sistema.
Taxonomía de estilos arquitectónicos:
- Arquitecturas centradas en datos:
- Un almacén de datos residirá en el centro de esta arquitectura y los otros componentes que actualizan, agregan, eliminan o modifican los datos presentes en el almacén acceden con frecuencia.
- La figura ilustra un estilo típico centrado en datos. El software cliente accede a un repositorio central. Las variaciones de este enfoque se utilizan para transformar el repositorio en una pizarra cuando los datos relacionados con el cliente o los datos de interés para el cliente cambian las notificaciones al software del cliente.
- Esta arquitectura centrada en datos promoverá la integrabilidad. Esto significa que los componentes existentes se pueden cambiar y se pueden agregar nuevos componentes de cliente a la arquitectura sin el permiso o la preocupación de otros clientes.
- Los datos se pueden pasar entre los clientes utilizando el mecanismo de pizarra.
- Arquitecturas de flujo de datos:
- Este tipo de arquitectura se utiliza cuando los datos de entrada se transforman en datos de salida a través de una serie de componentes manipulativos computacionales.
- La figura representa la arquitectura de tubería y filtro ya que utiliza tubería y filtro y tiene un conjunto de componentes llamados filtros conectados por tuberías.
- Las tuberías se utilizan para transmitir datos de un componente al siguiente.
- Cada filtro funcionará de forma independiente y está diseñado para tomar la entrada de datos de una determinada forma y producir una salida de datos para el siguiente filtro de una forma específica. Los filtros no requieren ningún conocimiento del funcionamiento de los filtros vecinos.
- Si el flujo de datos degenera en una sola línea de transformaciones, se denomina secuencial por lotes. Esta estructura acepta el lote de datos y luego aplica una serie de componentes secuenciales para transformarlo.
- Arquitecturas de llamada y devolución: se utiliza para crear un programa que sea fácil de escalar y modificar. Existen muchos subestilos dentro de esta categoría. Dos de ellos se explican a continuación.
- Arquitectura de llamada a procedimiento remoto: este componente se utiliza para presentar una arquitectura de programa principal o subprograma distribuida entre varias computadoras en una red.
- Arquitecturas de programa principal o subprograma: la estructura del programa principal se descompone en una cantidad de subprogramas o funciones en una jerarquía de control. El programa principal contiene varios subprogramas que pueden invocar otros componentes.
- Arquitectura orientada a objetos: los componentes de un sistema encapsulan datos y las operaciones que deben aplicarse para manipular los datos. La coordinación y comunicación entre los componentes se establece a través del paso de mensajes.
- Arquitectura en capas:
- Se definen varias capas diferentes y cada capa realiza un conjunto bien definido de operaciones. Cada capa realizará algunas operaciones que se acercarán progresivamente al conjunto de instrucciones de la máquina.
- En la capa externa, los componentes recibirán las operaciones de la interfaz de usuario y en las capas internas, los componentes realizarán la interfaz del sistema operativo (comunicación y coordinación con el sistema operativo)
- Capas intermedias a servicios públicos y funciones de software de aplicación.
Publicación traducida automáticamente
Artículo escrito por PranathiBadugu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA