Caso prctico 1: Sistema de gestin de agendas y reuniones
Enunciado Los usuarios del sistema se pueden asociar a grupos de trabajo que se definieran en el sistema, pero esto lo hace el administrador de grupos. Cualquier usuario se puede convertir en administrador de grupos, y este puede crear un grupo y se encarga de su gestin (alta y baja de usuarios en el grupo y eliminacin del grupo). Un usuario puede pertenecer a varios grupos. Cada usuario tiene acceso a una agenda personal. La agenda consta de un calendario, un directorio de contactos, una lista de tareas y una lista de notas. El calendario permite ver por das, semanas, meses o aos las entradas que se hubieran creado en el mismo. Estas entradas pueden ser creadas por el usuario o por el administrador de reuniones. Cada entrada tiene un ttulo, una fecha (da y hora) y comentarios. Las entradas pueden ser pblicas (cualquier otro usuario puede verlas), de grupo (slo visibles por los usuarios de uno o ms grupos al que pertenece el usuario) o privadas (slo el usuario). El calendario tambin ofrece la posibilidad de sacar una lista de todas las entradas, con varias opciones, por ejemplo, entre dos fechas, a partir de una fecha, las relacionadas con un grupo, etc. El directorio de contactos es una lista de personas con sus datos de contacto (nombre, alias, direccin, telfonos, email, etc.) y notas adicionales. Se podr crear, consultar, buscar, modificar o borrar elementos de este directorio. En la lista de tareas, cada una consta de una fecha de terminacin (o sin fecha de terminacin), un ttulo, un texto descriptivo, una prioridad, y una categora (para clasificarlas en grupos de tareas). Tambin tienen un indicador de hasta qu punto se ha cumplido (porcentaje, cuando llega a 100 es que se ha completado). Se podr crear, consultar (de varias maneras, por nombre, grupo de tareas, estado y fecha de terminacin), modificar o borrar elementos de esta lista. La fecha de terminacin se ver reflejada en el calendario. En la lista de notas, cada nota consta de un ttulo y un texto. Pueden estar asociadas a una categora. Se podr crear, consultar, buscar, modificar o borrar notas. En la agenda se podrn crear, modificar o borrar nombres de categoras. En los campos de texto se pueden poner enlaces a otras entradas de la agenda (por ejemplo, en una nota, un enlace a un contacto, o en una entrada del calendario un enlace a una tarea). El sistema de gestin de reuniones es un sistema auxiliar y externo al sistema, que permite a los usuarios de un grupo concertar reuniones buscando el momento ms propicio. Cada reunin tendr un ttulo y una descripcin de los objetivos y la agenda de la reunin, as como un lugar, fecha y duracin. Para decidir la fecha el usuario que propone la reunin indicar un rango de fechas y el sistema proporcionar una lista de las ms convenientes para todos segn sus agendas. El promotor de la reunin podr elegir una fecha entre stas o pedir al sistema que permita votar (en un tiempo lmite) a los invitados a la reunin por una fecha, en cuyo caso se elegir la fecha ms votada. Cada invitado recibir la solicitud de voto cuando se conecte al sistema. La fecha de la reunin final se apuntar en la agenda de todos los usuarios invitados a la reunin. Se pide:
Elaborar casos de Uso de Negocio
Elaborar Casos de Uso del Sistema (Recordar este es un diagrama detallado).
DISEO DE SISTEMAS PRCTICA CALIFICADA (U-2)
Caso Prctico 2: Editor de Documentos Parole
Enunciado Crear un diagrama de clases para representar la funcionalidad de un editor de documentos llamado Parole que admita agrupamiento. El agrupamiento es un concepto ampliamente utilizado por los editores de documentos. Suponer que un documento consta de varias pginas (al menos una). Cada pgina contiene objetos representables, que son textos, objetos grficos y grupos (tal vez ninguna, es el caso de cuando se abre un nuevo documento). Un grupo consta de, un conjunto de objetos representables, y puede constar de otros grupos. Un grupo debe contener al menos dos objetos representables, mientras que un objeto representable solo puede ser parte de un grupo como mximo. (Tambin puede ser que no forme parte de ningn grupo). Un grupo solo puede formar parte de otro grupo como mximo. Los objetos representables deben existir siempre en el contexto de una pgina; las pginas solo deben existir en el contexto de un documento; adems, si existen elementos contenidos en un grupo y ste desaparece, tambin desaparecen los elementos contenidos en l. Los objetos grficos pueden ser curvilneos o polgonos. Los curvilneos pueden ser crculos o elipses, y los polgonos pueden ser rectngulos, tringulos y cuadrados.
Caso prctico 3: Sistema Operativo Maxix
Enunciado Se plantea el desarrollo de una aplicacin para implementar el sistema operativo Maxix programado en el lenguaje de programacin orientado a objetos L: Existe un sistema de archivos, que est asociado a una tabla de ficheros y a una tabla de usuarios. La tabla de usuarios referencia a todos los usuarios y la tabla de ficheros referencia a todos los ficheros. Debe al menos un usuario referidos (el administrador) y 2 ficheros (la tabla de ficheros y la tabla de usuarios). Los usuarios pueden ser propietarios de ficheros, pero un fichero solo pertenece a un propietario. Se puede crear un usuario y consultar sus datos, pero esto solo lo puede hacer el administrador del sistema. Existen dos tipos de ficheros: el directorio, que se compone a su vez de otros ficheros, y el fichero simple. El fichero simple a su vez puede ser binario (por ejemplo, un ejecutable) o texto (es decir conteniendo ASCII). Si se borra el directorio, tambin desaparecen los ficheros que estn contenidos en l. Adems un directorio puede estar vaco. Cualquier tipo de fichero se puede crear, borrar, consultar, y modificar; cualquier usuario puede crear un fichero, pero es el usuario que crea el fichero quien puede borrar, consultar o modificar el fichero. Cuando un usuario crea un fichero nuevo se produce el siguiente efecto en cascada: le proporciona el tipo, nombre y propietario al sistema de archivos, que se encarga de obtener un identificador y una direccin de comienzo al nuevo fichero; la tabla de ficheros se ve ampliada con una nueva entrada con los datos del tipo, nombre, propietario, y las recientemente creadas identificador y direccin de comienzo; y por ltimo se crea un nuevo fichero del tipo indicado por el usuario, con el nombre suministrado por el usuario y la direccin de comienzo. Si la creacin se lleva a cabo correctamente, el usuario recibe la notificacin de Fichero creado. Para esta aplicacin se solicita: 1. Un diagrama de casos de uso para representar toda la funcionalidad. Identificar bien los actores.
DISEO DE SISTEMAS PRCTICA CALIFICADA (U-2)
2. Un diagrama de clases del dominio de la aplicacin que se han ido describiendo en el enunciado.