[Php-avanzado] Requerimientos Bibliotech v4
Fernando Pehuén Borsani
fpborsani en yahoo.com.ar
Mar Oct 1 19:50:42 ART 2013
-----------------
Aclaraciones:
-----------------
Género y subgénero:
PB> "[...]el género es gestionable: como hay una gran variedad de subgeneros[...]"
LT>>"Te referís acá a Subgéneros... es otra entidad o lo estás usando como sinónimo de Género?"
Fui ambigüo al expresarme: quise decir que mi SRS define como "géneros" lo que en el plano literario son en realidad "subgéneros" (o sea, no es una nueva entidad, eran los términos equivalentes entre mi sistema y el universo).
Lo hice así porque:
a) Los verdaderos géneros son "narrativo, lírico y dramático", y son tan generales que no servirían a mis propósitos.
b) Los subgéneros tienen a su vez sub-subgéneros, lo que llega a ofuscar la claridad del dato representado.
c) Es más directo separar como hace la Bibliteca Municipal: asignando un status parejo a cosas que un Licenciado en Letras dividiría en realidad en tres jerarquías diferentes.
_______________________
Gestión de préstamos:
LT>"Te lo preguntaba porque existe el préstamo, pero no la devolución."
El préstamo tiene entre sus atributos los siguientes: fecha de vencimiento, fecha de devolución, estado (sin detallar aún cuales son, los añado en esta versión).
O sea que la gestión del préstamo incluye la devolución, porque el préstamo solo termina cuando se ingresa la "fecha de devolución".
_______________________
Fecha de Vencimiento:
LT> La fecha de vencimiento la decide el bibliotecario al prestar un libro? O todos los libros se prestan una cantidad de días fija? Esta cantidad de días puede cambiar?
El sistema asigna la fecha de vencimiento evaluando la confiabilidad del usuario. Actualizo la descripción de "confiabilidad" para que explique el cálculo.
_______________________
------------------
Changelog v4:
------------------
--Mejorada la señalización de atributos en el diccionario.
--Reemplazado "ejemplares" por "unidades", un término más específico.
--Agregado a los atributos de stock de libros: "cantidad actualmente en prestamo".
--Intercambiadas prioridades de RF16 y RF17, actualizadas las dependencias.
--Reescrita la definición de confiabilidad para exponer los criterios de cálculo.
--RF21, cambio de "gestionar" a "registrar".
--Préstamo expone los cuatro estados del mismo: activo, anulado, devuelto en fecha, devuelto vencido.
--Agregado "y su posterior devolución." en el diccionario de "Préstamo" para clarificar la gestión del mismo.
--Agregada RF21.4: "El sistema debe actualizar la información de stock[14] disponible si se efectúa el prestamo."
---------------------------------------------------------
Software Requirements Specification[SRS] v4
---------------------------------------------------------
Requerimientos Funcionales[RF]:
01) El sistema debe gestionar editoriales.
02) El sistema debe gestionar autores.
03) El sistema debe gestionar géneros.
04) El sistema debe gestionar libros con su editorial[01], su(s) autor(es)[02] y su género[03].
05) El sistema debe mostrar los sexos.
06) El sistema debe mostrar rangos de edad.
07) El sistema debe gestionar visitantes con su sexo[05] y rango de edad[06].
08) El sistema debe registrar los votos de los visitantes[07] a los libros[04].
09) El sistema debe gestionar comentarios de los visitantes[07] a los libros[04].
10) El sistema debe registrar los votos de los visitantes[07] a los comentarios[09].
11) El sistema debe registrar la popularidad del libro[04].
12) El sistema debe reportar la popularidad[11] de los libros[04] mensualmente.
13) El sistema debe buscar libros.
13.1) Por ISBN
13.2) Por Editorial[01].
13.3) Por Autor[02].
13.4) Por título.
13.5) Por género[03].
14) El sistema debe gestionar el stock de los libros[04].
14.1) El sistema debe comprobar si ya existe un libro[04] cuando se lo da de alta.
14.2) El sistema debe sumar la cantidad de unidades obtenidos de un libro a su stock correspondiente.
15) El sistema debe mostrar tipos de documentos.
16) El sistema debe gestionar asociados con su sexo[05], rango de edad[06] y tipo de documento[15].
17) El sistema debe calcular la confiabilidad de los asociados[16].
18) El sistema debe mostrar los meses del año.
19) El sistema debe inscribir cuotas de asociados[16].
20) El sistema debe informar al asociado del vencimiento de la cuota[19].
21) El sistema debe registrar préstamos de libros[04] a asociados[16].
21.1) El sistema debe detener un nuevo préstamos[21] si excede la confiabilidad[16].
21.2) El sistema debe detener un nuevo préstamo[21] si no está paga la cuota[19].
21.3) El sistema debe detener un nuevo préstamo[21] si no hay stock[14] disponible.
21.4) El sistema debe actualizar la información de stock[14] disponible si se efectúa el prestamo.
22) El sistema debe informar al asociado[16] del vencimiento del préstamo[20] un día antes del vencimiento.
23) El sistema debe mostrar al empleado los préstamos[21] vencidos hace más de una semana.
___________________________________
Requerimientos No Funcionales[RNF]:
- Gestionar a los empleados.
___________________________________
Diccionario:
Editorial: Casa editora.
--Atributos: nombre.
Autores: nombre(s) de la(s) persona(s) que escribe(n) el libro. Un libro puede tener varios autores.
--Atributos: nombre.
Género: categorías en que clasificar de forma excluyente las obras literarias atendiendo a su contenido. Algunos de ellos son: poesía, ciencia ficción, cuento.
--Atributos: nombre.
Libro: Obra de extensión suficiente para formar un volumen, en soporte físico.
--Atributos: isbn, código bibliotecario, editorial, autor, título, género, portada, resumen de la contracara.
Sexo: femenino o masculino.
--Atributo: nombre.
Rango de edad: hasta 15 años, de 15 a 18 años, de 18 a 22 años, de 23 a 30 años, de 30 a 40 años, de 40 a 60 años, mayor de 60 años.
--Atributo: rango.
Visitante: persona externa a la empresa que ingresa al contenido web generado por este software.
--Atributos: Nombre, email, rango de edad, sexo.
Votos: valoración positiva, valoración negativa.
--Atributo: valor.
Comentarios: opinión que el visitante deja escrita sobre un libro específico.
--Atributos: autor, contenido, libro.
Popularidad: cantidad de personas que leen la información detallada de un libro(portada y resumen de contracara).
--Atributos: libro, cantidad.
Reportar: crear un archivo con una lista decreciente de los libros y la cantidad de visitas que recibieron.
--Atributos: ranking, fecha.
Busqueda: Comprobación de existencia de un libro(por isbn o título), autor, editorial, y listado de los resultados.
--Atributos: término de búsqueda, coincidencias.
Stock de libros: cantidad de unidades de un libro(identificado por ISBN) que posee la biblioteca, y cuantos están disponibles para préstamo.
--Atributos: Libro(ISBN y título), cantidad en existencia, cantidad actualmente en préstamo, cantidad disponible(cantidad en existencia menos cantidad actualmente en préstamo).
Comprobar si ya existe un libro: verificar si el isbn de un libro ya existe en el sistema.
--Atributos: isbn ingresado, resultado.
Tipos de documentos: documento nacional de identidad(DNI), libreta de enrolamiento(LE), libreta cívica(LC), cédula de identidad(CI).
--Atributo: tipo.
Confiabilidad: cantidad de prestamos activos simultáneos que puede tener un asociado, cantidad de días hasta el vencimiento del préstamo. Los rangos dependen de la cantidad de libros que el usuario devolvió a tiempo: 1) hasta 100 prestamos: 2 libros, 2 semanas. 2) entre 101 y 300: 2 libros, 3 semanas. 3) más de 301: 3 libros, 3 semanas.
--Atributos: asociado, rango.
Asociado: persona que paga un abono mensual y a cambio puede recibir libros en préstamo.
--Atributos: Nombre, tipo de documento, número de documento, fecha de registro, email, teléfono, celular, dirección, rango de edad, sexo, confiabilidad.
Cuota: suma de dinero que se abona mensualmente para poder recibir los servicios de la institución.
--Atributos: asociado, último mes pago.
Informar: enviar un correo electrónico con información de interés.
--Atributos: Asociado, tipo de informe, fecha.
Préstamo: entrega de libros de la biblioteca al asociado, para que los lea en su hogar, y su posterior devolución. El préstamo tiene cuatro estados: activo, anulado, devuelto en fecha, devuelto vencido.
--Atributos: Asociado, libro(ISBN), fecha de préstamo, fecha de vencimiento, fecha de devolución, estado.
Stock Disponible: resta entre la cantidad de veces que existe el libro y la cantidad de unidades de ese libro que están prestados en ese momento.
Empleado: persona bajo sueldo que realiza funciones administrativas para el comprador de este software.
--Atributos: nombre, puesto, zona, permiso.
Más información sobre la lista de distribución Php-avanzado