Proyecto Biblioteca Final
Proyecto Biblioteca Final
Proyecto Biblioteca Final
1. Roles:
• Diseñador (UI/UX): Ayudará a plasmar el Journey Map del usuario y trabajará en el diseño
de las interfaces que reflejen el flujo del préstamo en el mapa.
La metodología elegida es Journey Map, que ayudará a detallar el proceso de interacción del
usuario con el sistema de préstamo de libros. Este mapa permitirá entender los pasos clave en el
flujo del préstamo, desde la búsqueda del libro hasta su devolución, facilitando el diseño de clases
en el esquema UML
3. 5 de las preguntas de validación:
• ¿Es cada requerimiento es consistente con los objetivos generales para el sistema o
producto?
Sí, los requerimientos como "el sistema debe permitir la búsqueda por título o autor" y
muchos otros requerimientos están a un nivel adecuado de abstracción sin entrar en
muchos detalles técnicos innecesarios.
• ¿Es el requerimiento realmente necesario, o representa una característica adicional que tal
vez no sea esencial para el objetivo del sistema?
Sí, la tecnología disponible, como bases de datos para almacenar la información de los
libros y usuarios, permite implementar estos requerimientos dentro de las capacidades
técnicas actuales.
Hasta ahora, no se han detectado conflictos entre los requerimientos. Cada funcionalidad
está diseñada para complementarse entre sí.
4. Diseñe un esquema UML que contenga como mínimo 4 clases
con sus respectivos atributos y métodos.
5. Establezca relaciones entre dos clases especificando como se relacionan.
6. Determine la relación de cardinalidad según sea el caso: Uno a muchos, uno a
cero, muchos a uno, entre otras.
Relación: Asociación
• Descripción: Un usuario puede tener múltiples préstamos, mientras que cada préstamo
está asociado a un solo usuario. Esto significa que un usuario puede solicitar varios
recursos en diferentes momentos, pero cada préstamo pertenece a un único usuario.
• Cardinalidad:
o Usuario: 1 (uno)
o Prestamo: * (muchos)
Ejemplo de Implementación:
• Atributo en Prestamo: usuario: Usuario (indica que cada préstamo está vinculado a un
único usuario).
Diagrama de Asociación:
Relación: Asociación
• Descripción: Cada cuenta puede tener múltiples multas asociadas, mientras que cada
multa está vinculada a una sola cuenta. Esto permite que un usuario acumule varias multas
a lo largo del tiempo por distintos incumplimientos.
• Cardinalidad:
o Cuenta: 1 (uno)
o Multas: * (muchos)
Ejemplo de Implementación:
Diagrama de Asociación:
Relación: Asociación
• Cardinalidad:
o Recurso: * (muchos)
o Prestamo: * (muchos)
Ejemplo de Implementación:
Diagrama de Asociación:
Relación: Asociación
• Descripción: Cada cuenta está asociada a un único usuario, y cada usuario tiene una sola
cuenta. Esta relación es esencial para la identificación y acceso del usuario al sistema.
• Cardinalidad:
o Cuenta: 1 (uno)
o Usuario: 1 (uno)
Ejemplo de Implementación:
• Atributo en Cuenta: usuario: Usuario (indica que una cuenta tiene un solo usuario).
• Atributo en Usuario: cuenta: Cuenta (indica que un usuario tiene una sola cuenta).
Diagrama de Asociación:
• Multas(Class)
Attributes
valorMulta : Integer [1]
tipoMulta : String [1]
Operations
generarReporte : String
retirarReporte
Associations
Multas_Cuenta - : Cuenta [1] - see definition
• Prestamo (Class)
Attributes
Operations
bloqueoCuenta
cambiarEstado
validarCantRecPres
aprobarPrestamo
Associations
Attributes
tipoRecurso : String [1]
estado : Boolean [1]
restriccion : Boolean [1]
Operations
validarDisponibilidad : Boolean
Associations
Recurso_Cuenta - : Cuenta [1] - see definition
• Usuario (Class)
Attributes
Operations
pagarMulta
solicitarPrestamo
devolverPrestamo
Associations