WEB Libreria BETA

Sistema de venta. Internet. Requisitos. Propósito. Alcance. Producto. Usuario. Diccionario de datos. Procesos primitivos. Base de Datos. Gestión. Módulos

0 downloads 139 Views 338KB Size

Story Transcript

PRACTICA ISG1 WEB_Libreria_BETA 3º- Septiembre à ndice Documento de Requisitos Introducción Propósito…………………………………...Pág. 3 Alcance………………………………….…Pág. 4 Definiciones, Acrónimos y Abreviaturas…..Pág. 5 Descripción General Perspectivas del Producto………………….Pág. 6 Funciones del Producto………………….…Pág. 6 Requisitos EspecÃ−ficos Requisitos funcionales………………….….Pág. 8 Requisitos relacionados con los datos…...…Pág. 9 Diagramas de flujo de Datos Diagrama de Contexto…………………..…….Pág. 10 Diagrama de Sistema nivel 0……………….....Pág. 11 Diagramas de nivel 1…………………….……Pág. 12 Diagramas de nivel 2………………………….Pág. 14 Diccionario de Datos………………………….Pág. 16 Especificación de procesos primitivos……..…Pág. 18 Modelo Entidad Relación Esquema de la Base de datos………………... Pág. 23 Glosario del Esquema de la base de Datos…. Pág. 24

1

Diseño Arquitectónico Diagrama de módulos…………………………Pág. 26 Especificación de cada modulo……………….Pág. 28 DOCUMENTO DE REQUISITOS INTRODUCION Propósito El sistema que vamos a describir a continuación se denomina la WEB_Libreria_BETA. Es un sistema de venta de artÃ−culos y la compra de productos por Internet que permite a los clientes la adquisición de artÃ−culos de librerÃ−a y papelerÃ−a de esta tienda, también permitiendo al gerente o encargado de la tienda controlar el stock de sus productos, pidiendo automáticamente, a los proveedores cada producto que necesite. Esta descripción del sistema corresponderÃ−a a la 1ª versión de la WEB_Libreria_BETA. La finalidad de este documento es describir el sistema de información necesario para la gestión de una librerÃ−a destinado a Internet. Para ello definiremos las principales entradas y salidas del sistema y su interacción con los principales componentes y actores del sistema. Tomaremos como actores principales a los participantes (clientes) que deberán estar registrados con anterioridad para poder adquirir algún producto de la librerÃ−a BETA a través de la WEB_Libreria_BETA. Esta aplicación actuara de intermediario para poner en contacto a los clientes con la librerÃ−a y facilitara la tarea de adquirir productos. Existe la figura del Administrador que se encargará de actualizar los productos que ofrece la tienda, los clientes que se registran en ella, y asÃ− como también se encarga de realizar los pedidos a los proveedores mediante la aplicación. El sistema WEB_Libreria_BETA no se encargará de gestionar los servicios de envÃ−o de los productos, acudiendo a subcontratas que realizaran esta función. El sistema se encuentra totalmente afiliado a la librerÃ−a BETA en la cual se encuentran los productos fÃ−sicamente, desde donde se envÃ−an los productos a los clientes y a donde llegan los suministros desde los proveedores. El software que se dará lugar estará compuesto por un sistema de bases de datos para almacenar todos los datos de los productos y los clientes asÃ− como por un conjunto de páginas Web para la interacción de los clientes (y del administrador). Las paginas Web peden estar realizadas en HTML, JavaScrip, PHP o cualquier otro lenguaje orientado a la creación de paginas Web, que cargara un entorno de ventanas para hacerlo mas agradable para el usuario. Alcance Este sistema software esta dirigido para el uso en todo el mundo, pero no tiene en cuenta los gastos de envÃ−o ya que estos van ajenos a la librerÃ−a. Los gastos de envÃ−o los pagarÃ−a directamente el cliente a la empresa de mensajeria. El sistema realmente estará situado fÃ−sicamente en un servidor, alimentado las veinticuatro horas del dÃ−a, al que se accede por Internet. El desarrollo de este documento esta enfocado a las prácticas de la asignatura de IngenierÃ−a del Software 1.

2

