Está en la página 1de 23

Proyecto: Biblioteca Virtual Bsica

Trabajo final de un Curso de PHP


15/04/2009

Augusto Galicia Lpez

Proyecto: Biblioteca Virtual Bsica

Contenido
Proyecto: Biblioteca Virtual Bsica .............................................................................................................................. 3
Problema hipottico. ........................................................................................................................................... 3
Prototipo. ............................................................................................................................................................. 3
Casos de uso................................................................................................................................................................. 5
Caso de uso (US01): Solicita ingreso o registro a la pgina web ............................................................................. 5
Caso de uso (US02): Hace consultas en la pgina web ............................................................................................ 6
Caso de uso (US03): Descarga fichas bibliogrficas ................................................................................................. 7
Caso de uso (US04): Solicita compra ....................................................................................................................... 8
Caso de uso (US05): Sale de la pgina ..................................................................................................................... 9
Caso de uso (AD01): Da de alta registros en la base de datos ............................................................................... 10
Caso de uso (AD02): Da de baja registros de la base de datos .............................................................................. 11
Caso de uso (AD03): Modifica registros de la base de datos ................................................................................. 12
Caso de uso (SI01): Permite ingreso al sistema ..................................................................................................... 13
Caso de uso (SI02): Cierre de sesin ...................................................................................................................... 14
Diagrama de Clases. ................................................................................................................................................... 15
Diagrama de casos de uso.......................................................................................................................................... 15
Resumen de la navegacin. ................................................................................................................................... 16
1. Administrador: ................................................................................................................................................... 17
2. Profesor:............................................................................................................................................................. 18
3. Estudiante: ......................................................................................................................................................... 21
Referencias principales: ............................................................................................................................................. 23

Proyecto: Biblioteca Virtual Bsica

Proyecto: Biblioteca Virtual Bsica


Problema hipottico.
Una escuela requiere poner al servicio de su comunidad un servicio bsico de biblioteca especializada, para lo cual
necesita disear una pgina web que administre los recursos bibliotecarios que pondr a disposicin de dos tipos
de usuario, profesores y estudiantes. Se cuenta con un acervo de libros debidamente inventariados y registrados
en una base de datos, de donde el sistema de administracin de la pgina web podr publicar sus existencias y
hacer consultas a travs de la red. La implementacin y puesta en marcha de este servicio de biblioteca, deber
tener las siguientes restricciones, una vez que se acceda a la pgina:

Los usuarios estudiantes podrn navegar por la informacin, hacer consultas por cualquiera de los
siguientes campos: autor, ttulo, tema o por alguna combinacin de ellos y descargar fichas bibliogrficas.
Los usuarios profesores podrn navegar por la informacin, hacer consultas por cualquiera de los
siguientes campos: autor, ttulo, tema, no necesariamente en ese orden o por alguna combinacin de
ellos, descargar fichas bibliogrficas y solicitar la compra de libros.
Las altas y bajas de usuarios, sern procesadas por el sistema.
La responsabilidad de ingresar, eliminar o modificar los registros de la base de datos ser de un
administrador.
Cuando los usuarios o el administrador abandonen la pgina, se terminar oficialmente su sesin de
trabajo.

Se pretende solucionar estas necesidades con la construccin de un sistema de Administracin de la Biblioteca


Escolar, a travs del paradigma de la POO con PHP.
Requerimientos de Hardware.
Los siguientes requerimientos de hardware, son recomendables con el fin de asegurar un adecuado servicio a la
comunidad escolar.
Red local de Computadoras PC o compatibles con procesador de velocidad mayor a 500 MHz, Memoria RAM 1
MB o mayor, Capacidad de almacenamiento en Disco Duro de 80 GB o mayor, Con dispositivo para escritura y
lectura de unidades removibles, como CDRW o memoria USB.
Prototipo.
El prototipo para el sistema fue desarrollado en localhost para probar y afinar los aspectos ms relevantes de
funcionalidad y usabilidad. A continuacin se describe el desarrollo:
La implementacin del sistema en localhost, tuvo los siguientes requerimientos.
Software:
XAMPP (el servidor Apache y la base de datos MySQL, de preferencia versin 2.5 o posterior)
Mozilla Firefox versin 3.0 o posterior, o Internet Explorer 6.0 o posterior.

