Está en la página 1de 8

UNIVERSIDAD

TECNOLÓGICA
DE CIUDAD JUÁREZ

Universidad Tecnológica de Ciudad Juárez


Tecnologías de la información y comunicación.

Profesor@
Javier Elizondo

Materia:
Desarrollo móvil Integral

Alumno:
José Manuel García Campos

Grupo:
IDSM41

Unidad I
Actividad 2
Cd Juárez Chihuahua México, 15 de junio 2022
Contenido
Arquitectura de software ................................................................................................................................... 3
Tipos de arquitecturas ....................................................................................................................................... 3
1. Cliente/Servidor .................................................................................................................................................................... 3
2. Blackboard ............................................................................................................................................................................ 4
3. Modelo entre capas ............................................................................................................................................................. 5
4. Intérprete ............................................................................................................................................................................... 6
5. Orientado a Servicios .......................................................................................................................................................... 7
Conclusión ........................................................................................................................................................ 8
Arquitectura de software
Una arquitectura de software describe los componentes básicos de un sistema de
software y su combinación interna.

Tipos de arquitecturas

1. Cliente/Servidor
Este modelo hace referencia a un determinado cliente que ejecuta diversas
peticiones a otro programa, llamado servidor que será el encargado de proporcionar una
respuesta.

Estructura: Es un modelo de aplicación distribuida en el que las tareas se reparten entre


los servidores y los clientes por medio una red, utilizando protocolos y una base de datos.
Se lanza una petición por parte del cliente en búsqueda de datos, se procesa la petición
por parte del servidor para localizar la información, después se hace el envío de la
respuesta por parte del servidor al cliente con los datos solicitados, y por último es el
procesado en el cliente de los datos de la respuesta del servidor.

Ejemplo: Navegar una web funciona basándonos en un cliente web (navegador) y un


servidor web como Apache.`
2. Blackboard

El patrón Blackboard es un modelo arquitectónico de software habitualmente utilizado


en sistemas expertos, multiagente y basados en el conocimiento. Organizando una serie
de algoritmos que comparten información en una estructura de datos común, cada uno
trabaja en una tarea específica, pero todos persiguen el mismo objetivo.

Estructura:
▪ Fuente de conocimiento: Proveen áreas de conocimiento particulares que aportan hipótesis
de la solución y son las encargadas de leer y escribir en la pizarra.
▪ Pizarra: Estructura de datos central que provee de una interfaz y permite a todas las fuentes
de conocimiento leer y escribir en él.
▪ Control: Monitorea los cambios en la pizarra y decide qué acciones tomará.

Ejemplo: El patrón Blackboard se puede aplicar en distintos ámbitos como el


reconocimiento de voz, la identificación y seguimiento de vehículos.
HEARSAY-II fue el primer sistema que utilizó este patrón para resolver problemas de
reconocimiento de voz.
3. Modelo entre capas

La arquitectura basada en capas se enfoca en la distribución de roles y


responsabilidades de forma jerárquica, es una forma muy efectiva de separación de
responsabilidades. El rol indica el modo y tipo de interacción con otras capas, y la
responsabilidad indica la funcionalidad que está siendo desarrollada.
El estilo de arquitectura basado en capas se identifica por las siguientes características:

• Describe la descomposición de servicios de forma que la mayoría de la interacción ocurre


solamente entre capas vecinas.

• Las capas de una aplicación pueden residir en la misma maquina física (misma capa) o
puede estar distribuido 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 re-uso” donde cada capa
agrega responsabilidad y abstracción a la capa directamente sobre ella.

Ejemplo: Una aplicación web está compuesta por una capa de presentación (funcionalidad
relacionada con la interfaz de usuario), una capa de negocios (procesamiento de reglas
de negocios) y una capa de datos (funcionalidad relacionada con el acceso a datos).
4. Intérprete

Es un patrón de diseño utilizado para evaluar un lenguaje definido como expresiones,


permite interpretar un lenguaje como Java, C#, SQL, entre otras y da una respuesta tras
evaluar dicho lenguaje.

Estructura:
• Client: Actor que dispara la ejecución del interpreter.
• Context: Objeto con información que será utilizada por el intérprete para leer y
almacenar información global entre todas las clases.
• AbstractExpression: Interface que define la estructura de una expresión.
• TerminalExpression: Se refiere a expresiones que no tienen más continuidad y al ser
evaluadas o interpretadas terminan la ejecución de esa rama y marcan el final de la
ejecución de un sub-árbol de la expresión.
• NonTerminalExpression: Son expresiones compuestas y dentro de ellas existen más
expresiones que deben ser evaluadas, son interpretadas utilizando recursividad hasta
llegar a una expresión Terminal.

Ejemplo: Una aplicación que interprete comandos SQL para realizar consultas sobre una
Archivo de Excel, en donde cada hoja será vista como una tabla y las columnas de la hoja
como columnas de la tabla. Con la propia estructura de clases para representar el
Lenguaje SQL, que puedan ser interpretadas y que arroje un resultado.
5. Orientado a Servicios

SOA es un marco de trabajo que permite diseñar la integración de las aplicaciones,


donde se incluyen en la mayoría de los escenarios sistemas legados con herramientas
modernas en función de optimizar los procesos del negocio con una mayor
interoperabilidad y que se considera agregan valor para el negocio.

Estructura: Separa la lógica de integración de negocio de la implementación, para que el


desarrollador pueda centrarse en ensamblar una aplicación integrada en lugar de hacerlo
en los detalles de la implementación. Para lograrlo, se crean componentes de servicio que
contienen la implementación de servicios individuales necesarios para los procesos de
negocio. Los componentes se ensamblan entre sí de forma visual, es decir, el código de
los componentes no se expone al usuario. Permite centrarse en resolver los problemas de
negocio mediante la utilización y reutilización de componentes, en lugar de distraer la
atención hacia la tecnología que implementa los servicios que se están utilizando.

Ejemplo: Cisco adoptó la SOA para asegurarse de que su experiencia de pedidos de


productos fuera consistente en todos los productos y canales exponiendo los procesos de
pedidos como servicios que las divisiones, adquisiciones y socios de negocios de Cisco
podrían incorporar a sus sitios web.
Conclusión

Estas arquitecturas ayudan al desarrollador a entender mejor el software a diseñar,


facilitando su desarrollo con patrones para su construcción, bien estructurado y
reduciendo los riesgos, con diferentes tipos de arquitecturas para adaptarse a cualquier
necesidad, cumpliendo con los requerimientos especificados y con el objetivo del
proyecto.

También podría gustarte