-
- Registro de Usuarios
- Como usuario nuevo, quiero registrarme en el sistema con un nombre de usuario y contraseña para poder acceder a la librería.
- Autenticación de Usuarios
- Como usuario registrado, quiero iniciar sesión con mi nombre de usuario y contraseña para acceder a mis funcionalidades personalizadas.
- Creación de Documentos
- Como usuario autenticado, quiero poder crear un nuevo documento en la librería introduciendo al menos un dato (título, fecha de publicación, autores, etc.) para que este empiece a existir en el sistema.
- Modificación de Documentos
- Como usuario autenticado, quiero poder modificar los datos de un documento existente, actualizando su información como título, autores, ISBN, etc.
- Eliminación de Documentos
- Como usuario creador de un documento, quiero poder eliminar un documento que creé, siempre y cuando no esté prestado para consulta.
- Consulta de Documentos
- Como usuario, quiero poder buscar y consultar la información de documentos existentes en la librería utilizando diferentes criterios de búsqueda como título, autor, ISBN, etc.
- Reserva de Documentos
- Como usuario autenticado, quiero poder reservar un documento para consulta física, registrando la fecha de reserva.
- Devolución de Documentos
- Como usuario autenticado, quiero poder devolver un documento que he reservado para que vuelva a estar disponible en la librería.
- Visualización del Historial de Cambios
- Como administrador, quiero poder visualizar el historial de cambios de un documento, incluyendo quién lo creó, quién lo modificó y quién lo eliminó, junto con las fechas correspondientes.
- Interfaz de Usuario
- Como usuario, quiero una interfaz de usuario intuitiva y fácil de usar para poder navegar y utilizar la librería sin complicaciones.
- Respaldo y Recuperación de Datos
- Como administrador, quiero que el sistema realice respaldos periódicos de la base de datos para asegurar la recuperación de datos en caso de fallos.
- Tipos de Documentos
- Como desarrollador, debo asegurarme de que el sistema maneje correctamente los diferentes tipos de documentos (libros, ponencias, artículos científicos), almacenando y mostrando los campos específicos correspondientes a cada tipo.
- Información de Contacto
- Como usuario, quiero poder ver y editar la información de contacto de los autores y editoriales (correo electrónico, dirección física, número de teléfono) asociada a cada documento.
- Registro de Usuarios
- Sistema de Login
- detalles
- Archivo de persistencia de los datos de usuario (properties)
- detalles
- Modelo de usuario
- detalles
- Usuario, Contraseña, nickname, tipo **
- detalles
- Modelo de archivo
- detalles
- título, fecha de publicación (localDate class) **, autores, ISBN, editorial, disponibilidad, estado, registro.
- Registro: libro, Creador, ultimo modificador, fecha
- Editorial y autor: Direccion fisica, correo y numero de telefono
- Variaciones**
- Libros: Paginas totales
- Ponencias: nombre del congreso donde se escribió
- Articulos: SSN
- Variaciones**
- detalles
- Sistema CRUD
- Persistencia de documentos
- Disponibilidad y registro de documentos
- detalles
- Archivo de persistencia por registro: editor, fecha, libro
- detalles
- GUI
- detalles
- ventana de login
- ventana de administrador
- ventana de vista y registro de documentos
- detalles
- Adaptabilidad de los tipos de archivo
Implementación en el sistema de login.** (Se implemento el patron con motivos de seguridad de manera que no se instancie mas de una sesion al tiempo)
Creacion de archivos segun su tipo y atributos
copia de cada registro original
acceso de metodos modulares a través de la GUI
conversión del formato de datos de cada uno de los documentos
sobreescritura del estado de los libros, puente entre la interfaz y el DAO**(se modifico el modelo del proxy al no contar con herencia multiple)
Manejo de datos en persistencia (CRUD)