Proyecto: Biblioteca Virtual Bsica


Sistema Operativo Windows XP Service Pack 2, Windows Vista Service Pack 1 o el nuevo Windows 7 (la instalacin
se prob en la versin de 32 bits).
Adobe Reader cualquier versin, aunque es preferible la versin 8.0
Hardware:
Computadora PC con disco duro con al menos 1 GB de espacio disponible.
Procedimiento
El proyecto se encuentra en un archivo comprimido .ZIP o .RAR, mismo que contiene los correspondientes
archivos .php, .txt, .pdf, .gif, .jpg, .png necesarios para la instalacin. Despus de haber instalado y comprobado la
funcionalidad de XAMPP, se cre una base de datos en MySQL, con la herramienta phpMyAdmin con el nombre
basedatos, en la cual se crearon las tablas que se mencionan en los adjuntos del proyecto (se puede solicitar la
carpeta ZIP a la direccin quimicacecsur2008@gmail.com). Despus de los preparativos mencionados, se instal
la carpeta Biblioteca PHP, en el subdirectorio C:\xampp\htdocs\ y se empez a probar el sistema, para ello, con el
servidor Apache y MySQL funcionando, se abre algn navegador, (Mozilla Firefox, o Internet Explorer) y se teclea
en la barra de direcciones la cadena http://localhost/BibliotecaPHP, con la que el navegador deber desplegar la
pantalla de ingreso que se muestra en el apartado Resumen de la navegacin.

Proyecto: Biblioteca Virtual Bsica

Casos de uso
Usuario (profesor o estudiante):

Caso de uso (US01): Solicita ingreso o registro a la pgina web


Caso de uso: Solicita ingreso o registro a la pgina.
Descripcin: Usuario acude al Sistema para solicitar ingreso o registro a la pgina web
Actor Principal: Usuario
Personal involucrado e intereses:
El sistema funciona cuando un usuario solicita ingreso o registro a la pgina.
El caso de uso termina con el ingreso del usuario a la pgina web.
Precondiciones:
Usuario debe solicitar registro en el Sistema.
Garantas de xito (postcondiciones):
Usuario se ha registrado a la pgina web.
Escenario principal de xito (o flujo bsico):
1. Usuario trata de acceder a la pgina web
2. Sistema le solicita su tipo de usuario y clave de acceso
3. En caso de no tenerlos, Sistema le ofrece registro para acceder a la pgina.
4. Sistema le requiere nombre, correo electrnico, tipo de usuario y clave de acceso.
5. Usuario ingresa nombre, correo electrnico, tipo de usuario y clave de acceso
6. Sistema crea un registro con nombre, tipo de usuario y clave de acceso del usuario y le permite,
al usuario, el acceso a la pgina.
7. Termina el caso de uso
Extensiones (o flujos alternativos):
1. Usuario no est registrado en el Sistema.
2. Sistema le ofrece registro al usuario.
3. Termina el flujo alternativo
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

Proyecto: Biblioteca Virtual Bsica

Caso de uso (US02): Hace consultas en la pgina web


