Está en la página 1de 178

UNIVERSIDAD DEL VALLE

FACULTAD DE INFORMÁTICA Y ELECTRÓNICA


CARRERA DE INGENIERÍA DE SISTEMAS INFORMÁTICOS

SISTEMA DE COMERCIO ELECTRÓNICO Y CONTROL DE


INVENTARIOS PARA LA EMPRESA “BOTTERO CALZADOS
DE MUJER”

PERFIL DE TRABAJO DIRIGIDO


PARA OPTAR AL TÍTULO DE LICENCIATURA
EN INGENIERÍA DE SISTEMAS INFORMÁTICOS

NOMBRE: ÁNGELA MARÍA VALDEZ BERNAL

TUTOR: ING. JOEL REYNALDO ALÁNEZ DURÁN

Cochabamba - Bolivia

2015
Resumen:

El presente proyecto de Trabajo Dirigido consiste en el desarrollo de un sistema de


ventas, inventario y publicidad para la empresa “Bottero Calzados de Mujer”, el cual
automatiza estos procesos con el fin de mejorar, en ese ámbito, el manejo de
información dándole a la empresa una herramienta bastante útil y de gran ayuda, que
permita además el apoyo en la etapa de toma de decisiones generando reportes que
cubran sus expectativas.

En la etapa inicial se realizaron encuestas aplicando la Escala de Likert, se hizo un


análisis de los problemas que existían en la empresa y se identificó los procesos que
se debían representar en los módulos del sistema. Para el diseño se usó la
metodología RUP (Rational Unified Process), y en el desarrollo se utilizó el lenguaje
de programación PHP, una base de datos MySQL y Android Studio para la aplicación
móvil. Finalmente se hicieron pruebas de software y se midió la satisfacción de
usuario empleando de nuevo la escala de Likert.

Palabras Clave: RUP, Aplicación Web, WebService, DBMS, B2B.


ÍNDICE

INTRODUCCIÓN...........................................................................................................1
ANTECEDENTES..........................................................................................................2
PLANTEAMIENTO DEL PROBLEMA............................................................................3
JUSTIFICACIÓN............................................................................................................5
JUSTIFICACIÓN ECONÓMICA.................................................................................5
JUSTIFICACIÓN TÉCNICA........................................................................................6
OBJETIVOS...................................................................................................................7
OBJETIVO GENERAL................................................................................................7
OBJETIVOS ESPECÍFICOS......................................................................................7
ALCANCE......................................................................................................................7
METODOLOGÍA............................................................................................................9
MÉTODOS Y HERRAMIENTAS................................................................................9
UNIVERSO Y MUESTRA.........................................................................................10
TÉCNICAS E INSTRUMENTOS..............................................................................11
FUENTES DE INFORMACIÓN................................................................................11
1. CAPÍTULO I MARCO TEÓRICO..........................................................................12
1.1. SISTEMAS DE INFORMACIÓN.....................................................................13
1.2. APLICACIONES WEB....................................................................................15
1.3. COMERCIO ELECTRÓNICO.........................................................................17
1.4. APLICACIONES MÓVILES............................................................................19
1.5. SERVICIOS WEB...........................................................................................20
1.6. RUP.................................................................................................................22
2. CAPÍTULO II MARCO REFERENCIAL................................................................24
2.1. DESCRIPCIÓN DE LA EMPRESA.................................................................25
2.1.1. MISIÓN.................................................................................................26
2.1.2. VISIÓN..................................................................................................26
2.2. PRODUCTOS Y SERVICIOS.........................................................................27
2.3. ÁREA DEL TRABAJO DIRIGIDO...................................................................27
2.4. DESCRIPCIÓN DE LA TAREAS Y/o TRABAJOS EFECTUADOS...............27
2.5. FALENCIAS Y/O PROBLEMAS ENCONTRADOS........................................30
3. CAPÍTULO III INGENIERÍA DEL PROYECTO.....................................................31
3.1. INTRODUCCIÓN............................................................................................32
3.2. INICIACIÓN....................................................................................................32
3.2.1. INTRODUCCIÓN..................................................................................32
3.2.2. OBJETIVOS DEL PROYECTO............................................................32
3.2.3. CRONOGRAMA...................................................................................33
3.2.4. BASE ARQUITECTÓNICA...................................................................33
3.2.5. ESTIMACIÓN DE COSTOS.................................................................34
3.2.5.1 RECURSOS HUMANOS...................................................................34
3.2.5.2 RECURSOS TECNOLÓGICOS........................................................34
3.2.5.3 MATERIAL DE APOYO.....................................................................35
3.2.6. CASOS DE USO DEL NEGOCIO........................................................35
3.2.6.1 DIAGRAMA DE CASOS DE USO DEL NEGOCIO..........................36
3.2.6.2 DIAGRAMA DE ROLES....................................................................36
3.2.6.3 DIAGRAMA DE SECUENCIA DE ROLES........................................37
3.2.6.4 DIAGRAMA DE ACTIVIDADES........................................................44
3.2.6.5 PLANTILLA DE CASOS DE USO.....................................................51
3.3. ELABORACIÓN..............................................................................................56
3.3.1. ACTORES.............................................................................................56
3.3.2. CASOS DE USO...................................................................................57
3.3.2.1 CASOS DE USO GESTIÓN DE COMPRAS....................................58
3.3.2.2 CASOS DE USO GESTIÓN DE SUCURSALES..............................59
3.3.2.3 CASOS DE USO GESTIÓN DE REPORTES...................................60
3.3.2.4 CASOS DE USO GETIÓN DE USUARIOS......................................61
3.3.2.5 CASOS DE USO GESTIÓN DE VENTAS........................................62
3.3.2.6 CASOS DE USO GESTIÓN DE CARRITO DE COMPRAS.............63
3.3.2.7 CASOS DE USO GESTIÓN DE PUBLICIDAD.................................63
3.3.2.8 DICCIONARIO DE LOS CASOS DE USO........................................64
3.3.3. DIAGRAMAS DE ESTADO PARA LOS CASOS DE USO..................72
3.3.4. MODELO CONCEPTUAL.....................................................................80
3.4. CONSTRUCCIÓN...........................................................................................81
3.4.1. CONTRATOS.......................................................................................81
3.4.2. DIAGRAMA DE CLASES.....................................................................96
3.4.3. DIAGRAMA DE COMPONENTES.......................................................97
3.4.4. DIAGRAMA DE DESPLIEGUE.............................................................97
3.4.5. DIAGRAMA DE PAQUETES................................................................98
3.4.6. DIAGRAMA RELACIÓNAL DE LA BASE DE DATOS.........................99
3.5. TRANSICIÓN................................................................................................100
3.5.1. IMPLEMENTACIÓN...........................................................................100
4. CAPÍTULO IV PRUEBAS DE CALIDAD............................................................101
4.1. INTRODUCCIÓN..........................................................................................102
4.2. PRUEBAS DE SOFTWARE.........................................................................102
4.3. TÉCNICAS DE PRUEBA..............................................................................102
4.4. TIPOS DE PRUEBA.....................................................................................103
4.4.1. PRUEBAS DE UNIDAD Y DEPURACIÓN.........................................103
4.4.2. PRUEBAS DE INTEGRACIÓN..........................................................104
4.4.3. PRUEBAS DEL SISTEMA..................................................................104
4.4.3.1 PRUEBAS DE SEGURIDAD...........................................................105
4.4.3.2 PRUEBAS DE RESISTENCIA........................................................105
4.4.3.3 PRUEBAS DE RECUPERACIÓN...................................................106
4.4.4. PRUEBAS DE ESTRÉS.....................................................................107
4.4.5. PRUEBAS DE VALIDACIÓN..............................................................107
4.5. SATISFACCIÓN DEL USUARIO..................................................................110
4.6. CONCLUSIÓN DE LA FASE DE PRUEBAS...............................................110
5. CAPÍTULO V ESTIMACIÓN DE COSTOS.........................................................112
5.1. INTRODUCCIÓN..........................................................................................113
5.2. COSTO DEL PERSONAL............................................................................113
5.3. COSTO CONSUMIBLE................................................................................114
5.4. COSTOS DE VIAJES Y VIÁTICOS..............................................................114
6. CAPÍTULO VI CONCLUSIONES Y RECOMENDACIONES.............................116
6.1. CONCLUSIONES.........................................................................................117
6.2. RECOMENDACIONES.................................................................................119
BIBLIOGRAFÍA..........................................................................................................120
ANEXOS....................................................................................................................122
ANEXO A...................................................................................................................123
ANEXO B...................................................................................................................128
ANEXO C...................................................................................................................129
ANEXO D...................................................................................................................141
ANEXO E...................................................................................................................142
ÍNDICE DE FIGURAS

Figura 1.1 Sistemas de Información............................................................................14


Figura 1.2 Proceso de una Aplicación Web.................................................................16
Figura 1.3 Principales agentes en e-com....................................................................18
Figura 1.4. Pila de Protocolos de los WebServices.....................................................21
Figura 2.1 Logo de la empresa....................................................................................25
Figura 2.2 Organigrama de la empresa.......................................................................26
Figura 2.3 Proceso de Inventarios...............................................................................28
Figura 2.4 Proceso de Venta directa...........................................................................28
Figura 2.5 Proceso de Venta en Línea........................................................................29
Figura 3.1 Base Arquitectónica....................................................................................34
Figura 3.2 Procesos del negocio.................................................................................35
Figura 3.3 Diagrama de casos de uso del negocio.....................................................36
Figura 3.4 Diagrama de Roles.....................................................................................36
Figura 3.5 Diagrama de secuencia Gestionar Compras.............................................37
Figura 3.6 Diagrama de Secuencia Gestionar Sucursales..........................................38
Figura 3.7 Diagrama de Secuencia Gestionar Reportes.............................................39
Figura 3.8 Diagrama de Secuencia Gestionar Usuarios.............................................40
Figura 3.9 Diagrama de Secuencia Gestionar Ventas................................................41
Figura 3.10 Diagrama de Secuencia Gestionar Carrito de Compras..........................42
Figura 3.11 Diagrama de Secuencia Gestionar Publicidad.........................................43
Figura 3.12 Diagrama de Actividad Gestionar Compra...............................................44
Figura 3.13 Diagrama de Actividad Gestionar Sucursal..............................................45
Figura 3.14 Diagrama de Actividad Gestionar Reportes.............................................46
Figura 3.15 Diagrama de Actividad Gestionar Usuarios.............................................47
Figura 3.16 Diagrama de Actividad Gestionar Venta..................................................48
Figura 3.17 Diagrama de Actividad Gestionar Publicidad...........................................50
Figura 3.18 Casos de uso............................................................................................57
Figura 3.19 Casos de Uso Gestión de Compras.........................................................58
Figura 3.20 Casos de Uso Gestión de Sucursales......................................................59
Figura 3.21 Casos de Uso Gestión de Reportes.........................................................60
Figura 3.22 Casos de Uso Gestión de Usuarios.........................................................61
Figura 3.23 Casos de Uso Gestionar Ventas..............................................................62
Figura 3.24 Casos de Uso Gestión de Carrito de Compras........................................63
Figura 3.25 Casos de Uso Gestión de Publicidad.......................................................63
Figura 3.26 Diagrama de estados Registrar Compra..................................................72
Figura 3.27 Diagrama de Estados Consulta Productos sucursal................................73
Figura 3.28 Diagrama de Estados Realiza Movimiento de Producto..........................74
Figura 3.29 Diagrama de Estados Consultar Reportes...............................................75
Figura 3.30 Diagrama de Estados Registro Usuario...................................................76
Figura 3.31 Diagrama de estados Realizar Venta.......................................................77
Figura 3.32 Diagrama de estados Agregar Productos al Carrito................................78
Figura 3.33 Diagrama de Estados Recibe Publicidad.................................................79
Figura 3.34 Modelo Conceptual...................................................................................80
Figura 3.35 Secuencia Registrar Compra...................................................................81
Figura 3.36Secuencia Realizar Movimiento de Productos..........................................83
Figura 3.37 Secuencia Consulta Productos Sucursal.................................................84
Figura 3.38 Secuencia Consultar Reportes.................................................................85
Figura 3.39 Secuencia Crear Usuario.........................................................................86
Figura 3.40 Secuencia Iniciar Sesión..........................................................................87
Figura 3.41 Secuencia Cambiar Contraseña...............................................................88
Figura 3.42 Secuencia Registrar Venta.......................................................................89
Figura 3.43 Secuencia Agregar producto al carrito.....................................................90
Figura 3.44 Secuencia Eliminar Producto Carrito........................................................91
Figura 3.45 Secuencia Registrar Gustos.....................................................................92
Figura 3.46 Secuencia Recibe Publicidad...................................................................93
Figura 3.47 Secuencia Crea Publicidad......................................................................94
Figura 3.48 Diagrama de clases..................................................................................96
Figura 3.49 Diagrama de Componentes......................................................................97
Figura 3.50 Diagrama de Despliegue..........................................................................97
Figura 3.51 Diagrama de Paquetes.............................................................................98
Figura 3.52 Diagrama Relacional de la Base de Datos...............................................99
Figura 0.1 Sistema de Archivos Sistema Web..........................................................128
Figura 0.2 Archivo Bottero.apk..................................................................................128
ÍNDICE DE TABLAS
Tabla 3.1 Cronograma.................................................................................................33
Tabla 3.2 Diagrama de Actividad Gestionar Carrito de Compras...............................49
Tabla 3.3 Casos de Uso Gestionar Compra................................................................51
Tabla 3.4 Casos de Uso Gestionar Sucursales...........................................................52
Tabla 3.5 Caso de uso Gestionar Reportes................................................................52
Tabla 3.6 Caso de uso Gestionar Usuarios.................................................................53
Tabla 3.7 Caso de Uso Gestionar Ventas...................................................................54
Tabla 3.8 Caso de Uso Gestionar Carrito de Copras..................................................55
Tabla 3.9 Caso de Uso Gestionar Publicidad..............................................................56
Tabla 3.10 Caso de uso Registrar Compra.................................................................64
Tabla 3.11 Caso de uso Realiza Movimiento de Productos........................................65
Tabla 3.12 Caso de Uso Consulta Productos Sucursal..............................................66
Tabla 3.13 Caso de Uso Consultar Reportes..............................................................67
Tabla 3.14 Caso de Uso Registrar Usuario.................................................................68
Tabla 3.15 Caso de Uso Realizar Ventas....................................................................69
Tabla 3.16 Caso de Uso Agregar productos al Carrito................................................70
Tabla 3.17 Caso de Uso Recibe Publicidad................................................................71
Tabla 3.18 Contrato Registrar Compra........................................................................82
Tabla 3.19 Contrato Realiza Movimientos de Productos............................................83
Tabla 3.20 Contrato Consulta Productos Sucursal.....................................................85
Tabla 3.21 Contrato Consultar Reportes.....................................................................86
Tabla 3.22 Contrato Crear Usuario..............................................................................87
Tabla 3.23 Contrato Iniciar Sesión...............................................................................88
Tabla 3.24 Contrato Cambiar Contraseña...................................................................89
Tabla 3.25 Contrato Registra Venta............................................................................90
Tabla 3.26 Contrato Agregar Producto al Carrito........................................................91
Tabla 3.27 Contrato Eliminar Producto del Carrito......................................................92
Tabla 3.28 Contrato Registrar Gustos.........................................................................93
Tabla 3.29 Contrato Recibe Publicidad.......................................................................94
Tabla 3.30 Contrato Crea Publicidad...........................................................................95
Tabla 4.1 Caso de Prueba Unidades.........................................................................103
Tabla 4.2 Caso de Prueba Inicio de Sesión..............................................................104
Tabla 4.3 Caso de Prueba Ingreso Forzado al Iniciar Sesión...................................105
Tabla 4.4 Caso de Prueba Carga de Datos...............................................................106
Tabla 4.5 Caso de Prueba Recuperación..................................................................106
Tabla 4.6 Prueba de Estrés.......................................................................................107
Tabla 4.7 Caso de Prueba Registro de Usuario........................................................108
Tabla 4.8 Agregar Productos al Carrito.....................................................................108
Tabla 4.9 Caso de Prueba Realizar Venta................................................................109
Tabla 4.10 Caso de Prueba Realizar Una Compra...................................................109
Tabla 5.1 Costo del Personal.....................................................................................113
Tabla 5.2 Costo Consumible......................................................................................114
Tabla 5.3 Costos de Viajes y Viáticos.......................................................................114
Tabla 5.4 Costo Total del Proyecto............................................................................115
INTRODUCCIÓN

Actualmente, la demanda por parte de las empresas de la implementación de


sistemas de información, va creciendo a gran escala debido a que las ventajas
brindadas por éstos son considerables; entre los principales beneficios que puede
ofrecer la automatización de los procesos de una organización son la precisión
(disminuyendo significativamente la tendencia a cometer errores) y el ahorro de
recursos como tiempo y dinero.

De esta manera, “Bottero Calzados de Mujer” es una empresa que busca la


automatización de sus procesos tales como el control de inventarios y ventas
además de promocionar sus productos llegando a sus clientes de mejor manera,
teniendo como fin el ahorro de esfuerzo realizando sus registros, el acceso inmediato
a la información de productos en sus sucursales y acortar el tiempo de atención a
sus clientes.

El presente proyecto tiene como objetivo la implementación de un sistema


informático de comercio electrónico y control de inventarios, usando tecnología web,
incluyendo módulos de Ventas, Inventarios, Reportes y su respectiva tienda en línea
de tipo B2C (Business to Consumer) donde se ofertarán los calzados de la empresa.
También incluirá un módulo móvil de consultas y publicidad para clientes.

Este sistema brindará varios beneficios a la organización, tales como el apoyo en el


proceso de toma de decisiones con la implementación de reportes de ventas, y el
acceso ininterrumpido de los clientes para realizar las compras en cualquier
momento con el desarrollo de la tienda en línea, además de servir como una
herramienta útil de marketing.

Para la implementación del sistema, se realizará un previo análisis de la situación de


la empresa y se identificará todos los problemas existentes a ser solucionados para
1
una definición clara de los objetivos del proyecto; dichos objetivos estarán limitados
de acuerdo a las necesidades que provienen de diversas fuentes de información
dentro la organización. Asimismo, para tener más claro el trabajo y realizar su
desarrollo de manera más precisa se procederá a describir las metodologías a ser
aplicadas a lo largo de la elaboración del proyecto, entre las que se encontrarán RUP
para el modelado del sistema y la utilización de metodologías de investigación de tipo
analítico, deductivo y comparativo.

ANTECEDENTES

En las últimas décadas, la tecnología fue creciendo a gran velocidad; desde el


