# data[].attributes.body
Estar basado en el diseño de servicios que reflejan las actividades en el mundo real, aparte de la gran capacidad de reutilizacion

# data[].attributes.body
Las funcionalidades del sistema serán proporcionadas por un servidor, el cual responderá peticiones de aplicaciones cliente como el navegador web y apps de Android.

# data[].attributes.body
Las funcionalidades del sistema serán expuestas como web services REST. Ello permitirá al sistema poder integrarse con otros sistemas externos..

# data[].attributes.body
Los datos manejados por el sistema se alojarán en una base de datos centralizada, la cual será utilizada por el servidor de aplicaciones web, el servidor de reportes, y aplicaciones del administrador de base de datos.

# data[].attributes.body
El sistema empleará un servidor diferenciado para procesamiento de la lógica, otro para almacenamiento de data, y otro para la administración de reportes. Ello permitirá que cada servidor cuente con su propio procesador y memoria.

# data[].attributes.body
Call return.
Se usa el estilo Call Return, este representa un modelo en el que los componentes proporcionan servicios que puedes ser invocados por otras de forma sincrona
Un componente invoca un servicio, este permanece en estado de bloqueo mientas el servicio termina, es por esto que hay flechas de doble sentido para que estoy se comuniquen entre si.

# data[].attributes.body
Pipes and Filters
Se descompone una tarea grande en pequeñas partes, las cuales llevan filtros, esto ayuda a evitar la duplicidad de código, cada componente por llamarlo de esa forma realiza una tarea.

# data[].attributes.body
En esta arquitectura el cliente suele ser estaciones de trabajo que solicitan varios servicios al servidor, mientras que un servidor es una máquina que actúa como depósito de datos y funciona como un sistema gestor de base de datos, este se encarga de dar la respuesta demandada por el cliente.

# data[].attributes.body
La implementación de sistema se subdivide en capas. Vistas, Controladores y Base de datos.
Los Controladores son los encargados de recibir los datos de las vistas, procesarlos y enviarlos a la base de datos. Gracias a esta subdivisión es que se puede lograr una alta cohesión y flexibilidad al momento del desarrollo del sistema. Gracias a este estilo se consigue un mayor enfoque cuando se re desarrolla cada uno de los componentes, ya sea en el capa de las vistas, controladores o base de datos.

# data[].attributes.body
Este estilo es ideal para almacenar data pasiva en una base de datos, en la cual se encontrará cada uno de los registros realizados por los usuarios y proporcionará la información necesaria a la aplicación web para ser visualizada y procesada. Al ser datos pasivos nos permite realizar una fácil migración y respaldo de todos ellos.

# data[].attributes.body
Los componentes son objetos o ADT y las conexiones entre componentes se realiza a través de mensajes/invocación de métodos. Teniendo como ventaja que los cambios en las implementaciones no afectan a clientes.

# data[].attributes.body
El estilo se basa en un conjunto de servicios que se comunican entre ellos: pasando data, o a través de otros servicios que coordinan la actividad y puede ser implementado con diversas tecnologías como REST,SOAP. Siendo muy bueno para la creación de código reutilizable. .

# data[].attributes.body
el estilo de llamada y retorno lo podemos usar en la parte de orientada a objetos tratando todo así en POO, esto nos permitira evitar crear elementos de innecesarios o repetitivos y usar plantillas que puedan reflejar a todo usuario, y sus necesidades

# data[].attributes.headline
Guillermo Aleman Zambrano Estilo Multi-tier

# data[].attributes.subject
Guillermo Aleman Zambrano Estilo Multi-tier

# data[].attributes.body
Se utilizará tres tier uno del cliente, otro para la lógica del negocio y uno último para la base de datos. Se usará un navegador web para ingresar al sistema, una vez iniciada sesión se puede ingresar como administrativo o para gestión académica, ambos tienen funcionalidades las cuales se ayudan por módulos y componentes, los administrativos y los de gestión académica pueden trabajar con la base de datos.

