0% encontró este documento útil (0 votos)
56 vistas56 páginas

Requisitos para Sistema de Biblioteca

El documento especifica los requisitos para un sistema de gestión de biblioteca, incluyendo la identificación de usuarios, requisitos funcionales para la gestión de libros, socios y préstamos, y suposiciones sobre la estabilidad de los requisitos y dependencias con otros sistemas.

Cargado por

ravemaster89
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
56 vistas56 páginas

Requisitos para Sistema de Biblioteca

El documento especifica los requisitos para un sistema de gestión de biblioteca, incluyendo la identificación de usuarios, requisitos funcionales para la gestión de libros, socios y préstamos, y suposiciones sobre la estabilidad de los requisitos y dependencias con otros sistemas.

Cargado por

ravemaster89
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Sistema de Gestión de Biblioteca

 Especificación de Requisitos

 Identificando Clases y Objetos Candidatos

 Escenarios de Casos de Uso

 Modelo de Clases

 Especificaciones de Clases

 Diagramas de Transición de Estados


© Maximiliano Odstrcil - 1

1
Especificación de Requisitos (1)
Introducción
Esta especificación tiene como objetivo analizar y documentar las
necesidades funcionales que deberán ser soportadas por el sistema
a desarrollar. Para ello, se identificarán los requisitos que ha de
satisfacer el nuevo sistema mediante entrevistas, el estudio de los
problemas de las unidades afectadas y sus necesidades actuales.
Además de identificar los requisitos se deberán establecer
prioridades, lo cual proporciona un punto de referencia para validar
el sistema final que compruebe que se ajusta a las necesidades del
usuario.

© Maximiliano Odstrcil - 2

2
Especificación de Requisitos (2)
Identificación de usuarios participantes
Los objetivos de esta tarea son identificar a los responsables de
cada una de las unidades y a los principales usuarios implicados.
En la organización se identificaron los siguientes usuarios:
 Grupo de Encargados de Biblioteca: formado por los responsables de la
biblioteca.
 Grupo de Directores: formado por el Director Académico y la Directora
Administrativa.
 Grupo de Lectores: formado por los alumnos y profesores de la institución
y socios de la Biblioteca.
Es de destacar la necesidad de una participación activa de los
usuarios del futuro sistema en las actividades de desarrollo del
mismo, con objeto de conseguir la máxima adecuación del sistema
a sus necesidades y facilitar el conocimiento paulatino, permitiendo
una rápida implantación.
© Maximiliano Odstrcil - 3

3
Especificación de Requisitos (3)
 Catálogo de Requisitos del Sistema
El objetivo de la especificación es definir en forma clara, precisa,
completa y verificable todas las funcionalidades y restricciones del
sistema que se desea construir. Esta documentación está sujeta a
revisiones por el grupo de usuarios que se recogerán por medio de
sucesivas versiones del documento, hasta alcanzar su aprobación
por parte de la dirección de (CLIENTE) y del grupo de usuarios.
Una vez aprobado, servirá de base al equipo para la construcción
del nuevo sistema. Esta especificación se ha realizado de acuerdo
al estándar “IEEE Recomended Practice for Software Requirements
Specifications (IEEE/ANSI 830-1993)”, y se basa en las entrevistas
realizadas a los usuarios participantes y el estudio de la
documentación existente.
© Maximiliano Odstrcil - 4

4
Especificación de Requisitos (4)
 Objetivos y Alcance del Sistema
Los principales objetivos del sistema a desarrollar son la gestión de
libros, enciclopedias y revistas de la biblioteca de (CLIENTE), la
gestión de socios, administración de préstamos y devoluciones e
integración con el Sistema actual de Gestión Administrativa y
Alumnos con que cuenta la Institución. El futuro sistema llevará el
nombre de BOOKS.
La biblioteca de la institución cuenta en la actualidad con una gran
cantidad de libros, enciclopedias y revistas, catalogados mediante el
método de catalogación de Dewey. Cuenta con un número
importante de lectores divididos en los alumnos y profesores de la
institución y socios particulares que abonan una cuota cada seis
meses.
© Maximiliano Odstrcil - 5

5
Especificación de Requisitos (5)
 Objetivos y Alcance del Sistema