surgimiento de las computadoras y del internet, todas las actividades cotidianas se
fueron modificando, todo el mundo se fue acostumbrando a nuevos hábitos y fue
adquiriendo nuevo conocimiento producto de las progresivas facilidades que se
fueron incorporando con el paso del tiempo.

El desarrollo tecnológico está inmerso en todo ámbito, tanto que hoy en día
acompaña al ser humano desde el momento en que viene al mundo; los niños de
ahora ya nacen con capacidades innatas que les permiten manejar sin complicación
cualquier dispositivo móvil. Esta relación de las nuevas generaciones con cualquier
artefacto moderno hace que se incursione aún más en el desarrollo de nuevas
soluciones para la sociedad y crezca la necesidad de actualizarse.

El continuo avance y los nuevos descubrimientos ofrecen facilidades en cualquier


área posible de imaginar tal como en las empresas, permitiendo optimizar sus
procesos de almacenamiento, control, distribución y análisis de la información que se
genera a diario. Esta información es gestionada a través de sistemas informáticos
que mejoran no solamente los procesos de la organización, sino que también
coadyuvan en una de las etapas más importantes que poseen como es la toma de
decisiones. Una empresa que cuenta con un adecuado sistema de información se
2
encuentra en ventaja con respecto a las demás, por lo que está en constante
búsqueda de incorporar nuevas y mejores soluciones.

El desarrollo tecnológico se va orientando más a las aplicaciones móviles y a


entornos web debido a que presentan más ventajas que un sistema tradicional de
escritorio. Dichas ventajas permiten que cualquier computador con acceso a internet
pueda ingresar al sistema en todo momento y desde cualquier parte del mundo.
Asimismo la portabilidad que presentan los dispositivos móviles permite que una
persona se pueda desplazar de un lugar a otro haciendo uso de aplicaciones que
facilitan el envío, recepción y la consulta de información, lo que ocasiona que
actualmente exista una tendencia a hacer un mayor uso de estos dispositivos dentro
de las tareas cotidianas.

Por todas estas ventajas las empresas, sobre todo comerciales, están optando por
adquirir sistemas para ganar una ventaja competitiva en el mercado, tal es el caso de
“Bottero Calzados de Mujer”, la cual se dedica exclusivamente a la venta de zapatos
femeninos. Esta empresa busca automatizar sus procesos de venta, realizar un
control de inventarios eficiente en todas sus sucursales y agilizar el proceso de
registro de sus productos para que de esta manera pueda reducir el trabajo de los
empleados.

PLANTEAMIENTO DEL PROBLEMA

En la actualidad la empresa “Bottero Calzados de Mujer” no cuenta con un sistema


de información, esto ocasiona que sus procesos de ventas e inventarios sean
realizados de manera manual utilizando papel y apoyándose en la herramienta
ofimática Excel desperdiciando recursos valiosos como tiempo y dinero, además se
ve incrementada la probabilidad de cometer errores y cada vez se hace más difícil el
control histórico de datos.

3
La empresa cuenta con varias sucursales por lo que es dificultoso realizar una
consulta rápida de existencias; la atención al cliente se retrasa cuando se requieren
productos que se encuentran en otras tiendas teniendo que realizar llamadas entre
éstas para preguntar el stock y realizar el paso respectivo del o los productos.
También se cuenta con un registro de proveedores en papel a los que se recurre
cada cambio de temporada o instante en que se requiere nueva mercadería;
asimismo en todo registro manuscrito existe el riesgo de pérdida de información,
además la búsqueda de la referencia indicada es un poco más lenta. Una vez
realizado el pedido se debe registrar todos los productos recién llegados invirtiendo
bastante tiempo por los atributos que poseen los calzados como ser: color, marca,
talla, etc.

La información que posee “Bottero Calzados de Mujer” es tan extensa que dificulta
saber qué calzado es el más vendido, el modelo más pedido, la marca preferida,
entre otros datos importantes, que a su vez impide tomar decisiones adecuadas
para incrementar sus ganancias y llegar de mejor manera a sus clientes.

El proceso de venta es llevado a cabo de manera tradicional, es decir, con la


transferencia del dinero en efectivo y con la presencia física del comprador, vendedor
y el producto; este proceso además está sujeto a los horarios de atención de las
tiendas -que impide una disposición de 24 horas al día y los 7 días de la semana- y al
manejo de dinero del cliente, lo que implica un riesgo para éste. Una vez realizada la
venta, la factura es emitida de forma manual lo que retrasa la atención e implica un
trabajo más para el empleado.

La empresa no cuenta con un medio para hacer conocer sus promociones a los
clientes de manera continua, ya que, para realizar esta labor, es necesario estar en
presencia de éstos lo que en la mayoría de los casos no es posible.

Lo anterior expuesto permite formular la siguiente pregunta:

4
¿Cómo automatizar los procesos comerciales de la empresa “Bottero Calzados de
Mujer” de tal forma que se realice un control adecuado de sus ventas, inventarios y
promoción de sus productos?

JUSTIFICACIÓN

El sistema de comercio electrónico y control de inventarios automatizará el trabajo de


registro y ventas de productos, además de tener un control en todas las tiendas al
mismo tiempo sin estar presente físicamente en éstas.

A través de la tienda en línea se proporcionará mayor comodidad a los clientes al


estar completamente disponible y permitiendo transacciones desde su casa, esto
también influirá en el negocio ya que tendrá un alcance nacional ampliando su
presencia en el mercado.

Se personalizará la atención a los clientes ofreciendo productos y promociones


según su gusto y haciendo llegar éstas a su celular personal en base a sus compras
realizadas, logrando de esta manera mantener informados a sus clientes.

Los reportes que generará el sistema permitirán analizar el flujo económico por
tiempo determinado, permitirá realizar un control a sus empleados mostrando su
efectividad en las ventas del negocio y realizar un seguimiento a sus clientes
ofreciendo productos de su gusto y promociones según su preferencia.

JUSTIFICACIÓN ECONÓMICA

Se incrementarán los ingresos de la empresa al acaparar más sectores en el


mercado mediante las ventas en línea.

5
Con la implementación del módulo de inventarios, se reducirá los costos
administrativos para el proceso de control de stock y ventas ya que se minimizará el
tiempo remunerado que invierten los empleados en el registro de calzados.

Personalizando la promoción de productos, se mantendrá mejor informados a los


clientes logrando su preferencia por la empresa e incrementando de esta manera sus
ventas.

JUSTIFICACIÓN TÉCNICA

Se realizará un sistema web y un módulo móvil debido a que la población se va


orientando más al uso de estas dos tecnologías por su facilidad de manejo y la
tendencia creciente a sacar más dispositivos móviles al mercado, además, el sistema
web permitirá con mayor facilidad y rapidez la comunicación entre tiendas.

Se utilizará el lenguaje PHP para la programación debido a que es un lenguaje libre y


abierto, sus entornos de desarrollo son de rápida y fácil configuración, tienen una
comunidad grande, es gratuito, su rendimiento es bueno y eficiente, está disponible
para la mayoría de sistemas operativos existentes (Unix, Linux, Windows, Mac, entre
otros) y ofrece el soporte necesario para encarar proyectos de desarrollo de
software.

En el desarrollo de la aplicación móvil, se programará para celulares que cuentan


con el sistema operativo Android, aprovechando que puede instalarse en la mayoría
de los dispositivos actuales en el mercado, además tiene ventajas como la de ser
OpenSource1 y poseer gran cantidad de guías y tutoriales, ya que cuenta con la
comunidad más grande a nivel mundial de desarrolladores y con la mayor afluencia
de eventos, concursos, competencias y reuniones así como múltiples vías de

1
OpenSource: De código abierto
6
comunicación como foros y chats oficiales para fomentar la participación y la
colaboración2.

Como sistema gestor de base de datos se utilizará MySql ya que puede ser
ejecutado en máquinas con escasos recursos por su bajo consumo, es una de las
bases de datos con mejor rendimiento, soporta gran variedad de sistemas
operativos, por su conectividad y seguridad es altamente apropiado para su acceso
en Internet, es de código abierto y gratuito.

OBJETIVOS

OBJETIVO GENERAL

Desarrollar un Sistema de Comercio Electrónico y Control de Inventarios para la


empresa “Bottero Calzados de Mujer”.

OBJETIVOS ESPECÍFICOS

 Desarrollar un Módulo de usuarios.


 Desarrollar un Módulo de inventarios.
 Desarrollar un Módulo de ventas que incorpore facturación electrónica y
computarizada.
 Desarrollar un Módulo de reportes
 Desarrollar un Módulo móvil de consultas y publicidad para clientes

ALCANCE

2
Fuente: http://market-control.com/index.php?id=92&L=0
7
Módulo de usuarios: Se tendrá los siguientes roles:
 Administrador: Podrá crear, dar de baja y asignar roles a los usuarios del
sistema.
Este rol permitirá crear, modificar y eliminar publicidad tipificada por color
marca y categoría la cual le llegará al cliente según sus gustos.
 Reportes: Tendrá acceso a los reportes de las ventas por producto, cliente y
empleado.
 Inventarios: El usuario con este rol podrá consultar el stock de cualquier
calzado en cualquiera de las sucursales.
 Compras: Permitirá realizar el registro de la nueva mercadería actualizando el
stock y el precio. Podrá realizar la transferencia de zapatos entre sucursales.
Tendrá la posibilidad de crear, dar de baja y modificar los proveedores de
calzados.
 Ventas: En este rol se realizará la facturación computarizada a los clientes en
cualquiera de las tiendas y se permitirá también realizar el registro de los
envíos de productos comprados en la tienda en línea.
 Clientes: Tendrá acceso a la información para realizar consultas de los
productos y acceder a la publicidad desde una aplicación móvil. Podrá
también realizar compras por medio de la tienda en línea y visualizar una lista
de sus pedidos anteriores.

Se podrá asignar uno o varios roles a los usuarios del sistema.

Módulo de inventarios: Permitirá el control y registro del reabastecimiento de


calzados existentes, así como de los nuevos productos que se incorporen para la
venta en el almacén central. Se realizará el control de stock y la transferencia de
productos a las distintas sucursales.

8
Permitirá registrar, editar y dar de baja a los proveedores de calzados de la empresa.
Asimismo se realizará un registro de los productos que son suministrados por cada
proveedor.

Módulo de ventas: Existirá dos opciones de venta. La primera será en línea donde
se incorporará la modalidad de facturación electrónica además del servicio de PayPal
como medio de pago para realizar transferencias más seguras. La segunda opción
será la venta directa, en la que se realizará la facturación computarizada.

Módulo de reportes: Mostrará Dashboards3 de las ventas efectuadas por mes, por
año, por producto, por empleado y por cliente.

En cuanto al producto se mostrarán los zapatos más vendidos por temporadas,


marcas, categoría, color y tallas.

Se generará reportes sobre las preferencias que tienen los clientes en relación a los
productos de tal forma que se pueda orientar una publicidad personalizada.

Módulo móvil de consultas y publicidad para clientes: Permitirá a los usuarios de


SmartPhones4, que además sean clientes de la empresa, acceder a dos servicios; el
primero es la consulta a la tienda de zapatos y el segundo es el de recibir publicidad
en la que se incluirá promociones y descuentos especiales.

METODOLOGÍA

Los métodos y herramientas a utilizarse en el proyecto son:

3
Dashboard: Representación gráfica de los PKI (Indicadores primarios de rendimiento) del negocio.
4
SmartPhones: Dispositivos móviles inteligentes.
9
MÉTODOS Y HERRAMIENTAS

Se utilizará la metodología RUP (Rational Unified Process) para el modelado del


sistema, usando el lenguaje de modelado UML (Unified Modeling Language) para
documentarlo.

La investigación tendrá un enfoque cuantitativo, que utilizará técnicas de recolección


de datos con base en medición de números y almacenamiento de la información en
base de datos. Realizará un análisis e interpretación de todo lo recopilado para
control y reportes de ventas.

La metodología de investigación será de tipo Analítico, descomponiendo y


distinguiendo los procesos de la empresa; Deductivo, yendo de lo general a lo
específico y también será Comparativo, estableciendo diferencias y cambios en el
funcionamiento de los procesos.

Para el desarrollo del sistema se usarán las siguientes herramientas:

- Lenguaje de Programación lado Servidor: PHP

- Lenguaje de Programación lado Cliente: JavaScript

- Editor de Texto para la programación: Sublime Text 3

- Base de datos: MySQL

- Sistema de Gestión de Base de datos (DBMS): MySQL Workbench

- Entorno de desarrollo de aplicaciones móviles para Android: Android Studio

10
UNIVERSO Y MUESTRA

Se limita la investigación a la empresa “Bottero Calzados de Mujer”, tanto los


gerentes como sus empleados.

TÉCNICAS E INSTRUMENTOS

Se realizará encuestas para ver el funcionamiento actual de la empresa; también se


empleará la Escala de Likert para evaluar la aceptación del sistema y la satisfacción
de los usuarios que trabajan en la organización.

FUENTES DE INFORMACIÓN

Como fuentes primarias de información se tendrá los empleados de la empresa, para


entender mejor los procesos. Los datos se obtendrán de libros, registros manuales y
tablas elaboradas en Excel. La información interna sobre la empresa se obtendrá de
la Administradora de “Bottero Calzados de Mujer”, Sra. Julieta Sejas.RICO

11
1. CAPÍTULO I MARCO TEÓRICO

CAPÍTULO I

MARCO TEÓRICO

12
13

1.1. SISTEMAS DE INFORMACIÓN

Según Laudon y Laudon los sistemas de información se definen como “un conjunto
de componentes interrelacionados que recolectan (o recuperan), procesan,
almacenan y distribuyen información para apoyar los procesos de toma de
decisiones y de control de una organización” [CITATION Lau12 \p 15 \n \t \l 16394 ]
.

Un sistema de información es capaz de cumplir su objetivo si se lo usa con


efectividad y está elaborado en base a los requerimientos de la organización. Estos
sistemas son usados efectivamente cuando los usuarios cuentan con la habilidad
suficiente para explotar todas sus funcionalidades y así le brinden la información
adecuada para ayudar en la toma de decisiones y obtener positivos resultados
empresariales.

Un sistema está elaborado en base a los requerimientos de la organización, si


produce los datos necesarios para coadyuvar en los procesos de toma de decisiones
y control de operaciones; éstos se logran mediante tres actividades que deben
efectuarse con eficiencia:

 Entrada.- Etapa en la que un sistema recibe los datos correctos a partir de la


introducción manual de un usuario de la organización o la recolección de una
base de datos.
 Proceso.- Convierte la entrada en información útil y comprensible por el
usuario.
 Salida.- Muestra la información producto del proceso para darle un uso
adecuado.[CITATION Jaé03 \l 16394 ]

13
14

Figura 1.1 Sistemas de Información

Fuente: https://elblogdemercado.files.wordpress.com (2010, Junio 15)

La retroalimentación es una etapa posterior a la salida en donde se utiliza la


información, producto del proceso, para refinar los datos de entrada y así mejorar el
fin para el que está elaborado el sistema de información.

Según Andreu, Ricart y Valor, el sistema de información:

Es el conjunto formal de procesos que operando sobre una colección de datos


estructurada de acuerdo con las necesidades de una empresa, recopila,
elabora y distribuye la información necesaria para la operación de dicha
empresa y para las actividades de dirección y control correspondientes,
apoyando, al menos en parte, los procesos de toma de decisiones necesarios
para desempeñar las funciones de negocio de la empresa de acuerdo con su
estrategia. [CITATION And96 \p 13 \n \t \l 16394 ].

Es evidente que un sistema de información está hecho para proporcionar soluciones,


crear ventaja y fortalecer una organización debido a que no solamente brinda una
gran ayuda al gestionar toda su información, sino que también permite analizar más

14
15

abiertamente el estado en el que se encuentra la empresa siendo así un medio para


afrontar y resolver los problemas que se presenten en su entorno.

1.2. APLICACIONES WEB

Las aplicaciones Web son sistemas creados con funcionalidades que brindan
respuestas a las peticiones de los usuarios; se alojan en servidores de internet o
redes locales y lucen de forma muy similar a cualquier página web no dinámica.
[CITATION Ale10 \t \l 16394 ].

Inicialmente las páginas web eran simplemente una colección de ventanas


programadas en HTML (Hyper Text Markup Language), lo que significa que eran de
naturaleza estática y únicamente podían consultarse o descargarse.

Para solucionar esta limitación que tiene el HTML han surgido tecnologías de dos
tipos: las que generan contenido dinámico del lado servidor y las que generan
contenido dinámico del lado cliente. Para el primer caso, es el servidor quien se
encarga de ejecutar las tareas que se programen y devolver su resultado. En lo
referido a las tecnologías del cliente, el programa se ejecuta en el equipo cliente, o
sea, en el navegador web.

Hace unos años surgió una interfaz llamada CGI (Common Gateway Interface), cuya
misión era servir de pasarela entre la web y otros lenguajes no preparados para ella
(como C, C++, etc.), con el tiempo, comenzó a perder fuerza ante otros lenguajes de
script como ASP o PHP. Ambas tecnologías de desarrollo web, sobre todo PHP, se
convirtieron en herramientas muy utilizadas por su facilidad de aprendizaje, su
sencillez y potencia. (La web dinámica,s.f)

Según Luján, “una aplicación web (web-based application) es un tipo especial de


aplicación cliente/servidor, donde tanto el cliente (el navegador, explorador o
visualizador) como el servidor (el servidor web) y el protocolo mediante el que se
15
16

comunican (HTTP) están estandarizados y no han de ser creados por el programador


de aplicaciones”. (2002, pág. 48)

El proceso de la aplicación comienza cuando el cliente se direcciona por el envío de


un formulario o escribe en el navegador la url de la página que desea visualizar, el
navegador envía el mensaje mediante el protocolo HTTP al ordenador remoto o
servidor, suponiendo que la url hace referencia a un archivo de extensión .php, el
servidor web recibe el mensaje, y al ver que se trata de la extensión “php”, solicita al
intérprete de PHP (que es otro programa que se ejecuta en el servidor web) que le
envíe el archivo. El intérprete lee el archivo, empieza a interpretar las instrucciones
PHP y ejecuta los comandos escritos, podría realizar en el proceso alguna conexión
a la base de datos; si se da el caso, intervendría el gestor de base de datos que es
capaz de devolver la información requerida de la base de datos. Una vez el intérprete
termina de ejecutar el código del archivo .php y ha recibido toda la información
necesaria del gestor de base de datos, envía los resultados al servidor y el servidor
envía la página que había solicitado el cliente, finalmente el navegador muestra la
información de la página que se solicitó.
Figura 1.2 Proceso de una Aplicación Web

