Especificación de Requerimientos


Los requerimientos surgidos y establecidos después de la socialización con el cliente, fueron los siguientes:

R1. Gestión de Usuarios
Los usuarios del sistema son integrantes de IDIS que podrán autenticarse en el sistema y disponer de las herramientas de trabajo colaborativas. La gestión de usuarios (CRUD – Create, Reader, Update and Delete) solo la pueden hacer los usuarios que tenga el rol de administrador.

R1.1. Debe permitir listar todos los usuarios del sistema. Debe manejar paginación.

R1.2. Debe permitir agregar nuevos usuarios al sistema. Cada usuario debe tener los siguientes datos: nombre de usuario (login), contraseña, nombres, apellidos, correo electrónico, línea de investigación, rol (Administrador, miembro de IDIS o usuario normal). En general, un administrador puede tener acceso total al sistema y los usuarios normales solo pueden editar la información de su propio perfil y utilizar los servicios que ofrece el entorno.

R1.3. Modificar usuarios. Debe permitir modificar cualquier dato de los usuarios registrados.

R1.4. Debe permitir consultar fácilmente un usuario (por Id, login, nombres, apellidos, email). El resultado de la consulta debe generar un listado con paginación.

R1.5. Debe permitir eliminar un usuario del sistema. Antes de eliminarlo debe pedir confirmación de esta acción.

R2. Libreta de direcciones.
La libreta de dirección permite gestionar (CRUD – Create, Reader, Update and Delete)  la información de los contactos (miembro de IDIS, clientes, amigos, colegas, investigadores u otros) de cada uno de los usuarios del sistema. Es importante que el sistema de búsqueda de contactos sea flexible y usable.

R2.1 Debe permitir listar todos los contactos de la libreta de direcciones de cada usuario. Debe manejar paginación.

R2.2 Debe permitir agregar nuevos contactos a la libreta. Cada contacto debe tener los siguientes datos: nombres, apellidos, correo electrónico (opcional), teléfono fijo y teléfono celular (opcionales), ciudad, rol (miembro de IDIS, cliente, amigos y/o familiares, colegas, investigadores, u otros), empresa (este campo es necesario sólo para los clientes).

R1.3. Modificar contactos. Debe permitir modificar cualquier dato de los contactos registrados.

R1.4. Debe permitir consultar fácilmente el contacto por cualquier campo. El resultado de la consulta debe generar un listado con paginación.

R1.5. Debe permitir eliminar un contacto de la libreta de direcciones. Antes de eliminarlo debe pedir confirmación de esta acción.

R3. Calendario compartido
La idea general del calendario es disponer de una herramienta compartida en la cual los usuarios puedan planificar citas, eventos o encuentros (de grupo o individuales) en una fecha y hora específicas. La información básica a registrar es titulo de la actividad, descripción. El calendario debe permitir diferenciar, de alguna manera, las actividades de cada uno (por colores, por íconos, etc).

R3.1 Debe permitir la gestión de actividades (CRUD – Create, Reader, Update and Delete) del calendario de cada usuario.

R3.2 El calendario mostrará por semana las actividades a realizarse.

R3.3 Se clasificarán las actividades en privadas y compartidas, identificadas cada una por un determinado color.

R4. Administrador de archivos

El administrador de archivos (File Manager) permite a los usuarios administrar archivos (navegar, subir, descargar, renombrar, crear directorios, borrar) en el servidor. Los archivos pueden ser compartidos con otros usuarios mediante mecanismos como listas de control de acceso. 



¿Cómo se han cumplido los Requerimientos?

R1. Gestión de Usuarios

Para la implementación del R1.1, como se observa en la figura 1, se presentan los usuarios en una lista con la facilidad de eliminar o modificar al seleccionar la acción de la fila donde está el usuario. Además de ello, se presenta la flexibilidad de la búsqueda, de la creación del usuario y de la paginación en la misma vista.


Para la creación de un usuario (R1.2) y la modificación de un usuario (R1.3), como se observa en la figura 2 y la figura 3 respectivamente, se establece un formulario indicando los campos obligatorios a llenar, donde en el primer caso se agregan y en el segundo se modifican teniendo en cuenta un id no accesible que se autoincrementa para cada usuario, y que no es modificable para mantener la consistencia del mismo.

 


Para la búsqueda de un usuario, como se establece en el requerimiento R1.4, se da la opción de buscar por id, login, e-mail, nombre y apellido. En la figura 4, se muestra la presentación de una búsqueda y en la 4* las diferentes opciones de búsqueda.

 






















