Mónica Vázquez Degante
Francisco Xicohtencatl Morales Carrizosa Sistema de una Librería
2012
Análisis del Sistema
Alumnos
Resumen
Este sistema fue creado con el fin de facilitar de una mejor manera una librería, ya que en él se encuentran módulos en los cuales el usuario tendrá un fácil manejo para acceder a cientos de libros, así como también buscar o hacer una compra.
Se desarrolló este sistema con diferentes aplicaciones como son MYSQL, PHP y HTML, a continuación se describe como se realizó este proyecto.
Descripción y objetivos del proyecto
La idea principal de desarrollar este sistema más que nada es para facilitar la interacción del usuario con una aplicación amigable, accesible y entendible para cualquier usuario que acceda a ella.
Se cuentan con tres capas:
Capa de presentación
Será la interfaz gráfica que muestre los datos al usuario.
Capa lógica
Será la responsable de procesar los datos, recuperarlos y enviarlos a la capa de presentación.
Capa de datos
Aquí se encuentran las bases de datos, así como también las tablas donde se guarda toda la información de los libros.
Objetivos
Analizar el problema y transformarlo en un proyecto eficaz.
Planificar y estructurar el desarrollo del proyecto mediante la elaboración de un plan de trabajo, aplicando la metodología adecuada.
Utilizar servidores de bases de datos.
La aplicación consta de 3 partes diferenciadas debido a los diferentes tipos de usuarios:
Usuario publico.- Cualquier usuario sin necesidad de estar validando además de poder consultar el catálogo de libros disponibles en la web, donde podrá simular su compra, añadiendo productos y especificando las unidades que desea.
Usuario registrado.- Podrá darse de baja y hacer consulta y modificaciones de sus datos personales.
Consultara y modificara en cualquier momento el contenido de su compra y aceptarla.
Administrador.- Solo el podrá acceder a la aplicación para gestionar todo lo referente al producto y errores en el sistema.
Composición del software
El software consistirá en una parte servidora implementada a una base de datos, donde el cliente accederá al sistema desde internet usando de preferencia el navegador Google Chrome y otro cliente el cual realiza las tareas del mantenimiento.
El sistema se va a realizar utilizando los lenguajes de programación PHP, HTML y MYSQL.
Requisitos funcionales
Catálogo de libros organizados por género.
La aplicación debe permitir a cliente poder navegar por los diferentes módulos, viendo la composición de cada módulo para su uso.
Búsqueda de libros
También se contara con un buscador de libros, que permita buscar directamente los títulos. A partir de la búsqueda se mostrara un listado de los títulos que cumplan los criterios seleccionados.
Modulo compra
Un cliente podrá seleccionar un libro y hacer su compra respectiva.
Área privada
La aplicación implementara un área privada donde el administrador del sistema contara con una herramienta que servirá para añadir nuevos libros, modificar los ya existentes o eliminarlos.
Casos de uso
Identificación de los actores
Cada actor tiene un papel para cada caso de uso en el cual interviene. Después de ver las funcionalidades del software podemos detectar claramente 3 actores con roles diferentes, usuario anónimo, usuario registrado y el administrador.
El usuario anónimo
No se ha identificado en el sistema, por lo que solo puede hacer consultas, es la parte pública y simula una compra. Sus funciones son:
Alta usuario
Login
Consultas
Hacer una compra
Usuario registrado o cliente
Esta identificado en el sistema y tiene acceso a una parte restringida del software. Hereda todas las funcionalidades propias del usuario anónimo y sus funciones son:
Confirmar compra
Consultar, modificar y dar de baja
Ver su pedido
Administrador
Se identifica con el rol del administrador, se encargara del mantenimiento del sistema. Tiene acceso a toda la parte privada del software. No hereda las funcionalidades de los otros dos actores, ya que si quiere hacer una compra se tiene que registrar como usuario registrado y sus funciones son:
Alta, baja, modificar libros
Alta, baja, modificar catálogo de títulos
Relación entre casos de uso y actores
Los casos de uso se clasifican en función del perfil de usuario, donde cada usuario tiene acceso a diferentes partes de la aplicación.
Caso de uso para el usuario anónimo

Caso de uso para el usuario registrado

Caso de uso para el administrador