Fuente: http://futurevisioncomputers.com (2015, Febrero 23).

16
17

1.3. COMERCIO ELECTRÓNICO

Según la ley general de telecomunicaciones el comercio electrónico es definido como


“toda relación de índole comercial sea o no contractual, con la intervención o a partir
de la utilización de una o más comunicaciones digitales.” [CITATION ATT12 \l
16394 ]

Se define también el comercio electrónico como “todo tipo de intercambio de datos


por medios electrónicos, esté asociado este intercambio o no con la actividad
comercial en su sentido más estricto”.[CITATION Com \p 8 \l 16394 ]

De forma más concreta, puede ser considerado como toda transacción o


intercambio de información comercial realizada por vías electrónicas (como
internet). Así definido, el comercio electrónico no sólo comprende la compra-
venta electrónica de bienes y servicios, sino las actividades previas y
posteriores al negocio propiamente dicho (por ejemplo, la publicidad, la
atención al cliente antes y después de la venta, los pagos electrónicos, los
impuestos, etc.).[CITATION Com \p 8 \l 16394 ]

El comercio electrónico fue creciendo de manera significativa en los últimos años,


inicialmente porque las compras de artículos por internet resultan atractivas por la
facilidad para realizarlas y segundo, por su disponibilidad de 24 horas al día los 7
días de la semana, además ofrece una gran variedad de posibilidades para adquirir
servicios en diversas partes del mundo.

Debido a las diversas necesidades del mercado, el comercio electrónico se derivó en


los siguientes actores y tipos:

17
18

“Los diferentes agentes que pueden participar en una transacción comercial


entendidos a nivel genérico son Administración (A), la empresa (B de
business) y los clientes o consumidores (C)”. (Iberoamericana, pág 16)

Figura 1.3 Principales agentes en e-com

C2C

C
Consumi
dor

A
B Administra
Empresa B2A ción

B2B A2A
A2B

Fuente: [CITATION Com \p 17 \l 16394 ]

Tipos:
o B2B (Business to Business): Es aquel donde la transacción comercial
únicamente se realiza entre empresas que operan en internet.
o B2C (Business to Consumer): Es el más conocido de todos; se lleva a
cabo entre negocio o tienda virtual y una persona interesada en
comprar un producto o adquirir un servicio.
o C2C (Consumer to Consumer): Cuando una persona ya no utiliza algún
producto y busca ofrecerlo en venta, puede utilizar el comercio
electrónico como medio para realizar esta transacción con otro
consumidor.

18
19

o G2C (Goverment to Consumer): Cuando un gobierno municipal, estatal


o federal permite que los ciudadanos realicen sus trámites en línea a
través de un portal A2A (Administration to Administration): Bajo esta
denominación se contemplan aquellas actividades que realizan las
administraciones entre sí. Como ejemplo se pueden enumerar dos
actividades: la ventanilla única electrónica y las iniciativas comunes de
regulación del marco legislativo. [CITATION Pie \l 16394 ]

Estos tipos de comercio electrónico, aunque no sean los únicos, son los más
utilizados de manera cotidiana y brindan grandes ventajas como el ahorro de tiempo,
la reducción de costos, la mejora de la comunicación con los clientes y la efectividad
de campañas publicitarias.

1.4. APLICACIONES MÓVILES

Una aplicación móvil es aquella desarrollada especialmente para ser ejecutada en


dispositivos móviles como el teléfono celular, tabletas y similares. Estas aplicaciones
tienen características especiales para poder funcionar en SmarthPhones5 que, por lo
general, tienen menos capacidad de procesamiento y almacenamiento que
computadoras de escritorio o notebooks. [CITATION Ale14 \t \l 16394 ]

Actualmente existe un sinfín de aplicaciones de todo tipo, forma, color y que cumplen
con cualquier función como entretener a la sociedad o brindarle servicios de atención
al cliente, pero en los primeros teléfonos estaban enfocadas a mejorar la
productividad como las alarmas, calculadoras, calendarios y otros.

Desde el ingreso del IPhone al mercado hubo un gran cambio, a partir del nacimiento
de éste se generaron nuevos modelos de negocio que hicieron a las aplicaciones
5
SmarthPhones: Dispositivos móviles inteligentes.

19
20

más rentables, tanto para los desarrolladores como para los mercados de
aplicaciones como Play Store6.

Al mismo tiempo fueron mejorando las herramientas disponibles para programadores


para desarrollar apps, facilitando la tarea de producir aplicaciones y lanzarlas al
mercado incluso por cuenta propia. (Cuello y Vittone,s.f.)

1.5. SERVICIOS WEB

Un servicio Web o WebService “es un servicio ofrecido por una aplicación que
expone su lógica a clientes de cualquier plataforma mediante una interfaz accesible a
través de la red utilizando tecnologías (protocolos) estándar de internet”. (Besterio y
Rodríguez, s.f.,pág. 1)

Para poder explicar el concepto de una manera más clara, un servicio web es una
funcionalidad de cualquier aplicación, como la de imprimir o mostrar simple
información, ofrecida a un cliente que no se encuentra en el mismo ordenador;
asimismo, para el acceso a estas funcionalidades, se requiere de un servidor web y
de protocolos como HTTP, SOAP, WSDL y UDDI generalmente.

SOAP es un protocolo de alto nivel, que sólo define la estructura del mensaje
y algunas reglas básicas de procesamiento de éste, siendo completamente
independiente del protocolo de transporte. Ello posibilita que los mensajes
SOAP puedan ser intercambiados a través de HTTP, SMTP, JMS, etc., donde
HTTP es el más utilizado en estos momentos.

WSDL es un estándar de descripción de servicios web que utiliza para ello un


documento XML. Dicho documento proporcionará a las aplicaciones toda la
información necesaria para acceder a un servicio web. El documento describe

6
PlayStore: Tienda virtual de aplicaciones para Android
20
21

el propósito del servicio web, sus mecanismos de comunicación, dónde está


ubicado, etc.

Otro componente de los servicios web es UDDI (Universal, Description,


Discovery and Integration). Éste es un servicio de registro de servicios web
donde éstos se registran almacenando su nombre, la URL de su WSDL, una
descripción textual del servicio, etc. Las aplicaciones interesadas pueden
consultar, vía SOAP, los servicios registrados en UDDI, para buscar un
servicio, etc. [CITATION Mat04 \p 277-278 \l 16394 ]

Figura 1.4. Pila de Protocolos de los WebServices

Fuente: (Besterio y Rodríguez, s.f, pág 1)

Todos estos protocolos permiten la comunicación entre computadoras y la obtención


de información remotamente sin importar la heterogeneidad de características entre
dispositivos como los distintos sistemas operativos, su hardware, aplicaciones,etc.

1.6. RUP

21
22

El Proceso Racional Unificado o RUP (Rational Unified Process), “es un proceso de


desarrollo de software y junto con el Lenguaje Unificado de Modelado UML,
constituye la metodología estándar más utilizada para el análisis, implementación y
documentación de sistemas orientados a objetos”. [CITATION UCA15 \p 4 \l 16394 ]

Sus principales características son:

 Dirigido por Casos de Uso.- Los casos de uso son una guía de trabajo y un
elemento integrador; además de modelar los requisitos del sistema, guían también su
diseño, implementación y prueba.

 Proceso centrado en la Arquitectura.- RUP se enfoca en la organización y


estructura de sus partes más relevantes obteniendo así una perspectiva del sistema
completo. Tanto arquitectura como casos de uso evolucionan en paralelo durante el
desarrollo de software; se tiene una arquitectura más robusta en las fases finales del
proyecto.

 Proceso iterativo e incremental.- El trabajo se divide en partes más pequeñas o


mini proyectos, donde cada uno de estos se puede ver como una iteración del cual
se obtiene un incremento que produce un crecimiento en el producto.
Una iteración pasa por las etapas de requisitos, análisis, diseño, implementación y
pruebas. Al finalizar se realiza una integración de todos los resultados obtenidos para
mejorar y empezar una nueva iteración. (UDG:Universidad de Girona, s.f)

También divide el proceso de desarrollo en ciclos, teniendo un producto final al


terminar cada ciclo, cada uno de estos se divide en fases que finalizan con un hito
donde se debe tomar una decisión importante:

 Inicio se hace un plan de fases, se identifican los principales casos de uso y se


identifican los riesgos.

22
23

 Elaboración: se hace un plan de proyecto, se completan los casos de uso y se


eliminan los riesgos.
 Construcción: se concentra en la elaboración de un producto totalmente operativo y
eficiente y el manual de usuario.

 Transición: se implementa el producto en el cliente y se entrena a los usuarios.


Como consecuencia de esto suelen surgir nuevos requisitos a ser analizados.
[CITATION UCA15 \l 16394 ]

RUP es una metodología adaptable ya que se adecúa a las necesidades de una


organización, además, funciona también de manera iterativa en todas las etapas de
desarrollo para ir mejorando progresivamente los resultados asegurando de esta
manera la calidad en todos los aspectos del proceso logrando un producto adecuado
a los requerimientos.

23
2. CAPÍTULO II MARCO REFERENCIAL

CAPÍTULO II

MARCO REFERENCIAL

24
25

2.1. DESCRIPCIÓN DE LA EMPRESA

“Bottero Calzados de Mujer” es una empresa dedicada a la venta de calzados


femeninos de afamadas marcar brasileras como RAMARIM, Bottero, Moleca, entre
otras; dicha empresa, antes de surgir con su nombre, comenzó con pedidos a la
fábrica Bottero y el afán de contar con una tienda propia los llevó a realizar una carta
a la fábrica misma la cual les pasó su tienda en la ciudad al ver la gran labor que se
realizaba con la venta de sus calzados.

Figura 2.5 Logo de la empresa

Fuente: Elaboración propia, 2015

La empresa actualmente cuenta con tres casetas y dos tiendas descritas a


continuación:

-La casa matriz ubicada en la Av. Heroínas entre San Martín y Lanza acera norte,
ésta se inauguró el 2 de marzo de 2010.

-La tienda de Quillacollo ubicada en la calle Waldo Ballivián #110 entre Av. Blanco
Galindo y calle Carmela Serruto acera este, inaugurada el 6 de septiembre de 2013.

25
26

“Bottero calzados de mujer” se encuentra organizada de la siguiente manera:

Figura 2.6 Organigrama de la empresa

Gerente
Gerencia Propietario

Administración
Administrador

Encargado de Encargado de Encargado de


Empleados
inventarios cajas ventas

Fuente: Elaboración propia, 2015

2.1.1. MISIÓN

Vender la mejor calidad y variedad de calzados brindando a las damas las mejores
opciones de compra, ofreciendo productos con las últimas tendencias de moda y
manteniendo satisfecho al cliente.

2.1.2. VISIÓN

Ser la cadena de tiendas que posea el mejor ambiente, comodidad y seguridad


ofreciendo un estilo único de atención, obteniendo de esta manera la confianza y
lealtad de los clientes. Asimismo contar con más sucursales y ganar mayor
participación en el mercado contribuyendo al desarrollo del país.
26
27

2.2. PRODUCTOS Y SERVICIOS

La empresa tiene como productos una gran variedad de calzados femeninos en


cuanto a marcas brasileras y categorías desde zapatos deportivos hasta modelos de
vestir bastante elegantes con o sin tacón.

Los calzados, aparte de clasificarse por marcas y categorías que contiene su


respectivo código, se catalogan también por colores y tallas.

2.3. ÁREA DEL TRABAJO DIRIGIDO

El trabajo dirigido está orientado al área comercial de la empresa en la cual se


encuentran los procesos de ventas, inventarios, facturación y publicidad de calzados.

2.4. DESCRIPCIÓN DE LA TAREAS Y/O TRABAJOS EFECTUADOS

Dentro de la empresa se tienen dos procesos principales: Ventas e Inventario. Dentro


del proceso de inventarios se incluye el pedido al proveedor y el reabastecimiento de
calzados; el proceso de ventas es distinto según el medio por el cual se adquiere el
producto, es decir, se tiene un proceso para la modalidad de venta directa y otro para
la venta en línea, ambos involucran la facturación y la salida de inventario.

Dentro el proceso de inventario se tiene el registro de productos donde previamente


se registra el ítem, el cual tiene una marca y una categoría; posterior a este proceso
se realiza el registro de colores y tallas para cada ítem. Una vez realizado esta etapa
del proceso, se mueve toda la mercadería ingresada al almacén, en donde se
actualizan el stock y los precios para así realizar el reparto a las sucursales y
finalmente actualizar las existencias en cada sucursal.

27
28

Figura 2.7 Proceso de Inventarios

Movimiento de
Registro de los todo lo Reparto de
productos por ingresado al productos a las
item almacén sucursales

Clasificación Actualizaciones Actualización


por tallas y de Precio y del stock por
colores Stock general sucursal

Fuente: Elaboración propia, 2015

Dentro del proceso de venta directa el cliente elige el o los calzados que desea
adquirir, realiza el pago, se registra la venta, se hace la respectiva disminución del
inventario y se realiza la facturación con los datos proporcionados por el comprador.

28
29

Figura 2.8 Proceso de Venta directa

Elección de los Registro de la Emisión de la


calzados venta factura

Pago por el o Actualizaciones


los productos a de Precio y
adquirir Stock

Fuente: Elaboración propia, 2015

La empresa no cuenta con la venta en línea por lo que se acordó seguir el siguiente
proceso:

Inicialmente el cliente elige el o los calzados que desea adquirir, realiza el pago en
línea, se registra la venta, se hace la respectiva disminución del inventario y para
finalizar, se realiza la facturación electrónica con los datos proporcionados por el
comprador.

29
30

Figura 2.9 Proceso de Venta en Línea

Emisión de la
Elección de los Registro de la factura
calzados venta electrónica

Pago mediante Actualizaciones


PayPal por el o de Precio y
los productos a Stock
adquirir

Fuente: Elaboración propia, 2015

2.5. FALENCIAS Y/O PROBLEMAS ENCONTRADOS

En la actualidad la empresa “Bottero Calzados de Mujer” no cuenta con un sistema


de información que facilite el control automático de sus procesos comerciales, como
consecuencia de esto, se invierte mayor tiempo realizando registros y aumenta la
probabilidad de cometer errores.

La consulta de existencias en la empresa no es óptima ya que al contar con varias


sucursales y un almacén central que provee de productos al resto, el inventario de
calzados varía y provoca confusiones no solamente por la cantidad de registros, sino
también por la variedad de atributos que poseen los calzados como el color o la talla.
De la misma forma, se presentan falencias por los errores cometidos por los

30
31

empleados perjudicando así el correcto reabastecimiento de las sucursales por el


almacén central.

En el proceso de venta es también notoria la falta de un sistema informático al existir


mora en la realización de facturas de forma manual que retrasa la atención del
cliente e implica un trabajo más para el empleado.

La empresa no cuenta con una tienda en línea lo que significa que sus ventas son
llevadas a cabo de manera tradicional, es decir, con la transferencia del dinero en
efectivo y con la presencia física del comprador, vendedor y el producto; este
proceso además está sujeto a los horarios de atención de las tiendas, que impide
una disposición de 24 horas al día y los 7 días de la semana.

En cuanto a publicidad no existe ningún medio para promocionar tanto la empresa


como los productos que ofrecen, por lo que es necesario contar con algún medio
alternativo a la necesaria presencia física de comprador y vendedor para dar a
conocer tanto a la empresa como sus promociones.

31
3. CAPÍTULO III INGENIERÍA DEL PROYECTO

CAPÍTULO III

INGENIERÍA DEL PROYECTO

32
3.1. INTRODUCCIÓN

A continuación se procede a la ingeniería del proyecto siguiendo la metodología RUP


con sus cuatro fases: iniciación, elaboración, construcción y transición.

3.2. INICIACIÓN

3.2.1. INTRODUCCIÓN

La empresa “Bottero Calzados de Mujer” requiere un sistema que le permita registrar


y controlar sus procesos de ventas e inventarios además de contar con un medio
para poder hacer público los productos y promociones que ofrece.

El presente proyecto busca implementar dicho sistema, usando tecnología web,


incluyendo módulos de Ventas, Inventarios y Publicidad. También incluirá una tienda
en línea de tipo B2C (Business-to-Consumer) donde se ofertarán los calzados de la
empresa.

3.2.2. OBJETIVOS DEL PROYECTO

Desarrollar un sistema de comercio electrónico y control de inventarios para la


empresa “Bottero calzados de mujer” adecuado a sus requerimientos, que permita
facilitar sus procesos de venta, controlar sus stocks, generar reportes para el apoyo
de toma de decisiones y brindar un medio para publicitar sus productos.

33
3.2.3. CRONOGRAMA

Se seguirá el siguiente cronograma de actividades para elaboración de la ingeniería


utilizando la metodología RUP:

Tabla 3.1 Cronograma

Cronograma

1/10/2015 Iniciación

8/10/2015 Elaboración

15/10/2015 Construcción

29/10/2015 Transición

Fuente: Elaboración propia, 2015

3.2.4. BASE ARQUITECTÓNICA

Mediante el servidor web, se proveerá el sistema vía internet, y gracias a esto se


tendrá acceso al mismo desde cualquier parte del mundo, tanto para clientes, como
para los empleados.

34
Figura 3.10 Base Arquitectónica

<< SERVIDOR
LAMP>> << PC EMPLEADO>>

INTERNET
INTERNET

<< DISPOSITIVO MÓVIL


<< PC CLIENTE>> CLIENTE>>

Fuente: Elaboración propia, 2015

3.2.5. ESTIMACIÓN DE COSTOS

3.2.5.1 RECURSOS HUMANOS

El desarrollo del sistema fue realizado por la postulante Ángela María Valdez Bernal
tanto en el modelamiento como el desarrollo de software, contemplando las distintas
etapas del proceso unificado de desarrollo.

3.2.5.2 RECURSOS TECNOLÓGICOS

Para el desarrollo del sistema, se utilizó:

 Rational Unified Process (RUP) como proceso de desarrollo de software.


 Unified Modeling Language (UML) como lenguaje de modelado del sistema.

35
Entra las herramientas utilizadas para el modelamiento del sistema se utilizó
Microsoft Visio 2013; para el desarrollo de software se recurrió a Sublime Text 3
como editor de texto en la programación web, para la programación móvil se utilizó el
entorno de desarrollo para Android denominado Android Studio y como base de
datos del sistema se utilizó MySql.

3.2.5.3 MATERIAL DE APOYO

Para el desarrollo del proyecto fue necesaria la utilización de material bibliográfico


sobre los conceptos y la metodología implementada.

Para el análisis y desarrollo de software fue necesario el acceso a documentos de la