Los préstamos de los ejemplares que se realizan son: préstamos de
sala (aquellos que no salen del salón de lectura de la biblioteca y la
devolución se produce en el día) y los préstamos domiciliarios
(aquellos en que el libro se saca de la biblioteca y se devuelve
luego de uno o varios días de solicitado el préstamo). El sistema
permitirá a los encargados de biblioteca gestionar el mantenimiento
de ejemplares, catalogarlos y clasificarlos, gestionar sus préstamos
y devoluciones, consultar el estado de libros y lectores y mantener
los socios de biblioteca. El sistema debe ser abierto y escalable,
permitiendo la incorporación de nuevos clientes, como los kioscos
multimedia para consulta de alumnos. El desarrollo lo llevará a cabo
(MiEmpresa), con opción a ser responsable del posterior
mantenimiento del mismo.

© Maximiliano Odstrcil - 6

6
Especificación de Requisitos (6)
Definiciones, Acrónimos y Abreviaturas
Definiciones:
Catalogación: procedimiento por el cual se clasifica un ejemplar de
un libro de acuerdo a una codificación existente y reglamentada.
Kioskos multimedia: terminales del tipo cajero electrónico con
interfaz sencilla y amigable para ser usado por los lectores de la
biblioteca.
Nomenclatura Dewey: consultar el apartado ajuste a estándares
Moroso: lector que adeuda 2 o más cuotas mensuales en la
institución.
Acrónimos:
ODBC: Open Database Conectivity
Abreviaturas:
IEEE: Institute of Electrical & Electronics Engineers
© Maximiliano Odstrcil - 7

7
Especificación de Requisitos (7)
 Descripción General
Esta sección nos presenta una descripción general del sistema con
el fin de conocer las funciones que debe soportar, los datos
asociados, las restricciones impuestas y cualquier otro factor que
pueda influir en la construcción del mismo.
Las funciones que debe realizar el sistema se pueden agrupar de la
siguiente manera:
Administración de libros: debe permitir gestionar la nomenclatura
Dewey, con el armado del árbol jerárquico de clases, divisiones y
secciones Dewey, permitir gestionar libros, que son clasificados
dentro de una sección Dewey. También debe permitir gestionar
autores (principales, secundarios) y gestionar las copias o
ejemplares que son el soporte físico de los libros. Por último, debe
permitir obtener un listado de los libros.

© Maximiliano Odstrcil - 8

8
Especificación de Requisitos (7)
 Descripción General
Administración de socios o lectores: debe permitir gestionar los
socios de la institución desde su ingreso hasta su egreso, así como
también el correspondiente pago de cuotas de la biblioteca. Debe
permitir realizar préstamos de todos los tipos y devoluciones de
ejemplares. Debe tener disponible la funcionalidad de consultar
sobre la disponibilidad de ejemplares, la historia de cada socio en
cuanto a préstamos y devoluciones y por último debe permitir emitir
listados de lectores, de morosos y de préstamos en un período de
tiempo dado.

© Maximiliano Odstrcil - 9

9
Especificación de Requisitos (8)
Requisitos Funcionales:
a) Gestión de nomenclatura Dewey
 Introducción: El sistema permite introducir información sobre las clases,
divisiones, secciones y demás características de la nomenclatura Dewey,
permitirá modificar las ya existentes y borrarlas.
 Entrada: Clase + División + Sección + NombreClase + NombreDivisión +
NombreSección.
 Proceso: Comprobar si se trata de una clase, división o sección Dewey
nueva, dándola de alta o actualizarla si ya existe. Se debe tener en cuenta
la jerarquía: así una sección depende de una división y una división
depende de una clase. No se podrán crear objetos con el mismo nombre y
sólo se podrá borrar una clase si ésta no tiene divisiones, y una división si
ésta no tiene secciones, y una sección si ésta no tiene libros asociados.
 Salida: Datos de nomenclatura Dewey actualizados y mensajes de lo que
está ocurriendo.
© Maximiliano Odstrcil - 10

10
Especificación de Requisitos (9)
Requisitos Funcionales:
b) Gestión de Libros
Introducción: El sistema permite introducir información sobre los libros (títulos,
autores, editoriales, ejemplares, etc.), modificar los ya existentes y borrarlos.
Entrada: Sección + CódigoLibro + Título + {CódigoAutor + NombreAutor} +
Editorial + Idioma + {CódigoCopia + NúmeroCopia}
Proceso: Comprobar si se trata de un libro nuevo, dándolo de alta o actualizarlo si
ya existe. No pueden existir dos libros con el mismo nombre ni dos copias con el
mismo número de copia. Un libro no puede depender de dos secciones Dewey.
Sólo se podrán borrar libros si no tienen copias asociadas. Sólo se podrán borrar
copias si no tienen préstamos asociados.
Salida: Datos de libros actualizados y mensajes de lo que está ocurriendo.
 La descripción completa se encuentra en el apunte (sitio web)

