75.10 Técnicas de Diseño Grupo E Dreaming Works 75.10 Técnicas de Diseño Grupo E
Síntesis de la presentación Introducción Arquitectura Casos de uso principales Preguntas
Introducción Descripción del problema Diseñar e implementar un sistema de producción de películas y cortos que le permita realizar un trabajo colaborativo entre sus artistas y creadores, de modo que todos trabajen de forma integrada, aun estando distribuidos geográficamente.
Introducción Requerimientos funcionales Dibujar ciertas figuras Numerosos Artistas Distribuidos geográficamente Almacenamiento central Colaboración Concurrencia
Introducción Requerimientos no funcionales Bloqueo optimista y pesimista Diseño simple Portabilidad
Introducción Terminología: Pesimista: El artista bloquea una figura de un dibujo para trabajar sobre ella. Se asegura que sus modificaciones serán almacenadas. Optimista: El artista trabaja sobre una figura sin bloquearla. Podría perder sus cambios durante una edicion.
Introducción Los artistas podrán: Dibujar figuras sobre un Panel de trabajo. Realizar operaciones sobre las figuras elaboradas. Almacenar en forma centralizada los dibujos elaborados.
Introducción Los artistas podrán (cont.) Trabajar en forma concurrente sobre el mismo dibujo y trabajar geográficamente distribuidos. Visualizar las figuras y modificaciones que realizar los otros artistas sobre el dibujo en “tiempo real”.
Síntesis de la presentación Introducción Arquitectura Casos de uso principales Preguntas
Arquitectura Servidor: Almacena los dibujos Registra a los artistas Acepta o rechaza los cambios Notifica a los clientes de cambios
Arquitectura Servidor: Rechazo de cambios. Causas: El artista pudo haber modificado una figura mediante el modelo habiendo otro artista ya modificado la versión existente. El artista desea trabajar en forma pesimista sobre una figura ya bloqueada Error interno del servidor.
Arquitectura Cliente: Se registra al servidor. Solicita bloqueos Solicita modificaciones
Arquitectura Tecnología Frameworks utilizados Java SE 6 Frameworks utilizados Application Framework (Swing) Log4j Hibernate
Arquitectura Patrones utilizados Observer para la arquitectura Broker en las comunicaciones, encapsulado en RMI
Arquitectura Vista Escenarios Casos de uso soportados Vista de
Arquitectura Vista de procesos Un número de clientes idénticos se registran con el servidor. La comunicación se hace mediante RMI encapsulado en TCP/IP.
Arquitectura Vista lógica - Clases de dominio
Arquitectura Vista lógica – Clases Observer
Arquitectura Vista de Desarrollo – Componentes (Vista interna de paquetes)
Arquitectura Vista lógica – Clases Observer
Síntesis de la presentación Introducción Arquitectura Casos de uso principales Preguntas
Casos de uso principales Abrir Dibujo
Casos de uso principales Modificar figura
Casos de uso principales Modificación fallida
Casos de uso principales Guardar dibujo
Casos de uso principales Eliminar figura
Síntesis de la presentación Introducción Arquitecturas Casos de uso principales Preguntas
¿Preguntas?