empresa como registros de compras, notas de venta y libros de inventario de todas
las sucursales.

3.2.6. CASOS DE USO DEL NEGOCIO

Figura 3.11 Procesos del negocio


OBJETIVOS ESTRATÉGICOS

Realiza un control Incrementar las ventas Obtener un medio para


eficiente de inventario de la empresa publicitar sus productos

PROCESOS DEL NEGOCIO

Gestionar información Proveer un carrito de Gestionar la publicidad


Gestión de compras Generar Reportes Gestión de usuarios Gestión de ventas
por sucursal compras por gustos del cliente

CASOS DE USO DEL NEGOCIO

Gestionar compras Gestionar Sucursales Gestionar Reportes Gestionar Usuarios Gestionar Ventas Gestionar carrito de compras Gestionar publicidad

Fuente: Elaboración propia, 2015

36
3.2.6.1 DIAGRAMA DE CASOS DE USO DEL NEGOCIO

Figura 3.12 Diagrama de casos de uso del negocio

Empleado
Gestionar Reportes

Gestionar Usuarios Gestionar ventas

Gestionar Compras
Gestionar Sucursales

Gestionar carrito de compras

Gestionar publicidad
Administrador Cliente

Fuente: Elaboración propia, 2015

3.2.6.2 DIAGRAMA DE ROLES

Figura 3.13 Diagrama de Roles

1:n 1 1:n 1

Cliente Empleado Administrador

Fuente: Elaboración propia, 2015

37
El diagrama de roles es una forma útil de describir la forma en que interactúan los
distintos sujetos en la empresa; como se ve en la figura, un empleado atiende a
varios clientes así como el administrador supervisa el trabajo de varios empleados.

3.2.6.3 DIAGRAMA DE SECUENCIA DE ROLES

Figura 3.14 Diagrama de secuencia Gestionar Compras

Empleado Administrador

Introduce la fecha real de compra y el proveedor Introduce la fecha real de compra y el proveedor

Registra los modelos de los calzados Registra los modelos de los calzados

alt alt
Se cargan datos del modelo
Se cargan datos del modelo
Existe modelo == true Existe modelo == true

Introduce el color, imagen y tallas por cada modelo Introduce el color, imagen y tallas por cada modelo

Finaliza la compra y se mueven los productos al almacén y se actualiza stock Finaliza la compra y se mueven los productos al almacén y se actualiza stock

Fuente: Elaboración propia, 2015

38
Figura 3.15 Diagrama de Secuencia Gestionar Sucursales

Empleado Administrador
Administrador

Ingresa a la página de movimientos Ingresa a la página de movimientos

Busca el calzado que desea tranferir a otra sucursal Busca el calzado que desea tranferir a otra sucursal

Elige la sucursal de destino Elige la sucursal de destino

Se realiza el movimiento y se actualiza stocks Se realiza el movimiento y se actualiza stocks

Fuente: Elaboración Propia, 2015

39
Figura 3.16 Diagrama de Secuencia Gestionar Reportes

Empleado Administrador
Administrador

Inicia Sesión Inicia Sesión

Ingresa a la página de reportes Ingresa a la página de reportes

Elige el reporte deseado


Elige el reporte deseado

Fuente: Elaboración propia, 2015

40
Figura 3.17 Diagrama de Secuencia Gestionar Usuarios

Administrador
Administrador Empleado Cliente

Ingresa a la página de usuarios

Ingresa a la página de Regístrate

Consulta datos personales

Brinda datos

Introduce sus datos


Introduce los datos del empleado

Le asigna roles Finaliza la creación de cuenta

Finaliza la creación de usuario

Fuente: Elaboración propia, 2015

41
Figura 3.18 Diagrama de Secuencia Gestionar Ventas

Cliente Empleado

Lista calzados que desea comprar

Verifica el stock de los calzados

alt

Existe producto == true

Entrega producto

Existe producto ==false


Verifica existencia en otras sucursales

Realiza el movimiento entre sucursales

Entrega producto

Realiza el pago

Entrega factura

Fuente: Elaboración propia, 2015

42
Figura 3.19 Diagrama de Secuencia Gestionar Carrito de Compras

Cliente

Inicia Sesión

Navega viendo los calzados de su interés

Agrega al carrito el producto que desee comprar

opt
Elimina calzado del carrito
Si no gusta del calzado que agregó

opt

Si desea modificar la cantidad


Modifica la cantidad del o los calzados agregados al carrito

Finaliza compra

Fuente: Elaboración propia, 2105

43
Figura 3.20 Diagrama de Secuencia Gestionar Publicidad

Administrador Cliente

Crea publicidad y la categoriza por marca, color y categoría Inicia sesión en la aplicación móvil de la empresa

Le da "Me gusta a los calzados de su preferencia"

Inicia sesión en la aplicación móvil de la empresa

Recibe publicidad según sus gustos

Fuente: Elaboración propia, 2015

44
3.2.6.4 DIAGRAMA DE ACTIVIDADES

Figura 3.21 Diagrama de Actividad Gestionar Compra

Empleado Administrador

Introduce la fecha Introduce la fecha


real de compra y el real de compra y el
proveedor proveedor

Registra los modelos Registra los modelos


de los calzados de los calzados

Si existe modelo Si existe modelo

Se cargan los datos Se cargan los datos


del modelo del modelo

Introduce el color, Introduce el color,


imagen y tallas por imagen y tallas por
modelo modelo

Finaliza la compra Finaliza la compra

Se mueven los Se actualiza el stock


Se actualiza el stock
productos al amacén
Se mueven los
productos al amacén

Fuente: Elaboración propia, 2015

45
Figura 3.22 Diagrama de Actividad Gestionar Sucursal

Empleado Administrador

Ingresa a la página Ingresa a la página


de movimientos de movimientos

Busca el calzado que Busca el calzado que


desea transferir a desea transferir a
otra sucursal otra sucursal

Elige la sucursal de Elige la sucursal de


destino destino

Se realiza el Se actualiza el stock Se realiza el Se actualiza el stock


movimiento movimiento

Fuente: Elaboración propia, 2015

46
Figura 3.23 Diagrama de Actividad Gestionar Reportes

Empleado Administrador

Inicia sesión Inicia sesión

Ingresa a la página Ingresa a la página


de reportes de reportes

Elige el reporte Elige el reporte


deseado deseado

Fuente: Elaboración propia, 2015

47
Figura 3.24 Diagrama de Actividad Gestionar Usuarios

Cliente Administrador Empleado

Ingresa a la página
Inicia sesión
de "Regístrate"

Ingresa a la página
Introduce sus datos
de usuarios
Brinda datos

Finaliza la creación Introduce datos del


de la cuenta empleado

Le asigna roles

Fuente: Elaboración propia, 2015

48
Figura 3.25 Diagrama de Actividad Gestionar Venta

Cliente Empleado

Lista calzados que


desea comprar

Verifica el stock de
los calzados

Si existe producto
Si no existe

Verifica si existe en
Recibe producto
otras sucursales

Realiza el
movimiento entre
sucursales
Realiza el pago

Emite factura

Fuente: Elaboración Propia, 2015

49
Tabla 3.2 Diagrama de Actividad Gestionar Carrito de Compras

Cliente

Inicia Sesión

Navega viendo los


calzados de su
interés

Agrega al carrito el
calzado que desea
comprar

Modifica cantidad
Elimina producto del
del producto
carrito
agregado

Fuente: Elaboración Propia, 2015


50
Figura 3.26 Diagrama de Actividad Gestionar Publicidad

Administrador Cliente

Crea publicidad
Inicia sesión en la
categorizada por
aplicación móvil de la
marca, color y
empresa
categoría

Le da "Me gusta" a
los calzados de su
preferencia

Recibe publicidad
según sus gustos

Fuente: Elaboración Propia, 2015

51
3.2.6.5 PLANTILLA DE CASOS DE USO

Tabla 3.3 Casos de Uso Gestionar Compra

Casos de Uso Gestionar Compra


Proceso de negocio Gestionar Compra
Objetivo Registrar los calzados de la nueva
mercancía
Descripción 1.- El empleado crea una nueva compra
insertando la fecha real de compra y el
proveedor.
2.- El empleado registra un nuevo
modelo de calzados.
3.- El empleado agrega la imagen, los
colores y las tallas por cada modelo de
zapato.
4.- El empleado finaliza la compra.
5.- Se mueven los productos al almacén
central y se actualiza el inventario.
Prioridad Alta

Fuente: Elaboración propia, 2015

52
Tabla 3.4 Casos de Uso Gestionar Sucursales

Casos de Uso Gestionar Sucursales


Proceso de negocio Gestionar Sucursales
Objetivo Realiza el paso de calzados del almacén a las
sucursales o entre éstas cuando se requiera.
También se puede consultar las existencias por
sucursal.
Descripción 1.- El empleado ingresa a la página de movimiento de
productos
2.- El empleado busca el calzado.
3.- Escoge la cantidad y la sucursal de destino.
4.- El calzado es movido a la sucursal seleccionada.

Prioridad Alta
Fuente: Elaboración propia, 2015

Tabla 3.5 Caso de uso Gestionar Reportes


Casos de Uso Gestionar Reportes
Proceso de negocio Gestionar Reportes
Objetivo Generar reportes de ventas por producto, cliente y
empleado.
Descripción 1.- El administrador o empleado con permisos para ver
reportes inicia sesión
2.- El usuario ingresa a la página de Reportes
3.- El usuario consulta el reporte que le interesa (ya sea
por cliente, empleado o por producto).
Prioridad Media
Fuente: Elaboración propia

53
Tabla 3.6 Caso de uso Gestionar Usuarios

Caso de Uso Gestionar Usuarios


Proceso de negocio Gestionar Usuarios
Objetivo Registrar, inhabilitar y asignar roles a los
usuarios
Descripción a) Cuando el administrador crea cuenta
para un usuario
1.- El administrador ingresa a la página
de usuarios.
2.-Introduce los datos del nuevo usuario.
3.-Le asigna los roles necesarios.
4.- La cuenta es creada
b) Cuando el cliente se crea cuenta
1.- El cliente ingresa a la página de
“Regístrate”
2.- El cliente introduce sus datos
(Nombres, Apellidos, email, dirección).
3.- La cuenta de usuario es creada.
Prioridad Media

Fuente: Elaboración propia, 2015

Tabla 3.7 Caso de Uso Gestionar Ventas

Caso de Uso Gestionar Ventas


54
Proceso de negocio Gestionar Ventas
Objetivo Realizar el registro de las ventas en el
sistema
Descripción 1.- El cliente realiza un listado de los
calzados que desea comprar.
3.- Se verifica en Stock los productos en
la sucursal.
4.- Si algún producto no está en stock
se consultan en las demás sucursales
de existir se realiza el movimiento del
producto de lo contrario se informa al
cliente de la no existencia del calzado.
5.- El cliente realiza el pago de los
productos.
6.- El cliente proporciona los datos para
la factura
7.- El empleado realiza la factura y la
entrega al cliente.
8.- El cliente retira el producto de la
tienda.
Prioridad Alta

Fuente: Elaboración propia, 2015

Tabla 3.8 Caso de Uso Gestionar Carrito de Copras

Caso de Uso Gestionar Carrito de Compras


Proceso de negocio Gestionar Carrito de Copras
Objetivo Permitir al cliente seleccionar los

55
calzados que desee comprar en la
tienda en línea.
Descripción 1.- El cliente inicia sesión.
2.- El cliente navega por la página
viendo los productos que le interesan.
3.- Si el cliente ve un producto que le
interesa, dentro de la página del
producto hace click en el botón “Agregar
al carrito”.
4.- Si el cliente desea eliminar un
producto de su carrito, ingresa a la
página del carrito de compras y hace
click en el botón “Eliminar” que está al
lado del producto.
5.- Si el cliente desee modificar la
cantidad de un producto en su carrito,
ingresa a la página del carrito de
compras y escribe la cantidad que
desee en el campo correspondiente que
se encuentra debajo del producto.
Prioridad Alta

Fuente: Elaboración propia, 2015

Tabla 3.9 Caso de Uso Gestionar Publicidad

Caso de Uso Gestionar Publicidad


Proceso de negocio Gestionar Publicidad
Objetivo Enviar publicidad al móvil del cliente
según su gustos
Descripción 1.- El cliente inicia sesión en la
aplicación móvil de la empresa.

56
2.- Le da me gusta a los productos de
su preferencia.
3.- El administrador crear banners y los
categoriza por color, marca, y categoría
de calzados.
4.- La publicidad llega automáticamente
al celular del cliente según sus gustos
en base a sus compras y sus favoritos
seleccionados en la aplicación móvil.
Prioridad Media

Fuente: Elaboración propia, 2015

3.3. ELABORACIÓN

3.3.1. ACTORES

Se cuenta con los siguientes actores:

 Cliente: Realiza la adquisición de productos tanto en la tienda en línea como


en la física y recibe publicidad de los calzados de su gusto por medio de una
aplicación móvil.
 Empleado: Según su rol puede realizar diferentes actividades:
o Compras: Encargado del registro de los productos recién llegados y de
la distribución a su respectiva sucursal.
o Ventas: Realiza el registro de la venta directa y de la emisión de la
factura computarizada.
o Inventarios: Consulta las existencias de los calzados en las sucursales.
o Reportes: Ve los reportes generados por cliente, empleado y producto.
 Administrador: Puede realizar las mismas actividades que el empleado y
gestionar todos los usuarios del sistema.

57
3.3.2. CASOS DE USO

Figura 3.27 Casos de uso

Empleado
Gestionar Reportes

Gestionar Usuarios Gestionar ventas

Gestionar Compras
Gestionar Sucursales

Gestionar carrito de compras

Gestionar publicidad
Administrador Cliente

Fuente: Elaboración propia, 2015

3.3.2.1 CASOS DE USO GESTIÓN DE COMPRAS

Figura 3.28 Casos de Uso Gestión de Compras

58
Registrar producto

<<incluir>>

Registrar compra
<<incluir>>

Editar producto
Empleado

Registrar producto

<<incluir>>

Registrar compra
<<incluir>>

Editar producto
Administrador

Fuente: Elaboración propia, 2015

3.3.2.2 CASOS DE USO GESTIÓN DE SUCURSALES

Figura 3.29 Casos de Uso Gestión de Sucursales

59
Realiza movimientos
de productos

Consulta productos
sucursal
Empleado

Realiza movimientos
de productos

Consulta productos
sucursal
Administrador

Fuente: Elaboración propia, 2015

3.3.2.3 CASOS DE USO GESTIÓN DE REPORTES

Figura 3.30 Casos de Uso Gestión de Reportes

60
Consulta empleados

<<incluir>>

Consultar reportes <<incluir>> Consulta productos

<<incluir>>
Empleado
Consulta clientes

Consulta empleados

<<incluir>>

Consultar reportes <<incluir>> Consulta productos

<<incluir>>
Administrador
Consulta clientes

Fuente: Elaboración propia, 2015

3.3.2.4 CASOS DE USO GETIÓN DE USUARIOS

61
Figura 3.31 Casos de Uso Gestión de Usuarios

Ingresar datos

<<incluir>>

Crear Usuario

Verificar login y
Iniciar Sesión <<incluir>>
contraseña

Cliente Cambiar contraseña

<<incluir>>

Proporcionar correo
electrónico

Ingresar datos

<<incluir>>

Crear Usuario

Verificar login y
Iniciar Sesión <<incluir>>
contraseña

Administrador Cambiar contraseña

<<incluir>>

Proporcionar correo
electrónico

Fuente: Elaboración propia, 2015

3.3.2.5 CASOS DE USO GESTIÓN DE VENTAS

62
Figura 3.32 Casos de Uso Gestionar Ventas

Solicita calzados

Cliente

Consulta stock

Empleado Registra la venta <<incluir>> Introducir datos cliente

Consulta stock

Administrador Registra la venta <<incluir>> Introducir datos cliente

Fuente: Elaboración propia, 2015

3.3.2.6 CASOS DE USO GESTIÓN DE CARRITO DE COMPRAS

63
Figura 3.33 Casos de Uso Gestión de Carrito de Compras

Agregar producto al carrito

Eliminar producto del


Cliente carrito

Fuente: Elaboración propia, 2015

3.3.2.7 CASOS DE USO GESTIÓN DE PUBLICIDAD

Figura 3.34 Casos de Uso Gestión de Publicidad

Registra sus gustos

Recibe publicidad
Cliente

Crea publicidad

Administrador

Fuente: Elaboración propia, 2015

3.3.2.8 DICCIONARIO DE LOS CASOS DE USO

64
Tabla 3.10 Caso de uso Registrar Compra

Caso de Uso Registrar Compra


Caso de Uso Registrar Compra
Resumen Cuando llega nueva mercancía se realiza su registro pudiendo
insertar un nuevo calzado o reabastecerlo.
Actor Principal Empleado
Personal Administrador: Realiza, en caso de que el empleado no esté
Involucrado e disponible, la labor del registro de compra
Intereses
Precondiciones El empleado con el rol de compras debe haber iniciado sesión
para ingresar al sistema y crear una nueva compra
Post Se registra la compra, se mueve todo lo ingresado al almacén
condiciones y se actualiza el inventario.
Flujo Básico 1.A: El empleado crea una nueva compra insertando la fecha
real de compra y el proveedor.
2.A: El empleado registra un nuevo modelo de calzados.
3.A: El empleado agrega la imagen, los colores y las tallas por
cada modelo de zapato.
4.A: El empleado finaliza la compra.
5.S: Se mueven los productos al almacén central y se actualiza
el inventario.
Extensiones 2a: Modificar modelo
(Flujos 1.- El empleado selecciona el modelo.
Alternativos) 2.- Cambia los atributos necesarios.
3.- El sistema informa al empleado si el cambio se realizó
correctamente.

2a: Eliminar modelo


1.- El empleado selecciona el modelo a eliminar.
2.- El sistema muestra una ventana de confirmación.

2a: Modificar imagen, color o tallas


65
1.- El empleado selecciona el color.
2.- Cambia los atributos necesarios.
3.- El sistema informa al empleado si el cambio se realizó
correctamente.

2a: Eliminar color


1.- El empleado selecciona el color a eliminar.
2.- El sistema muestra una ventana de confirmación.

Fuente: Elaboración propia, 2015

Tabla 3.11 Caso de uso Realiza Movimiento de Productos

Caso de Uso Realiza Movimientos de Productos


