Taller Desarrollo de Aplicaciones
Taller Desarrollo de Aplicaciones
Taller Desarrollo de Aplicaciones
trabajo.
Sección: TIHI31/V-IEI-N3-P1-C1/V
- Everth Flores
- Darwin Godoy
- Giovanni Yévenes
1. Introducción ...........................................................................................................................................4
2. Objetivo ..................................................................................................................................................5
3. Requerimientos funcionales ...................................................................................................................6
3.1 Administrador ...............................................................................................................................6
3.1.1 Gestión de usuarios: ................................................................................................................ 6
3.1.2 Gestión de clientes: ................................................................................................................. 6
3.1.3 Gestión de productos: ............................................................................................................. 7
3.1.4 Gestión de ventas: ................................................................................................................... 7
3.1.5 Gestión de caja: ....................................................................................................................... 7
3.2 Jefe de ventas ...............................................................................................................................8
3.2.1 Gestión de usuarios: ................................................................................................................ 8
3.2.2 Gestión de clientes: ................................................................................................................. 8
3.2.3 Gestión de productos: ............................................................................................................. 9
3.2.4 Gestión de ventas: ................................................................................................................... 9
3.2.5 Gestión de caja: ....................................................................................................................... 9
3.3 Vendedor ....................................................................................................................................10
3.3.1 Gestión de usuarios: .............................................................................................................. 10
3.3.2 Gestión de clientes: ............................................................................................................... 10
3.3.3 Gestión de productos: ........................................................................................................... 10
3.3.4 Gestión de ventas: ................................................................................................................. 10
4 Historias de Usuario..............................................................................................................................11
5 Caso de uso ...........................................................................................................................................21
6 Especificación de Caso de uso ..............................................................................................................22
7 Conclusiones .........................................................................................................................................25
8 Referencias bibliográficas .....................................................................................................................26
En el contexto actual de las empresas en general, la eficiencia en tanto gestión de recursos, optimización de
procesos y la sostenibilidad son fundamentales para alcanzar el éxito en el mercado actual. En este sentido, la
tecnología como tal presenta un papel muy relevante y la administración no se encuentra ajena a estos avances.
El presente informe tiene como objetivo presentar el diseño y desarrollo de una aplicación de gestión enfocada en
el sector de ventas. En esta misma línea, se busca poder gestionar correctamente los distintos tipos de usuarios que
se encuentran dentro de una tienda, optimizando las tareas cotidianas que se producen dentro de la misma.
A lo largo del informe, se detallarán los requerimientos funcionales, casos de uso, historias de usuario y demás
procedimientos implementados en la elaboración de dicha aplicación, sirviendo como guía para futuros proyectos
elaborados por cualquier persona, contribuyendo a la mejora de la eficiencia operativa y toma de decisiones dentro
de una empresa.
El objetivo principal de este proyecto es desarrollar una aplicación de gestión orientada al sector de ventas
que permita mejorar la eficiencia y sostenibilidad operativa dentro de una empresa. Esta aplicación se encuentra
directamente relacionada con los roles dentro de esta empresa, los cuales son; Administrador, encargado de
gestionar de manera general la aplicación; Jefe de ventas, quién es el encargado de local y gestiona lo esencial;
Vendedor, quien finalmente se encarga de las ventas en general del local.
- Optimizar procesos: Implementación de herramientas que simplifiquen y agilicen las tareas cotidianas
dentro de un negocio.
- Personalizar funciones por rol: Adaptar las funcionalidades de cada rol dentro de la aplicación, relacionadas
directamente con las funciones dentro del local, facilitando el registro y control específico de cada rol.
- Transparencia: Los procesos estarían bajo supervisión directa del administrador, minimizando los riesgos de
malversación de fondos y generando registros de las transacciones realizadas por cada colaborador. Esto
facilita el trabajo del jefe de ventas al cuadrar caja o respaldar las transacciones realizadas diariamente.
3.1 Administrador
- El sistema debe permitir al Administrador poder autenticar las credenciales para el correcto inicio de sesión,
dependiendo el “cargo” que se tenga, mostrando un mensaje de error genérico al momento de ingresar y
no concordar usuario y contraseña.
- El sistema debe permitir al Administrador poder cerrar sesión para proteger la privacidad y datos de los
usuarios, mostrando un mensaje de cierre de sesión satisfactorio.
- El sistema debe permitir al Administrador Crear usuarios del tipo Vendedor y Jefe de ventas dentro del
sistema. No se podrá crear un usuario con una clave primaria duplicada. El sistema arrojará un error al no
cumplir este requerimiento.
- El sistema debe permitir al Administrador Visualizar usuarios del tipo Vendedor y Jefe de ventas.
- El sistema debe permitir al Administrador Editar usuarios del tipo Vendedor y Jefe de ventas.
- El sistema debe permitir al Administrador Eliminar usuarios del tipo Vendedor y Jefe de ventas. No se podrá
eliminar un Vendedor o Jefe de ventas cuando no esté creado en sistema. El sistema arrojará un error al no
cumplir este requerimiento.
- El sistema debe permitir al Administrador bloquear y desbloquear usuarios del sistema, dejando un mensaje
de error cuando el usuario en cuestión sea inexistente.
- El sistema debe permitir al Administrador Eliminar Clientes. No se podrá eliminar un Cliente cuando no esté
creado en sistema. El sistema arrojará un error al no cumplir este requerimiento.
- El sistema debe permitir al Jefe de ventas Eliminar Productos. No se podrá eliminar un producto cuando no
esté creado en sistema. El sistema arrojará un error al no cumplir este requerimiento.
- El sistema debe permitir al Administrador generar ventas con factura, solicitando Rut de la empresa, Rut de
cliente, razón social, y especificando en detalle por separado el NETO e IVA de la venta.
- El sistema debe permitir al Administrador generar ventas con boleta, solicitando Rut de cliente, aplicando
correctamente el IVA y detallando al final de la boleta dicho impuesto.
- El sistema debe permitir al Administrador eliminar ventas del sistema, mostrando un mensaje de error
“Venta no encontrada” al momento de ingresar una venta no existente.
- El sistema debe permitir al Administrador visualizar las ventas del día, detallando la cantidad de productos,
monto total, IVA cancelado, usuario responsable y fecha realizada.
- El sistema debe permitir al Administrador poder aplicar descuentos a la venta total, ya sea Factura o Boleta,
detallando el descuento aplicado.
- El sistema debe permitir al Administrador poder abrir la caja para el funcionamiento del día.
- El sistema debe permitir al Administrador poder cerrar caja y descargar el historial diario.
- El sistema debe permitir al Jefe de ventas poder autenticar las credenciales para el correcto inicio de sesión,
dependiendo el “cargo” que se tenga, mostrando un mensaje de error genérico al momento de ingresar y
no concordar usuario y contraseña.
- El sistema debe permitir al Jefe de ventas poder cerrar sesión para proteger la privacidad y datos de los
usuarios, mostrando un mensaje de cierre de sesión satisfactorio.
- El sistema debe permitir al Jefe de ventas Crear usuarios del tipo Vendedor dentro del sistema. No se podrá
crear un usuario con una clave primaria duplicada. El sistema arrojará un error al no cumplir este
requerimiento.
- El sistema debe permitir al Jefe de ventas Visualizar usuarios del tipo Vendedor.
- El sistema debe permitir al Jefe de ventas Editar usuarios del tipo Vendedor.
- -El sistema debe permitir al Jefe de ventas Eliminar usuarios del tipo vendedor. No se podrá eliminar un
vendedor cuando no esté creado en sistema. El sistema arrojará un error al no cumplir este requerimiento.
- El sistema debe permitir al Jefe de ventas poder bloquear y desbloquear usuarios del tipo “vendedor” del
sistema, dejando imposibilitado de visualizar usuarios de su misma clase y/o superior.
- El sistema debe permitir al Jefe de ventas Crear Clientes dentro del sistema. No se podrá crear un cliente
con una clave primaria duplicada. El sistema arrojará un error al no cumplir este requerimiento.
- El sistema debe permitir al Jefe de ventas Eliminar Clientes. No se podrá eliminar un Cliente cuando no esté
creado en sistema. El sistema arrojará un error al no cumplir este requerimiento.
- El sistema debe permitir al Jefe de ventas Eliminar Productos. No se podrá eliminar un producto cuando no
esté creado en sistema. El sistema arrojará un error al no cumplir este requerimiento.
- El sistema debe permitir al Jefe de ventas poder generar ventas con factura, solicitando Rut de la empresa,
Rut de cliente, razón social, y especificando en detalle por separado el NETO e IVA de la venta.
- El sistema debe permitir al Jefe de ventas poder generar ventas con boleta, solicitando Rut de cliente,
aplicando correctamente el IVA y detallando al final de la boleta dicho impuesto.
- El sistema debe permitir al Jefe de ventas eliminar ventas del sistema, mostrando un mensaje de error
“Venta no encontrada” al momento de ingresar una venta no existente.
- El sistema debe permitir al Jefe de ventas visualizar las ventas del día, detallando la cantidad de productos,
monto total, IVA cancelado, usuario responsable y fecha realizada.
- El sistema debe permitir al Jefe de ventas poder aplicar descuentos a la venta total, ya sea Factura o Boleta,
detallando el descuento aplicado.
- El sistema debe permitir al Jefe de ventas poder abrir la caja para el funcionamiento del día.
- El sistema debe permitir al Vendedor poder autenticar las credenciales para el correcto inicio de sesión,
dependiendo el “cargo” que se tenga, mostrando un mensaje de error genérico al momento de ingresar y
no concordar usuario y contraseña.
- El sistema debe permitir al Vendedor poder cerrar sesión para proteger la privacidad y datos de los usuarios,
mostrando un mensaje de cierre de sesión satisfactorio.
- El sistema debe permitir al Vendedor poder buscar y visualizar los productos, mostrando solamente
productos en stock y no los ya vendidos anteriormente.
- El sistema debe permitir al Vendedor poder generar ventas con factura, solicitando Rut de la empresa, Rut
de cliente, razón social, y especificando en detalle por separado el NETO e IVA de la venta.
- El sistema debe permitir al Vendedor poder generar ventas con boleta, solicitando Rut de cliente, aplicando
correctamente el IVA y detallando al final de la boleta dicho impuesto.
03 Alta Administrador Necesito poder Crear Con la finalidad de tener ● No se puede crear un usuario
usuarios de tipo Jefe un control de usuarios nuevo con misma ID.
de ventas y rígido y equilibrado para ● Administrador puede administrar
Vendedor, el sistema. solo a usuarios de tipo “jefe de
quedando sólo un ventas” y “vendedores”.
administrador en el ● Se incluirá mensaje de error al no
sistema. cumplir requisitos.
05 Alta Administrador Necesito poder Con la finalidad de tener ● No se visualizarán usuarios que no
Editar usuarios de un control de usuarios existan, arrojando un mensaje
tipo Vendedor y Jefe rígido y equilibrado para el genérico.
de ventas. sistema.
06 Alta Administrador Necesito poder Con la finalidad de tener ● No se podrán eliminar usuarios
Eliminar usuarios de un control de usuarios que no existan en sistema,
tipo Vendedor y Jefe rígido y equilibrado para el arrojando un mensaje genérico.
de ventas. sistema.
07 Alta Administrador Necesito poder Con la finalidad de tener ● Se dejará un mensaje de error
Bloquear y un control de usuarios cuando el usuario sea inexistente.
Desbloquear rígido y equilibrado para el
usuarios de tipo sistema.
Vendedor y Jefe de
ventas.
08 Alta Administrador Necesito poder Crear Con la finalidad de tener ● Mostrar mensaje de error cuando
Clientes dentro del una base de datos sólida se desee crear un cliente y ya se
sistema. en sistema y consolidar encuentre registrado.
clientes a futuro, además
de respaldar la
información de
transacciones realizadas
por clientes.
12 Alta Administrador Necesito poder Crear Con la finalidad de poder ● Mostrar mensaje de error cuando
Productos dentro del mantener un stock de se desee crear un producto y ya se
sistema. productos, llevando un encuentre registrado, mostrando
registro y orden de éstos. un mensaje genérico.
13 Alta Administrador Necesito poder Con la finalidad de poder ● Mostrar mensaje de error cuando
Visualizar Productos mantener la transparencia se desee visualizar un producto y
dentro del sistema. con el cliente de los no se encuentre registrado,
productos que tenemos mostrando un mensaje genérico.
disponibles.
14 Alta Administrador Necesito poder Con la finalidad de poder ● Mostrar mensaje de error cuando
Editar Productos mantener un stock de se desee editar un producto y no
dentro del sistema. productos acorde al se encuentre registrado,
material físico de manera mostrando un mensaje genérico.
correcta.
15 Alta Administrador Necesito poder Con la finalidad de poder ● Mostrar mensaje de error cuando
Eliminar Productos mantener un stock de se desee eliminar un producto y
dentro del sistema. productos acorde al no se encuentre registrado,
material físico, llevando mostrando un mensaje genérico.
un registro y orden de
éstos, eliminando los
posibles errores.
16 Alta Administrador Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
generar ventas con mantener la transparencia se desee crear una venta y ya se
factura, donde figure de los procesos encuentre registrada.
Rut de empresa, Rut efectuados. ● Detallar IVA y NETO en
de cliente, razón factura/boleta emitida.
social, y
especificando NETO
e IVA por separado.
17 Alta Administrador Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
generar ventas con mantener la transparencia se desee crear una venta y ya se
Boleta, donde figure de los procesos encuentre registrada.
el Rut del cliente y efectuados. ● Detallar IVA y NETO en
especificando NETO factura/boleta emitida.
e IVA por separado.
18 Alta Administrador Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
Eliminar ventas del mantener un control en sea inexistente al intentar
sistema, ya sea las ventas, eliminando eliminar una venta.
Boleta o Factura. posibles errores.
19 Alta Administrador Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
Visualizar ventas del mantener una sea inexistente al intentar
sistema, ya sea transparencia con el visualizar una venta.
Boleta o Factura. cliente.
21 Alta Administrador Necesito poder abrir Con la finalidad de ● Mostrando un mensaje genérico y
caja para funcionar mantener la seguridad de habilitando el correcto
durante el día. los procesos. funcionamiento del sistema.
25 Media Jefe de ventas Necesito poder Crear Con la finalidad de tener ● No se puede crear un usuario
usuarios de tipo un control de usuarios nuevo con misma ID.
Vendedor. rígido y equilibrado para el
sistema.
27 Media Jefe de ventas Necesito poder Con la finalidad de tener No se visualizarán usuarios que no
Editar usuarios de un control de usuarios existan, arrojando un mensaje
tipo Vendedor. rígido y equilibrado para el genérico.
sistema.
28 Media Jefe de ventas Necesito poder Con la finalidad de tener ● No se podrán eliminar usuarios
Eliminar usuarios de un control de usuarios que no existan en sistema,
tipo Vendedor. rígido y equilibrado para el arrojando un mensaje genérico.
sistema.
29 Media Jefe de ventas Necesito poder Crear Con la finalidad de tener • Mostrar mensaje de error cuando
Clientes dentro del una base de datos sólida se desee crear un cliente y ya se
sistema. en sistema y consolidar encuentre registrado.
clientes a futuro, además
de respaldar la
información de
transacciones realizadas
por clientes.
• No se visualizarán clientes
30 Media Jefe de ventas Necesito poder Con la finalidad de inexistentes, mostrando un
Visualizar Clientes obtener datos relevantes mensaje genérico.
existentes. al momento de verificar
los datos y consolidar la
base de datos.
• No se visualizarán clientes
31 Media Jefe de ventas Necesito poder Con la finalidad de inexistentes, mostrando un
Editar Clientes modificar datos mensaje genérico.
existentes. relevantes al momento de
verificar los datos y
consolidar la base de
datos.
37 Media Jefe de ventas Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
generar ventas con mantener la transparencia se desee crear una venta y ya se
factura, donde figure de los procesos encuentre registrada.
Rut de empresa, Rut efectuados. ● Detallar IVA y NETO en
de cliente, razón factura/boleta emitida.
social, y
especificando NETO
e IVA por separado.
38 Media Jefe de ventas Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
generar ventas con mantener la transparencia se desee crear una venta y ya se
Boleta, donde figure de los procesos encuentre registrada.
el Rut del cliente y efectuados. Detallar IVA y NETO en
especificando NETO factura/boleta emitida.
e IVA por separado.
39 Media Jefe de ventas Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
Eliminar ventas del mantener un control en sea inexistente al intentar
sistema, ya sea las ventas, eliminando eliminar una venta.
Boleta o Factura. posibles errores.
46 Baja Vendedor Necesito poder Crear Con la finalidad de tener • Mostrar mensaje de error cuando
Clientes dentro del una base de datos sólida se desee crear un cliente y ya se
sistema. en sistema y consolidar encuentre registrado.
clientes a futuro, además
de respaldar la
información de
transacciones realizadas
por clientes.
• No se visualizarán clientes
47 Baja Vendedor Necesito poder Con la finalidad de inexistentes, mostrando un
Visualizar Clientes obtener datos relevantes mensaje genérico.
existentes. al momento de verificar
los datos y consolidar la
base de datos.
• No se visualizarán clientes
48 Baja Vendedor Necesito poder Con la finalidad de inexistentes, mostrando un
Editar Clientes modificar datos mensaje genérico.
existentes. relevantes al momento de
verificar los datos y
consolidar la base de
datos.
50 Baja Vendedor Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
generar ventas con mantener la transparencia se desee crear una venta y ya se
factura, donde figure de los procesos encuentre registrada.
Rut de empresa, Rut efectuados. ● Detallar IVA y NETO en
de cliente, razón factura/boleta emitida.
social, y
especificando NETO
e IVA por separado.
51 Baja Vendedor Necesito poder Con la finalidad de ● Mostrar mensaje de error cuando
generar ventas con mantener la transparencia se desee crear una venta y ya se
Boleta, donde figure de los procesos encuentre registrada.
el Rut del cliente y efectuados. Detallar IVA y NETO en
especificando NETO factura/boleta emitida.
e IVA por separado.
Nombre
Generar Venta con Factura
Actor principal
Vendedor
2 El vendedor selecciona “Generar Factura”, registra los detalles de la venta y los datos
del cliente.
Postcondición 1.- El sistema guardará en nuestra base de datos, todos los datos ingresados de
las ventas generadas.
(garantías de
éxito)
Excepciones 1.- El sistema generará un mensaje en caso de que falte llenar algún dato,
impidiendo así generar la factura
Puntos de
extensión
Ilustración 12: Especificación de Caso de Uso Generar Venta con Factura
Actor principal
Jefe de Ventas
3 El jefe de ventas confirma lo anterior y se deshabilitan todas las opciones para los
vendedores de realizar una venta.
Excepciones 1. El sistema no despliega el botón de cierre de caja, en caso de que una venta no esté
cerrada o finalizada, en la cual le dará un mensaje de error: “No se puede cerrar la
caja, mientras una venta no esté Finalizada”
2. El sistema despliega el informe de ventas del día, pero sin datos en caso de no haber
ninguna venta en el día.
Actor principal
Jefe de ventas
Administrador
Precondición El actor debe haber iniciado sesión en el sistema y contar con los privilegios necesarios para
realizar la acción de bloquear usuario.
Secuencia de Pasos Descripción
acción
1 El actor debe acceder a la funcionalidad de gestión de usuarios en el sistema.
2 El actor debe seleccionar la opción de “Buscar vendedor” dentro de las opciones para
filtrado de vendedores existentes.
(garantías de
éxito)
Puntos de
extensión
Ilustración 14: Especificación de Caso de Uso Bloquear Vendedor
Cada una de estas áreas son fundamentales para el correcto funcionamiento del sistema en términos
generales. Sin embargo, es crucial la priorización de requisitos según su importancia y necesidad del
cliente, permitiendo mostrar un progreso y diseño más ágil durante el desarrollo del producto.
En resumen, un sistema completo y efectivo de gestión debe satisfacer los requisitos específicos del
cliente, para asegurar un flujo de trabajo eficiente y la capacidad de realizar operaciones repetitivas de
manera precisa y segura.
Digital Guide IONOS. Desconocido. (42/07/2020). El diagrama de casos de uso en UML. Recuperado de:
https://www.ionos.es/digitalguide/paginas-web/desarrollo-web/diagrama-de-casos-de-
uso/#:~:text=El%20diagrama%20de%20casos%20de%20uso%20es%20una%20forma%20de,de%20prog