[Php-avanzado] SRS y DER: Bibliotech

Fernando Pehuén Borsani fpborsani en yahoo.com.ar
Mie Ene 1 02:27:34 ART 2014


Hola profe!

Le remito la SRS v6.4.1 y el diagrama con las relaciones entre entidades.

La SRS tiene solo correcciones menores, como alguna referencia sin su número
correspondiente, más la inclusión de los empleados en las RF.

En el PDF está el primer boceto para incluir tablas que mantengan la
consistencia. Agregué campos en AUTORES_LIBROS, COMENTARIOS, PRESTAMOS,
MANTENIMIENTOS y ADQUISICIONES.
En MANTENIMIENTOS se puede ver dos veces el atributo IdEmpleado, pero las
columnas se llaman IdEmpleadoGive e IdEmpleadoTake. El programa de dibujo
diferencia entre nombre de atributo y nombre de columna, y muestra el nombre
del atributo cuando genera el PDF.

-----------------------------------------------------------
Software Requirements Specification[SRS] Bibliotech v6.4.1
-----------------------------------------------------------

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 gestionar unidades de libros[04].
06) El sistema debe mostrar los sexos.
07) El sistema debe mostrar rangos de edad.
08) El sistema debe gestionar visitantes con su sexo[06] y rango de
edad[07].
09) El sistema debe registrar los votos de los visitantes[08] a los
libros[04].
10) El sistema debe gestionar comentarios de los visitantes[08] a los
libros[04].
11) El sistema debe registrar la popularidad del libro[04].
12) El sistema debe reportar la popularidad[12] de los libros[04]
mensualmente.
13) El sistema debe buscar libros[04].
    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 mostrar tipos de documentos.
15) El sistema debe gestionar asociados con su sexo[06], rango de edad[07] y
tipo de documento[15].
16) El sistema debe calcular la confiabilidad de los asociados[15].
17) El sistema debe mostrar los meses del año.
18) El sistema debe inscribir cuotas de asociados[15] con su mes[17].
19) El sistema debe informar al asociado del vencimiento de la cuota[18].
20) El sistema debe mostrar los estados.
21) El sistema debe registrar el préstamo de unidades[05] a asociados[15]
con su estado[20].
    21.1) El sistema debe detener un nuevo préstamo si excede la
confiabilidad[16].
    21.2) El sistema debe detener un nuevo préstamo si la cuota[18] es
anterior al mes en curso.
    21.3) El sistema debe detener un nuevo préstamo si no hay unidades[05]
disponibles.
22) El sistema debe registrar devoluciones de unidades[05] por parte de los
asociados[15] con su estado[20].
23) El sistema debe registrar extravíos  de unidades[05] por parte de los
asociados[15] con su estado[20].
24) El sistema debe registrar adquisiciones de unidades[05] por parte de los
asociados[15] con su estado[20].
25) El sistema debe gestionar puestos
26) El sistema debe gestionar permisos
27) El sistema debe gestionar a los empleados con su puesto[25] y
permiso[26].
28) El sistema debe registrar el mantenimiento de unidades[05] con su
estado[20] y empleados[27].
29) El sistema debe gestionar el stock de unidades[05].
    29.1) El sistema debe comprobar si ya existe un libro[04] cuando se den
de alta unidades[05].
    29.2) El sistema debe sumar uno a stock:cantidad y stock:disponibles al
efectuarse el alta de unidad[05].
    29.3) El sistema debe restar uno a stock:disponibles al efectuarse un
préstamo[21].
    29.4) El sistema debe sumar uno a stock:disponibles por
devoluciones[22].
    29.5) El sistema debe restar uno a stock:cantidad por extravíos[23].
    29.6) El sistema debe sumar uno a stock:cantidad y stock:disponibles por
adquisiciones[24].
    29.7) El sistema debe restar uno a stock:disponible al enviarse la
unidad[05] a mantenimiento[28].
    29.8) El sistema debe restar uno a stock:cantidad por destrucción de la
unidad[05] en mantenimiento[28].
    29.9) El sistema debe sumar uno al stock:disponible al volver la