Caso de Uso Realiza movimientos de Productos
Resumen Realiza el paso de calzados del almacén a las sucursales o
entre éstas cuando se requiera.
Actor Principal Empleado
Personal Administrador: Realiza, en caso de que el empleado no esté
Involucrado e disponible, la labor del movimiento de productos a otras
66
Intereses sucursales.
Precondiciones El encargado de realizar movimientos de las sucursales debe
haber iniciado sesión.
Post Se actualiza el stock en la sucursal de origen y en la de
condiciones destino.
Flujo Básico 1.A: El empleado busca el calzado.
2.A: Escoge la cantidad y la sucursal de destino.
3.A: Efectúa el movimiento.
4.S:Se actualiza el stock
Extensiones 2.A: Filtrar por código, color y sucursal
(Flujos 1.- Para efectuar una búsqueda eficiente del calzado puede
Alternativos) filtrar por cualquiera de los campos mencionados
anteriormente o por todos.

Fuente: Elaboración propia, 2015

Tabla 3.12 Caso de Uso Consulta Productos Sucursal

Caso de Uso Consulta Productos Sucursal


Caso de Uso Consulta Productos Sucursal
Resumen Permite consultar las existencias por sucursal.
Actor Principal Empleado
Personal Administrador: Cuando desee podrá también realizar la labor
Involucrado e de consulta del stock en dichas sucursales.
Intereses
Precondiciones Quien pueda realizar consultas a los stocks de las sucursales
debe haber iniciado sesión.
Post Ninguna
condiciones
Flujo Básico 1.A: El empleado busca el calzado.
67
2.A: Observa la cantidad disponible del calzado.

Extensiones 1.A: Filtro por color, código y sucursal


(Flujos 1.-El usuario escoge el código, color o sucursal para hallar el
Alternativos) calzado que busca.
2.-Visualizará la cantidad del producto en la sucursal.

Fuente: Elaboración propia – 2015

Tabla 3.13 Caso de Uso Consultar Reportes

Caso de Uso Consultar Reportes


Caso de Uso Consultar Reportes
Resumen Genera reportes en base a lo seleccionado por el
Administrador
Actor Principal Administrador
Personal Empleado: Con los permisos correspondientes podrá, de la
Involucrado e misa manera, consultar reportes.
Intereses
Precondiciones El administrador o empleado con rol para ver reportes debe
haber iniciado sesión,
Post Reportes generados en Dashboards
condiciones
Flujo Básico 1.A: El usuario ingresa a la página de reportes.
2.A: Escoge los parámetros de los que desea el reporte.
3.S: El sistema genera el reporte solicitado
Extensiones Ninguno

68
(Flujos
Alternativos)

Fuente: Elaboración propia, 2015

Tabla 3.14 Caso de Uso Registrar Usuario

Caso de Uso Registrar Usuario


Caso de Uso Registrar Usuario
Resumen El administrador crea usuarios para los empleados y clientes
que así lo requieran para que tengan acceso al sistema.
Actor Principal Administrador
Personal Cliente: El cliente crea un usuario para poder acceder al
Involucrado e sistema y así poder acceder a la tienda en línea y realizar
Intereses compras.
Precondiciones El administrador debe haber iniciado sesión.
Post Se tiene un usuario registrado
condiciones
Flujo Básico 1.A: El administrador ingresa a la página de registro de
usuario.
2.A: El administrador ingresa el nombre, apellidos, correo y
nombre de usuario de quien esté registrando.
3.S: El sistema envía un correo con su login y una contraseña
generada al nuevo usuario registrado.
4.S: El sistema crea el usuario.
Extensiones 1a:El cliente se registre
(Flujos 1.- El cliente ingresa a la página de registro de usuario.
Alternativos) 2.- El cliente ingresa su nombre, apellidos, correo, login y
dirección de envío.
3.- El sistema envía un correo con su login y una contraseña
generada al nuevo usuario registrado.
4.- El sistema crea el usuario.

69
2a:Correo ya registrado
1.- El sistema indica que el correo ya ha sido registrado.
2.- El cliente o administrador ingresa otro correo.
3a: Alguno de los campos en el formulario ha sido dejado en
blanco
1.- El sistema indica que algunos campos están vacíos.
2.- El cliente o administrador ingresa los datos que faltan.

Fuente: Elaboración propia, 2015

Tabla 3.15 Caso de Uso Realizar Ventas

Caso de Uso Realizar Ventas


Caso de Uso Realizar Ventas
Resumen El cliente en la tienda solicita un calzado y realiza el pago.
El empleado registra la venta y emite una factura.
Actor Principal Cliente
Personal Empleado: Comprueba el pago y pide los datos del cliente para
Involucrado e la emisión de la factura.
Intereses
Precondiciones El empleado debe haber iniciado sesión para registrar la venta
y emitir la factura.
Post Se registra la venta y se actualiza el inventario
condiciones
Flujo Básico 1.A. El cliente solicita adquirir uno o varios calzados.
2.A. El empleado inicia sesión.
3.A. Introduce los códigos, colores, tallas y precio del calzado
que vende.
4.A. El empleado pide los datos del cliente para generar la
factura.
5.A. El cliente realiza el pago.
6.S. El sistema genera la factura.
70
7.A.El empleado entrega la factura y el producto al cliente.

Extensiones 4a: Si no existe el NIT


(Flujos 1.- El sistema registra los nuevos datos del cliente.
Alternativos)

Fuente: Elaboración propia, 2015

Tabla 3.16 Caso de Uso Agregar productos al Carrito

Caso de Uso Agregar Productos al Carrito


Caso de Uso Agregar Productos al Carrito
Resumen El cliente agrega productos al carrito para así poder realizar la
compra posteriormente.
Actor Principal Cliente
Personal Cliente: Requiere usar el carrito de compras para elegir los
Involucrado e productos que le interesan
Intereses
Precondiciones El cliente debe iniciar sesión en el sistema.
Post Se actualiza el carrito de compras con los productos añadidos.
condiciones
Flujo Básico 1.A: El cliente busca el producto que le interesa.
2 A: El cliente agrega el producto a su carrito de compras.
3.A: El cliente elige la cantidad que desea.
4 S: El sistema registra en el carrito de compras del cliente el
cambio realizado.
Extensiones Ninguno
(Flujos
Alternativos)

Fuente: Elaboración propia, 2015

71
Tabla 3.17 Caso de Uso Recibe Publicidad

Caso de Uso Recibe Publicidad


Caso de Uso Recibe publicidad
Resumen El cliente recibe publicidad cada que el administrador crea una
nueva
Actor Principal Cliente
Personal Cliente: Visualiza la publicidad
Involucrado e
Intereses
Precondiciones El cliente debe haber iniciado sesión en la aplicación móvil.
El administrador debe haber creado publicidad relacionada con
los gustos del cliente.
El cliente debió haber realizado alguna compra o haber dado
“me gusta” a algún calzado.
Post Ninguna
condiciones
Flujo Básico 1.A: El cliente inicia sesión.
2.S: El sistema verifica se hay nueva publicidad creada
relacionada con sus gustos.
3.A: El cliente recibe publicidad.
Extensiones Ninguno
(Flujos
Alternativos)

Fuente: Elaboración propia, 2015

72
3.3.3. DIAGRAMAS DE ESTADO PARA LOS CASOS DE USO

Figura 3.35 Diagrama de estados Registrar Compra

Esperando Inicio de sesión Esperando datos de compra


Inicia sesión el usuario con rol de copras

El empleado introduce los datos de la compra

Esperando datos de los modelos Esperando datos de los colores


El usuario introduce los datos del modelo

El usuario finaliza o cancela compra


Esperando finalización o cancelación de compra

El usuario finaliza la compra o la cancela

Fuente: Elaboración propia, 2015

73
Figura 3.36 Diagrama de Estados Consulta Productos sucursal

Esperando inicio de sesión

El empleado inicia sesión

Esperando selección de calzado a consultar


Se selecciona el calzado a consultar

Muestra el stock del calzado

Fuente: Elaboración propia, 2015

74
Figura 3.37 Diagrama de Estados Realiza Movimiento de Producto

Esperando inicio de sesión

El empleado inicia sesión

Esperando selección de calzado a mover


Se selecciona el calzado a mover

Espera cantidad y sucursal de destino del calzado

Introduce la cantidad a mover y la sucursal de destino

Realiza el movimiento

Fuente: Elaboración propia, 2015

75
Figura 3.38 Diagrama de Estados Consultar Reportes

Esperando inicio de sesión

El empleado inicia sesión

Esperando selección de reporte a generar


Se selecciona los parámetros de reporte

Muestra el reporte

Fuente: Elaboración propia, 2015

76
Figura 3.39 Diagrama de Estados Registro Usuario

Esperando inicio de sesión

El usuario inicia sesión

Esperando datos del nuevo usuario


Introduce los datos de usuario nuevo

Envía un correo con el logen y contraseña al usuario

Finaliza la creación del usuario

Fuente: Elaboración propia, 2015

77
Figura 3.40 Diagrama de estados Realizar Venta

Esperando inicio de sesión

El usuario inicia sesión

Esperando datos de los productos de la venta


Introduce los datos de los productos de la venta

Esperando datos del cliente para la factura

Emite la factura
Introduce los datos del cliente

Fuente: Elaboración propia, 2015

78
Figura 3.41 Diagrama de estados Agregar Productos al Carrito

Esperando inicio de sesión

El usuario inicia sesión

Esperando llenar el carrito


El cliente regresa al catálogo El cliente agrega productos al carrito

Esperando la modificación de la cantidad

El cliente agrega productos al carrito

Esperando la continuación de la compra Actualiza el total


El cliente modifica la cantidad de algún producto

El cliente finaliza la compra

Fuente: Elaboración propia, 2015

Figura 3.42 Diagrama de Estados Recibe Publicidad

79
Esperando inicio de sesión

El cliente inicia sesión

Verificando si existe publicidad para los gustos del cliente


Si hay publicidad

Envía publicidad

Si no hay publicidad

El cliente recibe publicidad

Fuente: Elaboración propia, 2015

80
3.3.4. MODELO CONCEPTUAL
Figura 3.43 Modelo Conceptual

Imagen
InteresUsuario Usuario
EnlaceImagen: string
Producto:int Nombre: string
RegistradoPor: int * *
DetalleCompra Usuario:int ApPat: string
EnFecha: date Direccion
CantClicks:int ApMat:string
Insertar() CantCopras:int 1
* Producto: int Color Login:string 1 Ciudad:string
Compra.int * * 1 Insertar() Contraseña:string
Cantidad:int Modificar() Correo:string * Direccion:string
Nombre: string Usuario:int
Precio:decimal Estado:bool
Insertar() Activa:bool
-Nombre del miembro 1 Modificar() Insertar() Latitud:string
1 Modificar() Longitud:string
1 Producto DarDeBaja() Insertar()
DetalleVenta
1 *
Compra * Item: int
Color. string * Producto: int *
Talla:int
* Venta.int
Fecha: Date 1 Cantidad:int Rol
FechaRegistro:Date Cantidad:inte 1
Item Precio:decimal
Proveedor:int Insertar() Descripcion: string Nombre:string
-Nombre del miembro
Descripción: string * 1 Insertar() Insertar()
* Precio. decimal Publicidad *
Marca:int
Categoria:int
*
1 Descripción: string 1
Insertar() Imagen: string
Proveedor Insertar() Venta
* Marca Anulado
Descripción: string 1 Fecha: Date 1
Nombre: string Nombre: string Descripcion: string
Tipo:int
Estado:bool Estado: bool Venta:int
* Numero:int
Direccion: string Insertar() RazonSocial:string 1 Insertar()
Telefono:int Modificar() NIT: int
Mail:string Movimiento * Dosificacion
DarDeBaja() CodigoControl:string
Persona de contacto:string FechaLimite:date
Sucursal: int NumAuto: bigint
Insertar() Estado: string
Categoria Producto:int Dosificacion:int 1 NumFact: int
Cantidad:int Llave: string
1 Insertar() FechaLimite: date
Nombre: string Fecha:date
TipoTransac:bool NroInicial:int
Estado: bool 1
Stock:int 1 NroFinal:int
Insertar()
CantPEPS:int Insertar()
Modificar()
TipoOrDes:tinyint 1
DarDeBaja()
Tipo:int VentaLinea
VentaDirecta
PrecioCompra:decimal
Nombre: string
Insertar() Venta: int Estado: bool
* Usuario:int DetalleEnvio:int
Cliente:int
1 *
*
Sucursal 1 1
Cliente DetalleEnvio
Nombre:string
Tipo: string NIT:int Foto:string
Insertar() RazonSocial: string Descripcion:string
Insertar() Insertar()

Fuente: Elaboración propia, 2015

81
3.4. CONSTRUCCIÓN

Figura 3.44 Secuencia Registrar Compra


3.4.1. CONTRATOS

Fuente: Elaboración propia, 2015

82
Tabla 3.18 Contrato Registrar Compra

Contrato Registrar Compra


Contrato Registrar Compra
Nombre registrarCompra()
Referencias Cruzadas Registrar Venta
Precondiciones Se tiene una sesión iniciada
Post condiciones -Se crea una instancia de Compra
-Se crea una instancia de
DetalleCompra
-Se crea una instancia de Producto
-Se crea una instancia de Movimiento.
-Se verifica si el producto comprado ya
existía.
-Se relaciona el DetalleCompra con el
Producto, la Compra y el Movimiento

Fuente: Elaboración propia, 2015

83
Figura 3.45Secuencia Realizar Movimiento de Productos

Fuente: Elaboración propia, 2015

Tabla 3.19 Contrato Realiza Movimientos de Productos

Contrato Realiza Movimientos de Productos


Contrato Realiza Movimientos de Productos
Nombre Mover()
Referencias Cruzadas Realiza Movimientos de Productos
Precondiciones Existe productos en stock en la sucursal

84
origen de movimiento.
Post condiciones -Se crea una instancia de movimiento.
-Se disminuye el stock de la sucursal
origen.
-Se incrementa el stock de la sucursal
destino.
Fuente: Elaboración propia, 2015

Figura 3.46 Secuencia Consulta Productos Sucursal

Fuente: Elaboración propia, 2015


Tabla 3.20 Contrato Consulta Productos Sucursal

85
Contrato Consulta Productos Sucursal
Contrato Consulta Productos Sucursal
Nombre Consultar()
Referencias Cruzadas Consulta Productos Sucursal
Precondiciones -El empleado con rol de Inventario debe
haber iniciado sesión
-Se debe tener los datos del producto a
consultar.
Post condiciones -Se crea una instancia de Producto a
Buscar
-Muestra Lista de productos consultados

Fuente: Elaboración propia, 2015

Figura 3.47 Secuencia Consultar Reportes

Fuente: Elaboración propia, 2105


Tabla 3.21 Contrato Consultar Reportes
Contrato Consultar Reportes
Contrato Consultar Reportes
Nombre ConsultarReportes()
Referencias Cruzadas Consultar Reporte

86
Precondiciones Se inició sesión de un usuario con
permisos para visualizar los reportes
Post condiciones Se muestra un reporte de acuerdo a los
parámetros establecidos por el usuario
Fuente: Elaboración propia, 2015

Figura 3.48 Secuencia Crear Usuario

Fuente: Elaboración propia, 2015


Tabla 3.22 Contrato Crear Usuario

Contrato Crear Usuario


Contrato Crear Usuario
Nombre InsertarUsuario()
Referencias Cruzadas Crear Usuario
Precondiciones El administrador debe haber iniciado

87
sesión.
Post condiciones Se tiene un nuevo usuario creado y listo
para cumplir su rol, en el caso del
cliente podrá realizar compras en la
tienda en línea.

Fuente: Elaboración propia, 2015

Figura 3.49 Secuencia Iniciar Sesión

Fuente: Elaboración propia, 2015


Tabla 3.23 Contrato Iniciar Sesión

Contrato Iniciar Sesión


Contrato Iniciar Sesión
Nombre iniciarSesión()
Referencias Cruzadas Iniciar Sesión Usuario
Precondiciones El usuario está registrado y habilitado
Post condiciones - Se Inició Sesión en el sistema
- Se habilitaron las opciones a las que

88
puede acceder el Usuario de acuerdo a
sus roles.
Fuente: Elaboración propia, 2015
Figura 3.50 Secuencia Cambiar Contraseña

Fuente: Elaboración propia, 2015


Tabla 3.24 Contrato Cambiar Contraseña

Contrato Cambiar Contraseña


Contrato Cambiar contraseña
Nombre CambiarContraseña()
Referencias Cruzadas Cambiar contraseña
Precondiciones El correo debe existir y ser válido
Post condiciones Contraseña cambiada

Fuente: Elaboración propia, 2015

Figura 3.51 Secuencia Registrar Venta


89
Fuente: Elaboración propia, 2015
Tabla 3.25 Contrato Registra Venta

Contrato Registra Venta


Contrato Registra Venta
Nombre RegistrarVenta()
Referencias Cruzadas Registrar Compra
Precondiciones El usuario inicia sesión en la sucursal en
la que trabajará
Post condiciones -Venta registrada.
-Disminución del stock.
-factura almacenada.

Fuente: Elaboración propia, 2015

90
Figura 3.52 Secuencia Agregar producto al carrito

Fuente: Elaboración propia, 2015


Tabla 3.26 Contrato Agregar Producto al Carrito

Contrato Agregar producto al carrito


Contrato Agregar producto al carrito
Nombre AgregarProductoCarrito()
Referencias Cruzadas Eliminar producto del carrito
Precondiciones El cliente debe haber iniciado sesión
Post condiciones Carrito de compras con productos

Fuente: Elaboración propia, 2015

Figura 3.53 Secuencia Eliminar Producto Carrito

91
Eliminar producto del
Cliente carrito

Cliente :Sistema

Elimina

Actualiza carrito

Muestra total carrito

Fuente: Elaboración propia, 2015


Tabla 3.27 Contrato Eliminar Producto del Carrito

Contrato Eliminar Producto del Carrito


Contrato Eliminar producto del carrito
Nombre EliminarProductoCarrito()
Referencias Cruzadas Agregar Producto Carrito
Precondiciones -El cliente inicio sesión
-El cliente agregó algún producto al
carrito
Post condiciones Carrito sin el producto borrado

Fuente: Elaboración propia, 2015

Figura 3.54 Secuencia Registrar Gustos

92
Registra sus gustos

Cliente

Cliente :Sistema

Inicia sesión en el móvil


Da click a los calzados que le
gustan
Registra el gusto del cliente

Fuente: Elaboración propia, 2015

Tabla 3.28 Contrato Registrar Gustos

Contrato Registrar Gustos


Contrato Registrar Gustos
Nombre RegistrarGustos()
Referencias Cruzadas Registrar Gustos
Precondiciones El cliente debe estar habilitado
Post condiciones Gustos registrados

Fuente: Elaboración propia, 2015

Figura 3.55 Secuencia Recibe Publicidad