Este documento estarÃ−a destinado al personal de desarrollo de la aplicación software necesario para la puesta en funcionamiento de la WEB_Libreria_BETA asÃ− como el personal dedicado al control de calidad del software, el personal de mantenimiento, y otros procedimientos ulteriores al desarrollo de la aplicación software. DEFINICIONES DE ACRONIMOS Y ABREVIATURAS • Cliente: Persona que accede a la WEB_Libreria_BETA. • Cliente Registrado: Cliente que tiene Nick y contraseña cuyos datos están almacenados en la base de datos. • Administrador: Persona que accede al sistema y es el encargado de dar de alta y dar de baja a los clientes registrados, escoge los productos que son pedidos, ofertados, dados de alta y de baja.(El administrador es el dueño o el encargado del negocio). • Producto: Articulo de librerÃ−a o de papelerÃ−a que se venden en la librerÃ−a. • Proveedor: Entidad encargada de recibir los pedidos y de abastecer de productos la tienda. • Banco: Entidad que tras comprobar que un número de tarjeta corresponde a una cuenta que pertenece a un cliente concreto, y que la cuenta tiene una cierta cantidad de dinero, procede al cobro de esta cantidad (traspasando de la cuenta del cliente a la cuenta de la librerÃ−a). • Cesta de Compra: Conjunto de productos que son relacionados con un cliente que se agrupan para después poderlo comprar. • Grupo: conjunto de productos que están agrupados porque tienen ciertas caracterÃ−sticas comunes. • Pedido: E-mail que se manda desde el sistema a un proveedor con los datos de los productos que se desean reponer en la tienda, con objetivo de que este los envÃ−e. • Stock: Lista de productos con su numero correspondiente de existencias en la tienda. • BD: Base de Datos. • Selección: Acción que realiza el cliente o el administrador que consiste en elegir con el puntero del ratón una opción. DESCRIPCION GENERAL Perspectivas del producto. La librerÃ−a BETA es una tienda con artÃ−culos de librerÃ−a y papelerÃ−a de propósito general que necesita informatizar algunos de sus procesos con el fin de conseguir mayor eficacia, ahorro de costes y aumento de los beneficios. Funciones del producto y CaracterÃ−sticas de Usuario. La dirección de la tienda ha pensado en un servicio de venta de artÃ−culos a través de Internet. En el acceso a la Web, la pantalla inicial mostrará los distintos productos en oferta, asÃ− como enlaces a cada grupo de productos ofertados (consumibles papelerÃ−a, libros,…) El usuario puede consultar los productos, caracterÃ−sticas generales, precios, disponibilidad…, en cada pantalla de consulta de producto aparece una opción (un botón) desde el que se puede añadir a la “cesta de la compra” el producto deseado. El usuario puede acceder en cualquier momento a comprobar el estado de su “cesta de la compra”, desde donde puede confirmar los datos de la compra. La confirmación de una compra esta restringida a usuarios registrados previamente. Al usuario que haya decidido confirmar una “cesta de la compra” si no esta validado en el sistema se le 3