© Maximiliano Odstrcil - 11

11
Especificación de Requisitos (10)
Suposiciones y Dependencias
 Suposiciones: se asume que los requisitos en este
documento son estables una vez que sean aprobados por la
Dirección de (CLIENTE). Cualquier petición de cambios en la
especificación debe ser aprobada por todas las partes
intervinientes y será gestionada por el equipo de desarrollo.
 Dependencias: El sistema tiene dependencia con el actual
Sistema de Gestión Administrativa y Alumnos, ya que los
alumnos y profesores gestionados por el mismo son lectores
en la biblioteca.

© Maximiliano Odstrcil - 12

12
Especificación de Requisitos (11)
 Requisitos de Usuario y Tecnológicos
 Requisitos de usuario: Los usuarios serán los encargados
de biblioteca de (CLIENTE). Las interfaces deben ser
intuitivas, fáciles de usar y amigables, de manera que con
unas breves instrucciones los alumnos sean capaces de
usarla.

© Maximiliano Odstrcil - 13

13
Especificación de Requisitos (12)
• Requisitos tecnológicos: En vista de que es necesario
instalar las aplicaciones en varias computadoras, y teniendo
en cuenta un futuro crecimiento de la biblioteca, se ha optado
por un entorno económico y fácil de instalar. La aplicación se
ejecutará sobre un esquema cliente/servidor, con los procesos
e interfaz de usuario ejecutándose en los clientes y éstos
solicitando requerimientos al servidor que cumple su proceso.
El sistema operativo de los clientes será MS Windows 9x o
bien MS Windows NT 4.0 Workstation. El sistema operativo
del servidor es MS Windows NT 4.0 Server y el Sistema
Gestor de Base de Datos es MS SQL Server 7.0, requisitos
fijados por la configuración actual de red y el software
disponible por (CLIENTE). La red actual tiene una topología
estrella y tecnología Ethernet.

© Maximiliano Odstrcil - 14

14
Especificación de Requisitos (13)
 Requisitos de Interfaces Externas
 Interfaces de usuario: La interfaz de usuario debe ser
orientada a ventanas tipo Windows.
 Interfaces Hardware: Ratón y teclado estándar.
 Interfaces software: La interfaz con el Sistema de Gestión
Administrativa y Alumnos vendrá dada ya que comparten el
mismo espacio de datos en el Sistema Gestor de Base de
Datos.

© Maximiliano Odstrcil - 15

15
Especificación de Requisitos (14)
 Requisitos de Rendimiento
El tiempo de respuesta de la aplicación a cada función solicitada por
el usuario no debe ser superior a los 5 segundos.

 Requisitos de Desarrollo
El ciclo de vida será el de Prototipado Evolutivo, debiendo
orientarse hacia el desarrollo de un sistema flexible que permita
incorporar de manera sencilla cambios y nuevas funcionalidades.

© Maximiliano Odstrcil - 16

16
Especificación de Requisitos (15)
 Restricciones de Diseño
 Ajuste a estándares:
La codificación de los libros será por la nomenclatura de Dewey.

CDS.[XXX].AAA.III
Donde C es un dígito que representa la clase, D un dígito que
representa la división de la clase, S un dígito que representa la sección
de la división, XXX un conjunto de dígitos (entre 1 y 6) que representan
criterios de sub-clasificación, AAA las tres primeras letras del apellido
del autor e III las tres letras que indican el idioma en que está escrito.

© Maximiliano Odstrcil - 17

17
Especificación de Requisitos (16)
 Restricciones de Diseño
 Seguridad: La seguridad de los datos será establecida por el
Sistema Gestor de Base de Datos Relacional que se emplee.
 Política de Respaldo: No se ha definido.
 Base de Datos: El Sistema Gestor de Base de Datos debe
ser relacional y se accederán a los mismos usando la
tecnología ODBC para Windows NT 4.0 y Windows 9x.
 Política de Borrado: No se ha definido.

© Maximiliano Odstrcil - 18