93
Recibe publicidad
Cliente

Cliente :Sistema

Inicia sesión en el móvil

Busca publicidad según los gusto del cliente

Envía publicidad

Fuente: Elaboración propia, 2015

Tabla 3.29 Contrato Recibe Publicidad

Contrato Recibe Publicidad


Contrato Recibe Publicidad
Nombre RecibePublicidad()
Referencias Cruzadas Envia Publicidad
Precondiciones El cliente debe estar habilitado
Post condiciones El cliente ve la publicidad

Fuente: Elaboración propia, 2015

Figura 3.56 Secuencia Crea Publicidad

Crea publicidad

Administrador
94
Administrador :Sistema

Se dirige a la página de
publicidad
Crea nueva publicidad
Categoriza la publicidad
por color, marca y modelo

Introduce fecha límite


de publicidad
Crea publicidad

Fuente: Elaboración propia, 2015


Tabla 3.30 Contrato Crea Publicidad

Contrato Crea Publicidad


Contrato Crea Publicidad
Nombre CreaPublicidad()
Referencias Cruzadas Crea Publicidad
Precondiciones El administrador deber iniciar sesión
Post condiciones Nueva publicidad agregada

Fuente: Elaboración propia, 2015

95
3.4.2. DIAGRAMA DE CLASES

Figura 3.57 Diagrama de clases

96
Imagen
InteresUsuario Usuario
EnlaceImagen: string
Producto:int Nombre: string
RegistradoPor: int * *
DetalleCompra Usuario:int ApPat: string
EnFecha: date Direccion
CantClicks:int ApMat:string
Insertar() CantCopras:int 1
* Producto: int
Color Login:string 1 Ciudad:string
Compra.int * * 1 Insertar() Contraseña:string
Cantidad:int Modificar() Correo:string * Direccion:string
Nombre: string Usuario:int
Precio:decimal Estado:bool
Insertar() Activa:bool
-Nombre del miembro 1 Modificar() Insertar() Latitud:string
1 Modificar() Longitud:string
1 Producto DarDeBaja() Insertar()
DetalleVenta
1 *
Compra * Item: int
Color. string * Producto: int *
Talla:int
* Venta.int
Fecha: Date 1 Cantidad:int Rol
FechaRegistro:Date Cantidad:inte 1
Item Precio:decimal
Proveedor:int Insertar() Descripcion: string Nombre:string
-Nombre del miembro
Descripción: string * 1 Insertar() Insertar()
* Precio. decimal Publicidad *
Marca:int
Categoria:int
*
1 Descripción: string 1
Insertar() Imagen: string
Proveedor -Nombre del Venta
* Marca Anulado
miembro
Descripción: string 1 Insertar() Fecha: Date 1
Nombre: string Nombre: string Descripcion: string
Tipo:int
Estado:bool Estado: bool Venta:int
* Numero:int
Direccion: string Insertar() RazonSocial:string 1 Insertar()
Telefono:int Modificar() NIT: int
Mail:string Movimiento * Dosificacion
DarDeBaja() CodigoControl:string
Persona de contacto:string FechaLimite:date
Sucursal: int NumAuto: bigint
Insertar() Estado: string
Categoria Producto:int Dosificacion:int 1 NumFact: int
Cantidad:int Llave: string
1 Insertar() FechaLimite: date
Nombre: string Fecha:date
TipoTransac:bool NroInicial:int
Estado: bool 1
Stock:int 1 NroFinal:int
Insertar()
CantPEPS:int Insertar()
Modificar()
TipoOrDes:tinyint 1
DarDeBaja()
Tipo:int VentaLinea
VentaDirecta
PrecioCompra:decimal
Nombre: string
Insertar() Venta: int Estado: bool
* Usuario:int DetalleEnvio:int
Cliente:int
1 *
*
Sucursal 1
1 DetalleEnvio
Nombre:string
Tipo: string Cliente
Foto:string
Insertar() Descripcion:string
NIT:int
RazonSocial: string Insertar()
Insertar()

Fuente: Elaboración propia, 2015

3.4.3. DIAGRAMA DE COMPONENTES

97
Figura 3.58 Diagrama de Componentes

USUARIOS INVENTARIO VENTAS

GUI PRODUCTOS

ENCRIPTACIÓN
MD5

COMPRAS

REPORTES PUBLICIDAD

Fuente: Elaboración propia, 2015

3.4.4. DIAGRAMA DE DESPLIEGUE

Figura 3.59 Diagrama de Despliegue

<<PC CLIENTE>> <<PC SUCURSAL>>

INTERNET
<<DISPOSITIVO
MÓVIL CLIENTE>>

<<PC <<SERVIDOR
ADMINISTRADOR>> LAMP>>

Fuente: Elaboración propia, 2015

98
3.4.5. DIAGRAMA DE PAQUETES

Figura 3.60 Diagrama de Paquetes

PRODUCTOS
INVENTARIO

BOTTERO
CALZADOS DE
MUJER

USUARIOS VENTAS

REPORTES

COMPRAS FACTURACIÓN
PUBLICIDAD

Fuente: Elaboración propia, 2015

99
3.4.6. DIAGRAMA RELACIÓNAL DE LA BASE DE DATOS
Figura 3.61 Diagrama Relacional de la Base de Datos

Fuente: Elaboración propia, 2015


100
Dentro la base de datos se cuenta con una tabla llamada “TipoOrigenDestino”, la
cual no se encuentra relacionada con ninguna otra tabla debido a que solo almacena
algunas variables y datos de configuración del sistema, como el tipo de movimiento
que se realiza si es entrada o salida y producto de qué de se da este movimiento:
compra, venta o paso a una sucursal.

3.5. TRANSICIÓN

Dentro de la transición se incluyen las pruebas de calidad y de satisfacción del


usuario, estos puntos se desarrollan en el capítulo 4.

3.5.1. IMPLEMENTACIÓN

Para la implementación se pretende realizar la compra del dominio


www.botterocalzados.com con un plan de hosting durante un año mediante el
servicio Delux de la empresa GoDaddy con un costo de $6.99/mes.

Este servicio de hosting ofrece PHP 5.5 y MySQL 5.6, que son las últimas versiones
estables disponibles, y garantiza ancho de banda ilimitado y espacio en disco
ilimitado.

101
4. CAPÍTULO IV PRUEBAS DE CALIDAD

CAPÍTULO IV

PRUEBAS DE CALIDAD

102
103

4.1. INTRODUCCIÓN

En el capítulo presente se muestra una serie de pruebas que permiten comprobar y


verificar la calidad del sistema, identificando errores o comportamientos no deseados
para así realizar su corrección en caso de su existencia y calificar el software como
producto terminado.

4.2. PRUEBAS DE SOFTWARE

Las pruebas de software garantizan el correcto funcionamiento del software, debido a


que verifican la correcta integración de todos los componentes a partir de
condiciones iniciales esperando que los resultados finales sean los esperados.

4.3. TÉCNICAS DE PRUEBA

En esta epata de pruebas de software se cuenta con una serie de procedimientos


establecidos que guían su implementación y ayudan a medir y mejorar los procesos
de desarrollo.

Para este fin se recurre a un conjunto de tipos de prueba que apuntan a diferentes
funciones del programa en las que podría existir algún comportamiento o resultado
erróneo.

103
104

4.4. TIPOS DE PRUEBA

4.4.1. PRUEBAS DE UNIDAD Y DEPURACIÓN

Estas pruebas son efectuadas en el momento de desarrollo y antes de la integración


de unidades; se realiza independientemente en cada módulo previniendo así errores
en conjunto.

Tabla 4.31 Caso de Prueba Unidades

OBJETIVO Probar todas las unidades del sistema web de comercio


electrónico y control de inventarios para la empresa
“Bottero Calzados de Mujer”
DATOS DE PRUEBA - Ingresar caracteres especiales, como ser signos de
admiración, comas, comillas y otros, dentro de campos de
tipo cadena.
- Ingresar números en campos que sólo aceptan cadenas.
- Ingresar cadenas en campos que sólo aceptan números.
- No ingresar datos en campos obligatorios.
- Comprobar la conexión con la base de datos.
RESULTADO - No se permite ingresar caracteres especiales.
- No se permite ingresar números en campos de tipo
cadena.
- No se permite ingresar cadenas en campos de tipo
número.
- Muestra un mensaje de alerta “Este campo es
obligatorio”.
- La conexión se realizó con éxito.

Fuente: Elaboración propia, 2015

104
105

4.4.2. PRUEBAS DE INTEGRACIÓN

Estas pruebas verifican el correcto funcionamiento en la integración de las unidades


probadas en el anterior punto.

Tabla 4.32 Caso de Prueba Inicio de Sesión

OBJETIVO Probar la integración de unidades del sistema web de


comercio electrónico y control de inventarios para la
empresa “Bottero Calzados de Mujer”
DATOS DE PRUEBA - Iniciar sesión con diferentes usuarios con distintos
roles asignados.
- Comprobar la funcionalidad de todos los módulos.
- Verificar que los datos se muestren correctamente.
MÓDULOS PROBADOS Todos
RESULTADO - El ingreso al sistema con diferentes usuarios se
realizó correctamente, permitiendo acceso sólo a las
opciones que su rol le permite.
- Existe una correcta funcionalidad de todos los
módulos.

Fuente: Elaboración propia, 2015

4.4.3. PRUEBAS DEL SISTEMA

El objetivo de las pruebas del sistema es la detección de problemas o fallos en el


sistema integrado, probando la interacción de todos los módulos del sistema como
uno solo.
105
106

4.4.3.1 PRUEBAS DE SEGURIDAD

Se realiza la verificación de la seguridad del sistema

Tabla 4.33 Caso de Prueba Ingreso Forzado al Iniciar Sesión

OBJETIVO Comprobar la seguridad del sistema, intentando forzar


el ingreso en el inicio de sesión.
DATOS DE PRUEBA - Ingresar con un nombre de usuario y contraseña
incorrectos.
Ingresar con un nombre de usuario y contraseña
correctos pero inhabilitados.
- Ingresar con una cuenta correcta y contraseña
incorrecta, intentando varias veces.
RESULTADO - El sistema deniega el acceso y muestra el mensaje
“Usuario/Contraseña no válido”
- El sistema deniega el acceso y muestra el mensaje
“Usuario inhabilitado”
- El sistema muestra el mismo mensaje de error y
desde el segundo intento despliega un re-captcha, que
debe ser llenado correctamente para iniciar sesión.

Fuente: Elaboración propia, 2015

4.4.3.2 PRUEBAS DE RESISTENCIA

Se somete al sistema a procesamiento de grandes cantidades de información.

Tabla 4.34 Caso de Prueba Carga de Datos

106
107

OBJETIVO Probar el sistema al cargar grandes cantidades de


información.
DATOS DE PRUEBA - Verificar el funcionamiento del sistema durante un
tiempo prolongado de carga de datos masiva.
RESULTADO - No se presenta errores por la gran capacidad del
gestor de base de datos.

Fuente: Elaboración propia, 2015

4.4.3.3 PRUEBAS DE RECUPERACIÓN

Las pruebas de recuperación son las que llegan a forzar al sistema a un fallo en
software y verificar que la recuperación se lleve a cabo correctamente.

Tabla 4.35 Caso de Prueba Recuperación

OBJETIVO Prueba la recuperación del sistema


DATOS DE PRUEBA - Desconectar el cable de red en un equipo cliente.
RESULTADO - El sistema revierte los cambios si el corte ha sido en
medio de una transacción importante.

Fuente: Elaboración propia, 2015

4.4.4. PRUEBAS DE ESTRÉS

Las pruebas de estrés simulan casos en los que se tienen gran cantidad de registros
en una base de datos, permitiendo realizar una estimación del tiempo de respuesta a
peticiones del sistema con una carga determinada de registros.

Tabla 4.36 Prueba de Estrés

107
108

OBJETIVO Probar los tiempos de ejecución en la base de datos


con cantidades altas de registros.
DATOS DE PRUEBA - Manejo de 1000 registros.
- Manejo de 5000 registros.
- Manejo de 10000 registros
RESULTADO El software de prueba JMeter presentó los siguientes
tiempos:
- Para 1000 registros se tardó 14 segundos.
- Para 5000 registros se tardó 48 segundos.
- Para 10000 registros se tardó 77 segundos.

Fuente: Elaboración propia, 2015

4.4.5. PRUEBAS DE VALIDACIÓN

En este tipo de prueba verifica si se cumple con los requisitos funcionales del
sistema.

Las pruebas de validación se dividen en pruebas alpha y beta de las cuales se


presentan a continuación las alpha hechas en presencia del desarrollador.

Tabla 4.37 Caso de Prueba Registro de Usuario

OBJETIVO Realizar el registro de un nuevo usuario en el sistema.


DATOS DE PRUEBA - Datos del usuario, como ser nombre, apellido
paterno, apellido materno y correo.
RESULTADO -El registro se realizó con éxito enviando un mail con
su nombre de usuario y contraseña.

Fuente: Elaboración propia, 2015


108
109

Tabla 4.38 Agregar Productos al Carrito

OBJETIVO Probar el funcionamiento del carrito de compras


DATOS DE PRUEBA - Realizar la búsqueda y agregar 1 bota de marca
“Bottero” en color rojo talla 34.
-Agregar 2 botas del mismo tipo en color rojo pero en
talla 36.
-Agregar otra bota del mimo tipo en color azul y talla
36.
-Quitar 1 calzado de color rojo y talla 36
RESULTADO - Los productos y sus cantidades fueron agregados,
modificados y eliminados exitosamente, terminando el
proceso como es esperado con 1 bota roja en talla 34,
otra en talla 36 y una bota azul en talla 36 todas
Bottero y del mismo modelo.

Fuente: Elaboración propia, 2015

Tabla 4.39 Caso de Prueba Realizar Venta


OBJETIVO Realizar el registro de una venta en una sucursal
DATOS DE PRUEBA - Sesión iniciada de un usuario con el rol “Ventas”.
-NIT y razón social con datos si corresponde.
-2 calzados añadidos para la venta

RESULTADO - La venta se completó satisfactoriamente, siendo


emitida la factura correspondiente, realizándose el
registro en la base de datos de la venta y el detalle de
la misma, además de actualizarse la cantidad en
inventarios de los calzados añadidos según su modelo
109
110

color y talla correspondiente.

Fuente: Elaboración propia, 2015

Tabla 4.40 Caso de Prueba Realizar Una Compra


OBJETIVO Realizar el registro de la compra de productos
DATOS DE PRUEBA - Sesión iniciada de un usuario con el rol “Compras”.
- Un proveedor agregado a la compra
- Un modelo existente agregado de color rojo en varias
tallas.
-Varios modelos no existentes con colores y tallas
correspondientes.
RESULTADO - La compra fue registrada exitosamente aumentando
la cantidad en inventarios del modelo existente y
creando los modelos nuevos con su respectivo stock.

Fuente: Elaboración propia, 2015

4.5. SATISFACCIÓN DEL USUARIO

Para medir la satisfacción del usuario se usó la escala de Likert la cual mide la
reacción y conformidad de un individuo. Dicha escala consiste en un conjunto de
ítems presentados en forma de afirmaciones o juicios, ante los cuales se pide la
reacción de los participantes expresada en puntuación del uno al diez yendo por
cinco puntos desde el total acuerdo hasta el total desacuerdo.

De esta manera, el participante obtiene una puntuación respecto a cada afirmación y


al final una puntuación total, sumando las puntuaciones obtenidas en relación con
todas las afirmaciones.

110
111

Se realizaron dos encuestas usando esta escala, ambas se encuentran detalladas en


el Anexo A de este documento, la primera se realizó al inicio de este proyecto y mide
la conformidad de los empleados con los procesos actuales de la empresa; la
segunda se realizó después de hacer una demostración del software a los usuarios,
y así medir también la conformidad con el sistema desarrollado viendo si se logró
una mejora en sus procesos de ventas e inventarios.

La primera encuesta recibió una puntuación promedio de 3.9 y la segunda encuesta


tuvo una puntuación promedio de 8.8, por lo que se puede concluir que los
empleados tienen una reacción positiva hacia el sistema y que gracias a ese grado
de aceptación el sistema será usado de tal manera que sus beneficios no se verán
obstaculizados por el factor humano.

4.6. CONCLUSIÓN DE LA FASE DE PRUEBAS

Se cumplió satisfactoriamente con todas las pruebas realizadas, tanto en las pruebas
de software donde se pudo ver un correcto funcionamiento del sistema, como en las
pruebas de satisfacción del usuario, en las que se observó que hubo una mejora en
la puntuación en base a la escala de Likert, por lo tanto esto nos permite sustentar el
correcto desarrollo del sistema como también el cumplimiento del fin para el cual fue
elaborado.

111
5. CAPÍTULO V ESTIMACIÓN DE COSTOS

CAPÍTULO V

ESTIMACIÓN DE COSTOS

112
113

5.1. INTRODUCCIÓN

La estimación pragmática de costos se realizará en base a las siguientes categorías:

 Costo del personal.


 Costos consumibles.
 Costos de viajes y viáticos.

5.2. COSTO DEL PERSONAL

Fue la estudiante Ángela Mará Valdez Bernal la encargada del desarrollo del
proyecto, realizando tal proceso desde las etapas de diseño del software hasta su
culminación.

Tabla 5.41 Costo del Personal

Fase de Analista / Semanas Costo Subtotal


desarrollo del programado invertidas personal (Bs)
proyecto r (Bs/semanal)
Análisis y diseño Analista 3 1000 3000
Implementación Programador 7 1300 9100
Pruebas Programador 1 1300 1300
Documentación Analista 3 1000 3000
Total 16400 Bs.

Fuente: Elaboración propia, 2015

5.3. COSTO CONSUMIBLE

113
114

Tabla 5.42 Costo Consumible

Detalle Cantidad Unidad Precio (Bs) Subtotal


(Bs)
Material de Escritorio 1 Varios 25 50
Tinta para Impresora 4 Botes 45 180
Papel Bond 2 Paquete de 40 80
500 hojas
Fotocopias y anillados Varios 50 50
Total 350 Bs.

Fuente: Elaboración Propia, 2015

5.4. COSTOS DE VIAJES Y VIÁTICOS

Tabla 5.43 Costos de Viajes y Viáticos

Detalle Cantidad Precio (Bs) Subtotal (Bs)


Pasaje Diario 34 4,50 153
Viáticos 34 20 680
Total 833 Bs.

Fuente: Elaboración propia, 2015

El costo total estimado se resume en la siguiente tabla:

Tabla 5.44 Costo Total del Proyecto

Tipo Costo (Bs)