Caso de uso: Hace consultas en la pgina web
Descripcin: Usuario acude al Sistema para hacer consultas en la pgina web
Actor Principal: Usuario
Personal involucrado e intereses:
El sistema funciona cuando un usuario, ingresado en la pgina, solicita hacer consultas en la pgina.
El caso de uso termina con la peticin de consulta del usuario atendida por el sistema a travs de la pgina
web.
Precondiciones:
Usuario debe haber ingresado a la pgina.
Usuario ha completado con xito ingreso al sistema.
Garantas de xito (postcondiciones):
Usuario ha satisfecho su peticin de consulta en la pgina web.
Escenario principal de xito (o flujo bsico):
1. Usuario ha ingresado a la pgina web
2. Sistema le ofrece los servicios de la biblioteca a travs de los campos (Autor, Ttulo o Tema) de un
formulario.
3. Usuario ingresa su peticin de consulta, por nombre, autor, tema, o por cualquier combinacin
de ellos.
4. En caso de que haya coincidencia de la base con la informacin solicitada, se le muestra el
resultado en una tabla.
5. Termina el caso de uso
Extensiones (o flujos alternativos):
1. Usuario no hace consultas.
2. Sistema le ofrece a usuario el men de opciones.
3. Termina el flujo alternativo
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

Proyecto: Biblioteca Virtual Bsica

Caso de uso (US03): Descarga fichas bibliogrficas


Caso de uso: Descarga fichas bibliogrficas
Descripcin: Usuario acude al Sistema para descargar fichas bibliogrficas de la pgina web
Actor Principal: Usuario
Personal involucrado e intereses:
El sistema funciona cuando un usuario, ingresado en la pgina, solicita descargar fichas de la pgina.
El caso de uso termina con la peticin de descargas del usuario atendida por el sistema a travs de la
pgina web.
Precondiciones:
Usuario debe haber ingresado a la pgina.
Usuario ha completado con xito ingreso al sistema.
Garantas de xito (postcondiciones):
Usuario ha satisfecho su peticin de consulta en la pgina web.
Escenario principal de xito (o flujo bsico):
1. Usuario ha ingresado a la pgina web
2. Sistema le ofrece el servicio de descarga de fichas de la biblioteca a travs de los campos (Autor,
Ttulo o Tema) de un formulario.
3. Usuario ingresa su peticin de descarga, por nombre, autor, tema, o por cualquier combinacin
de ellos.
4. En caso de que haya coincidencia de la base con la informacin solicitada, se descarga la ficha
solicitada.
5. Termina el caso de uso
Extensiones (o flujos alternativos):
1. Usuario no solicita descargas.
2. Sistema le ofrece a usuario el men de opciones.
3. Termina el flujo alternativo
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

Proyecto: Biblioteca Virtual Bsica

Caso de uso (US04): Solicita compra


Caso de uso: Solicita compra
Descripcin: Usuario (profesor) solicita compra para el acervo
Actor Principal: Usuario tipo profesor
Personal involucrado e intereses:
El sistema funciona cuando un usuario con rol de profesor, ingresado en la pgina, solicita la compra de un
ttulo para el acervo.
El caso de uso termina con el aviso del sistema de que la solicitud ha sido aceptada.
Precondiciones:
Usuario debe haber ingresado a la pgina.
Usuario ha completado con xito ingreso al sistema.
Garantas de xito (postcondiciones):
Usuario ha recibido el aviso de que su solicitud ha sido aceptada.
Escenario principal de xito (o flujo bsico):
1. Usuario ha ingresado a la pgina web
2. Usuario ingresa datos a un formulario (Ttulo, autor y tema).
3. Usuario solicita la compra.
4. Sistema atiende la peticin y agrega los datos a un archivo de texto.
5. Sistema enva un mensaje de aceptacin al usuario.
6. Termina el caso de uso
Extensiones (o flujos alternativos):
1. Usuario ingresa datos incompletos.
2. Sistema le vuelve a solicitar los datos al usuario.
3. Termina el flujo alternativo
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

Proyecto: Biblioteca Virtual Bsica

Caso de uso (US05): Sale de la pgina


