Lenguaje de Programación JAVA
Enviado por Mar Tin • 13 de Junio de 2021 • Monografía • 3.965 Palabras (16 Páginas) • 108 Visitas
Lenguaje de Programación JAVA
Trabajo Final
Biblioteca Online UTN
Profesor: Mario Bressano
Alumno: Federico Gómez Kempel
Descripción del sistema
El sistema es una aplicación web para una biblioteca que permite la consulta y reserva de libros de la misma.
Para los usuarios ocasionales solo se permitirá la consulta de libros. Estos podrán registrarse en el sistema y una vez registrados serán capaces de hacer reservas.
Los usuarios administradores podrán realizar el mantenimiento de Libros y Usuarios, así como también generar reportes.
Requerimientos
- Los usuarios no registrados podrán buscar libros por título o autor y el sistema devolverá una lista de libros que coincidan con la búsqueda, mostrando título, autor, reseña e imagen de tapa.
En caso de que no haya libros que coincidan con la búsqueda, el sistema deberá informar la situación.
- Los usuarios no registrados podrán darse de alta en el sistema llenando un formulario de registro.
- Los usuarios registrados que no sean administradores además de buscar libros, también podrán reservarlos siempre y cuando el libro esté disponible. En caso de que el libro esté reservado, el sistema deberá deshabilitar la opción de seleccionar ese libro e informar el estado.
- Los usuarios administradores podrán dar de alta, editar y eliminar libros. Para los mismos se podrá especificar Titulo, Autor, Reseña y se podrá cargar una imagen de tapa.
El sistema deberá ajustar la imagen a un tamaño adecuado para ser mostrada.
En caso de que el libro esté reservado, este no se podrá eliminar.
- Los usuarios administradores podrán listar, editar, agregar y eliminar usuarios. El nombre de usuario debe ser único en el sistema, por lo que se deberá validar la disponibilidad del nombre de usuario elegido, en caso de estar disponible se habilitará el formulario de registro, en caso contrario el sistema deberá informar la situación.
Esta regla también aplica para los usuarios no registrados en proceso de alta. - Los administradores podrán solicitar reportes al sistema. Los reportes disponibles serán: Reservas activas por usuario, Ranking de libros más reservados e Historial de un usuario.
Ejemplos de casos de uso
Caso de Uso: Búsqueda de libros
Nivel de la meta: Usuario
Alcance del Caso de Uso: Sistema
Caja: Negra
Instanciación: Real
Interacción: Dialogal
ACTORES Primario: Usuario
PRECONDICIONES: (de sistema):
DISPARADOR: El usuario selecciona la opción Buscar Libros
FLUJO DE SUCESOS:
CAMINO BÁSICO:
1. El usuario selecciona la opción Buscar Libros del menú.
2. El sistema muestra el buscador de libros
3. El usuario ingresa un texto y presiona Buscar
4. El sistema muestra todos los libros en los cuales el Título o el Autor coincidan en parte con el texto buscado
CAMINOS ALTERNATIVOS:
4.1 No se encuentran libros con el texto buscado y el sistema informa la situación
POSTCONDICIONES: (de sistema)
Éxito: Se mostró en pantalla la lista de libros que resulto de la búsqueda.
Fracaso:
[pic 1]
Caso de Uso: Reserva de Libros
Nivel de la meta: Usuario
Alcance del Caso de Uso: Sistema
Caja: Negra
Instanciación: Real
Interacción: Dialogal
ACTORES Primario: Usuario
PRECONDICIONES: El usuario debe estar registrado y logueado.
DISPARADOR: El usuario selecciona la opción Buscar Libros
FLUJO DE SUCESOS:
CAMINO BÁSICO:
1. El usuario selecciona la opción Buscar Libros del menú.
2. El sistema muestra el buscador de libros
3. El usuario ingresa un texto y presiona Buscar
4. El sistema muestra todos los libros en los cuales el Título o el Autor coincidan en parte con el texto buscado
5. El selecciona uno o más libros de la lista previamente generada
6. El sistema procesa la reserva e informa el resultado de la misma, en caso de ser exitosa, se muestra el
número de reserva.
CAMINOS ALTERNATIVOS:
4.1 No se encuentran libros con el texto buscado y el sistema informa la situación
5.1 No hay libros disponibles para reservar en el listado
6.1 La reserva no pudo realizarse
POSTCONDICIONES: (de sistema)
Éxito: Se realizaron las reservas y se informó de la situación
Fracaso:
[pic 2]
Implementación
La aplicación fue desarrollada enteramente en Java, usando JSP y JSTL para la interfaz de usuario y una base de datos MySQL 5.7 para la persistencia. El servidor de aplicaciones utilizado es Glassfish 3.1.
La aplicación fue desplegada en un espacio gratuito de Jelastic, cuya configuración es la misma que la del ambiente donde fue desarrollada, bajo la url:
http://bibliotecautnfrro-fgk.jelastic.websolute.net.br/index.jsp
Arquitectura
La arquitectura de la aplicación está basada en los patrones Front Controller, Command y DAO. Separados en distintas capas, la misma está compuesta por nueve paquetes más las paginas JSP.
[pic 3]
Detalles de implementación por capas / paquetes.
[pic 4]
Presentación
La capa de presentación está compuesta por paginas JSP en las cuales se usaron etiquetas JSTL para interactuar con el modelo y CSS para ordenar y aplicar estilos a las páginas.
...