Para la eliminación del usuario, sólo se necesita pulsar sobre la acción en la fila del usuario que se desea eliminar. Además se presenta un mensaje de confirmación de la acción como lo sugiere el requerimiento R1.5, mostrado en la figura 5.



R2. Libreta de direcciones. 

La gestión de la libreta de direcciones es similar a la de usuarios. Para la implementación del R2.1, como se observa en la figura 1, se presentan los contactos en una lista simulando la presentación de una libreta de direcciones real, con la facilidad de eliminar o modificar al seleccionar la acción sobre el contacto. Además de ello, se presenta la flexibilidad de la búsqueda, la paginación y la opción de agregar un contacto en la misma vista. 




Similar a la gestión de usuario, para agregar un contacto (R2.2) y para la modificación de un contacto (R2.3), como se observa en la figura 2 y la figura 3 respectivamente, se establece un formulario indicando los campos obligatorios a llenar, donde en el primer caso se agregan y en el segundo se modifican teniendo en cuenta un id no accesible que se autoincrementa para cada contacto, y que no es modificable para mantener la consistencia en la libreta.



Para la búsqueda de un contacto también se presentan las diferentes opciones de búsqueda: id, nombre, apellido, email, teléfono, celular, ciudad, rol y empresa como se observa en la figura 4. En la figura 4* se muestra la presentación del resultado de una búsqueda de un contacto.









Para la eliminación de un contacto (R2.5), al igual que en la gestión de usuarios, se muestra la confirmación de la acción eliminar como se observa en la figura 5. También la opción eliminar como se ha visto en las figuras está presente para cada contacto.




R3. Calendario compartido

En la figura 1, se muestra el calendario en general. La presentación de las actividades se hace por semanas como lo exige el R3.2. También es importante destacar que la opción de agregar una actividad sólo es accesible en los días posibles, es decir, no se incluyen los días pasados a la fecha actual.


En la figura 2, se puede observar que se muestran diferentes opciones para seleccionar una fecha. Aparece un calendario pequeño cuando accedemos al campo para ir a dicha semana de una fecha, podemos digitar, o podemos ir a la semana mediante los  links “Anterior semana”, “Próxima Semana”, “Esta semana”, o mediante los “<<” “>>” que representan anterior y próxima semana respectivamente. Esto es útil para la flexibilidad en la utilización del servicio por el usuario.




Como parte del CRUD de los requerimientos, está el de crear una actividad, donde como se ve en la figura 3, se presenta un formulario señalando los campos obligatorios para agregar una actividad. La fecha y hora se fijan dependiendo del lugar donde se activo la opción y se mantienen inmodificables, esto porque fue en esa fecha y en esa hora donde se seleccionó crear la actividad.

 
En la figura 4, se muestra una actividad dentro del calendario, la actividad “desayuno con amigas”  y la actividad “Reunión”. También se muestran las opciones de eliminar y modificar para cada actividad como parte del CRUD, además de la opción de crear una actividad (R3.1). La opción eliminar se mantiene con el diseño de los servicios anteriores, con la confirmación al usuario de dicha opción.

Por otro lado se observa la diferencia de color entre las actividades para identificar una actividad privada de una compartida (R3.3). La notación que se eligió fue de un color rojo para las actividades privadas y de un color azul para las actividades compartidas.



R4. Administrador de archivos

La idea de un administrador de archivos precisamente es la de gestionar un archivo, para ello se crearon las opciones exigidas en los requerimientos:


  • Subir un archivo: Se sube el archivo mediante la opción examinar y subir. Como se observa en la figura 1, el archivo se ubica en la tabla con el nombre y la extensión, su tamaño, su fecha de modificación y las opciones de renombrar y eliminar.




  • Descargar Archivo.



  • Crear un directorio o carpeta: Se pulsa la opción de crear carpeta en el ícono, desplegando el formulario para colocar el nombre y crearla como se muestra en la figura 3. En la figura 3* observamos la carpeta o directorio creado.  






























  • Navegar: La opción navegar se muestra con la creación de un directorio y la posibilidad de ir a él, crear archivos y subirlos dentro de esta carpeta, además de dar la opción de retroceder o ir a home. También se presenta la ruta de navegación en Path como se muestra en la figura 4.

  • Renombrar un archivo: Para renombrar un archivo se muestra las características del archivo y el campo para el nuevo nombre.

  • Eliminar un archivo: Se sigue el mismo estilo de eliminación dentro de la aplicación, mostrando la confirmación de la opción.