Caso de uso: Sale de la pgina web
Descripcin: Usuario sale de la pgina web
Actor Principal: Usuario
Personal involucrado e intereses:
El sistema funciona cuando un usuario, ingresado en la pgina, solicita la salida de la pgina.
El caso de uso termina con la salida del usuario de la pgina web.
Precondiciones:
Usuario debe haber ingresado a la pgina.
Usuario ha completado con xito ingreso al sistema.
Garantas de xito (postcondiciones):
Usuario ha satisfecho su peticin de consulta en la pgina web.
Escenario principal de xito (o flujo bsico):
7. Usuario ha ingresado a la pgina web
8. Sistema le ofrece la salida a travs de un botn.
9. Usuario ingresa su peticin de salida.
10. Sistema atiende la peticin de salida.
11. Termina el caso de uso
Extensiones (o flujos alternativos):
4. Usuario no solicita salida.
5. Sistema le ofrece a usuario el men de opciones.
6. Termina el flujo alternativo
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

Proyecto: Biblioteca Virtual Bsica


Administrador:

Caso de uso (AD01): Da de alta registros en la base de datos


Caso de uso: Administrador da de alta un registro en la base de datos
Descripcin: Administrador realiza trabajos de mantenimiento de la base de datos
Actor Principal: Administrador
Personal involucrado e intereses:
El Administrador procesa y resuelve la conveniencia de agregar registros al sistema.
El caso de uso termina con el ingreso de nuevos registros a la base de datos.
Precondiciones:
El sistema debe tener nuevos registros (solicitudes de compra) por agregar.
Garantas de xito (postcondiciones):
Los registros obsoletos quedan eliminados de la base de datos.
Escenario principal de xito (o flujo bsico):
1. Administrador efecta labores rutinarias de mantenimiento de la base de datos
2. Administrador detecta registros pendientes de agregar a la base de datos.
3. Administrador procede a ingresar los registros nuevos.
4. Administrador se asegura que la informacin quede realmente ingresada.
5. Termina el caso de uso
Extensiones (o flujos alternativos):
1. No aplica
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

10

Proyecto: Biblioteca Virtual Bsica

Caso de uso (AD02): Da de baja registros de la base de datos


Caso de uso: Administrador da de baja un registro en la base de datos
Descripcin: Administrador realiza trabajos de mantenimiento de la base de datos
Actor Principal: Administrador
Personal involucrado e intereses:
El Administrador procesa y resuelve la conveniencia de eliminar registros obsoletos.
El caso de uso termina con la eliminacin de los registros obsoletos.
Precondiciones:
La base de datos debe contener registros obsoletos.
Garantas de xito (postcondiciones):
Los registros obsoletos quedan eliminados de la base de datos.
Escenario principal de xito (o flujo bsico):
6. Administrador efecta labores rutinarias de mantenimiento de la base de datos
7. Administrador detecta registros obsoletos en la base de datos.
8. Administrador procede a eliminar los registros obsoletos.
9. Administrador se asegura que la informacin sea realmente obsoleta
10. Administrador elimina permanentemente la informacin del sistema.
11. Termina el caso de uso
Extensiones (o flujos alternativos):
2. No aplica
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

11

Proyecto: Biblioteca Virtual Bsica

Caso de uso (AD03): Modifica registros de la base de datos


Caso de uso: Administrador modifica registros de la base de datos.
Descripcin: Administrador realiza trabajos de mantenimiento de la base de datos.
Actor Principal: Administrador
Personal involucrado e intereses:
El Administrador procesa y resuelve la necesidad de modificar registros de la base de datos.
El caso de uso termina con la modificacin de los registros de la base de datos.
Precondiciones:
La base de datos debe contener registros pendientes de actualizacin.
Garantas de xito (postcondiciones):
Usuario ha sido registrado en la pgina web.
Escenario principal de xito (o flujo bsico):
1. Administrador accede a la pgina web.
2. Administrador efecta labores rutinarias de mantenimiento de la base de datos
3. Administrador detecta registros pendientes de actualizar en la base de datos.
4. Administrador procede a modificar los registros pendientes de actualizar.
5. Administrador se asegura que la informacin sea realmente la actualizada.
6. Administrador modifica la informacin del sistema.
7. Termina el caso de uso
Extensiones (o flujos alternativos):
1. No aplica
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