18
Clases y Objetos Candidatos (1)
 En este tipo de problemas de gestión, ampliamente estudiados,
donde ya se implementaron soluciones, es conveniente aplicar las
siguientes técnicas:
 Análisis de dominios: identificar las abstracciones claves que se
utilizaron en otros productos.
 Enfoque clásico: tratar de educir las clases y objetos del texto del dominio
del problema.
 Análisis de casos de uso: plantear escenarios para la realización de
actividades clave del problema.
 Por razones didácticas, no se realizará el análisis de dominio, sino
que se supondrá que los requisitos detallados anteriormente fueron
obtenidos en parte utilizando dicha técnica. Trataremos de
identificar las clases y objetos candidatos utilizando el enfoque
clásico, como una primera aproximación.
© Maximiliano Odstrcil - 19

19
Clases y Objetos Candidatos (2)
 Del análisis del texto se desprende la siguiente lista de clases y
objetos candidatos:
Clases y Objetos candidatos
Biblioteca Divisiones Dewey
Libros Secciones Dewey
Lectores Ejemplares (o copias)
Profesores Autores
Alumnos Editorial
Reservas Sanciones
Préstamos Cola de reserva
Préstamos de sala Personal
Préstamos de domicilio Director
Clases Dewey Bibliotecario
© Maximiliano Odstrcil - 20

20
Casos de Uso (1)
 Algunos casos de uso principales del dominio del problema:
 Llega la lista de alumnos nuevos para incorporarlos como lectores.
 Llega la lista de alumnos graduados para darlos de baja como lectores.
 Llega la lista de profesores para incorporarlos o darlos de baja como lectores.
 Llega un nuevo ejemplar y se desea ingresarlo a la biblioteca.
 Se desea imprimir una etiqueta con código Dewey para un ejemplar.
 Un lector decide hacer un préstamo de un libro que tiene ejemplares disponibles.
 Un lector decide hacer un préstamo de un libro que no tiene ejemplares
disponibles.
 Un lector de la cola de reserva decide realizar un préstamo.
 Un lector devuelve un libro.
 Una persona del personal de biblioteca decide sancionar a un alumno.
 El director emite una lista de los préstamos de un libro determinado en un cierto
período de tiempo.
 El director emite una lista de los préstamos de un lector determinado en un cierto
período de tiempo.
 El director emite la lista de lectores que deben libros.
 Un lector consulta la existencia de un libro.
 Un lector consulta la disponibilidad de un libro.
© Maximiliano Odstrcil - 21

21
Casos de Uso (2)
 Para cada uno de estos escenarios principales, se pueden
considerar otros escenarios secundarios:
 Un lector no dado de alta decide hacer el préstamo de un libro.
 Un lector sancionado quiere realizar un préstamo o reservar un libro.
 Un lector dado de baja quiere realizar un préstamo o reservar un libro.
 Un lector quiere solicita el préstamo de un libro inexistente.
 En un problema real, se esperaría identificar docenas de
escenarios principales y muchos más escenarios secundarios, lo
que llevaría un período de tiempo muy largo. Por ello es
conveniente no generar una lista completa de escenarios, sino
estudiar aquellos que tengan la mayoría de los intereses del análisis
del sistema. Si el análisis no va por buen camino, se estudian más
escenarios.
© Maximiliano Odstrcil - 22

22
Casos de Uso (3)
 Llega la lista de alumnos nuevos para incorporarlos como lectores.

Personal Padrón
Para cada alumno de la lista
Buscar alumno BuscarAlumno
Si el alumno no se encuentra creado
AgregarAlumno
Agregar alumno

© Maximiliano Odstrcil - 23

23
Casos de Uso (4)
Llega un nuevo ejemplar y se desea ingresarlo a la biblioteca.

Personal Biblioteca Libros


Buscar libro BuscarLibro
Si el libro existe
AgregarCopia
Se agrega una copia con código Dewey corr.
Si el libro no existe
AgregarLibro
Agregar el libro
Si el autor no existe BuscarAutor
AgregarAutor
Agregar autor
AsignarAutor
Asignar autor al libro
AsignarSección
Asignarle clasificación Dewey
AgregarCopia
Agregar copia con código Dewey corr.

© Maximiliano Odstrcil - 24

24
Casos de Uso (5)
 Un lector decide hacer un préstamo de un libro que tiene
ejemplares disponibles.

