CASOS de Estudios 2

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

Para los siguientes casos proponga una arquitectura de software de la siguiente manera:

 Dibuje y explique brevemente la arquitectura global del sistema.


 Describa brevemente la operación de cada subsistema o componente. Si es
necesario utilice un diagrama de la arquitectura específica del componente
principal.
 Detalle en qué estilo arquitectónico o combinación de estilos está basada esta
arquitectura y explique por qué eligió ese estilo o mezcla de estilos.
 Indique un estilo arquitectónico distinto del (o los) usado(s) en la arquitectura
global, que no sea adecuado. Explique las razones por las que este otro estilo
resulta verdaderamente inapropiado para la situación.
 Dibuje y explique brevemente la arquitectura del sistema mediante la vista de
deployment.
 Para el diseño propuesto, evalúe su desempeño con respecto a los siguientes
atributos:
o Modificabilidad: qué tan difícil es modificar al sistema luego de su
implementación para cumplir con nuevos requerimientos. Considere
cambios en el uso del sistema.
o Performance: el desempeño del sistema en cuanto al uso de tiempo y
memoria que requiere su ejecución.
o Reusabilidad: qué tan reusables son sus componentes.

CASO No 1.
Se desea desarrollar un sistema para la venta de productos electrónicos a través de
dispositivos móviles. La aplicación móvil estará destinada solo a los clientes de una
tienda, que deberán registrarse para usarla. Los clientes podrán consultar los productos
disponibles en la tienda junto con su precio, descripción y número de unidades en stock.
Un pedido se define como un conjunto de productos que el cliente ha seleccionado junto
con el número de unidades de cada uno. Mientras no se haya programado su entrega,
se podrán añadir y eliminar productos al pedido en elaboración. Todos los pedidos
realizados por un cliente se mostrarán en un listado junto con el estado de estos. Para
cada pedido, el cliente podrá generar una factura donde se listan los productos que lo
componen y el precio total. Una vez un cliente haya confirmado un pedido, este deberá
ser aprobado por un empleado para ser entregado. Cuando esto suceda, se enviará una
notificación al correo electrónico del cliente. Mientras que el empleado no lo apruebe,
el pedido podrá ser cancelado. Además, cuando el pedido sea entregado físicamente al
cliente, este deberá marcar el pedido como entregado. Un cliente puede crear una
incidencia si tiene algún problema con un pedido o quiere consultar una duda con los
empleados de la tienda. Dentro de una incidencia, tanto el cliente como los empleados
se comunicarán a través de comentarios. Cuando lo considere oportuno, el cliente podrá
cerrar la incidencia creada, que podrá volver a consultar en cualquier momento.
CASO No 2.
Una empresa de video juegos está comenzando el desarrollo de una API grafica (gAPI)
que será la base de una serie de nuevos juegos de rol de fantasía en tercera persona. El
software gAPI busca tener una interfaz con los principales lenguajes de programación:
C++, C# y Java. Esta interfaz abstrae al programador de los detalles del motor gráfico,
traduciendo los pedidos de un programa a directivas del motor. Posteriormente, para
efectivizar la renderización de los gráficos requeridos, el motor gráfico puede
comunicarse tanto con DirectX como con OpenGL, los cuales interactúan directamente
con el sistema operativo para mostrar los gráficos por pantalla. La actividad principal del
motor gráfico de gAPI es dibujar escenas. Una escena se compone de un terreno,
estructuras, personajes y postefectos. Primero se dibuja el terreno, luego se agregan las
estructuras, después los personajes y posteriormente se aplican los postefectos sobre
todos los elementos de la escena (sombras, iluminación, etc.). Una particularidad del
motor gráfico de gAPI es la renderización completa de los objetos que un personaje
tiene equipados. Para esto, el motor debe ir montando los objetos portados por el
personaje en el orden adecuado de manera tal que no haya “clipping” (que los objetos
que deberían estar más abajo tapen en alguna parte a los que deberían estar más arriba,
por ejemplo que la ropa tape a la mochila). En la primera versión del motor los
personajes podrán portar: Ropas, Armadura, Guantes, Calzado, Gorro/Casco, Túnica,
Capa, Equipo en el Cinto, Equipo en la Espalda, Capa. El motor debe ser eficiente
dibujando a la vez todos los objetos que no se superpongan. Suponga que se está
diseñando Fulanito Quest, un juego de rol multijugador, utilizando el software gAPI. El
juego lo pueden jugar varios jugadores en una red local o a través de servidores
dedicados, y éste podrá adquirirse a través del sitio web de la empresa, de la plataforma
online de ventas JuegosAlVapor o mediante copias físicas en DVD.

CASO No 3.
Se quiere diseñar un sistema de reproducción de multimedia online. En este sistema el
cliente corre una aplicación mediante la cual solicita y recibe datos (video y/o música)
de un servidor de aplicación (lo llamaremos AppS de ahora en más) con el cual se
conecta a través de Internet. El AppS obtiene los archivos correspondientes al pedido
del usuario de dos servidores dedicados: un servidor de video (VS) y un servidor de audio
(AS), los cuales pueden estar localizados en diferentes hosts. Según lo indicado por el
cliente en el pedido el AppS puede a los videos codificarlos a diferentes formatos,
modificar su calidad y/o agregar subtítulos, mientras que a los audios puede
comprimirlos y modificar su calidad. Una vez recibidos, el cliente ve/escucha los datos
multimediales en la aplicación. La aplicación de setup puede descargarse a través de un
sitio web dedicado que se conecta al AppS para descarga el archivo instalador
correspondiente y se instalada en una computadora o dispositivo personal. Luego de la
instalación y pasada la etapa de registro, la aplicación puede comunicarse con el “Media
Store” residente en el AppS donde puede comprar y descargar música y video y
almacenarlo en una librería. Los dispositivos móviles como tabletas o smartphones
pueden actualizar su propia librería desde una computadora personal a través de una
conexión USB, o pueden descargar media directamente del “Media Store” usando algún
protocolo de red inalámbrico como Wi-Fi, 4G, etc.