unidad[05] de mantenimiento[24].
30) El sistema debe informar al asociado[15] del vencimiento del
préstamo[21] un día antes del vencimiento.
31) El sistema debe mostrar los préstamos[21] vencidos hace más de una
semana.

 
-------------
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: código identificador (isbn o equivalente previo a 1970),
editorial, autores, título, género, portada, resumen de la contracara.
--Unidad: copia de un libro que comparte todas los atributos con el
original, menos el código bibliotecario, propio de la unidad.
  Atributos: código bibliotecario.
--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, Apellido, Apodo, email, rango de edad, sexo.
--Votos: valoración positiva o negativa sobre el libro.
  Atributo: valor.
--Comentarios: opinión que el visitante deja escrita sobre un libro
específico.
  Atributos: autor, contenido, libro, fecha.
--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.
--Búsqueda: Comprobación de existencia de un libro(por código identificador
o título), autor, editorial, y listado de los resultados.
--Comprobar si ya existe un libro: verificar si el código identificador de
un libro ya existe en el sistema.
  Atributos: código identificador 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 préstamos activos simultáneos que puede tener
un asociado, cantidad de días hasta el vencimiento del préstamo.
  Cálculo de puntos: devuelto antes del vencimiento, +1 punto. Devuelto tras
el vencimiento, -10 puntos por día vencido y cambio temporal a rango
suspendido. Extraviado: inhibe de por vida al asociado a no ser que efectúe
una adquisición, en cuyo caso lo restablece como rango 1 con 0 puntos.
  Rangos: (1) hasta 100 puntos: 2 unidades, 2 semanas. (2) desde 101 hasta
300: 2 unidades, 3 semanas. (3) desde 301: 3 unidades, 3 semanas.
(Suspendido) 0 libros, los días suspendido se calculan así: Penalización = 5
* cantidad de días de atraso * cantidad de veces que el asociado devolvió
tarde un préstamo. Tras este período el asociado recupera su rango de
confiabilidad del 1 al 3 según sus puntos almacenados.
  Atributos: asociado, puntaje, rango.
--Asociado: persona que paga un abono mensual y a cambio puede recibir
unidades en préstamo.
  Atributos: Nombre, Apellido, 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(con su año correspondiente) pago.
--Informar: enviar un correo electrónico con información de interés. Hay dos
tipos: de vencimiento de cuota y de vencimiento de préstamo.
  Atributos: Asociado, tipo de informe, fecha, informe.
--Estados: reflejan el movimiento de unidades: activo, anulado, devuelto en
fecha, devuelto vencido, extraviado, adquirido, reparando, reparada,
destruida.
  Atributo: nombre.
--Préstamo: entrega de unidades de la biblioteca al asociado, para que los
lea en su hogar.
  Atributos: Asociado, unidad, fecha de préstamo, fecha de vencimiento,
estado: activo o anulado.
--Devolución: cese del préstamo porque el asociado entregó de vuelta la
unidad a la biblioteca.
  Atributos: Asociado, unidad, fecha en que se devolvió, estado: devuelto en
fecha o devuelto vencido.
--Extravío: pérdida de la unidad porque el asociado no la devolvió a la
biblioteca.
  Atributos: Asociado, unidad, estado: extraviado.
--Adquisición: cuando el usuario que efectuó un extravío entrega a la
biblioteca una unidad comprada por él.
  Atributos: Asociado, unidad, estado: adquirido.
--Puesto: departamento en el que trabaja el empleado. Ej: infantil,
escolares, histórico.
--Permiso: nivel de acceso. El cero representa acceso nulo. A mayor número,
mayor cantidad de funcionalidades disponibles.
--Empleado: persona bajo sueldo que realiza tareas para el comprador de este
software.
  Atributos: Nombre, Apellido, puesto, permiso.
--Mantenimiento: mantenimiento recibe unidades dañadas e intenta repararlas.
En caso que sea imposible, la destruirá.
  Atributos: unidad, empleado que entrega, empleado que recibe, estados:
reparando, anulado, reparada, destruida.
--Stock: suma de las unidades que corresponden al mismo libro, y cuantos de
esas unidades no están prestadas, extraviadas, destruidas o en
mantenimiento.
  Atributos: código identificador, cantidad, disponibles.
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: bibliotech2.pdf
Type: application/pdf
Size: 8733 bytes
Desc: no disponible
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20140101/76af2371/attachment-0001.pdf>


Más información sobre la lista de distribución Php-avanzado