Lectores Padrón Personal Biblioteca Libros Copias Préstamos


Lector solicita préstamo
BuscarLector
Buscar lector ConsultaCopi
BuscarLibro
Buscar libro para prestar asParaPrestar EsLibre Devuelto
ElegirTipoPréstamo
Lector elige tipo de préstamo
Prestar
Se realiza préstamo
Avisar fecha de devolución

© Maximiliano Odstrcil - 25

25
Casos de Uso (6)
 Un lector decide hacer un préstamo de un libro que no tiene
ejemplares disponibles.

Colas de
Lector Padrón Personal Biblioteca Libros Copias Reserva Préstamos
Lector solicita préstamo
BuscarLector ConsultaC
Buscar lector
BuscarLibro opiasPara
Buscar libro para prestar EsLibre
Prestar Devuelto
Cola
Si no existe cola de reserva
AgregarCola
Agregar colade reserva
PonerEnCola
Agregar lector a cola de reserva
Avisar fecha probable de préstamo

© Maximiliano Odstrcil - 26

26
Casos de Uso (7)
 Un lector de la cola de reserva decide realizar un préstamo.
Colas de
Lectores Personal Libros Copias Reserva Préstamos
Lector de reserva solicita préstamo
Posición
Buscar lector en cola de reserva
Si no está en la cola
PonerEnCola
Agregar a cola de reserva
Avisar fecha prob. de préstamo
Si está en cola de reserva
Primero
Si el lector es el 1ro de la cola ConsultaCopi
Si hay copias para prestar ElegirTipoasParaPrestar EsLibre
Devuelto
Elegir tipo de préstamo Préstamo
Realizar el préstamo Prestar
QuitarCola
Sacar al lector de la cola
Si no hay copias para prestar
Avisar fecha préstamo
Si no es el primero de la cola
Avisar fecha préstamo
© Maximiliano Odstrcil - 27

27
Casos de Uso (8)
 Un lector devuelve un libro.

Lectores Padrón Personal Préstamos


Lector devuelve el libro

Buscar lector BuscarLector


PréstamosSin
Buscar préstamos pendientes Devolver

Devolver Devolver

Si FechaActual > FechaDevolución

Sancionar lector Sancionar

© Maximiliano Odstrcil - 28

28
Casos de Uso (9)
 Un lector consulta la existencia de un libro.

Personal Padrón
Según sea el tipo de búsqueda TipoBúsqueda
Por título BuscarLibro(cadena,título)
Por autor BuscarLibro(cadena,autor)
Por ISBN
BuscarLibro(cadena,ISBN)
Por sección Dewey
BuscarLibro(cadena, Dewey)
Listar resultados de la búsqueda

© Maximiliano Odstrcil - 29

29
Casos de Uso (10)
 Un lector no dado de alta decide hacer un préstamo de un libro.

Lectores Personal Padrón


Un lector solicita un préstamo
Personal busca al lector BuscarLector
Avisar lector no dado de alta

© Maximiliano Odstrcil - 30

30
Casos de Uso (11)
 Como vemos en los diagramas de casos de uso anteriores, se
repite información acerca de las clases listadas usando la técnica
clásica.
 Aparte, se puede apreciar cómo se relacionan los objetos para
lograr un comportamiento de nivel superior.
 Con ello, se tiene la suficiente información como para plantear un
diagrama de clases inicial

© Maximiliano Odstrcil - 31

31
Modelo de Clases (1)
 Es conveniente empezar con las relaciones de generalización /
especialización y todo/parte.

Personal Lectores Préstamos

Director Bibliotecarios Profesores Alumnos Préstamos Préstamos de


de Sala Domicilio

© Maximiliano Odstrcil - 32

32
Modelo de Clases (2)
 El diagrama de las clases y sus relaciones, sigue a continuación.
1
Personal Clases Dewey
interviene en

se divide en

N N

N N
Sanciones Préstamos Autores Divisiones Dewey
realiza

N
N 1

recibe escriben formadas por

1 N N
1 Lectores

1 asociada a 1 N contiene 1
Lectores Libros Secciones Dewey
Cola de Reserva

tiene varias

Elemento
N

1
Padrón Copias Biblioteca
Cola

© Maximiliano Odstrcil - 33

33
Modelo de Clases (3)
Director

Personal Bibliotecarios
1
Clases Dewey
interviene en