Costo del Personal 16400
Costo Consumible 350
114
Costo de viajes y viáticos 833
Total 17583 Bs.
115

Fuente: Elaboración propia, 2015

115
6. CAPÍTULO VI CONCLUSIONES Y RECOMENDACIONES

CAPÍTULO VI

CONCLUSIONES Y
RECOMENDACIONES

116
117

6.1. CONCLUSIONES

Ya terminado el desarrollo del sistema junto con la información y análisis realizados,


se concluye que a través de los módulos del sistema se cumplió con los objetivos
propuestos.

Dentro del Módulo de Usuarios se realizó satisfactoriamente la clasificación de


usuarios por los roles de Clientes, Ventas, Compras, Reportes, Inventarios y
Administrador; cada usuario puede tener más de un rol asignado, y se dieron
permisos de acceso a los módulos de acuerdo a estos roles definidos. El módulo
permite el registro de nuevos usuarios, modificación de los datos de un usuario y la
activación y desactivación de la cuenta.

El módulo de inventarios permite el control y registro del reabastecimiento de los


calzados existentes, así como de los nuevos productos que se incorporan para la
venta en el almacén central. El registro de productos se realiza primero con la
introducción de cada ítem que incorpora la marca, categoría, precio de compra,
precio de venta y el código; posteriormente para cada ítem se le va agregando los
colores de cada calzado junto con su imagen y una tabla de tallas con las cantidades
respectivas. En este módulo también se realiza el control de stock y la transferencia
de productos a las distintas sucursales, mostrando una tabla con el físico valorado
del inventario utilizando el método PEPS (Primero en Entrar Primero en Salir), y
finalmente, en el ámbito de los proveedores, permite registrar, editar y modificar sus
datos y saber de esta forma la procedencia de los calzados.

El Módulo de Ventas cuenta con dos modalidades; en la modalidad de venta directa


realiza la emisión de la Factura Computarizada en las distintas sucursales,
generando el código de control y código QR de acuerdo a la Normativa vigente del
Servicio de Impuestos Nacionales de Bolivia. En la modalidad de la venta en línea se
acepta pagos en línea por PayPal, tiene preparados todos los datos y códigos para el
117
118

envío al servicio web del Sistema de Facturación Electrónica y cuenta con un carrito
de compras listando los productos que se encuentran con foto, descripción, color,
precio y cantidad en una interfaz amigable e intuitiva, permitiendo agregar nuevos
productos, modificar la cantidad y quitar productos. Este módulo se comunica con el
módulo de inventarios para registrar la salida del stock de los productos que fueron
vendidos.

El Módulo de Reportes fue desarrollado mostrando varias gráficas de información


sobre las ventas por mes, por año, por producto, por empleado y por cliente. En
cuanto a producto se muestran los calzados más vendidos por temporada, marcas,
categoría, color y tallas. Asimismo se generan reportes sobre las preferencias que
tienen los clientes con relación a los productos apoyando así la toma de decisiones
de la empresa.

De la misma forma el módulo móvil de consultas y publicidad permite a los clientes


acceder a la consulta de calzados pudiendo apreciar los productos por categoría y
permitiéndoles navegar y dar “Me gusta” al zapato del modelo, color y marca favorita.
Por esta aplicación, la empresa puede también enviar publicidad según los gustos de
los compradores dando a “Bottero calzados de mujer” un medio para dar a conocer
sus promociones.

Por tanto se puede concluir que el objetivo general planteado ha sido alcanzado
puesto que se ha logrado desarrollar el Sistema de Comercio Electrónico y Control
de Inventarios propuesto para la empresa “Bottero Calzados de Mujer”, incluyendo
en sus módulos los procesos de compras, ventas, inventarios, publicidad y
facturación; integrando la información de todos los procesos y generando reportes
que apoyen a la toma de decisiones. Asimismo es posible concluir que la
metodología usada para el diseño del sistema, la estructura de su base de datos y
las herramientas usadas fueron aplicadas de tal manera que se alcanzó

118
119

satisfactoriamente los requerimientos que tenía la empresa mediante los objetivos


descritos anteriormente.

6.2. RECOMENDACIONES

En el presente trabajo se plantean las siguientes recomendaciones:

- Para tener el mejor desempeño y rendimiento funcional del sistema, se


recomienda tener los archivos y la base de datos alojados en un servicio de
hosting que tenga un buen ancho de banda y que cuente con una versión de
PHP 5.3 o superior.

- Dentro del sistema se debe configurar los datos de dosificación de las


facturas, que son emitidos por el SIN (Servicio de Impuestos Nacionales),
como ser el número de Autorización y el número de Factura; para que así este
completa la información que es necesaria para generar el código de control
requerido por normativa.

- Para el cobro del dinero recibido por pagos en PayPal se debe tomar en
cuenta que la empresa PayPal no cuenta con soporte directo para retirar el
dinero en Bolivia, por lo que se debe conseguir un intermediario para el cobro,
o contar con una cuenta bancaria en Estados Unidos.

- Se recomienda realizar Backups de la base de datos, en tiempos


determinados, para no perder información que pueda significar valiosa para la
empresa.

119
120

BIBLIOGRAFÍA

PÁGINAS WEB

(s.f.). Recuperado el 6 de Agosto de 2015, de UCACUE: Universidad Católica de


Cuenca: http://dspace.ucacue.edu.ec/bitstream/reducacue/5963/1/RATIONAL
%20UNIFIED%20PROCESS%20(RUP).pdf

(22 de Noviembre de 2012). Recuperado el 6 de Agosto de 2015, de ATT: Autoridad


de Regulación y Fiscalización de Telecomunicaciones y Transportes:
http://att.gob.bo/images/files/L0164_Ley_de_Telecomunicaciones_y_TICs.pdf

(10 de Junio de 2015). Obtenido de El blog de mercado's:


https://elblogdemercado.files.wordpress.com/2010/06/proceso2.jpg

Alegsa, L. (2010). Recuperado el 6 de Agosto de 2015, de Alegsa.com.ar:


http://www.alegsa.com.ar/Dic/aplicacion%20web.php

Alegsa, L. (2014). Recuperado el 6 de Agosto de 2015, de Alegsa:


http://www.alegsa.com.ar/Dic/aplicacion%20movil.php
Andrew, R., Ricart, J., & Valor, J. (1996). Estrategia y Sistemas de Información.
Madrid: McGraw-Hill.

Besterio, M., & Rodríguez, M. (s.f.). Web Services. Obtenido de


http://www.ehu.eus/mrodriguez/archivos/csharppdf/ServiciosWeb/WebServices.pdf

Cuello, J. S., & Vittone, J. (s.f.). Recuperado el 6 de Agosto de 2015, de


AppDesignBook.com: http://appdesignbook.com/es/contenidos/las-aplicaciones/
120
121

Pierce, J. (3 de Marzo de 2014). Los cinco tipos de comercio electrónico. Obtenido


de Shopify: https://es.shopify.com/blog/12621205-los-5-tipos-de-comercio-electronico

UDG:Universidad de Girona. (s.f.). Obtenido de Rational Unified Process (RUP):


http://ima.udg.edu/~sellares/EINF-ES2/Present1011/MetodoPesadesRUP.pdf

LIBROS

Firtman, M. (2004). ASP.NET Aplicaciones Web de alto rendiminto. MP Ediciones.

Iberoamericana, F. F. (s.f.). Comercio Electronico.

Jaén Fuentes, E. (2003). Sistema de Información Gerencial. La Paz.

Laudon, K., & Laudon, J. (2012). Sistemas de Información Gerencial (12va ed. ed.).
México: Pearson Education.

Luján Mora, S. (2002). Programación de aplicaciones web: historia, principios


básicos y clientes web. España: Editorial Club Universitario.

Mateu, C. (2004). Desarrollo de aplicaciones web (Primera ed.). Barcelona: Eureca


Media.

121
122

122
ANEXOS

123
124

ANEXO A

ENCUESTAS REALIZADAS A LOS EMPLEADOS DE LA EMPRESA

PRIMERA ENCUESTA: SITUACIÓN ACTUAL

Para poder contrastar la situación problemática de la empresa con la situación


existente después de la implementación del sistema web, se hace una evaluación de
los procedimientos que se realizaban para la venta, pedidos, control de inventarios y
facturación. En ese sentido se realizó una encuesta al personal de la empresa, cuyo
formulario es el siguiente:

124
125

Se aplica una escala de Likert tomando un intervalo comprendido por: 0 ≤ x ≤10.


Donde “x” es la ponderación final a obtener y se calcula mediante la siguiente
relación:

TL
x=
NE∗NP

TL: Representa el total de la evaluación de la escala de Likert, calculado por las


puntuaciones de las respuestas y sus coincidencias.
NE: Representa el número de encuestas realizadas
NP: Es el número total de afirmaciones expuestas en el cuestionario

Las puntuaciones para las respuestas son las siguientes:

RESPUESTA PUNTUACIÓN
Muy de Acuerdo 10
De Acuerdo 7.5
Indiferente 5
En Desacuerdo 2.5
Muy en 0
Desacuerdo

El total de encuestas realizadas es 5 y los resultados procesados se muestran a


continuación:

PREGUNTA
RESPUESTAS
Muy de De Indiferente En Muy en
S
Acuerdo Acuerdo Desacuerdo Desacuerdo
1 3 2
2 3 2
3 1 4
4 3 1 1
5 4 1
6 1 3 1
125
126

7 2 3
8 3 2
Totales 0 6 14 17 3
Aplicando la escala de Likert con las puntuaciones de las respuestas se tiene:

0*10 6*7,5 14*5 17*2, 3*0 TL


Totale
5
s
0 45 70 42,5 0 157,5

Luego:
TL 157 ,5
x= = =
NE∗NP 5∗8 3,9
Resultado que muestra la puntuación obtenida en el intervalo 0 ≤ x ≤10 para evaluar
la situación problemática de la institución.

SEGUNDA ENCUESTA: POSTERIOR A LA PRUEBA DEL PROTOTIPO

Luego de desarrollar el sistema y de hacer las pruebas de caja blanca, se realiza la


prueba de caja negra, esta vez con los empleados usando el sistema. Para evaluar
su alcance se realiza una encuesta a los usuarios directos del sistema que
participaron de esta etapa, la cual tiene como un objetivo (a parte de evaluar la
función del sistema) el percibir la aceptación de los usuarios de la aplicación web al
interior de la empresa.

El formulario de la encuesta realizada es el siguiente:

126
127

La escala de Likert a aplicar es la misma de la primera encuesta, es decir: 0 ≤ x ≤10

Las puntuaciones para las respuestas también son las mismas, teniendo como
variante el número de afirmaciones expuestas que es igual a 10.

127
128

El total de encuestas realizadas es de 5, y los resultados procesados de la encuesta


se muestran a continuación:

PREGUNTA
RESPUESTAS
Muy de De Indiferente En Muy en
S
Acuerdo Acuerdo Desacuerdo Desacuerdo
1 2 3
2 3 2
3 4 1
4 3 2
5 1 3 1
6 4 1
7 4 1
8 1 4
9 3 2
10 2 3
Totales 27 22 1 0 0

Aplicando la escala de Likert con las puntuaciones de las respuestas se tiene:

27*10 22*7, 1*5 0*2,5 0*0 TL


Totale
5
s
270 165 5 0 0 440

Luego:
TL 440
x= = =
NE∗NP 5∗10 8,8
Que representa la puntuación obtenida en el intervalo 0 ≤ x ≤10 para la aceptación
de la aplicación web dentro de la empresa.

ANEXO B

MANUAL TÉCNICO
128
129

INSTALACIÓN DEL SISTEMA

SISTEMA WEB

Para la instalación del sistema web en el servidor local solo se tendrá que
copiar el siguiente sistema de archivos en la carpeta HTDOCS.

Por último para implementar la base de datos se necesitara ejecutar el script


que se tiene en el Anexo E a un DBMS como por ejemplo: “phpMyAdmin”.Para
ingresar al sistema escribir la ruta “/Vista” después del nombre del servidor Ej:
http://localhost/Vista

APLICACIÓN MÓVIL
La instalación del sistema móvil es mediante un archivo “.apk”.

El archivo se deberá copiar al Smartphone del cliente y ser ejecutado para su


instalación automática.

El cliente debe tener conexión a internet para iniciar la aplicación.

REQUERIMIENTOS DE SOFTWARE

SISTEMA WEB
129
130

Un servidor LAMP con la versión 5.3.1 de PHP o superior.

La versión de MySQL utilizada es la 5.1.41.

Se requiere un servidor SMTP para el envío de correos.

APLICACIÓN MÓVIL

Versión 4.4 de Android o superior y espacio disponible en la memoria de 1,4


MB.

ANEXO C

MANUAL DE USUARIO

130
131

Este manual es una herramienta de apoyo para usar las distintas funcionalidades del
Sistema de Comercio electrónico y control de Inventarios para la empresa
“Bottero Calzados de Mujer”. Las funcionalidades son de efectuar ventas de forma
directa y en línea, controlar el inventario en todas las sucursales por medio de un
sistema web y publicitar productos por medio de una aplicación móvil.

RESPONSABILIDADES

El usuario que accede a las funcionalidades del sistema puede tener uno o
varios de los siguientes roles:
 Administrador:
o Puede crear, dar de baja y asignar roles a los usuarios del sistema.
o Este rol permite crear, modificar y eliminar publicidad categorizada por
color marca y tipo la cual le llegará al cliente según sus gustos.
 Reportes:
o Tiene acceso a los reportes de las ventas por producto, cliente y
empleado.
 Inventarios:
o El usuario con este rol puede consultar el stock de cualquier calzado en
cualquiera de las sucursales.
 Compras:
o Permite realizar el registro de la nueva mercadería actualizando el
stock y el precio.
o Puede realizar la transferencia de zapatos entre sucursales.
o Tiene la posibilidad de crear, dar de baja y modificar los proveedores de
calzados.
 Ventas:
o En este rol se realiza la facturación computarizada a los clientes en
cualquiera de las tiendas.

131
132

o Permite también realizar el registro de los envíos de productos


comprados en la tienda en línea.
 Clientes:
o Tiene acceso a la información para realizar consultas de los productos
y acceder a la publicidad desde una aplicación móvil.
o Puede también realizar compras por medio de la tienda en línea y
visualizar una lista de sus pedidos anteriores.

INICIO DE SESIÓN

Al momento de ingresar a la aplicación se tiene la siguiente pantalla en donde


se puede navegar por el menú obteniendo información de la empresa.

132
133

Los usuarios para cumplir con sus roles deben previamente iniciar sesión
dirigiéndose a la pestaña de inicio de sesión.

133
134

Para ingresar debe introducir el nombre de usuario, contraseña y presionar en


el botón entrar, si no se encuentra habilitado se mostrará un mensaje de
“Usuario inhabilitado” y si introduce de manera incorrecta cualquiera de los
dos campos aparecerá el siguiente mensaje de error:

La persona deberá presionar en aceptar e intentar de nuevo.

Si no tiene una cuanta puede ingresar presionando en el botón registrarse en


caso de ser cliente.

134
135

Una vez ingresado al sistema se observará en la pantalla un menú con


opciones según los roles asignados debajo de los datos personales del
usuario.

FUNCIONALIDADES DEL ROL ADMINISTRADOR

o Crear, dar de baja y asignar roles a los usuarios del sistema.


Mostrará la siguiente pantalla al hacer click en modificar (icono de
lápiz) o al insertar un nuevo usuario en donde se verán los datos y
roles.

135
136

o Crear, modificar y eliminar publicidad categorizada por color, marca y


tipo la cual le llegará al cliente según sus gustos.

Se creará nueva publicidad presionando en el botón nuevo en donde se


deben llenar los campos de título, descripción, imagen, fecha de inicio y
finalización aparición y finalmente la categorización por color marca y
modelo.

136
137

FUNCIONALIDADES DEL ROL REPORTES


o Tiene acceso a los reportes de las ventas por producto, cliente y
empleado.
Cada reporte es generado en base al año, mes y temporada escogidos.

FUNCIONALIDADES DEL ROL INVENTARIOS


137
138

o El usuario con este rol podrá consultar el stock de cualquier calzado en


cualquiera de las sucursales.

El usuario puede encontrar el calzado que desea filtrando por su


código, color y sucursal; haciendo click en los colores se mostrará en
las sucursales en las que se encuentra y las tallas en donde al poner el
mouse encima se mostrará la cantidad en stock.

FUNCIONALIDADES DEL ROL COMPRAS

o Permitirá realizar el registro de la nueva mercadería actualizando el


stock y el precio.
Para el registro de mercadería se irá introduciendo ítems o modelos y a
estos colores proseguido de las tallas y la imagen del calzado.

138
139

o Podrá realizar la transferencia de zapatos entre sucursales.


Tiene la misma hermenéutica que la pantalla del rol de inventarios a
diferencia de que al hacer click se muestran más datos del calzado
permitiendo realizar su movimiento introduciendo la cantidad a mover y
la sucursal de destino.

o Podrá obtener el físico valorado del inventario.


Se muestra una tabla exportable a PDF donde se detalla las entradas
de los calzados, los movimientos realizados a las sucursales y las

139
140

ventas utilizando PEPS (Primero en entrar primero en salir) para el


manejo de precios.

o Tendrá la posibilidad de crear, dar de baja y modificar los proveedores


de calzados las marcas y las categorías. En el caso de los colores solo
podrá modificarlos.

140
141

FUNCIONALIDADES DEL ROL VENTAS

o En este rol se realiza la facturación computarizada a los clientes en


cualquiera de las tiendas.
Introduciendo los productos vendidos, el NIT y razón social del cliente y
efectuando la venta se generará la factura correspondiente con el
código de control generado y el código QR lista para ser impresa.

o Permite también realizar el registro de los envíos de productos


comprados en la tienda en línea.
Se muestra los envíos pendientes ordenados por prontitud de
vencimiento de fecha de entrega en donde se ve la dirección de envío
junto con los productos a enviar.

Para efectivizar en envío se introducen los datos para que el cliente


pueda recoger el producto y una foto del comprobante de envío.Una
vez efectivizado le llega un correo al usuario con estos datos.

141
142

FUNCIONALIDADES DEL ROL CLIENTES

o Tiene acceso a la información para realizar consultas de los productos


y acceder a la publicidad desde una aplicación móvil.

142
143

o Puede también realizar compras por medio de la tienda en línea y


visualizar una lista de sus pedidos anteriores.

Previo registro, el cliente tiene la posibilidad realizar compras en línea y


realizar sus pagos mediante PayPal.

143
144

144
145

ANEXO D

CARTA DE ACEPTACIÓN DEL SISTEMA

145
146

ANEXO E

