Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2
Ingeniería del Software
PERSONA
SOCIO
PROFESOR BIBLIOTECARIO
3
Ingeniería del Software
Hacer socio
Consultar catálogo
PERSONA BIBLIOTECARIO
4
Ingeniería del Software
Actualizar catálogo
<<uses>>
Consultar catálogo
BIBLIOTECARIO
5
Ingeniería del Software
Pedir libro
Consultar catálogo
Reservar libro
<<uses>> <<extends>>
Consultar catálogo
6
Ingeniería del Software
devolver libro
Extender préstamo
<<uses>> <<extends>>
7
Ingeniería del Software
Borrarse de socio
<<uses>>
SOCIO BIBLIOTECARIO
Identificar socio
8
Ingeniería del Software
Pedir revista
Consultar catálogo
<<uses>>
Identificar socio
PROFESOR BIBLIOTECARIO
<<extends>>
Consultar catálogo
9
Ingeniería del Software
Devolver revista
<<uses>>
PROFESOR BIBLIOTECARIO
Identificar socio
10
Ingeniería del Software
Actualizar catálogo
<<uses>>
Consultar catálogo
BIBLIOTECARIO
11
Ingeniería del Software
12
Ingeniería del Software
13
Ingeniería del Software
14
Ingeniería del Software
15
Ingeniería del Software
16
Ingeniería del Software
17
Ingeniería del Software
18
Ingeniería del Software
Paso 2:
USES Identificar Socio.
Paso 4 a): El Socio tiene otros libros pendientes de devolución.
1. Bibliotecario: Sugiere devolver los libros pendientes.
Paso 4 b):
EXTENDS Consultar catálogo.
Paso 6: El Socio quiere extender el préstamo.
EXTENDS Extender Préstamo.
19
Ingeniería del Software
Catálogo PréstamoP
0..*
0..12
Publicación
prestadaA
{disjoint, complete}
1..* 1
Revista Copia Libro
0..6 0..*
reserva
0..*
prestadaA 0..1
Socio
0..1
PréstamoC Profesor
20
Ingeniería del Software
Catálogo HistóricoP
0..*
0..12
Publicación
fuéPrestadaA
{disjoint, complete}
1..* 1
Revista Copia Libro
0..6 0..*
reserva
0..*
fuéPrestadaA 0..1
Socio
0..1
HistóricoC Profesor
21
Ingeniería del Software
Catálogo
1 1
0..* 0..*
1..* 1
Revista Copia Libro
PréstamoC
prestadaA 0..1
Profesor
PréstamoR
22
Ingeniería del Software
Catálogo
1 1
0..* 0..*
1..* 1
Revista Copia Libro
HistóricoP
fuéPrestadaA 0..1
Profesor
HistóricoR
23
Ingeniería del Software
24
Ingeniería del Software
:Bibliotecario :Sistema
IdentificarSocio(dni) : Socio
EnPrestamo(dni) : InfoLibros
ConsultarLibro(Libro) : InfoLibros
ReservarLibro(dni, signatura)
PrestarCopia(dni, idCopia)
25
Ingeniería del Software
Name:EnPrestamo(dni) : InfoLibros
Responsabilities
Mostrar los copias prestadas al socio. La información incluye el
periodo de préstamo y la fecha de devolución de cada copia
Exceptions
Si no existe ningún socio con s.dni = dni, indicar error
Preconditions
Existe un socio s.dni = dni
Postconditions
Salida
Todas las copias
c = (Copia.prestadaA -> select(s.dni = dni))
Todas sus fechas de inicio y fin de préstamo
p = (c.préstamoC)
26
Ingeniería del Software
Name:PrestarCopia(dni, signatura)
Responsabilities
Registra el nuevo préstamo con la fecha actual.
Exceptions
Preconditions
Existe un socio s.dni = dni
Existe una copia c.idCopia = idCopia
Postconditions
Se creó una instancia pc de la asociación PréstamoC
Se asoció pc a la cópia c y al sócio s
pc.iniFecha = fechaActual()
pc.finFecha = fechaActual() + c.tiempoMax
c.estado = prestado
Salida
27