Préstamos de
Domicilio Préstamos 1
de Sala
Profesores se divide en
N

N
realiza N Préstamos N
Autores Divisiones Dewey

N
1
N Sanciones escriben formadas por
recibe
1 N N
1 Lectores

1 asociada a 1 N contiene 1
Lectores Cola de Reserva Libros Secciones Dewey

Padrón tiene varias

Elemento N

1
Copias Biblioteca
Cola
Alumnos

© Maximiliano Odstrcil - 34

34
Modelo de Clases (4)
Vamos a explicar algunas cosas del diagrama:
 La asociación 1:N que se tiene entre las clases Préstamos y Copias se
debe a que cada préstamo sólo puede tener una copia, mientras que dicha
copia puede ser prestada varias veces a lo largo de su vida.
 La asociación N:N entre Autores y Libros se debe a que un autor puede
escribir varios libros y que un libro puede tener más de un autor.
 Se tiene además una clase instanciada, Cola de Reserva, donde se usa a
la clase Lectores para formar la cola para reservas de un libro
determinado.
 Aparecen dos clases: Padrón y Biblioteca, que usan los servicios de las
clases Lectores y Copias respectivamente, que se utilizan para proveer
funciones a nivel de grupos de instancias de dichas clases.

© Maximiliano Odstrcil - 35

35
Especificaciones de Clases (1)
Clase Libros
Atributos Operaciones
Título: Cadena Secciones Dewey SecciónDewey()
Editorial: Cadena Cadena Autores()
FechaPublicación: Fecha Conjunto Copias Copias()
Idioma: Cadena Cola de Reserva Cola()
Resumen: Cadena AsignarAutor(a: Autores)
CantDíasPrestado: Entero AgregarCopia(c: Copias, Dewey: Cadena)
ISBN: Cadena AsignarCola(c: Cola de Reserva)
AsignarSección( s: Secciones Dewey)
Conjunto Copias ConsultaCopiasParaPrestar()
Conjunto Préstamos ListarPréstamosSinDevolver()
Conjunto Préstamos ListarPréstamos(fi: fecha, ff: fecha)

© Maximiliano Odstrcil - 36

36
Especificaciones de Clases (2)

Clase Clases Dewey


Atributos Operaciones
DígitoClase: Entero Conjunto Divisiones Dewey DivisionesDewey()
DescripciónClase: Cadena AgregarClaseDewey()
ModificarClaseDewey()
BorrarClaseDewey()
AgregarDivisión(d: Divisiones Dewey)
QuitarDivisión(d: Divisiones Dewey)

© Maximiliano Odstrcil - 37

37
Especificaciones de Clases (3)

Clase Divisiones Dewey


Atributos Operaciones
DígitoDivisión: Entero Clases Dewey Clase()
DescripciónDivisión: Cadena Conjunto Secciones Dewey SeccionesDewey()
AgregarDivisiónDewey()
ModificarDivisiónDewey()
BorrarDivisiónDewey()
AsignarClaseDewey (c: Clases Dewey)
AgregarSección(s: Secciones Dewey)
QuitarSección(s: Secciones Dewey)

© Maximiliano Odstrcil - 38

38
Especificaciones de Clases (4)

Clase Secciones Dewey


Atributos Operaciones
DígitoSección: Entero Conjunto Libros Libros()
DescripciónSección: Cadena Divisiones Dewey División()
AgregarSecciónDewey()
ModificarSecciónDewey()
BorrarSecciónDewey()
AsignarDivisión (d: Divisiones Dewey)
AgregarLibro(l: Libros)
QuitarLibro(l: Libros)

© Maximiliano Odstrcil - 39

39
Especificaciones de Clases (5)

Clase Autores
Atributos Operaciones
ApellidoAutor: Cadena Conjunto Libros Libros()
NombreAutor: Cadena AgregarLibro(l: Libros)
QuitarLibro(l: Libros)
AgregarAutor()
ModificarAutor()
BorrarAutor()

© Maximiliano Odstrcil - 40

40
Especificaciones de Clases (6)

Clase Copias
Atributos Operaciones
NúmeroCopia: Entero Libros Libro()
CódigoDewey: Cadena Conjunto Préstamos Préstamos(fi: fecha, ff: fecha)
Boolean EsLibre()
AgregarCopia()
ModificarCopia()
BorrarCopia()
AsignarLibro(l: Libros)
Prestar(l: Lectores, FechaPréstamo: fecha, TipoPréstamo:
Cadena, FechaDevolución: fecha, p: Personal)
Conjunto Préstamos PréstamosSinDevolver()