ESQUEMA DDL/SQL

-- MySQL Script generated by MySQL Workbench


-- 11/11/15 16:47:02
-- Model: New Model Version: 1.0
-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;


SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,
FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE,
SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema bddbottero
-- -----------------------------------------------------

-- -----------------------------------------------------
-- Table `Sucursal`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Sucursal` (
`IdSucursal` INT(11) NOT NULL AUTO_INCREMENT ,
`Nombre` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,

146
147

`Tipo` VARCHAR(30) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT


NULL ,
PRIMARY KEY (`IdSucursal`) ,
INDEX `IdTipo` (`Tipo` ASC) )
ENGINE = InnoDB
AUTO_INCREMENT = 4
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Dosificacion`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Dosificacion` (
`IdDosificacion` INT(11) NOT NULL AUTO_INCREMENT ,
`NumAuto` BIGINT(20) NOT NULL ,
`NumFact` INT(11) NULL DEFAULT NULL ,
`Llave` VARCHAR(256) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`FechaLimite` DATE NOT NULL ,
`NroInicialFact` INT(11) NULL DEFAULT NULL ,
`NroFinalFactura` INT(11) NULL DEFAULT NULL ,
`Activa` TINYINT(1) NOT NULL ,
`IdSucursal` INT(11) NULL DEFAULT NULL ,
PRIMARY KEY (`IdDosificacion`) ,
INDEX `IdSucursalD_idx` (`IdSucursal` ASC) ,
CONSTRAINT `IdSucursalD`
FOREIGN KEY (`IdSucursal`)
REFERENCES `Sucursal` (`IdSucursal`)
ON DELETE NO ACTION

147
148

ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 9
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Venta`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Venta` (
`IdVenta` INT(11) NOT NULL AUTO_INCREMENT ,
`Fecha` DATETIME NOT NULL ,
`Tipo` TINYINT(1) NOT NULL ,
`Numero` INT(11) NOT NULL ,
`RazonSocial` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NOT NULL ,
`NIT` INT(11) NOT NULL ,
`Total` DECIMAL(18,2) NOT NULL ,
`CodigoControl` VARCHAR(14) CHARACTER SET 'utf8' COLLATE
'utf8_spanish_ci' NOT NULL ,
`FechaLimite` DATE NOT NULL ,
`Estado` VARCHAR(1) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`IdDosificacion` INT(11) NOT NULL ,
PRIMARY KEY (`IdVenta`) ,
INDEX `IdDosificacion_idx` (`IdDosificacion` ASC) ,
CONSTRAINT `IdDosificacion`
FOREIGN KEY (`IdDosificacion`)
REFERENCES `Dosificacion` (`IdDosificacion`)

148
149

ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 100
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Anulado`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Anulado` (
`IdVenta` INT(11) NOT NULL ,
`Descripcion` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NOT NULL ,
PRIMARY KEY (`IdVenta`) ,
INDEX `IdVenta` (`IdVenta` ASC) ,
CONSTRAINT `IdVenta_ccc`
FOREIGN KEY (`IdVenta`)
REFERENCES `Venta` (`IdVenta`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Categoria`
-- -----------------------------------------------------

149
150

CREATE TABLE IF NOT EXISTS `Categoria` (


`IdCategoria` INT(11) NOT NULL AUTO_INCREMENT ,
`Nombre` VARCHAR(20) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Estado` TINYINT(1) NOT NULL ,
PRIMARY KEY (`IdCategoria`) )
ENGINE = InnoDB
AUTO_INCREMENT = 8
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Cliente`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Cliente` (
`IdCliente` INT(11) NOT NULL AUTO_INCREMENT ,
`NIT` VARCHAR(16) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`RazonSocial` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NOT NULL ,
PRIMARY KEY (`IdCliente`) )
ENGINE = InnoDB
AUTO_INCREMENT = 4
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Color`

150
151

-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Color` (
`IdColor` VARCHAR(8) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Nombre` VARCHAR(15) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
PRIMARY KEY (`IdColor`) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Proveedor`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Proveedor` (
`IdProveedor` INT(11) NOT NULL AUTO_INCREMENT ,
`Nombre` VARCHAR(40) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Descripcion` VARCHAR(60) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NULL DEFAULT NULL ,
`Estado` TINYINT(1) NOT NULL ,
`Direccion` VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NULL DEFAULT NULL ,
`Telefono` INT(10) NULL DEFAULT NULL ,
`Mail` VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NULL
DEFAULT NULL ,
`PersonaContacto` VARCHAR(45) CHARACTER SET 'utf8' COLLATE
'utf8_spanish_ci' NULL DEFAULT NULL ,
PRIMARY KEY (`IdProveedor`) )

151
152

ENGINE = InnoDB
AUTO_INCREMENT = 5
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Compra`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Compra` (
`IdCompra` INT(11) NOT NULL AUTO_INCREMENT ,
`Fecha` DATE NOT NULL ,
`FechaRegistro` DATE NOT NULL ,
`IdProveedor` INT(11) NOT NULL ,
PRIMARY KEY (`IdCompra`) ,
INDEX `IdProveedor` (`IdProveedor` ASC) ,
CONSTRAINT `IdProveedor`
FOREIGN KEY (`IdProveedor`)
REFERENCES `Proveedor` (`IdProveedor`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 7
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Marca`
-- -----------------------------------------------------

152
153

CREATE TABLE IF NOT EXISTS `Marca` (


`IdMarca` INT(11) NOT NULL AUTO_INCREMENT ,
`Nombre` VARCHAR(20) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Estado` TINYINT(1) NOT NULL ,
PRIMARY KEY (`IdMarca`) )
ENGINE = InnoDB
AUTO_INCREMENT = 14
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Usuario`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Usuario` (
`IdUsuario` INT(11) NOT NULL AUTO_INCREMENT ,
`Nombre` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`ApPat` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`ApMat` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Login` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Contrasenia` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NOT NULL ,
`Correo` VARCHAR(40) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Estado` TINYINT(1) NOT NULL ,

153
154

PRIMARY KEY (`IdUsuario`) )


ENGINE = InnoDB
AUTO_INCREMENT = 81
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Item`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Item` (
`IdItem` INT(11) NOT NULL AUTO_INCREMENT ,
`Descripcion` VARCHAR(500) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NOT NULL ,
`Precio` DECIMAL(18,2) NOT NULL ,
`IdMarca` INT(11) NOT NULL ,
`IdCategoria` INT(11) NOT NULL ,
`RegistradoPor` INT(11) NOT NULL ,
`FechaRegistro` DATE NOT NULL ,
PRIMARY KEY (`IdItem`) ,
INDEX `IdCategoria` (`IdCategoria` ASC) ,
INDEX `IdMarca` (`IdMarca` ASC) ,
INDEX `RegistradoPor_idx` (`RegistradoPor` ASC) ,
CONSTRAINT `IdCategoria`
FOREIGN KEY (`IdCategoria`)
REFERENCES `Categoria` (`IdCategoria`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdMarca`
FOREIGN KEY (`IdMarca`)

154
155

REFERENCES `Marca` (`IdMarca`)


ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `RegistradoPor`
FOREIGN KEY (`RegistradoPor`)
REFERENCES `Usuario` (`IdUsuario`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 1235
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Producto`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Producto` (
`IdProductoColor` INT(11) NOT NULL ,
`IdItem` INT(11) NOT NULL ,
`IdColor` VARCHAR(8) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Talla` INT(11) NOT NULL ,
`Cantidad` INT(11) NOT NULL ,
PRIMARY KEY (`IdProductoColor`) ,
INDEX `IdProducto` (`IdItem` ASC) ,
INDEX `IdColor_idx` (`IdColor` ASC) ,
CONSTRAINT `IdColor`
FOREIGN KEY (`IdColor`)
REFERENCES `Color` (`IdColor`)

155
156

ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdProducto`
FOREIGN KEY (`IdItem`)
REFERENCES `Item` (`IdItem`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `DetalleCompra`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DetalleCompra` (
`IdDetalleCompra` INT(11) NOT NULL AUTO_INCREMENT ,
`IdProducto` INT(11) NOT NULL ,
`IdCompra` INT(11) NOT NULL ,
`Cantidad` INT(11) NOT NULL ,
`Precio` DECIMAL(18,2) NOT NULL ,
PRIMARY KEY (`IdDetalleCompra`) ,
INDEX `IdProducto` (`IdProducto` ASC) ,
INDEX `IdCompra_idx` (`IdCompra` ASC) ,
CONSTRAINT `IdCompra`
FOREIGN KEY (`IdCompra`)
REFERENCES `Compra` (`IdCompra`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdProductoColor`

156
157

FOREIGN KEY (`IdProducto`)


REFERENCES `Producto` (`IdProductoColor`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 19
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `DetalleEnvio`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DetalleEnvio` (
`IdDetalleEnvio` INT(11) NOT NULL ,
`Foto` VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Descripcion` VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NOT NULL ,
PRIMARY KEY (`IdDetalleEnvio`) )
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `DetalleVenta`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DetalleVenta` (
`IdDetalleProducto` INT(11) NOT NULL AUTO_INCREMENT ,

157
158

`Cantidad` INT(11) NOT NULL ,


`PrecioVenta` DECIMAL(18,2) NOT NULL ,
`IdVenta` INT(11) NOT NULL ,
`IdProducto` INT(11) NOT NULL ,
`Descripcion` VARCHAR(150) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NOT NULL ,
PRIMARY KEY (`IdDetalleProducto`) ,
INDEX `IdVenta` (`IdVenta` ASC) ,
INDEX `IdProductoCol_idx` (`IdProducto` ASC) ,
CONSTRAINT `IdProductoCol`
FOREIGN KEY (`IdProducto`)
REFERENCES `Producto` (`IdProductoColor`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdVenta`
FOREIGN KEY (`IdVenta`)
REFERENCES `Venta` (`IdVenta`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 239
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Direccion`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Direccion` (
`IdDireccion` INT(11) NOT NULL AUTO_INCREMENT ,

158
159

`Ciudad` VARCHAR(20) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT


NULL ,
`Direccion` VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NOT NULL ,
`IdUsuario` INT(11) NOT NULL ,
`Activa` TINYINT(1) NOT NULL ,
`Latitud` VARCHAR(20) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Longitud` VARCHAR(20) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
PRIMARY KEY (`IdDireccion`) ,
INDEX `IdUsuario_idx` (`IdUsuario` ASC) ,
CONSTRAINT `IdUsuario_cd`
FOREIGN KEY (`IdUsuario`)
REFERENCES `Usuario` (`IdUsuario`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 15
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Imagen`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Imagen` (
`IdImagen` INT(11) NOT NULL AUTO_INCREMENT ,
`EnlaceImagen` VARCHAR(45) CHARACTER SET 'utf8' COLLATE
'utf8_spanish_ci' NULL DEFAULT NULL ,

159
160

`RegistradoPor` INT(11) NULL DEFAULT NULL ,


`EnFecha` DATE NULL DEFAULT NULL ,
PRIMARY KEY (`IdImagen`) ,
INDEX `RegistradpPor_idx` (`RegistradoPor` ASC) ,
CONSTRAINT `RegistradpPor`
FOREIGN KEY (`RegistradoPor`)
REFERENCES `Usuario` (`IdUsuario`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 7
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `ImagenCalzado`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `ImagenCalzado` (
`IdImagen` INT(11) NOT NULL ,
`IdProducto` INT(11) NOT NULL ,
PRIMARY KEY (`IdImagen`, `IdProducto`) ,
INDEX `IdProductoColor_idx` (`IdProducto` ASC) ,
CONSTRAINT `IdImagen`
FOREIGN KEY (`IdImagen`)
REFERENCES `Imagen` (`IdImagen`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdProductoColor_c`
FOREIGN KEY (`IdProducto`)

160
161

REFERENCES `Producto` (`IdProductoColor`)


ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `InteresUsuario`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `InteresUsuario` (
`IdProducto` INT(11) NOT NULL ,
`IdUsuario` INT(11) NOT NULL ,
`CantClicks` INT(11) NULL DEFAULT NULL ,
`CantCompras` INT(11) NULL DEFAULT NULL ,
PRIMARY KEY (`IdProducto`, `IdUsuario`) ,
INDEX `IdProducto_idxx` (`IdProducto` ASC) ,
INDEX `IdUsuario_idxx` (`IdUsuario` ASC) ,
CONSTRAINT `IdProducto_c`
FOREIGN KEY (`IdProducto`)
REFERENCES `Producto` (`IdProductoColor`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdUsuario_c`
FOREIGN KEY (`IdUsuario`)
REFERENCES `Usuario` (`IdUsuario`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB

161
162

DEFAULT CHARACTER SET = utf8


COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Movimiento`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Movimiento` (
`IdMovimiento` INT(11) NOT NULL AUTO_INCREMENT ,
`IdSucursal` INT(11) NOT NULL ,
`IdProducto` INT(11) NOT NULL ,
`Cantidad` INT(11) NOT NULL ,
`Fecha` DATETIME NOT NULL ,
`TipoTransaccion` TINYINT(1) NOT NULL ,
`Stock` INT(11) NOT NULL ,
`TipoOrDest` TINYINT(1) NOT NULL ,
`IdTipo` INT(11) NOT NULL ,
`PrecioCompra` DECIMAL(18,2) NOT NULL ,
`CantidadPEPS` INT(11) NULL DEFAULT NULL ,
PRIMARY KEY (`IdMovimiento`) ,
INDEX `IdSucursal` (`IdSucursal` ASC) ,
INDEX `IdProducto_idx` (`IdProducto` ASC) ,
CONSTRAINT `IdProducto_cc`
FOREIGN KEY (`IdProducto`)
REFERENCES `Producto` (`IdProductoColor`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdSucursal_cc`
FOREIGN KEY (`IdSucursal`)
REFERENCES `Sucursal` (`IdSucursal`)

162
163

ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 2693
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Publicidad`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Publicidad` (
`IdPublicidad` INT(11) NOT NULL AUTO_INCREMENT ,
`Descripcion` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci'
NULL DEFAULT NULL ,
`Imagen` VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NULL
DEFAULT NULL ,
`Fecha` DATE NULL DEFAULT NULL ,
PRIMARY KEY (`IdPublicidad`) )
ENGINE = InnoDB
AUTO_INCREMENT = 10
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `PublicidadProducto`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `PublicidadProducto` (
`IdPublicidad` INT(11) NOT NULL ,

163
164

`IdProducto` INT(11) NOT NULL ,


PRIMARY KEY (`IdPublicidad`, `IdProducto`) ,
INDEX `IdProducto_idx` (`IdProducto` ASC) ,
INDEX `IdPublicidad` (`IdPublicidad` ASC) ,
CONSTRAINT `IdProducto_ccc`
FOREIGN KEY (`IdProducto`)
REFERENCES `Producto` (`IdProductoColor`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdPublicidad`
FOREIGN KEY (`IdPublicidad`)
REFERENCES `Publicidad` (`IdPublicidad`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `Rol`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Rol` (
`IdRol` INT(11) NOT NULL AUTO_INCREMENT ,
`Nombre` VARCHAR(15) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
PRIMARY KEY (`IdRol`) )
ENGINE = InnoDB
AUTO_INCREMENT = 7
DEFAULT CHARACTER SET = utf8

164
165

COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `TipoOrigenDestino`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `TipoOrigenDestino` (
`IdTipoOrDest` INT(11) NOT NULL AUTO_INCREMENT ,
`Tipo` VARCHAR(10) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
`Nombre` VARCHAR(15) CHARACTER SET 'utf8' COLLATE 'utf8_spanish_ci' NOT
NULL ,
PRIMARY KEY (`IdTipoOrDest`) )
ENGINE = InnoDB
AUTO_INCREMENT = 5
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `UsuarioRol`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `UsuarioRol` (
`IdUsuario` INT(11) NOT NULL ,
`IdRol` INT(11) NOT NULL ,
PRIMARY KEY (`IdUsuario`, `IdRol`) ,
INDEX `IdRol_idx` (`IdRol` ASC) ,
CONSTRAINT `IdRol`
FOREIGN KEY (`IdRol`)
REFERENCES `Rol` (`IdRol`)

165
166

ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdUsuario`
FOREIGN KEY (`IdUsuario`)
REFERENCES `Usuario` (`IdUsuario`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `VentaDirecta`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VentaDirecta` (
`IdVenta` INT(11) NOT NULL ,
`IdUsuario` INT(11) NOT NULL ,
`IdCliente` INT(11) NOT NULL ,
PRIMARY KEY (`IdVenta`) ,
INDEX `IdVenta` (`IdVenta` ASC) ,
INDEX `IdUsuario_idx` (`IdUsuario` ASC) ,
INDEX `IdCliente_idx` (`IdCliente` ASC) ,
CONSTRAINT `IdCliente_c`
FOREIGN KEY (`IdCliente`)
REFERENCES `Cliente` (`IdCliente`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdUsuario_cc`
FOREIGN KEY (`IdUsuario`)

166
167

REFERENCES `Usuario` (`IdUsuario`)


ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdVenta_c`
FOREIGN KEY (`IdVenta`)
REFERENCES `Venta` (`IdVenta`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

-- -----------------------------------------------------
-- Table `VentaLinea`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VentaLinea` (
`IdVenta` INT(11) NOT NULL ,
`IdUsuario` INT(11) NOT NULL ,
`FechaEntrega` DATE NULL DEFAULT NULL ,
`FechaPrevEntrega` DATE NOT NULL ,
`Estado` TINYINT(1) NOT NULL ,
`AceptaCliente` TINYINT(1) NOT NULL ,
`IdDetalleEnvio` INT(11) NULL DEFAULT NULL ,
`IdDireccion` INT(11) NOT NULL ,
PRIMARY KEY (`IdVenta`) ,
INDEX `IdVenta` (`IdVenta` ASC) ,
INDEX `IdUsuario_idx` (`IdUsuario` ASC) ,
INDEX `IdDetalleEnvio_idx` (`IdDetalleEnvio` ASC) ,
INDEX `IdDireccion_idx` (`IdDireccion` ASC) ,

167
168

CONSTRAINT `IdDetalleEnvio`
FOREIGN KEY (`IdDetalleEnvio`)
REFERENCES `DetalleEnvio` (`IdDetalleEnvio`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdDireccion`
FOREIGN KEY (`IdDireccion`)
REFERENCES `Direccion` (`IdDireccion`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdUsuario_ccc`
FOREIGN KEY (`IdUsuario`)
REFERENCES `Usuario` (`IdUsuario`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `IdVenta_cc`
FOREIGN KEY (`IdVenta`)
REFERENCES `Venta` (`IdVenta`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_spanish_ci;

SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

168

También podría gustarte