presentara una pantalla de validación donde introducir su nick de usuario y su clave de acceso (contraseña). Una vez pasada la validación, se le presentara una pantalla donde figuran los detalles del pedido Si los datos son correctos se le presentara una pantalla que muestra sus datos personales. El usuario procederá al pago del pedido introduciendo un número de tarjeta de crédito y su fecha de caducidad. Una vez validada la compra con la entidad emisora de la tarjeta se presentará una pantalla donde figuraran los datos relativos al pedido (incluyendo el numero de pedido, artÃ−culos que lo forman, fecha, estado...) que el usuario podrá consultar en una ocasión futura. Los pedidos que hacen los clientes en la librerÃ−a actualizan el stock de productos de la misma cada producto tiene registrado un umbral por debajo del cual es necesario pedir nuevos suministros a los proveedores. Semanalmente el administrador de la tienda, debe recuperar el estado del stock para aquellos productos cuyo número de existencia se encuentre por debajo de su umbral preestablecido. El administrador elegirá de la lista de productos aquellos que enviará a los proveedores, asÃ− como el proveedor al que se pedirá cada uno de los productos, el numero de unidades de cada producto, guardando un registro del pedido para cotejar posteriormente la entrega por parte de cada proveedor. Requisitos EspecÃ−ficos Requisitos funcionales • El sistema mostrará una pantalla inicial con varios enlaces. Cada enlace nos llevara a una pantalla distinta dependiendo de este. también se nos mostrara una lista con todos los productos los cuales tengan el atributo “en oferta” activado. El cliente o el administrador en esta pantalla inicial puede seleccionar un grupo de productos, seleccionar un solo producto, ver la cesta de la compra o ir a la pantalla login. • El sistema mostrará una pantalla con todas las caracterÃ−sticas de un producto, la referencia de que producto mostrar la obtendremos como parámetro de entrada a la pantalla. A esta pantalla se puede acceder desde la pantalla inicial o desde la pantalla de grupo. El usuario puede volver a la pantalla inicial o añadir el producto a la cesta (donde se mostrará la pantalla de la cesta). • La pantalla de Grupo muestra una lista con los nombres de todos los productos de dicho grupo (el grupo a mostrar se recibe como parámetro de entada a la página). A esta pantalla se tiene acceso desde la pantalla inicial. En esta pantalla el cliente puede seleccionar un producto e ir a la pantalla que muestra este producto, o bien volver a la pantalla inicial. • La pantalla de Cesta muestra una lista con todos los productos añadidos por el cliente a dicha lista, a dicha pantalla se puede acceder directamente desde un enlace en la pantalla principal o bien a la vez que añades un articulo desde la pantalla de mostrar articulo. El numero de ejemplares añadidos a la cesta no puede superar en ningún caso al stock (numero de ejemplares disponibles) Desde esta pantalla puedes regresar a la pantalla principal o activar el proceso de compra (ir a la pantalla de entrada). • En la pantalla de entrada (pantalla login) el sistema muestra un formulario con dos campos a rellenar nick y contraseña que tras rellenarlo comprueba si es un cliente registrado, el administrador o ninguno de ellos , dependiendo de esto procede al pago de la cesta, activa el menú del administrador, o muestra un mensaje de error. • El procedimiento de pago muestra al cliente los datos del pedido que se han obtenido de la cesta de compra, además muestra los datos del cliente correspondiente, también obtiene el numero de tarjeta de crédito y la fecha de caducidad de esta. EnvÃ−a el numero de tarjeta de crédito, el importe y el DNI del cliente comprador a una entidad bancaria que se encarga de validar los datos que han sido enviados y en el caso de que sea todo correcto procede al cobro de el importe a la cuenta que corresponda al numero de tarjeta, devuelve al sistema la información de si ha sido cobrado o no. El flujo de información entre el sistema y 4