12

Proyecto: Biblioteca Virtual Bsica

Caso de uso (SI01): Permite ingreso al sistema


Caso de uso: Permite ingreso al sistema.
Descripcin: Sistema atiende solicitud de un usuario y le permite el ingreso a la pgina.
Actor Principal: Sistema, usuario
Personal involucrado e intereses:
El usuario solicita el acceso a la pgina web.
El caso de uso termina con el acceso del usuario a la pgina web.
Precondiciones:
El usuario debe estar registrado en el sistema.
Garantas de xito (postcondiciones):
Usuario ha sido registrado en el sistema.
Escenario principal de xito (o flujo bsico):
8. Usuario trata de acceder a la pgina web.
9. Usuario ingresa su tipo de usuario y su contrasea
10. En caso de que tales datos existan en el sistema, se le permite el acceso al usuario.
11. En caso contrario, se le ofrece registro al usuario.
12. Termina el caso de uso
Extensiones (o flujos alternativos):
2. No aplica
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

13

Proyecto: Biblioteca Virtual Bsica

Caso de uso (SI02): Cierre de sesin


Caso de uso: Cierre de sesin.
Descripcin: Sistema atiende solicitud de un usuario y su sesin de la pgina.
Actor Principal: Sistema, usuario
Personal involucrado e intereses:
El usuario solicita el cierre de sesin a la pgina web.
El caso de uso termina con la salida del usuario de la pgina web.
Precondiciones:
El usuario debe estar registrado en el sistema.
Garantas de xito (postcondiciones):
Usuario ha sido registrado en el sistema.
Escenario principal de xito (o flujo bsico):
13. Usuario solicita el cierre de sesin de la pgina web.
14. Sistema comprueba que la sesin est abierta
15. En caso de que la condicin exista, se cierra la sesin del usuario.
16. En caso contrario, se le ofrece ingreso al usuario.
17. Termina el caso de uso
Extensiones (o flujos alternativos):
3. No aplica
Requisitos especiales:
No aplican.
Lista de tecnologa y variaciones de datos:
No aplican.
Frecuencia:
Este caso de uso se emplear permanentemente durante el horario de servicio.
Temas abiertos:
No aplican.

14

Proyecto: Biblioteca Virtual Bsica

Diagrama de Clases.

Diagrama de casos de uso

15

Proyecto: Biblioteca Virtual Bsica

Resumen de la navegacin.
El inicio de la pgina es "Index.php", a donde se llega con la direccin:
"http://localhost/BibliotecaPHP".
La pantalla de inicio es la que se muestra a continuacin:

Si el visitante desea registrarse, deber hacer click en el botn etiquetado como Nuevo usuario, con lo que se
accede a la pantalla de registro, a travs de NuevoUsuario.php:

Nota: Por el momento, este registro est a slo un usuario. Es la parte ms dbil del proyecto.
El registro se maneja con RegistroNuevoUsuario.php y despus de registrarse, se le pide al usuario que regrese
a la pgina principal.

16

Proyecto: Biblioteca Virtual Bsica

En caso de que alguno de los datos no sea vlido se despliega un mensaje de error y se vuelven a pedir.

Despus de pasar la comprobacin de datos, por medio de Comprobar.php, (tipo de usuario, usuario y clave de
acceso), segn el tipo de usuario, el flujo se diversifica en:

1. Administrador:
En el script "Usarbasedatos.php", se ingresa con "localhost", "root" y "password" y se tiene la posibilidad de
acceder a las "Consultas" de MySQL, a travs de un "Text Area", que hace las veces de una terminal de comandos.

17

Proyecto: Biblioteca Virtual Bsica

Los comandos que se aceptan son aquellos vlidos y acordes con el nivel de privilegios de que disponga el
"Administrador" en MySQL. Algunos ejemplos se listan a continuacin:

show databases

show tables

select [*][Nombre(s)_de_campo_vlido(s)] from Base_de_Datos [where][Campo][]