© Maximiliano Odstrcil - 41

41
Especificaciones de Clases (7)

Clase Lectores
Atributos Operaciones
ApellidoLector: Cadena Bolean EsSancionado()
NombreLector: Cadena Conjunto Préstamos Préstamos(fi: fecha, ff: fecha)
TipoDoc: Cadena Sancionar()
Documento: Cadena AgregarCopia()
Dirección: Cadena Conjunto Préstamos PréstamosSinDevolver()
Teléfono: Cadena SolicitarPréstamo()
Fax: Cadena Conjunto Sanciones ListarSanciones(fi: fecha, ff: fecha)
Email: Cadena Sanciones ÚltimaSanción()

© Maximiliano Odstrcil - 42

42
Especificaciones de Clases (8)
Clase Profesores
Atributos Operaciones
Sancionar(FechaSanción: fecha, FechaFin: fecha)
SolicitarPréstamo(c: Copia, FechaPréstamo: fecha,
TipoPréstamo: Cadena, FechaDevolución: fecha, p: Personal)

Clase Alumnos
Atributos Operaciones
Sancionar(FechaSanción: fecha, FechaFin: fecha)
SolicitarPréstamo(c: Copia, FechaPréstamo: fecha,
TipoPréstamo: Cadena, FechaDevolución: fecha, p: Personal)

© Maximiliano Odstrcil - 43

43
Especificaciones de Clases (9)

Clase Sanciones
Atributos Operaciones
DescripciónSanción: Cadena Lectores Lector()
FechaInicioSanción: fecha ModificarSanción()
FechaFinSanción: fecha QuitarSanción()

© Maximiliano Odstrcil - 44

44
Especificaciones de Clases (10)

Clase Cola de Reserva


Atributos Operaciones
Posición: Entero Libros Libro()
Lectores Primero()
Posición(l: Lectores, FechaPréstamo: fecha, Pos Entero)
PonerEncola(l: Lector, FechaPréstamo: fecha)
QuitarCola(l: Lector)
Bolean EsColaVacía()
Conjunto Lectores Listar()

© Maximiliano Odstrcil - 45

45
Especificaciones de Clases (11)

Clase Préstamos
Atributos Operaciones
FechaPréstamo: fecha Copias Copia()
FechaDevolución: fecha Lectores Lector()
Personal Responsable()
Devolver()
CancelarPréstamo()
Prestar()
Boolean Devuelto()

© Maximiliano Odstrcil - 46

46
Especificaciones de Clases (12)

Clase Préstamo de Sala


Atributos Operaciones
HoraPréstamo: hora Devolver(p: Personal)
HoraDevolución: hora CancelarPréstamo()
Prestar(c: Copias, l: Lectores, p: Personal)

Clase Préstamo de Domicilio


Atributos Operaciones
Devolver(p: Personal)
CancelarPréstamo()
Prestar(c: Copias, l: Lectores, p: Personal)

© Maximiliano Odstrcil - 47

47
Especificaciones de Clases (13)

Clase Personal
Atributos Operaciones
ApellidoPersonal: Cadena Conjunto Préstamos Préstamos(fi: fecha, ff: fecha)
NombrePersonal: Cadena Préstamos ÚltimoPréstamo()
Prestar(c: Copias, l: Lectores, TipoPréstamo: Cadena,
FechaPréstamo: fecha, FechaDevolución: fecha)
AgregarPersonal()
ModificarPersonal()
BorrarPersonal()

© Maximiliano Odstrcil - 48

48
Especificaciones de Clases (14)

Clase Bibliotecarios
Atributos Operaciones

Clase Directores
Atributos Operaciones
Conjunto Préstamos ListarPréstamosLibro(l: Libros, fi: fecha, ff: fecha)
Conjunto Préstamos ListarPréstamosLector(l: Lector, fi: fecha, ff: fecha)
Conjunto Lectores ListarDeudores()

© Maximiliano Odstrcil - 49

49
Especificaciones de Clases (15)