el banco se realiza sincronizando los dos sistemas. El movimiento real de dinero lo realizará un sistema independiente de la WEB_Libreria_BETA por motivos de seguridad del banco. Después de que el sistema halla recibido la confirmación del cobro por parte del banco, nuestro sistema debe actualizar el stock de los productos del pedido. • En el caso de que el usuario se halla identificado como administrador. El sistema le mostrará un menú con dos opciones correspondientes a las dos funciones de gestión que tiene el administrador: gestionar los clientes y gestionar los productos. • En cuanto a la gestión de Clientes el sistema le muestra un formulario para conseguir el Nick del cliente que se quiere “gestionar” y dependiendo de si el Nick esta o no en la base de datos se procederá a crearlo en el caso de que no exista mostrando un formulario para obtener todos los datos necesarios (contraseña, DNI, dirección, nombre y dirección electrónica) que se almacenaran en dicha base de datos. En el caso de que exista dicho nick se muestran los datos y se modifican o se borrar si es menester del administrador. • Si el Administrador decide gestionar los productos el sistema mostrara la lista de todos los productos con su stock (El stock del producto le mostrará resaltado en color rojo si es menor que su umbral) y una casilla donde es posible introducir un numero que corresponderá a el numero de dichos productos a reponer. Junto a cada casilla en cada producto hay un enlace que pulsándole pasamos al procedimiento de alta-baja de producto. Al final de la lista aparece un botón que al pulsarle se realiza el pedido al proveedor. • Cuando el administrador realiza el pedido el sistema agrupa los productos por proveedor, creando tantos pedidos como proveedores y manda un e-mail a cada proveedor con el pedido correspondiente a este. • Para dar de Alta o Baja de un producto el sistema debe obtener el nombre de referencia de dicho producto mediante un formulario o similar y dependiendo si el nombre obtenido esta o no esta en la base de datos se procederá a crearlo y almacenarlo en la base de datos (pidiendo al administrador los datos del producto) en el caso de que el producto no exista. En el otro caso (que el nombre del producto si se encuentre en la base de datos) se mostrarán los datos y se eliminará dicho producto si asÃ− aceptase el administrador. Requisitos relacionados con los datos. • Cada cliente debe tener un Nick o seudónimo que será el identificador principal de cada cliente (no pueden existir dos clientes con el mismo Nick), también debe tener una contraseña, el DNI, la dirección, el nombre real (y los apellidos) y el correo electrónico. A excepción del Administrador que solo tiene Nick y contraseña. • Cada proveedor tendrá un código como identificador principal, el nombre el NIF y la dirección electrónica. • Las cestas de la compra se componen de productos y pueden estar o no estar relacionadas con un cliente (pero para efectuar la compra de una cesta se debe relacionar con un cliente). Cada cesta debe tener un código como identificador principal. Las cestas de compra se eliminan de la base de datos cada vez que se realiza el envÃ−o fÃ−sico de cada cesta. • Los productos tienen como identificador principal un código, también tienen nombre, precio, descripción, stock (numero entero), una foto (opcional), un umbral (numero), y un valor booleano que indica si esta o no esta en oferta. • Los pedidos están compuestos por un numero de pedido (identificador principal) una fecha y un conjunto de productos cada uno con su correspondiente numero de unidades pedidas de dicho producto. Diagrama de Contexto. Diagrama de sistema: Diagrama 0 Diagrama nivel 1 Proc_cliente

5

2. Proc_Administrador Diagrama Nivel 2. 1.1 Producto 2.3 Gestion_Productos. Diccionario de Datos • p_inicial= *pantalla que muestra los distintos productos en oferta y enlaces a los distintos grupos de productos* • Selección = *Selección en un enlace o una opción que realice un cliente mediante el ratón* • Consulta_producto= Nombre +precio + descripción + disponibilidad + (foto) + enl_cesta + enl_inicio. • Nombre = String. • Precio = numero. • Descripción = {String} • Disponibilidad = numero entero • Foto = imagen. • Grupo = {Nombre + (foto) + precio +enl_prod} + enl_inicio. *es una pantalla que muestra al cliente todos los productos del grupo escogido* • Enl_cesta = *botón (enlace) que al pulsarle activa la pantalla de cesta pasando la referencia del producto como parámetro* • Enl_producto = *botón (enlace) que al pulsarle activa la pantalla de consulta de producto pasando la referencia del producto como parámetro*. • Cesta = productos + total + enl_confirmacion + enl_inicio *pantalla que muestra todos los productos que se han añadido a la cesta* • Productos = {nombre + precio + unidades} • Unidades = numero entero. • Enl_confirmacion = *botón (enlace) que al pulsarle activa la pantalla de entrada pasando la referencia de la cesta como parámetro* • confirmación = *Selección que hace el cliente en el enlace de confirmación* • Enl_inicio = *botón (enlace) que al pulsarle activa la pantalla inicial* • Pantalla login = *es una pantalla que muestra un formulario donde se pide nick y contraseña* • Login = nick + contraseña. • Nick =String • Contraseña = String *que sale oculto por asteriscos * • Pedido_c = Cesta + num_pedido *Pantalla con los datos de cada pedido* • Num_pedido =Numero entero • D_personales = Nombre + dirección +correo electrónico + DNI • Direccion= 1{String} 10. • Correo electrónico = String +”@”+String • DNI= 1{numero}8 +Carácter • Numero = [0|1|2|3|4|5|6|7|8|9] • P_pago = *pantalla con un formulario para introducir dos datos un numero de tarjeta y una fecha de caducidad* • Pago = nº tarjeta + fecha_caducidad • Nº tarjeta = 1{numero}12 • Fecha_caducidad= date. 6