Caso No 4.
Se desea desarrollar un sistema de correo electrónico (es decir la provisión a usuarios
particulares registrados como tales por el dueño del sistema de casillas de correo
electrónico privadas, con las que puedan comunicarse con cualquier otra casilla de
correo electrónico en internet, como por ejemplo Gmail, Yahoo mail, o Outlook). El
sistema debe brindar las siguientes características:
 Operación de la casilla a través de una página web.
 Detector de spam, enviando los mensajes así clasificados a una carpeta especial que
almacena ese tipo de mensajes.
 Uso de una “blacklist”, es decir, si el remitente de un mensaje a casillas del sistema
está en esta lista, el mensaje es siempre rechazado silenciosamente.
 Configuración de filtros por parte de los usuarios.
 Operación desde aplicaciones especiales para leer correo desde una PC (como por
ejemplo Thunderbird o Outlook) o desde aplicaciones para tablets o smartphones.
 Se debe resguardar la privacidad de los clientes.

Caso No 5.
Una empresa multinacional de desarrollo de software desea desarrollar un servicio de
calendario que pueda ser accedido por usuarios desde diferentes plataformas y
dispositivos. El calendario estará disponible en una página web a la cual los usuarios
podrán ingresar identificándose con una clave de usuario y una contraseña. Esta no será
la única forma de interactuar con los calendarios, dado que también se podrán instalar
distintas aplicaciones en diferentes dispositivos (celulares, tablets, PCs, etc.) capaces de
generar diferentes visualizaciones de los calendarios. Debido a que se almacenan
calendarios de diferentes usuarios que pueden contener información sensible, éstos se
guardan de forma encriptada. Es por esta razón que cuando un usuario desea acceder a
un calendario debe primero identificarse ante el sistema y luego, si el usuario tiene los
permisos necesarios para operar sobre el mismo, se desencripta el calendario y se
realizan las operaciones necesarias para preparar la vista del usuario. Además, un
usuario podrá configurar alertas en su calendario para que le provea notificaciones de
determinados eventos que se reflejarán en las diferentes aplicaciones.
Caso No 6.
Las conferencias de profesionales son organizadas a fin de anunciar y discutir resultados
en un campo científico dado. La actividad central de organizar una conferencia se centra
en seleccionar los trabajos (de ahora en más llamados papers) a ser presentados.
Generalmente, se realiza primero una invitación abierta convocando el envío de
trabajos, luego se circulan los trabajos recibidos entre un grupo de revisores
predeterminado, y en base a sus evaluaciones se seleccionan los mejores trabajos para
incluir en el programa de la conferencia. El sistema de soporte para la organización, que
estará disponible por la web, debe considerar los siguientes aspectos:
 Se anuncia el “call for papers” es decir la invitación abierta convocando el envío
de trabajos de investigación.
 Los autores contribuyen y envían los papers basados en su trabajo de
investigación.
 Los papers son recibidos por un administrador.
 Se registran los papers recibidos.
 En una fecha determinada, se distribuyen los papers entre el panel de revisores.
Cada paper se envía a tres revisores.
 Se recolectan los informes de los revisores sobre los papers.
 En una fecha dada, se selecciona un conjunto de papers para ser incluidos en el
programa de la conferencia. De acuerdo a lo indicado por los revisores, algunos
de estos papers pueden requerir ciertos cambios por parte de los autores.
 Se avisa a los autores de los resultados del proceso de evaluación. Una vez
recibidas las versiones finales de los papers, se construye el programa final.

Caso No 7.
El vector de frecuencia de palabras clave (VFPC) de un archivo de texto es una secuencia
de pares de palabras clave y la cantidad de veces que aparece en el texto. Es una buena
representación de los contenidos de un texto; los VFPC son muy utilizados en búsqueda
y recuperación de información (information search and retrieval). Por ejemplo, a
continuación exponemos el vector de frecuencia de palabras clave de este párrafo (para
palabras que aparecen al menos dos veces).
Este vector indica claramente que el texto se refiere a palabras clave, textos, y vectores.
Cuando un usuario busca información acerca de “vector de frecuencia de palabras
clave” (en un buscador como Google, Bing, o Yahoo!), este párrafo se asocia claramente
con la consulta (query) del usuario porque las palabras de la consulta tienen una
frecuencia alta en el texto. Otra ventaja de los VFPC es que resume al texto y por lo tanto
ocupa menos espacio. Esta técnica funciona mejor cuando se ignoran las palabras cortas
(como “el”, “de”, “los”, etc.), como se hizo en el ejemplo. Además, las palabras con la
misma raíz deben ser tratadas como una; por ejemplo, “vectores” y “vector” deben ser
tratadas como una única palabra. Se requiere desarrollar un (componente, servicio o
api) para calcular VFPCs, y este pueda ser accedido por aplicaciones a las cuales los
usuarios se conecten desde diferentes plataformas y dispositivos.

También podría gustarte