# data[].attributes.body
Mediante los datos de cada usuario podriamos hacer perfectamente este estilo para crear una unica apk pero mediante los filtros lograr que se acomode a los permisos y necesidades de los usuarios.
en el grafico vemos como usando un firework como es flutter, haciendo una unica version del apk debido a los filtros que tengamos, podemos brindar definidas funciones dependiendo del usuario

# data[].attributes.body
Las funcionalidades del sistema son consumidos mediante un conjunto de servicios Rest, para su reúso desde otros canales.

# data[].attributes.headline
Guillermo Aleman Zambrano Estilo Peer to peer

# data[].attributes.subject
Guillermo Aleman Zambrano Estilo Peer to peer

# data[].attributes.body
Las funcionalidades del sistema serán dadas por puntos los cuales pueden responder como servicios de igual a igual, estos puntos también pueden ser módulos, las interacciones entre ellos es bidireccional por lo tanto dentro de un módulo se puede mostrar la interacción que puede tener un administrador con su secretaría donde la información va en ambos sentidos, la mayoría de puntos responderán a peticiones de Administrativos y Gestión académica.

# data[].attributes.headline
Jordy Javier Zamata Corimanya - Estilo Blackboard

# data[].attributes.subject
Jordy Javier Zamata Corimanya - Estilo Blackboard

# data[].attributes.body
El estilo Blackboard nos permite utilizar data activa y podremos modelar una base de datos activa que aparte de almacenar datos nos permite inferencias y nos genera conocimiento.Hacemos uso de este estilo para evitar la sobrecarga
de operaciones en nuestra capa de logica de negocio y poder ejecutar en la capa de acceso a datos los procedemientos que correspondan, lo que obtendremos sera tener menos probalidad de saturacion o una caida en el sistema al tener una gran cantidad de usuarios y presentarles informacion actualizada.

# data[].attributes.body
Tomamos este modelo para tener en cuenta un modelo antiguo o como opción cuando tengamos un presupuesto pequeño es dividir nuestro sistema en tres computadoras donde se divide en tres capas cliente, servidor y DB-Server estas capas vienen a ser una separacion fisica y no una separacion logica como los layers.
Con este modelo podemos realizar cambios en el UI sin ningun problema ya que el modelo de negocios y el acceso a datos se encuentran en otra computadora.

# data[].attributes.body
La vista de despliegue ilustra cómo los diferentes componentes de Hardware (nodos) del sistema se relacionan entre ellos en el ambiente de producción. Cada nodo es un dispositivo de cómputo específico, el cual ofrece la posibilidad de ejecutar el Software que fue desarrollado para suplir los requerimientos del sistema.

# data[].attributes.body
El acceso de visualización de dato esta determinado en función a la necesidad del usuario, de igual manera, la gestión de los datos depende del tipo de usuario. Este estilo es conveniente respecto que, en un sistema académico, el uso se da por agrupamientos, por ejemplo, un alumno desea ver sus matrículas, y a la vez las mallas en las que las esta llevando o las calificaciones de cada matricula. Mientras que un profesor podría estar mas interesado en colocar las calificaciones de dos grupos dentro de una misma malla. Por lo que las tareas pueden facilitarse por el interés del usuario. Mientras que para el desarrollo se facilita la interacción de los componentes, con cierta independencia de los mismos, pudiendo actualizarse o reemplazarse sin inconveniente, incluso algunos sin necesidad de pausar el uso del sistema.

# data[].attributes.body
El sistema logaría tener independencia en el sentido de que si se caen las funcionalidades necesarias para algún tipo de usuario los demás podrían seguir trabajando. El único punto critico sería asegurar la disponibilidad de la Data sin embargo esta podría lograrse con un almacenamiento redundante. Permitiría reutilizar código en funcionalidades compartidas, y la mantenibilidad sin necesidad de suspender mas de una funcionalidad o servicio.

# data[].attributes.body
este estilo se basa en la orientación de objetos lo cual hace que sea fácil para el usuario entender la propuesta ya que aparte de capas se usan flechas de relación