• Validación Tarjeta = DNI +pago +importe • Importe= numero real. • Menu_A = *pantalla que tendrá enlaces a distintas opciones que puede realizar el administración* • Estado_Stock = {nombre + disponibilidad +umbral+casilla+ enl_prod} + botón *pantalla que muestra toda una lista de productos con su numero de existencias y su umbral preestablecido (si el nº de existencias es menor que el umbral estos datos aparecerán en rojo además aparecerá una casilla al lado de esta)* • Umbral = numero entero • Casilla = *casilla de un formulario o similar que permite poner un numero entero* • botón = botón que pertenece a un formulario para enviar datos a otra proceso. • Pedido_p = proveedor + {nombre + unidades}*e-mail enviado al proveedor con distintos datos de los productos* • Crear_modificar_producto = código +Nombre +Precio +Descripción +disponibilidad +foto+ umbral + oferta • Oferta = boolean • Tarjeta Valida =bolean • Producto= Crear_modificar_producto. • Crear_Modificar_cliente = login +DNI +dirección +Nombre + correo electrónico. • Cliente = CrearModificar_cliente • P_cliente= *pantalla que muestra un formulario donde se pueden introducir todos los datos del cliente* • Clientes = @{nick} • Productos = @ {codigo_p} • Codigo_p = numero *identificador para la B.D de los productos* • Cestas = @ {codigo_c} • Codigo_c = numero *identificador para la B.D de las cestas* • Act_admin= *Activa Menu_Admin* • Act_entrada = *Activa Entrada y pasa como parámetro un codigo_c* • Act_prc_pago= *Activa proc_pago y pasa como parámetro un codigo_c* • Act_Gestion_cliente=*Activa Gestion_cliente* • Act_Gestion_productos= *Activa gestión productos y pasa como parámetro un codigo_p* • Act_p_inicial= *Activa pan_inicial * • Act_p_producto= *Activa pan_producto y pasa como parámetro un codigo_p* • Act_pan_grupo= *Activa pan_grupo y pasa como parámetro el código de un grupo* • Act_pan_Cesta= *Activa pan_cesta * • Añadir_pan_cesta= *Activa pan cesta y pasa como parámetro un codigo_p* • Act_hacer_pedido= *Activa proc_pago y pasa como parámetro un pedido_p* • Act_alta_baja_producto= *Activa Alta_baja_producto y pasa como parámetro un codigo_p* Especificación de procesos primitivos • pan_inicial (Este proceso nos muestra la pantalla inicial con varias opciones y dependiendo de cual se escoja realiza uno u otro proceso) INICIO Abrir B.D productos Repetir

7

Leer Registro de producto Si (el registro esta marcado como “en oferta”) Entonces Guardar datos en ofertas Hasta que no queden registros en la base de datos Mostrar ofertas Cerrar B.D productos. Obtener Selección En El Caso de que (Selección) Sea: Producto: Act_pan_producto (pasando el codigo_p del producto seleccionado como parámetro). Grupo: Act_pan_grupo (pasando como parámetro el código del grupo escogido) Cesta: Act_pan_Cesta. Salir: Salir del sistema. FIN. 1.1.2_pan_producto Precondición: Recibe el codigo_p de un producto determinado. (Muestra las caracterÃ−sticas de un producto) INICIO Abrir B.D. Producto Repetir Leer Registro de producto Si (código de producto leÃ−do = código de producto pasado _____recibido) Entonces Guardar reg. de producto en prod y marcar la variable encontrado Hasta que encontrado = trae Cerrar BD Productos Mostrar registro prod Obtener Selección

8

En El Caso de que (Selección) Sea: Inicio: Act_pan_inicio Añadir a Cesta: Añadir_pan_Cesta (pasando como parámetro el codigo_p). FIN 1.1.3_ pan_Grupo Precondición: Recibe el código correspondiente a un grupo (Este proceso nos muestra todos los productos correspondientes a un grupo dado con sus respectivos enlaces) INICIO Abrir BD producto Repetir Leer Registro de producto Si (código del Grupo del producto = código de entrada) Entonces Guardar Registro producto en Gru Hasta que no queden registros en la B.D Cerrar B.D producto Mostrar Gru Obtener Selección En el Caso de que selección Sea: Inicio:Act_pan_inicio. Producto: Act_pan_producto (y pasa como referencia el codigo_p ) 1.1.4_ pan_cesta Precondición: Puede recibir el código correspondiente a un producto o puede que no recibir nada, también recibirá un código de Cesta que es único para cada sesión de cliente (Este proceso nos muestra todos los productos correspondientes a una Cesta dado con sus respectivas opciones) INICIO Abrir BD producto