insert into(Nombre(s)_de_campo_vlido(s)values(Valores_En_El_Orden_de_los_campos

delete

drop

Ejemplo de consulta de Administrador:

2. Profesor:
En el script "consultaProfesores.php", se presenta una lista desplegable con las diversas opciones de este usuario.

18

Proyecto: Biblioteca Virtual Bsica

Todas Las "Consultas" se gestionan con el script "ConsultaOpcionesProfesores.php", donde el flujo por Autor
conduce a "ConsultaLibrosAutor.php" por medio del cual, se lee la base de datos y en la pantalla se muestra, con
fines didcticos la correspondiente consulta MySQL, as como sus resultados.

Las "Consultas" por Tema se hacen con "ConsultaLibrosTema.php", a travs del cual se accede a la base de datos,
nuevamente, en la pantalla se muestra con fines didcticos la correspondiente consulta MySQL.

19

Proyecto: Biblioteca Virtual Bsica

Las "Consultas" por Editorial, se gestionan con "ConsultaLibrosEditorial.php", por medio del cual se accede a la
base de datos, tambin en este caso, en la pantalla se muestra la correspondiente consulta MySQL.
La opcin Solicitar Compra se resuelve con "SolicitarCompra.php", este script, genera el archivo de texto
"Compra.txt", en el que se van agregando las peticiones del usuario. Tambin, se muestra con fines didcticos el
contenido del archivo recin escrito.

Finalmente, la opcin Descargar Fichas, conduce a ConsultaOpcionesProfesor.php, en el cual se gestiona una


muestra de la ficha solicitada, descargable en formato PDF

20

Proyecto: Biblioteca Virtual Bsica

3. Estudiante:
En "ConsultaOpcionesEstudiante.php", se presenta una lista desplegable con las diversas opciones de este
usuario.

Todas Las "Consultas" se gestionan a travs de "ConsultaOpcionesEstudiante.php", a travs de dicho cdigo el


flujo por Autor conduce a "ConsultaLibrosAutor.php" por medio del cual, se lee la base de datos y en la pantalla
se muestra, con fines didcticos la correspondiente consulta MySQL, as como sus resultados.

21

Proyecto: Biblioteca Virtual Bsica

Las "Consultas" por Tema se hacen con "ConsultaLibrosTema.php", por el cual se accede a la base de datos,
nuevamente, en la pantalla se muestra con fines didcticos la correspondiente consulta MySQL.

Las "Consultas" por Editorial, se hacen utilizando "ConsultaLibrosEditorial.php", por medio del cual se accede a la
base de datos, tambin en este caso, en la pantalla se muestra la correspondiente consulta MySQL.

22

Proyecto: Biblioteca Virtual Bsica

Finalmente, la opcin Descargar Fichas, conduce a ConsultaLibros.php, en el cual se gestiona una muestra de
la ficha solicitada, descargable en formato PDF

Finalmente, las nicas opciones de salida, que se pueden observar en los desplegables de Consulta de
Profesores o Consulta de Estudiantes, no estn implementadas totalmente, pues en el cdigo PHP, solamente
se indica la instruccin exit(), que resulta insuficiente para cualquier aplicacin. Por lo tanto, la salida se tiene que
hacer saliendo del navegador, o reingresando a la pgina de inicio con la direccin del principio:
http://localhost/BibliotecaPHP

Referencias principales:
1.
2.
3.
4.
5.

LOPEZ Q. J.; Domine PHP y MySQL; Primera edicin; Editorial Alfaomega.


MINERA F.; Curso de Programacin PHP; Coleccin Manuales Users;
PAVN P. J.; Creacin de un portal con PHP y MySQL; Tercera edicin; Editorial Alfaomega
VALADE J.; PHP & MySQL for Dummies ; Second Edition; Wiley Publishing;
WELLING L. and THOMSON L; PHP & MySQL Web Development ; Second Edition; Sams
Publishing

23

También podría gustarte