Enunciado Prácticas Sob (Fase I)

Título: GrupURV

Atención: Los grupos de OSDC tendrán otro enunciado

Se trata de diseñar e implementar una aplicación web de espacios compartidos. En GrupURV cada usuario del entorno tendrá un espacio de trabajo principal (Home). En cada carpeta se pueden crear, eliminar, copiar y pegar dos tipos de objetos: ficheros (file) e hiperenlaces (url). De cada objeto se tienen atributos como el usuario que lo creó y la fecha de creación. Además, una carpeta puede a su vez contener otras carpetas.

Un usuario puede compartir un directorio con uno o más usuarios existentes en el entorno. También puede ver la lista de usuarios que acceden a cada carpeta compartida y eliminar a alguno existente. Además cada usuario verá en su entrada al entorno (home) los directorios que otros usuarios han creado y han compartido con éste. Solo se podrán compartir directorios de primer nivel (incluyen a todos sus subdirectorios).

El entorno tiene información de cada usuario (login, foto_url, nombre, apellidos, dirección, correo electrónico, messenger) y se pueden crear grupos de usuarios. Además el entorno debe permitir que al invitar un usuario a una carpeta se le asigne un rol (miembro o invitado) en esa carpeta. El miembro podrá hacer todas las acciones en esta carpeta, mientras que el invitado solo podrá acceder en modo lectura. La creación de nuevos roles en el entorno es opcional. También opcionalmente se puede ofrece un canal de chat por espacio compartido o carpeta.

Por último, el administrador podrá gestionar usuarios (creación, listado, eliminación) y de forma opcional establecer cuota de disco por usuario.
Se recomienda utilizar en la interfaz Web colores e iconos corporativos URV.

Para subir nota se recomienda diseñar los objetos de cada carpeta de modo genérico y extensible. Es decir, ahora hay definidos dos tipos de objetos: Fichero y URL, pero ¿si alguien quiere crear otro tipo de objeto como por ejemplo votación qué debería hacer ?

Ejemplo aplicación similar: BSCW (Basic Support for Cooperative Work)

Nota: para crear objetos fichero se efectua un File Upload. Un ejemplo de File Upload se explicará en el laboratorio.