9

Si recibe producto Entonces Si (el nº de unidades <= Stock del producto) Entonces Añade el producto con el código recibido a la cesta correspondiente a la sesión Repetir Leer Registro de producto Si (código de la Cesta del producto = código de cesta de entrada) Entonces Guardar Registro producto en Cest Hasta que no queden registros en la B.D Cerrar B.D producto Mostrar Cest Obtener Selección En el Caso de que selección Sea: Inicio:Act_pan_inicio. Confirmar: Act_entrada (y pasa como referencia el código de la cesta ) FIN 1.2_ Entrada Precondición: Puede recibir el código correspondiente a una Cesta. (Este proceso nos muestra un formulario donde identificarse y lo comprueba) INICIO Abrir B.D. Clientes Repetir Mostrar formulario (p_login) Obtener login Si (Nick esta en B.D.Clientes) y (contraseña coincide) Entonces Si (usuario= Administrador) Entonces

10

Act_Admin. Si No Act_proc_pago (enviando el código de la cesta) Hasta que Nick y contraseña sean correctos Cerrar B.D. Clientes FIN 1.3._ proc_pago Precondición: Recibe un código de cesta (En este procedimiento el sistema nos muestra los datos del pedido y los datos personales y si lo aceptamos nos pide un numero de tarjeta de crédito correspondiente a una cuenta de la cual se realiza el código del pedido) INICIO Abrir B.D. Cesta Obtener Cesta con el código sea igual al de entrada Obtener productos relacionados con la Cesta y mostrarlos por pantalla Cerrar B.D. Cesta Esperar confirmación del cliente Abrir B.D Cliente Obtener el código de cliente a partir de la Cesta Mostrar d_personales de dicho cliente Esperar confirmación del cliente Repetir Mostrar p_pago Obtener pago Calcular el importe total del pedido Enviar Validación Tarjeta Obtener tarjeta_Valida

11

Si (tarjeta_Valida =true) Entonces Actualizar la B.D productos restando al stock de cada producto que aparece en el pedido_c el numero de unidades correspondientes Hasta que (tarjeta_valida = true) FIN 2.1_ Menu_Admin (Este proceso nos muestra un menú y dependiendo de lo que se seleccione activa un proceso u otro) INICIO Mostrar Menu_A Obtener Selección En el Caso de que Selección Sea: gestión de Clientes: Act_Gestion_Clientes gestión de productos: Act_Gestion_productos. FIN 2.2_ Gestion_Clientes (Este proceso no muestra un formulario para poner un Nick y dependiendo de si esta o no crea un nuevo cliente o lo modifica) INICIO Mostrar p_cliente Obtener Crear_Modificar_Cliente Abrir B.D.Clientes Si (Nick esta en la B.D. Clientes) Entonces Mostrar Cliente Actualizar B.D cliente con los datos obtenidos en Crear_modificar_cliente Si No Crear Cliente con los datos obtenidos Mostrar Cliente

12

Cerrar B.D. clientes FIN • _ Inicio_Gestor (Nos muestra una pantalla con el estado del stock y dependiendo la opción escogida lanza un proceso u otro) INICIO Abrir B.D productos Mostrar Estado_Stock Obtener Selección Cerrar B.D productos En el Caso de que selección Sea: Hacer Pedido: Act_Pedir_productos (pasando al siguiente proceso el código de los productos pedidos y sus unidades) Gestión: Act_Alta_Baja_productos FIN • _ hacer_pedido Precondición: recibe unos pares de datos (codigo_p y numero) (Este proceso agrupa los productos por proveedores y manda a cada uno un e-mail con el pedido) INICIO Abrir B.D. Productos Repetir Leer registro de producto (de la B.D) Si (codigo_p = codigo_p_recibido) Entonces Guardar reg en Pedidos Hasta que no queden registros en la base de datos Agrupar los registros de Pedidos por el proveedor de cada producto Enviar a cada proveedor un pedido_p con los registros correspondientes a este Almacenar cada pedido_p enviado en la B.D 13

