/////////////////////////////////////////////////////////////////////// # Diagramas de secuencias de sistema # Lista de casos de uso: Alta de Usuario Consulta de Usuario Modificar Datos de Usuario Listar Usuarios Existentes Alta de Video Modificar Datos de Video Consulta de Video Comentar un Video Valorar un Video Seguir a un Usuario Dejar de Seguir a un Usuario Crear Lista de Reproducción Modificar Lista de Reproducción Agregar Video a Lista de Reproducción Quitar Video de Lista de Reproducción Consulta de Lista de Reproducción Alta de Categoría Consulta de Categoría Listar Categorías Existentes /////////////////////////////////////////////////////////////////////// # Diagramas: ## Alta de Usuario Solicita datos del usuario: nickname, correo electrónico, contraseña y verificacion, nombre, apellido, fecha de nacimiento e imagen. Solicita datos del canal: privacidad, nombre y descripcion. IF [el correo o nickname ya esta en uso] Se avisa al administrador y se da la opcion de cancelar o modificar los datos ingresados anteriormente Se manda al sistema DataType con los datos de usuario y canal para que los cree ----------------------------------------------------------------------- ## Consulta de Usuario Se listan todos los usuarios Administrador elige uno Se muestran todos los datos básicos del usuario Se muestra la informacion basica del canal Se muestra una lista con todos los videos Se muestra una lista con todas las listas de reproduccion Se muestra una lista con los nombres de usuarios que sigue Se muestra una lista con los nombres de usuarios que lo sigueen a el IF [Selecciona un video] muestra la informacion como en caso de uso Consulta de Video IF [Selecciona una lista de reproduccion] muestra la informacion como en caso de uso Consulta de Lista de Reproducción ----------------------------------------------------------------------- ## Modificar Datos de Usuario Mostrar lista de todos los usuarios El administrador elige uno //Se selecciona una de las siguientes opciones IF [modificar datos usuario] El sistema muestra datos del usuario El sistema muestra datos del canal del usuario El administrador modifica los datos que desee (excepto nickname o email) Se confirman los cambios IF [modificar video] Se listan los videos del usuario actual El administrador selecciona un video Se modifican los datos del video (incluyendo privacidad) Se confirman los cambios IF [modificar lista de reproduccion] El sistema muestra datos del usuario El sistema muestra datos del canal del usuario El administrador modifica los datos que desee (excepto nickname o email) Se confirman los cambios ----------------------------------------------------------------------- ## Listar Usuarios Existentes El sistema lista todos los usuarios (solo nickname) ----------------------------------------------------------------------- ## Alta de Video ----------------------------------------------------------------------- ## Modificar Datos de Video Mostrar lista de todos los usuarios El administrador elige uno El sistema muestra datos del usuario El sistema muestra datos del canal del usuario El administrador modifica los datos que desee (excepto nickname o email) Se confirman los cambios ----------------------------------------------------------------------- ## Consulta de Video Se listan todos los usuarios Administrador elige uno (dueño del video) Se listan los videos del usuario Administrador elige un video Se muestran todos los datos del video, lista de comentarios, a quienes les gusto y a quienes no ----------------------------------------------------------------------- ## Comentar un Video ----------------------------------------------------------------------- ## Valorar un Video ----------------------------------------------------------------------- ## Seguir a un Usuario ----------------------------------------------------------------------- ## Dejar de Seguir a un Usuario ----------------------------------------------------------------------- ## Crear Lista de Reproducción ----------------------------------------------------------------------- ## Modificar Lista de Reproducción Mostrar lista de todos los usuarios El administrador elige uno El sistema muestra datos del usuario El sistema muestra datos del canal del usuario El administrador modifica los datos que desee (excepto nickname o email) Se confirman los cambios ----------------------------------------------------------------------- ## Agregar Video a Lista de Reproducción ----------------------------------------------------------------------- ## Quitar Video de Lista de Reproducción ----------------------------------------------------------------------- ## Consulta de Lista de Reproducción Se listan todos los usuarios Administrador elige uno (dueño del video) Se listan las listas de reproducción del usuario Administrador elige una lista Se muestran los datos de la lista Se listan los videos de la lista IF [El administrador selecciona un video] Se muestra su informacion como indica el caso de uso Consulta de Video ----------------------------------------------------------------------- ## Alta de Categoría El administrador indica el nombre de la nueva categoria IF [la categoria ya existe en el sistema] Se notifica al administrador y este puede modificar lo ingresado o cancelar IF [no se cancela] se confirma la nueva categoria ----------------------------------------------------------------------- ## Consulta de Categoría ----------------------------------------------------------------------- ## Listar Categorías Existentes El sistema lista todas las categorias /////////////////////////////////////////////////////////////////////// # Firma de Operaciones altaCategoria(string cat):void // crea una nueva categoria con el nombre indicado altaUsuarioCanal(DtUsuario usr, DtCanal canal): void // Crea el usuario y el canal existeCategoria(String cat):boolean // Devuelve true si la categoria existe en el sistema existeEmail(string mail): boolean // Verifica si existe el mail existeNickname(string nickname):boolean // Verifica si existe el nickname listarCategorias():set< ?? > // Lista todas las categorias listarComentariosVideo(): set<DtComentario> // Devuelve en forma recursiva todos los comentarios del video actual listarListasDeReproduccionDeUsuario(): set<DtListaReproduccion> // Devuelve todas las listas de reproduccion del usuario actual listarUsuarioSeguidores(): set<DtUsuario> // Devuelve todos los usuarios que siguen al usuario actual listarUsuarioSeguidos(): set<DtUsuario> // Devuelve todos los usuarios seguidos del usuario actual listarUsuarios():set<DtUsuario> // Devuelve todos los datos de los usuarios listarVideosDeUsuario(): set<DtVideo> // Devuelve todos los videos de usuario actual modificarListaDeReproduccionDeUsuario(DtListaReproduccion lista):void // Se modifican los datos de la lista de reproduccion del usuario actual modificarUsuarioYCanal(DtUsuario usr, DtCanal canal):void // Se modifican los datos del usuario actual y su canal modificarVideo(DtUsuario usr, DtCanal canal):void // Se modifican los datos del usuario actual y su canal obtenerCanalDeUsuario(): DtCanal // Devuelve los datos del canal del usuario actual obtenerDatosListaReproduccionDeUsuario(): DtListaReproduccion // Devuelve la información de la lista de reproduccion del usuario actual obtenerValoracionesDeVideo(): set<DtValoraciones> // Devuelve las valoraciones del video actual seleccionarUsuario(strign nickname): DtUsuario // El sistema recuerda un link al usuario sleccionarVideoDeUsuario(string titulo): DtVideo // Devuelve los datos del video seleccionado // -la funcion listarListasDeReproduccionDeUsuario() dice que devuelve todas las listas de reproduccion del usuario, pero el caso de uso Modificar Lista de Reproduccion necesita listar SOLO las listas particulares. ¿Como hacemos? -agregue modificarListaDeReproduccionDeUsuario(..) -agregue listarCategorias():set< ?? > pero no se que debe devolver -agregue existeCategoria(String cat):boolean -agregue altaCategoria(string cat):void -hay que hacer funciones para liberar memoria del sistema Quiza en vez de hacer funciones para cada CDU, hacer una funcion que libere un dato especifico y que cada DSS llame a las que necesite