Documente Academic
Documente Profesional
Documente Cultură
Siste
ma de Base de Datos
INTEGRANTES:
Página 1 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
El proyecto consiste en desarrollar un sistema de venta de gas, el mismo que va a
ser administrado por tres tipos de usuarios (ADMINISTRADOR, CALL CENTER,
VENDEDOR), cada uno de ellos tiene su respectiva funcionalidad:
Lista de Actores
1. Cliente
2. Empleado
3. Administrador
Descripción de Actores
1. Nombre: Cliente
Descripción: Persona que solicita nuevos tanques o servicio técnico a la empresa.
Además puede ver sus reservas y el estado en el que se encuentran.
Notas: Actor Principal
2. Nombre: Empleado
Descripción: Persona que se encarga de retirar los tanques del proveedor, entregar
tanques
3. Nombre: Administrador
Descripción: Persona que se encarga de la administración del sistema: el ingreso,
modificación o eliminación de los datos de los clientes, proveedores y empleados.
También se encarga de la administración de las cuentas.
Notas: Actor Principal
Propósito de la empresa.
La empresa tiene como propósito ofrecer a nuestro cliente la venta de gas de tipo
industrial y domestico, para la cual cuenta con un stock en nuestras bodegas de
almacenamiento, contamos con una cadena de distribuidores para así poder cumplir
con las necesidades de nuestra cartera de clientes.
Procesos
Compra a Proveedor
Solicitar al proveedor el stock requerido.
Venta a Clientes
Página 2 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Reservación del Cliente.
Generar factura que especifique el total a cobrar a los clientes por los
productos.
Especificación de Procesos
Compra a Proveedor
Venta a Clientes
El gerente debe asignar a un encargado para que cumpla con las tareas de
la solicitud. El encargado debe dirigirse a la dirección del cliente con los
tanques correspondientes.
Página 3 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
DATOS TIPO DE ADMINISTRADOR EMPLEADO CALL
ACCESO CENTER
USUARIOS Ingresar X
Modificar X
Eliminar X
Consultar X
FORMULARIO DE Ingresar X
PROVEEDORES
Modificar X
Eliminar X
Consultar X X
FORMULARIO DE Ingresar X X
EMPLEADOS
Modificar X
Eliminar X
Consultar X
FORMULARIO Ingresar X
SALIDA DE
Modificar X
PRODUCTOS
Eliminar X
Consultar X X
FORMULARIO DE Ingresar X
PEDIDOS
Modificar X
Eliminar X
Consultar X X
FACTURAS Ingresar X
Modificar X
Eliminar X
Consultar X X
1. Modificar empleado
Escenarios:
2. Eliminar empleado
Escenarios:
3. Consultar empleado
Escenarios:
4. Ingresar producto
Escenarios:
5. Modificar producto
Escenarios:
6. Eliminar producto
Escenarios:
7. Consultar producto
Escenarios:
9. Modificar pedido
Escenarios:
10.Eliminar pedido
Escenarios:
Página 5 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
• Eliminación de pedido exitoso
• Eliminación de pedido no exitosa, la identificación no existe
11.Consultar pedido
Escenarios:
12.Realizar factura
Escenarios:
Falta de datos
Página 6 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Ingreso de datos no validos
Página 7 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Descripción C004: Consultar usuario
Notas: El administrador podrá consultar la información de
un usuario
Página 9 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Escenario 11.1 Modificación exitosa de los datos del empleado
Escenario 11.2 Modificación no exitosa, faltan datos
Página 10 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Página 11 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Escenario 22.1 La factura se realizo con éxito
Escenario 22.2 La factura no se pudo realizar con éxito
Cuenta
PK usuario
clave
Persona
PK Cedula
Tipo_persona
Nombre PK id_tipo Detalle_Reserva
Producto
Apellido
Genero PK id_det_reserva
Nombre PK id_producto
Edad
telefono 1 cantidad
nombre
telefono2 FK1 id_producto
precio
direccion precio_total
sueldo
Venta
email1
email2 PK id venta
FK1 id_tipo
usuario FK1 id_cliente
FK2 id_empleado
FK3 id_det_reserva
Comprar Reservar
PK id_compra PK id reserva
Detalle_Compra
FK1 id_empleado PK id_compra FK1 id_cliente
FK2 id_proveedor FK2 id_empleado
FK3 id_det_compra cantidad FK3 id_det_reserva
precio_total
FK1 id_producto
Página 12 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Modelo Lógico:
Página 13 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Diseño Lógico
Página 14 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Persona
PK Cedula
Tipo_persona
Nombre
PK id_tipo Detalle_Reserva
Apellido Producto
Genero PK id_det_reserva
Edad Nombre PK id_producto
telefono1 cantidad
telefono2 nombre
FK1 id_producto
direccion precio
precio_total
sueldo
email1 Venta
email2
FK1 id_tipo PK id venta
usuario
contraseña FK1 id_cliente
FK2 id_empleado
FK3 id_det_reserva
Comprar Reservar
PK id_compra PK id reserva
Detalle_Compra
FK1 id_empleado FK1 id_cliente
PK id_compra FK2 id_empleado
FK2 id_proveedor
FK3 id_det_compra FK3 id_det_reserva
cantidad
precio_total
Diseño Conceptual
Página 15 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
INTERACCIÓN DE OBJETOS
Cliente (Empleado)
Página 16 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Validar
Ingresar
Paquete:
Direcciona
Basedatos
Datos clave
de
index.jsp
Index.jsp
menu.jsp usuario
página
y del cliente
la cuenta
UsuarioCtrl.class
de SP:
del
Función:
usuario,
login
Datos
Cliente presionar
cuente del
datos
login
LOGIN
Cliente
Página 17 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Ingresar
Mensaje:
Presionar
Guardar todos
cliente.jsp
PedidoCtrl.
Base
Paquete: Los
de Ingresar
datos
los
datos
Ingresar_pedido.jsp
PedidoCtrl.class
Ctrl Class completado.jsp
datosFunción:
fueron obligatorios
registrados
Pedido y
SP:datos
insertarPedido
presionar
correctamente.
Enviar
reservar
insertarDetallePedido
Página 18 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Función:
Presionar
Datos
Basede Ver
las
PedidoCtrl.class
index.jsp
ver_pedido.jsp
Paquete: de
Ctrl,Srv
consultaReservas
Reservas/
Res ervaciones
es.java
datos
SP: listarPedidos
* Pendientes
Página 19 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Función:
Presionar
aje:
Paquete: de
PedidoCtrl.
Mens class
ver_pendientes.jsp
completado.jsp
Base Se Srv
Ctrl,
eliminaPedido()
Drop
datos
SP:
eliminaron
eliminaPedido
correctamente
EliminaDetalle.
Cliente
Caso 5: Ingreso Cliente
Escenario 5.1: El cliente ingreso con éxito al sistema.
Página 20 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Validar
Ingresar
Paquete:
Direcciona
Basedatos
Datos clave
de
index.jsp
menu.jsp Ctrl,
de
UsuarioCtrl.
UsuarioSrv. página
y class
Srvdel cliente
la Cuenta
class SP:
del
Función:
usuario,
validarDatos.
Datos
Cliente presionar
cuenta del
datos
Validardatos();
Ingresar
Cliente
Página 21 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Opción:
Presionar
Datos
Datos de
de
index.jsp lalos Srv
UsuarioSrv.jsp
Base de
UsuarioCtrl.
lista_usuario.
Función:
Paquete: Ctrl, class
jsp
ConsultaUsuario
Consultar
consulta
empleados
datos
listarEmpleados
SP:listarEmpleados
realizada
Empleados
Página 22 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Opción:
Presionar
Escribir
Paquete:
Datos
Función:
Datos del
index.jsplos
Editar
Ctrl,
del
Modifica_usu datos
completado.jsp
Base de
UsuarioCtrl. Srvque
empleado se desean
class
modificarUsua
Edit
modificar
SP:modificaUsuario
empleado yapresionar Guardar
datos
ario.jsp
modificar
rio
Página 23 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Página 24 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Caso 9: Venta de tanques
Escenario 9.1: El empleado vende la reservación escogida.
Función:
Paquete:
Datos
Se ha confirmado
Datos
Base de
de
Presionar las
de
PedidoCtrl.
PedidoSrv. reslaervaciones
Confirmar
las class
class
lista_pedidos.jsp
completado.jsp
listarPendientes
Confirmar/
packReservacionT
reservaciones
reservación
por escogida
confirmarporanques SP:
datos
*Tanques
listarPendientesT
confirmar anque
Página 25 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Página 26 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Página 27 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Página 28 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Mensaje:
Presionar
Paquete:
Función:
Base modificarCuenta
Se
CtrlSP:
edit
SrvModificaron
lista_usuario.jsp
completado.jsp
de
UsuarioCtrl.
UsuarioSrv.
Función:
Paquete: class
SP:class
modificaCuenta
modificarUsuario
correctamente los datos
datos
modificarUsuarios
Página 29 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Página 30 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Página 31 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Mensaje:
Presionar
Paquete:
Función:
Base modificaCuenta
index.jsp Se
Ctrl
edit
srvModificaron
completado.jsp class
modifica_usuario.jsp
de
UsuarioCtrl.
Función:
Paquete:
SP: modificarUsuario
correctamente los datos
datos
modificaUsuario
SP:odificaCuenta
Página 32 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Página 33 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Diccionario de Datos:
TABLA TB_PERSONA
CARDINALID TAMAÑ
NOMBRE TIPO DESCRIPCION
AD O
Página 34 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Apellido
Varchar2 Apellido (1….1) 20
Solo son dos entre Masculino
Genero Varchar2 (1….1) 20
y Femenino
Edad Varchar2 La edad de la persona (1….1) 20
Teléfono principal de la
Telefono1 Varchar2 (1….1) 20
empresa o persona
Es el teléfono secundario de
Telefono2 Varchar2 la persona, es para evitar el (1….1) 20
atributo multivaluado.
Email principal de la empresa
Email1 Varchar2 (1….1) 20
o persona
Es el email secundario de la
Email2 Varchar2 persona, es para evitar el (1….1) 20
atributo multivaluado.
FK, Es el identificador del tipo
Id_tipo Varchar2 de persona al que nos (1….1) 20
referimos
Es el usuario que va a tener
Usuario Varchar2 la persona o empresa para (1….1) 20
acceder a la base de datos
Es la contraseña que va a
Contrasen tener la persona o empresa
Varchar2 (1….1) 20
ia para entrar a la base de
datos
TABLA TB_TIPO
CARDINALID TAMAÑ
NOMBRE TIPO DESCRIPCION
AD O
Página 35 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
TABLA TB_COMPRA
CARDINALID TAMAÑ
NOMBRE TIPO DESCRIPCION
AD O
TABLA TB_DETALLE_COMPRA
CARDINALID TAMAÑ
NOMBRE TIPO DESCRIPCION
AD O
Id_det_com
Varchar2 PK, identificador de la tabla. (1….1) 20
pra
FK1, identificador del
Id_producto Varchar2 (1….1) 20
producto
Numéric Cantidad del producto que
Cantidad (1….1) 20
o compramos
Precio total de los productos
Precio_total Varchar2 (1….1) 20
que compramos
TABLA TB_VENTA
CARDINALID TAMAÑ
NOMBRE TIPO DESCRIPCION
AD O
transacción
FK2, identificador del
Id_det_reser
Varchar2 detalle de la reserva que (1….1) 20
va
hace el cliente
TABLA TB_DETALLE_RESERVA
CARDINALID TAMAÑ
NOMBRE TIPO DESCRIPCION
AD O
Id_det_reser
Varchar2 PK, identificador de la tabla. (1….1) 20
va
FK1, identificador del
Id_producto Varchar2 (1….1) 20
producto
Numéric Cantidad del producto que
Cantidad (1….1) 20
o reserva el cliente
Precio total de los productos
Precio_total Varchar2 (1….1) 20
que reserva el cliente
TABLA TB_RESERVA
CARDINALID TAMAÑ
NOMBRE TIPO DESCRIPCION
AD O
TABLA TB_PRODUCTO
CARDINALID TAMAÑ
NOMBRE TIPO DESCRIPCION
AD O
Página 37 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Id_producto
Varchar2 PK, identificador de la tabla. (1….1) 20
Diagrama de Clases:
Página 38 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
Producto
Usuario
Venta
Cuenta
Detalle
Pedido
id_pedido:String
Cedula:
id_venta:String
Us
idDetalle:String
uario:s s tring int
Id_producto:
Nombre:s
id_cliente:
Pas
idPedido:String
cedula:String
s word:s
Nombre: tring
String
tring
string
Apellido:s
id_empleado:String
getUs
idProducto:String
fechaP:String
uario:s
tringtring
Precio: string
Genero:s
fecha:String
getPas
cantidad:String
horaP:String
s word:s
tring tring
Stock:
Edad:int stringtring
hora;String
s
precio_total:s
esetUs
tado:String
uario:void
getId_producto:string
Telefono1:s
s
getidDetalle:String
total:s
etPastring
s word:void
tring
getNombre:string
Telefono2:s tring
getid_venta:String
getidPedido:String
getid_pedido:String
getPrecio:string
Email1:s
getid_cliente:
getidProducto:String
getCedula:String
tring
Email2:s tring
String
getcantidad:String
getFechaP:String
getStock::string
Id_tipo:s
getid_empleado:Str
getprecio_total:s
getHoraP:String
tring
setId_producto:void tring
Us
ing
s
getEs
etidDetalle:void
uario:s
tado:String
tring
setNombre:void
getCedula:
getfecha:String
s
getTotal:s
etidPedido:void
tring
s tring
setPrecio:string
getNombre:s
gethora;String
s etidProducto:void
etId_pedido:String
tring
setStock:string
getApellido:s
gettotal:s
s etcantidad:void
etCedula:String
tringtring
getGenero:s
s etid_venta:void
etprecio_total:void
etFechaP:Stringtring
getEdad:int
s etid_cliente: void
ethoraP:String
getTelefono1:s
s etid_empleado:voi
etEs tado:String tring
getTelefono2:s
d
s etTotal:s tring tring
getEmail1:s
s etfecha:void tring
getEmail2:s
s ethora:voidtring
getId_tipo:s
s ettotal:voidtring
getUs uario:s tring
s etCedula: void
s etNombre:void
s etApellido:void
s etGenero:void
s etEdad:void
s etTelefono1:void
s etTelefono2:void
s etEmail1:void
s etEmail2:void
s etId_tipo:void
s etUs uario:void
Tablas:
Página 39 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
REFERENCES "TB_CUENTA" ("USUARIO"),
CONSTRAINT "TB_PERSONA_FK1" FOREIGN KEY ("ID_TIPO")
REFERENCES "TB_TIPO" ("ID_TIPO")
)
Procedures:
CUENTA:
end cuenta;
Página 41 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
procedure modifica_cuentaUsuario(usu varchar2,pass varchar2) is
begin
update tb_cuenta set usuario=usu where contrasenia=pass;
commit;
end;
PRODUCTO:
end producto;
/
end;
Página 42 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
end producto;
USUARIO:
end usuario;
end;
end;
RESERVA:
end reserva;
/
end;
Página 46 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
end reserva;
VENTA:
end venta;
/
end;
end;
end venta;
COMPRA:
Página 48 de 50
Escuela Superior Politécnica del Litoral
Siste
ma de Base de Datos
procedure modifica_compra(id varchar2,idemp varchar2,idprov
varchar2,fe varchar2,ho varchar2,tot varchar2);
procedure elimina_compra(id varchar2);
procedure consulta_det_compra(idcompra varchar2,resultado in out
salida);
procedure inserta_det_compra(id varchar2,idcompra
varchar2,idprod varchar2,cant varchar2,ptotal varchar2);
procedure modifica_det_compra(id varchar2,idcompra
varchar2,idprod varchar2,cant varchar2,ptotal varchar2);
procedure elimina_det_compra(id varchar2);
end compra;
/
end;
end;
end compra;
Página 50 de 50