Cerrar_B.D. productos FIN 2.3.3_ Alta baja producto (Este proceso no muestra un formulario para poner unos datos del producto y dependiendo de si esta o no crea un nuevo cliente o lo modifica) INICIO Obtener Crear_Modificar_producto Abrir B.D.productos Si (Nick esta en la B.D. productos) Entonces Mostrar producto Actualizar B.D productos con los datos obtenidos en Crear_modificar_producto Si No Crear producto con los datos obtenidos Mostrar producto Cerrar B.D. productos FIN Esquema de la Base de Datos Glosario del Esquema de la Base de Datos: • Codigo_p (identificador principal) (numero entero) • Nombre (String) • Precio (numero) • Descripción (texto) • Stock (numero) • Foto (archivo binario) • Umbral (numero) • Oferta (boolean) • Numero pedido (numero)(identificador principal) • Fecha (date) • Numero unidades (numero) • Codigo_g (numero)(identificador principal) • Nombre_g (String) • Codigo_proveedor (identificador principal) ñ. Nombre_p (string)

14

o. NIF (numero) p. E-mail (string) q. Nº de ejemplares (numero) r. Codigo_c (numero)(identificador principal) s. Nick (String) (identificador principal) t. Contraseña (String). u. DNI (numero) v. dirección (texto) w. Nombre (String) x. Correo electrónico

DISEÃ O ARQUITECTONICO

ESPECIFICACION DE CADA MODULO Selección de producto Este modulo se compone de un conjunto de ventanas que tendrán enlaces entre si para pasar de una a otra. La función de estas ventanas es mostrar al cliente los distintos productos que se pueden comprar. Este modulo tan solo consta de un proceso y según el dato que se introduzca mostrará unos productos o otros. INICIO Abrir B.D productos En El Caso de que Parámetro de entrada Sea: Nulo: (pan_inicial) Inicio Repetir Leer registro de producto Si (esta en oferta) Entonces Guardar registro en Ofertados

15

Hasta que no halla mas registros en la B.D Mostrar el nombre u el precio de los productos que están en ofertados. Mostrar diferente enlaces. Fin Codigo_g : (pan_grupo) Inicio Repetir Leer registro de producto Si (su código es = código de grupo) Entonces Guardar registro en Grupo Hasta que no halla mas registros en la B.D Mostrar el nombre u el precio de los productos que están en Grupo. Mostrar diferente enlaces. Fin Codigo_p (pan_producto) Inicio Mostrar datos del registro cuyo código de producto coincide con el de entrada. Mostrar los diferentes enlaces. Fin Codigo_p y codigo_cesta (pan_cesta) Inicio Si (el codigo_cesta es 0 (código por defecto)) Entonces Asignamos a esta sesión un numero de cesta siguiente al ultimo Si (el codigo_p no es 0 (código por defecto)) Entonces Enlazamos el producto con la cesta dados Mostramos todos los productos que componen la cesta con el numero dado.

16

Mostramos los diferentes enlaces. Fin Cerrar B.D FIN Modulo pago producto Este modulo consiste en que recibe una cesta de la compra (un conjunto de productos) y se pide una tarjeta de crédito para cobrarse de ella el importe de la cesta. Pago producto Entrada: código de Cesta (leer cesta), Nº de tarjeta(leer pago) INICIO Abrir B.D productos Agrupar los productos que estén en la cesta y sumar los precios de estos por el numero de ejemplares en la cesta y guardarlo en una variable: Importe. Cerrar B.D. productos Repetir Obtenemos un numero de tarjeta Enviamos al banco el numero de tarjeta el Importe (calculado antes) y la identificación del cliente y esperamos respuesta del banco. Si (respuesta es valida) Entonces Escribimos mensaje Correcto Si No Escribimos mensaje de Error Hasta que la respuesta sea valida FIN Modulo de la gestión de la Base de Datos Entrada: El Nick o código identificativo de la relación de datos que queremos modificar Acción: Modifica la correspondiente Tupla de la base de Datos de la forma deseada Creándola o borrándola.