Descripción textual de casos de uso
Caso de uso: Alta usuario
Resumen de la funcionalidad: Da de alta un usuario en la base de datos, se mira que no exista en la BBDD, introducir los datos del usuario.
Papel dentro del trabajo del usuario: Habitual
Actores: Usuario anónimo
Casos de usos relacionados: Registrarse, consulta usuario,
Precondición: El usuario no puede existir en la base de datos.
Poscondición: Se crea un nuevo usuario.
Flujo de eventos principal:
• El usuario escoge la opción de Alta usuario
• El sistema le presenta un formulario a rellenar por el usuario donde le pide: Login, password, repetir password, nombre, apellidos, dirección, código postal, población, provincia, teléfono, email, cuenta corriente.
Pulsar aceptar.
• El sistema almacenara el nuevo usuario en la BBDD con el perfil tipo “1”
ya que es el perfil del cliente .
Flujos alternativos:
• Si el sistema detecta que el login existe lanza mensaje de error.
• Si el sistema detecta que el password es incorrecto lanza mensaje de error.
• Si el sistema detecta que falta algún dato obligatorio lanza mensaje de error.
Caso de uso: Baja usuario
Resumen de la funcionalidad: Da de baja un usuario en la base de datos.
Papel dentro del trabajo del usuario: Habitual
Actores: Usuario identificado
Casos de usos relacionados: Consulta usuario,
Precondición: El usuario ha de existir en la base de datos y no tener ningún pedido en estado pendiente.
Poscondición: El usuario se dará de baja en el sistema si no tiene ningún pedido en estado
Flujo de eventos principal:
• El usuario consulta sus datos y pulsa el eliminar.
• El sistema pondrá eliminara el registro.
• El usuario deja de estar registrado y pasa a la página principal. Caso de uso: Registrarse
Resumen de la funcionalidad: verifica que el login y password existan en la base de datos.
Papel dentro del trabajo del usuario: Habitual
Actores: Usuario identificado
Casos de usos relacionados: Consulta usuario y Alta usuario
Precondición: El usuario ha de existir en la base de datos.
Poscondición: El sistema valido el usuario, si existe, le permite acceder a las opciones correspondientes al rol validado (Usuario registrado, Super usuario), si no existe el sistema le mostrara un mensaje informándole.
Flujo de eventos principal:
El usuario introduce login y password escoge la opción de registrarse
El sistema identificara el usuario y accederá a las funcionalidades según el Usuario registrado, Super usuario.
Este caso de uso puede ser llamado desde Alta usuario.
Identificación de las clases de entidades
Caso de uso “Alta usuario” clases: Usuarios.
Caso de uso “Registrarse”, clases: UsuariosRegistrados, Usuarios
Caso de uso “consulta catálogo”, clases: Usuarios, UsuariosRegistrados *,
SuperUsuarios*, producto, materia.
Caso de uso “Consulta usuario”, clases UsuariosRegistrados *
Caso de uso “Modifica usuario”, clases: UsuariosRegistrados *
Caso de uso “Baja usuario”, clases: UsuariosRegistrados *
Caso de uso “Añadir libro”, clases: UsuariosAnónimo*,
UsuariosRegistrados *, Productos *.
Caso de uso “Elimina libro”, clases: Usuarios* UsuariosRegistrados
*, Productos *.
Caso de uso “Consulta catalogo”, clases Usuarios*, UsuariosRegistrados *, libros *, Catalogo*, Líneas*
Caso de uso “Confirmar compra”, clases UsuariosRegistrados *, libros *, catalogo*, LíneaVenta, Pedido.
Caso de uso “Alta materia”, clases: SuperUsuarios *, Materias
Caso de uso “Baja materia”, clases: SuperUsuarios *, Materias*
Caso de uso “Modifica materia”, clases: SuperUsuarios *, Materias*
Caso de uso “Consulta materia”, clases: SuperUsuarios *, Materia*
Caso de uso “Alta producto catálogo”, clases: SuperUsuarios *, Productos
Caso de uso “Baja producto catálogo”, clases: SuperUsuarios *, Productos
Caso de uso “Modifica producto catálogo”, clases: SuperUsuarios *, Productos*
Caso de uso “Consulta producto catálogo”, clases: SuperUsuarios *, Productos*
USUARIO Diagrama clases entidades
LINEA DE VENTA ADMINISTRADOR USUARIO REGISTRADO
PEDIDO LIBROS CATEGORIA
Diseño arquitectónico
En el diseño arquitectónico se deciden los aspectos que condicionaran de manera decisiva el resto del diseño. Se establecerán los subsistemas y módulos que formaran el sistema a diseñar, la forma de controlarlos y comunicarlos. Un módulo es una parte del subsistema que provee un conjunto de funcionalidades a los otros módulos, pero que funciona de manera independiente.
Diseño de las interfaces
Pantallas
Interfaz de Bienvenida
Aquí el usuario puede visualizar la pantalla de bienvenida del sistema.

Modulo “Categorías”
Este módulo muestra las categorías de libros con que cuenta el sistema, al igual que con su respectiva imagen de cada categoría.

Modulo “Libros más Vendidos”
Este módulo muestra los títulos que se venden más.

Modulo “Búsqueda de un Libro”
Este módulo contiene como se desea hacer la búsqueda de algún libro, en este caso se debe seleccionar la categoría para buscar.

Modulo “Dar de alta un Libro”
Se muestra la interfaz para dar de alta un libro en el sistema, dando los datos necesarios para su acceso.

Modulo “Títulos en Existencia”
Se muestra una consulta de todos los libros con que cuenta el sistema, en ella se visualizan los datos más importantes de cada título.

Modulo “Contacto”
Este módulo contiene un formulario, para que el usuario de comentarios acerca del sistema.

Código de los módulos
Código de la interfaz de inicio:

Código de la interfaz de categorías:

Código de la interfaz para la búsqueda de un libro:

Código de la interfaz para mandar comentarios:

Implementación
Herramientas de desarrollo
Para realizar este sistema, los programas que se utilizaron son:
WAMPSERVER
De aquí se desprenden los siguientes programas:
PHP
Para crear el código en la conexión a bases de datos.
MYSQL
Para la creación de bases de datos.
SUBLIME TEXT
Editor de texto y editor de código fuente creado en Python (HTML).
UN NAVEGADOR CONVENCIONAL(DE PREFERENCIA GOOGLE CHROME)
Navegar utilizado para acceder a la aplicación.
Requisitos de software
Para un correcto despliegue de la aplicación en necesario tener instalado un navegador, de mayor preferencia Google Chrome.
También se requiere tener un sistema operativo Windows (de preferencia versiones de XP hacia arriba).
Al igual que el JDK, para poder utilizar el software Sublime Text.
Conclusiones
Este sistema contara con varios componentes de gran utilidad para los usuarios posibles, con el fin de facilitar la compra, búsqueda de un libro, así como también se podrá dar de alta en el sistema para desempeñar más funciones. |