Clase Biblioteca
Atributos Operaciones
Entero Ejemplares()
Conjunto Libros BuscarLibro(c: Cadena, TipoBúsqueda: Cadena)
Conjunto Autores ConsultarAutor(c: Cadena)
AgregarCopia(c: Copias)
ModificarCopia(c: Copias)
BorrarCopia(c: Copias)
AgregarLibro(l: Libros)
ModificarLibro(l: Libros)
BorrarLibro(l: Libros)
Conjunto Libros Listar(TipoListado: Cadena)

© Maximiliano Odstrcil - 50

50
Especificaciones de Clases (16)

Clase Padrón
Atributos Operaciones
Entero Lectores()
Conjunto Lectores BuscarLector(c: Cadena, TipoBúsqueda: Cadena)
AgregarLector(l: Lector)
Modificar Lector (l: Lector)
Borrar Lector (l: Lector)
Conjunto Lectores Listar(TipoListado: Cadena)

© Maximiliano Odstrcil - 51

51
Especificaciones de Clases (17)
 Las clases Biblioteca y Padrón son clases sin atributos, solamente
tienen operaciones que utilizan los servicios de las clases Copias y
Lectores respectivamente.
 La clase Bibliotecarios no agrega atributos ni operaciones,
solamente hereda los de su superclase (Personal).
 Hay operaciones que devuelven conjuntos o colecciones de
objetos, es decir varios objetos que se agrupan y ordenan según
cierta naturaleza. En el análisis solamente se indica este requisito y
su forma de implementación se hará de acuerdo a los criterios
definidos en el diseño y a las facilidades que ofrezca el lenguaje de
programación elegido.
El tipo de datos Boolean indica una variable lógica cuyo valor
puede ser verdadero o falso.
© Maximiliano Odstrcil - 52

52
Especificaciones de Clases (18)
 Existen operaciones en las clases de generalización que luego son polimórficas
en las clases de especialización, como por ejemplo la operación
SolicitarPréstamo de la clase lector, que tiene un comportamiento distinto para las
subclases Alumnos y Profesores.
Es conveniente describir algunas operaciones clave:
 Prestar(l: Lectores, FechaPréstamo: fecha, TipoPréstamo: Cadena,
FechaDevolución: fecha, p: Personal) de la clase Copias. Esta operación recibe
como parámetros el lector que solicita el préstamo, la fecha en que se produce el
préstamo, el tipo de préstamo elegido y el personal que realiza el préstamo y
devuelve la fecha de devolución del ejemplar. Esta operación permite realizar un
préstamo a partir de la copia elegida y su implementación tendrá en cuenta el tipo
de préstamo y el lector que realiza el préstamo.
 ListarPréstamos(fi: fecha, ff: fecha) de la clase Libros. Permite listar los préstamos
de todas las copias de un libro determinado durante un período de tiempo limitado
por las fechas de inicio (fi) y fecha fin (ff).
 AgregarCopia(c: Copias, CódigoDewey: Cadena). Permite agregar una copia de un
libro determinado, asignándole el código Dewey correspondiente.

© Maximiliano Odstrcil - 53

53
Diagramas de Transición de Estados (1)
Para completar el modelo de análisis vamos a representar el aspecto dinámico
del sistema con los siguientes diagramas de transición de estados:
 Diagrama de transición de estados de la clase Copias

Llega nueva copia/ La copia es inservible


Nueva Libro:AgregarCopia() Copia sin Copia:BorrarCopia()
Prestar

Se realiza el préstamo/ Copia


Copia:Prestar () Deteriorada
Se produce
la devolución/
Préstamo:Devolver()
Copia en
Préstamo

© Maximiliano Odstrcil - 54

54
Diagramas de Transición de Estados (2)
Diagrama de transición de estados de la clase Lectores

Ingresa nuevo lector/ Se da de baja al lector/


Nuevo Padrón:AgregarLector() Lector Lector:BorrarLector()
Regular

El lector comete una falta/ Lector dado


El lector
Lector:Sancionar() de baja
cumple sanción

Se da de baja al lector/
Lector Lector:BorrarLector()
Sancionado

© Maximiliano Odstrcil - 55

55
Diagramas de Transición de Estados (3)
Diagrama de transición de estados de la clase Préstamos

Se produce préstamo/ Se cancela el préstamo/


Nuevo Copias:Prestar() Préstamo sin Préstamo:CancelarPréstamo()
devolver

Se devuelve el libro/ Préstamo


Préstamo:Devolver() Cancelado

Préstamo
devuelto

© Maximiliano Odstrcil - 56

56

También podría gustarte