17

INICIO Obtener identificador Si (identificador es numérico) Entonces Abrir B.D productos Si No Abrir B.D. Clientes Si (identificador existe en la base de datos) Entonces Mostrar Datos del registro con dicho identificador Actualizar estos datos con otros obtenidos manualmente por el administrador Si No Crear Nuevo registro don los datos obtenidos manualmente por el administrador Mostrar Datos del Registro con dicho identificador Si (identificador es numérico) Entonces Cerrar B.D productos Si No Cerrar B.D. Clientes FIN Modulo gestión Pedido Este modulo gestiona la opciones que se puede hacer de un pedido y envÃ−a este pedido vÃ−a correo electrónico. Entrada: artÃ−culos y nº de ellos que se quieren pedir Salida: e-mail a cada proveedor con su pedido correspondiente INICIO Abrir B.D productos Agrupar los artÃ−culos que aparezcan en la entrada y tengan el mismo proveedor en registros con el nombre de cada proveedor y con el numero de unidades Enviar a cada proveedor un e-mail con los artÃ−culos y el numero de unidades a pedir de el grupo formado para dicho proveedor. 18

FIN 29 Pedido_c Cliente Selección Producto Crear_modificar_producto Selección P_cliente Producto Estado_stockl Grupo Crear_modif.icar_Cliente Pedido_p Tarjeta Valida Validación Tarjeta P_inicial Consulta producto pago P_pago D_personales login P_login Confirmacion Cesta 1

19

Proc_Cliente Administrador Proveedor Banco WEB_ LibrerÃ−a_BETA Cliente P_inicial Selección Consulta_producto Grupo Cesta P_login Confirmacion login Pedido_c D_personales P_pago pago Validación_tarjeta tarjeta 2 Proc_Admin Clientes productos Act_Admin Estado_Stock

20

producto P_cliente Crear_Modificar_cliente Selección Mostrar_modificar_producto Estado_Stock Cliente Producto Pedido_p Tarjeta_Valida Validar_tarjeta pago P_pago Datos personales Pedido_c Act_proc_pago productos Cestas Clientes Act_Admin login P_login 1.3 proc_pago Act_entrada 1.2

21

Entrada Cesta Confirmacion Grupo Consulta_Producto Seleccionl P_inicilal 1.1 producto 2.1 Menu_Admin 2.2 Gestion_Clientes Act_Admin Menu_A Selección Menu_A Act_Gestion_Cliente Clientes Crear_Modificar_Cliente P_Cliente Cliente 2.3 Gestion_Productos Act_Gestion_Productos Productos Estado _Stock Selección

22

Pedido_p Crear_Modificar_Producto Producto 1.1.1 pan_inicial 1.1.3 pan_Grupo 1.1.2 pant_producto 1.1.4 pan_Cesta Productos Act_pan_inicial Act_pan_inicial Act_pan_inicial Act_pan_Cesta Act_pan_Grupo Act_pan_producto Act_pan_producto Añadir_pan_Cesta Act_Entrada Crear_Modificar_Producto Producto Pedido_p productos Estado_Stock Selección

23

2.3.3 Alta_baja_Producto 2.3.2 Hacer_pedido 2.3.1 Inicio_Gestor P_inicial Selección Consulta_producto Selección Selección Cesta Selección Act_Alta_Baja_Producto Act_hacer_pedido PRODUCTO PEDIDO GRUPO PROVEEDOR CESTA CLIENTE Se compone de Provee de pertenece Se compone de

24

Se relaciona con: a b c d f e g h i j k i l m n ñ o p q r s t u v w

25

x 1:N 1:N 1:N N:M N:M Enviar Pedido Leer pedido Escribir Datos Leer Datos Escribir cesta valida Leer Pago Leer Cesta Leer prod seleccionado Mostrar Productos Seleccionar Opción Seleccionar Opción

26

GESTION DE LA BASE DE DATOS GESTION PEDIDO GESTION PRODUCTO GESTION CLIENTES PAGO PRODUCTO SELECCIÃ N PRODUCTO GESTION COMPRA Seleccionar Modo GESTION CENTRAL LIBRERIA

27

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.