Post on 15-Feb-2019
1
SISTEMA DE INFORMACIÓN WEB PARA LA GESTIÓN DE INVENTARIOS,
CLIENTES, PROVEEDORES, VENTAS Y FACTURACIÓN DE LA EMPRESA
INDUSTRIA Y SOLUCIONES METALMECÁNICAS COLOMBIA S.A.S.
VICTOR FABIAN NOVOA ROJAS
20102078081
JHONNY LEONARDO GAONA ESPITIA
20102078115
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
FACULTAD TECNOLÓGICA
TECNOLOGÍA EN SISTEMATIZACIÓN DE DATOS
BOGOTÁ
2015
2
NOTA DE ACEPTACIÓN
_____________________________
_____________________________
_____________________________
_____________________________
JURADO
_____________________________
JURADO
_____________________________
TUTOR
3
TABLA DE CONTENIDO
RESUMEN ................................................................................................................................................ 10
1. INTRODUCCIÓN .............................................................................................................................. 12
2. DEFINICIÓN, PLANEACIÓN Y ORGANIZACIÓN ................................................................................. 13
2.1 TITULO DEL PROYECTO ............................................................................................................ 13
2.2 TEMA ....................................................................................................................................... 13
3. PLANTEAMIENTO DEL PROBLEMA .................................................................................................. 13
3.1 DESCRIPCIÓN ........................................................................................................................... 13
3.2 FORMULACIÓN ........................................................................................................................ 14
4. JUSTIFICACIÓN ................................................................................................................................ 15
5. OBJETIVOS ...................................................................................................................................... 16
5.1 OBJETIVO GENERAL ................................................................................................................. 16
5.2 OBJETIVOS ESPECÍFICOS .......................................................................................................... 16
6. ALCANCE Y DELIMITACIONES .......................................................................................................... 17
6.1 ALCANCE .................................................................................................................................. 17
A NIVEL FUNCIONAL ........................................................................................................................ 17
6.2 DELIMITACIONES ......................................................................................................................... 18
6.2.1 DELIMITACIÓN TEMPORAL .............................................................................................. 18
6.2.2 DELIMITACIÓN GEOGRÁFICA ........................................................................................... 18
6.2.3 DELIMITACIÓN TÉCNICA .................................................................................................. 18
7 FACTIBILIDAD .................................................................................................................................. 19
7.1 FACTIBILIDAD TÉCNICA ............................................................................................................ 19
7.2 FACTIBILIDAD OPERATIVA ....................................................................................................... 20
7.3 FACTIBILIDAD ECONÓMICA ..................................................................................................... 20
8 MARCO DE REFERENCIA .................................................................................................................. 22
8.1 MARCO TEÓRICO ..................................................................................................................... 22
8.2 MARCO CONCEPTUAL ............................................................................................................. 26
9 MARCO METODOLÓGICO ............................................................................................................... 34
RUP (RATIONAL UNIFED PROCESS) ..................................................................................................... 34
10 DESARROLLO DEL PROYECTO ......................................................................................................... 39
10.1 LEVANTAMIENTO DE REQUERIMIENTOS ................................................................................. 39
10.2 FASE DE MODELAMIENTO DE NEGOCIO .................................................................................. 45
10.3 ANÁLISIS Y DISEÑO .................................................................................................................. 45
10.3.1 DEFINICIÓN DE ACTORES ................................................................................................ 45
4
10.3.2 DIAGRAMAS DE CASOS DE USO ...................................................................................... 46
10.3.3 DIAGRAMA GENERAL DE CASOS DE USO ........................................................................ 46
10.3.4 DIAGRAMA DE MODIFICACIÓN DE INFORMACIÓN PERSONAL. ...................................... 47
10.3.5 DIAGRAMA SUBSISTEMA DE CONTROL DE USUARIOS .................................................... 48
10.3.6 DIAGRAMA SUBSISTEMA DE CONTROL DE CLIENTES...................................................... 49
10.3.7 DIAGRAMA SUBSISTEMA DE CONTROL DE PROVEEDORES ............................................. 50
10.3.8 DIAGRAMA SUBSISTEMA DE CONTROL DE INVENTARIOS .............................................. 51
10.3.9 DIAGRAMA SUBSISTEMA DE CONTROL DE GRÀFICAS .................................................... 52
10.3.10 DIAGRAMA SUBSISTEMA DE FACTURACIÓN ................................................................ 53
10.4 DIAGRAMA DE ACTIVIDADES ................................................................................................... 53
10.4.1 DIAGRAMA DE ACTIVIDADES CREACIÓN DE USUARIOS .................................................. 54
10.4.2 DIAGRAMA DE ACTIVIDADES CONSULTA DE USUARIOS .............................................. 55
10.4.3 DIAGRAMA DE ACTIVIDADES MODIFICACIÓN DE USUARIOS .......................................... 56
10.4.4 DIAGRAMA DE ACTIVIDADES ELIMINACIÓN DE USUARIOS ............................................. 57
10.4.5 DIAGRAMA DE ACTIVIDADES CREACIÓN DE PROVEEDORES ........................................... 58
10.4.6 DIAGRAMA DE ACTIVIDADES CONSULTA DE PROVEEDORES .......................................... 59
10.4.7 DIAGRAMA DE ACTIVIDADES MODIFICACIÓN DE PROVEEDORES ................................... 60
10.4.8 DIAGRAMA DE ACTIVIDADES ELIMINACIÓN DE PROVEEDORES ..................................... 61
10.4.9 DIAGRAMA DE ACTIVIDADES CREACIÓN DE CLIENTES .................................................... 62
10.4.10 DIAGRAMA DE ACTIVIDADES CONSULTA DE CLIENTES ................................................ 63
10.4.11 DIAGRAMA DE ACTIVIDADES MODIFICACIÓN DE CLIENTES ........................................ 64
10.4.12 DIAGRAMA DE ACTIVIDADES ELIMINACIÓN DE CLIENTES ........................................... 65
10.4.13 DIAGRAMA DE ACTIVIDADES CREACIÓN DE ARTÍCULOS ............................................. 66
10.4.14 DIAGRAMA DE ACTIVIDADES CONSULTA DE ARTÍCULOS ............................................. 67
10.4.15 DIAGRAMA DE ACTIVIDADES MODIFICACIÓN DE ARTÍCULOS ..................................... 68
10.4.16 DIAGRAMA DE ACTIVIDADES ELIMINACIÓN DE ARTÍCULOS ........................................ 69
10.4.17 DIAGRAMA DE ACTIVIDADES CREACIÓN DE FACTURAS ............................................... 70
10.4.18 DIAGRAMA DE ACTIVIDADES BÚSQUEDA DE FACTURAS ............................................. 71
10.4.19 DIAGRAMA DE ACTIVIDADES ANULACIÓN DE FACTURAS ............................................ 72
10.5 DIAGRAMAS DE ESTADO ......................................................................................................... 73
10.5.1 DIAGRAMA DE ESTADO DE INICIO DE SESIÓN ................................................................ 73
10.5.2 DIAGRAMA DE ESTADO DE INSERCIÓN DE USUARIOS .................................................... 73
10.5.3 DIAGRAMA DE ESTADO DE CONSULTA DE USUARIOS .................................................... 74
10.5.4 DIAGRAMA DE ESTADO DE MODIFICACIÓN DE USUARIOS ............................................. 74
10.5.5 DIAGRAMA DE ESTADO DE ELIMINACIÓN DE USUARIOS ................................................ 75
10.5.6 DIAGRAMA DE ESTADO DE INSERCIÓN DE PROVEEDORES ............................................. 75
5
10.5.7 DIAGRAMA DE ESTADO DE CONSULTA DE PROVEEDORES ............................................. 76
10.5.8 DIAGRAMA DE ESTADO DE MODIFICACIÓN DE PROVEEDORES ...................................... 76
10.5.9 DIAGRAMA DE ESTADO DE ELIMINACIÓN DE PROVEEDORES ......................................... 77
10.5.10 DIAGRAMA DE ESTADO DE INSERCIÓN DE CLIENTES ................................................... 77
10.5.11 DIAGRAMA DE ESTADO DE CONSULTA DE CLIENTES ................................................... 78
10.5.12 DIAGRAMA DE ESTADO DE MODIFICACIÓN DE CLIENTES ............................................ 78
10.5.13 DIAGRAMA DE ESTADO DE ELIMINACIÓN DE CLIENTES .............................................. 79
10.5.15 DIAGRAMA DE ESTADO DE INSERCIÓN DE ARTÍCULOS ................................................ 79
10.5.16 DIAGRAMA DE ESTADO DE CONSULTA DE ARTÍCULOS ................................................ 80
10.5.17 DIAGRAMA DE ESTADO DE MODIFICACIÓN DE ARTÍCULOS ........................................ 80
10.5.18 DIAGRAMA DE ESTADO DE ELIMINACIÓN DE ARTÍCULOS ........................................... 81
10.6 IMPLEMENTACIÓN DEL DISEÑO .............................................................................................. 82
10.6.1 MODELOS DE SECUENCIAS ............................................................................................. 82
10.6.2 MODELO DE SECUENCIA INICIAR SESIÓN ....................................................................... 82
10.6.3 MODELO DE SECUENCIA CREAR USUARIOS, CLIENTES, PROVEEDORES Y
VENDEDORES. ................................................................................................................................. 83
10.6.4 MODELO DE SECUENCIA CONSULTAR USUARIOS, CLIENTES, PROVEEDORES Y
VENDEDORES. ................................................................................................................................. 84
10.6.5 MODELO DE SECUENCIA MODIFICAR USUARIOS, CLIENTES, PROVEEDORES Y
VENDEDORES. ................................................................................................................................. 85
10.6.6 MODELO DE SECUENCIA ELIMINAR USUARIOS, CLIENTES, PROVEEDORES Y
VENDEDORES. ................................................................................................................................. 86
10.6.7 MODELO DE SECUENCIA CREAR FACTURA...................................................................... 87
10.6.8 MODELO DE SECUENCIA BUSCAR FACTURA ................................................................... 88
10.6.9 MODELO DE SECUENCIA ANULAR FACTURA ................................................................... 89
10.6.10 MODELO DE SECUENCIA GENERAR GRÁFICAS ............................................................. 90
10.7 DIAGRAMA DE CLASES ............................................................................................................. 91
10.8 MODELO RELACIONAL ............................................................................................................. 92
10.9 TEST DE INTEGRACIÓN Y DESPLIEGUE DEL PRODUCTO ........................................................... 93
10.9.1 FASE DE PRUEBAS ........................................................................................................... 93
10.9.2 PRUEBAS FUNCIONALES ................................................................................................. 93
10.9.3 PRUEBAS DE INTEGRIDAD DE LA BASE DE DATOS Y LOS DATOS ................................... 95
10.9.4 PRUEBAS DE MONTAJE ................................................................................................... 96
10.9.5 PRUEBAS DE SEGURIDAD Y CONTROL DE ACCESO .......................................................... 97
10.10 DESPLIEGUE DE RESULTADO DE PRUEBAS ........................................................................... 97
10.10.1 PRUEBAS DE OPTIMIZACIÓN DEL TIEMPO. .................................................................. 97
10.10.2 PRUEBAS DE COMPATIBILIDAD NAVEGADORES. ......................................................... 98
6
CONCLUSIONES ..................................................................................................................................... 100
RECOMENDACIONES ............................................................................................................................. 101
BIBLIOGRAFÍA ....................................................................................................................................... 102
ANEXOS EN CD -ROM ............................................................................................................................ 105
7
TABLA DE ILUSTRACIONES
Ilustración 1-Fase metodología RUP ........................................................................... 35
Ilustración 2-Diagrama general de casos de uso. ........................................................ 46
Ilustración 3-Diagrama de casos de uso modificación de información personal .......... 47
Ilustración 4-Diagrama de casos de uso subsistema de control de usuarios ............... 48
Ilustración 5-Diagrama de casos de uso subsistema de control de clientes ................ 49
Ilustración 6-Diagrama de casos de uso subsistema de control de proveedores ......... 50
Ilustración 7-Diagrama de casos de uso subsistema de control de inventarios ........... 51
Ilustración 8-Diagrama de casos de uso subsistema de informes y gráficas. .............. 52
Ilustración 9-Diagrama de casos de uso subsistema de facturación............................ 53
Ilustración 10-Diagrama de actividades de creación de usuarios ................................ 54
Ilustración 11-Diagrama de actividades de consulta de usuarios. ............................... 55
Ilustración 12-Diagrama de actividades de modificación de usuarios. ......................... 56
Ilustración 13-Diagrama de actividades de eliminación de usuarios. ........................... 57
Ilustración 14-Diagrama de actividades de creación de proveedores. ......................... 58
Ilustración 15-Diagrama de actividades de consulta de proveedores. ......................... 59
Ilustración 16-Diagrama de actividades de modificación de proveedores. ................... 60
Ilustración 17-Diagrama de actividades de eliminación de proveedores. ..................... 61
Ilustración 18-Diagrama de actividades de creación de clientes. ................................. 62
Ilustración 19-Diagrama de actividades de consulta de clientes. ................................. 63
Ilustración 20-Diagrama de actividades de modificación de clientes. .......................... 64
Ilustración 21-Diagrama de actividades de eliminación de clientes. ............................ 65
Ilustración 22-Diagrama de actividades de creación de artículos. ............................... 66
Ilustración 23-Diagrama de actividades de consulta de artículos. ............................... 67
Ilustración 24-Diagrama de actividades de modificación de artículos. ......................... 68
Ilustración 25-Diagrama de actividades de eliminación de artículos. ........................... 69
Ilustración 26-Diagrama de actividades de creación de facturas. ................................ 70
Ilustración 27-Diagrama de actividades de busqueda de facturas. .............................. 71
Ilustración 28-Diagrama de actividades de anulación de facturas. .............................. 72
8
Ilustración 29-Diagrama de estado de inicio de sesión ................................................ 73
Ilustración 30-Diagrama de estado de inserción de usuario ........................................ 73
Ilustración 31-Diagrama de estado de consulta de usuarios........................................ 74
Ilustración 32-Diagrama de estado de modificación de usuarios ................................. 74
Ilustración 33-Diagrama de estado de eliminación de usuarios ................................... 75
Ilustración 34-Diagrama de estado de inserción de proveedores ................................ 75
Ilustración 35-Diagrama de estado de consulta de proveedores ................................. 76
Ilustración 36-Diagrama de estado de consulta de proveedores ................................. 76
Ilustración 37-Diagrama de estado de eliminación de proveedores ............................. 77
Ilustración 38-Diagrama de estado de inserción de clientes ........................................ 77
Ilustración 39-Diagrama de estado de consulta de clientes ......................................... 78
Ilustración 40-Diagrama de estado de consulta de clientes ......................................... 78
Ilustración 41-Diagrama de estado de eliminación de clientes .................................... 79
Ilustración 42-Diagrama de estado de inserción de artículos....................................... 79
Ilustración 43-Diagrama de estado de consulta de artículos........................................ 80
Ilustración 44-Diagrama de estado de modificación de artículos ................................. 80
Ilustración 45-Diagrama de estado de eliminación de artículos ................................... 81
Ilustración 46-Modelo de secuencia iniciar sesión ....................................................... 82
Ilustración 47-Modelo de secuencia crear usuarios, clientes, proveedores y
vendedores. ................................................................................................................ 83
Ilustración 48-Modelo de secuencia consultar usuarios, clientes, proveedores y
vendedores. ................................................................................................................ 84
Ilustración 49-Modelo de secuencia modificar usuarios, clientes, proveedores y
vendedores. ................................................................................................................ 85
Ilustración 50-Modelo de dominio eliminar usuarios, clientes, proveedores y
vendedores. ................................................................................................................ 86
Ilustración 51-Modelo de secuencia crear factura. ...................................................... 87
Ilustración 52-Modelo de secuencia buscar factura. .................................................... 88
Ilustración 53-Modelo de secuencia anular factura. ..................................................... 89
Ilustración 54-Modelo de secuencia generar informe. ................................................. 90
Ilustración 55-Diagrama de clases .............................................................................. 91
Ilustración 56-Diagrama Relacional ............................................................................. 92
9
INDICE DE TABLAS
Tabla 1-Delimitación técnica. ...................................................................................... 18
Tabla 2-Recursos Humanos. ....................................................................................... 20
Tabla 3-Recursos Técnicos. ........................................................................................ 21
Tabla 4-Recursos de Software. ................................................................................... 21
Tabla 5-Presupuesto. .................................................................................................. 22
Tabla 6-Entrevista 1. ................................................................................................... 39
Tabla 7-Entrevista 2. ................................................................................................... 40
Tabla 8-Entrevista 3 .................................................................................................... 41
Tabla 9-Entrevista 4. ................................................................................................... 42
Tabla 10-Entrevista 5. ................................................................................................. 43
Tabla 11-Entrevista 6. ................................................................................................. 44
Tabla 12-Definición de actores .................................................................................... 45
Tabla 13-Objetivos Pruebas Funcionales. ................................................................... 93
Tabla 14-Pruebas Funcionales. ................................................................................... 95
Tabla 15-Objetivos Pruebas Integrales. ...................................................................... 95
Tabla 16-Pruebas Integrales. ...................................................................................... 96
Tabla 17-Objetivos Pruebas de Montaje...................................................................... 96
Tabla 18-Pruebas Integrales. ...................................................................................... 96
Tabla 19-Objetivos Pruebas de Seguridad y Control de Acceso. ................................ 97
Tabla 20-Pruebas de Seguridad. ................................................................................. 97
Tabla 21-Pruebas de Optimización ............................................................................. 97
Tabla 22-Pruebas de Compatibilidad Navegadores (Usuarios-proveedores) .............. 98
Tabla 23-Pruebas de compatibilidad (Clientes-Productos-Facturas-Edición de perfil-
Reportes –Inicio y cierre de sesión). ........................................................................... 99
10
RESUMEN
El presente proyecto explica el diseño y la implementación de un sistema de
información web para la gestión de inventarios, clientes, proveedores, ventas y
facturación de la empresa industria y soluciones metalmecánicas Colombia s.a.s
(ISMET). El proyecto se desarrolló en funcionalidades y partes identificadas a partir
del proceso de reingeniería y definición de procesos internos de ISMET.
Se encuentra elaborado bajo diseño CSS3, HTML5 y JAVASCRIPT, se utilizaron
lenguajes de programación PHP 5.3 junto con MYSQL, haciendo uso de la
arquitectura de tres capas (MVC) que garantiza la calidad en el desarrollo, haciendo
que el sistema sea robusto, flexible y amigable para el usuario final, para la
implementación de este paradigma se hizo la inclusión del Framework YII que nos
ofrecía una facilidad al momento del desarrollo.
Por ser un proyecto de ingeniería de software para el diseño e implementación de un
sistema de información, se eligió adoptar la metodología RUP, la cual se acomoda y
se ajusta a los procesos con que ISMET trabaja sus proyectos, además de enfocarse
en la arquitectura, los casos de uso, rol de los participantes, gestores, actores y
usuarios del sistema.
Palabras claves: PHP, Web, Aplicación, Facturación, MYSQL, RUP.
11
ABSTRACT
The present project explains the design and implementation of an Information System
Web that can help to inventory management, customer, suppliers, sales and billing of
the company “Industria y solucionesmetalmecánicas Colombia S.A.S (ISMET)”. The
project´s functionality was developed under ISMET reengineered inner processes
definitions.
This is developed under CSS3, HTML5, JAVASCRIPT design, programming
languages PHP5.3 with MYSQL was used as also three layer architecture (MVC) that
guarantees quality in development, making the system robust, flexible and friendly to
the end user, to implement this paradigm to include the YII framework offered us a
facility at the time of development was made.
As is a project of Software engineer for design and implementation of system
information, was used RUP method, more than just focusing on architecture, cases of
use, participant’s rolls, managers and system actors and users, this method adjusts to
ISMET.
Keys words: PHP, Web, Application, Billing, MYSQL, RUP.
12
1. INTRODUCCIÓN
INDUSTRIA Y SOLUCIONES METALMECÁNICAS S.A.S (ISMET), es una empresa
Colombiana que se ha mantenido a través de los años gracias al esfuerzo, intensidad
y responsabilidad junto a arriesgadas decisiones tomadas tanto por sus socios como
por los directivos, quienes claramente vieron la necesidad de incrementar su
productividad y eficiencia para así crecer, hacerla más sólida más sólida y lograr los
objetivos a corto, mediano y largo plazo.
Partiendo del hecho que en la actualidad, la tecnología y el uso de sistemas de
información han sido de gran utilidad para las empresas cuando se trata de
incrementar su productividad y mejorar resultados, lo que pretende esta tesis es
proponer un sistema de información web con el fin de optimizar los procesos de
inventarios, clientes, proveedores, ventas y facturación que se llevan a cabo en la
compañía.
Para poder encontrar las necesidades que se tienen en cada uno de estos procesos,
fue de vital importancia comenzar con la primera fase de cualquier trabajo de
procesos, es decir con el levantamiento de la información; a través de entrevistas se
dio a conocer en detalle las tareas que se realizan, sus responsabilidades y labores
en el día a día para luego agruparlas dependiendo del proceso a sistematizar.
De esta manera se propone una posible solución para suplir necesidades en cada
área, como lo son seguimiento de modificaciones mediante la administración de roles
de usuario, gráficos estadísticos de ventas, consulta rápida online, control
sistematizado de factura, gestión optimizada en cada uno de los procesos estudiados.
13
2. DEFINICIÓN, PLANEACIÓN Y ORGANIZACIÓN
2.1 TITULO DEL PROYECTO
SISTEMA DE INFORMACIÓN WEB PARA LA GESTIÓN DE INVENTARIOS,
CLIENTES, PROVEEDORES, VENTAS Y FACTURACIÓN DE LA EMPRESA
INDUSTRIA Y SOLUCIONES METALMECÁNICAS COLOMBIA S.A.S.
2.2 TEMA
Para el desarrollo del proyecto se debe tener en cuenta el tema de aplicaciones web,
para mejorar los procesos de gestión de la información en las áreas de clientes,
proveedores, inventarios, ventas y facturación, implementando herramientas de
programación como PHP, HTML, JAVASCRIPT, AJAX, CSS y como gestor de bases
de datos MySQL, además de la implementación del Framework YII que permite el
manejo de la arquitectura MVC (Modelo Vista Controlador).
3. PLANTEAMIENTO DEL PROBLEMA
3.1 DESCRIPCIÓN
La empresa Industria y soluciones metalmecánicas Colombia S.A.S (ISMET) es una
entidad dedicada a la prestación de servicios manufactureros, diseño, fabricación,
reconstrucción, mantenimiento y montaje de repuestos y equipos para la industria
colombiana.
Dicha entidad actualmente maneja el registro de sus proveedores y clientes de forma
manual; específicamente en un portafolio, cuando se desea agregar un nuevo
registro, simplemente se diligencia al final de la lista, cuando se requiere actualizar la
información de éstos se tacha y se registra nuevamente.
14
Para realizar un reporte estadístico de ventas en un determinado rango de tiempo es
necesario realizarlo de forma manual, es decir, digitando la información de cada una
de las facturas (fecha, cliente, valor total, etc.) en el software Microsoft office Excel,
posteriormente se generan las gráficas requeridas para la elaboración y entrega del
reporte, este proceso toma de 2 a 3 días en ser completado.
El proceso de facturación se hace mediante digitación en un formato de factura
elaborado en el software Microsoft office Excel, cuando se realiza una venta se
imprimen dos copias (una para la empresa y la otra para el cliente), la copia de la
empresa se archiva físicamente para el informe contable.
Cabe resaltar que su inventario se encuentra guardado física y digitalmente en una
carpeta que lleva su nombre; en el momento de incluir o eliminar algún producto
simplemente se busca en el documento, se actualiza y se imprime para reemplazarlo
en la carpeta.
Estos procesos inducen a una deficiencia en la gestión administrativa relacionada al
manejo de la información de la organización, además se presenta desorden e
inseguridad en cada uno de los procesos actuales, la cual genera que la información
no concuerde.
De acuerdo con lo anterior, cada proceso se vuelve tedioso y trae consigo
consecuencias como inconsistencia, redundancia y pérdida de información de los
datos, mayor inversión en papelería, pérdida de tiempo e información descentralizada
y desorganizada.
3.2 FORMULACIÓN
¿La implementación de un sistema de información mejorará la gestión de la
información en la empresa INDUSTRIA Y SOLUCIONES METALMECÁNICAS
COLOMBIA S.A.S generando información confiable y oportuna, reduciendo los
principales factores que influyen en el mal manejo de ésta?
15
4. JUSTIFICACIÓN
Día a día, las empresas están en búsqueda constante de la excelencia en sus
procesos y en sus servicios, con el fin de conquistar el mercado donde se
desenvuelven y garantizar la fidelidad de sus clientes. Es por ello que el éxito en el
desarrollo de una empresa no solo se logra con la oferta de productos (bienes y/o
servicios) de calidad junto a un excelente personal capacitado, sino que, cuando el
volumen de la información es extenso o esta proviene de diferentes fuentes se hace
indispensable el uso de la tecnología para agilizar los trámites y procesos que esta
realiza con el objetivo de brindar un servicio más rápido y oportuno, de lo contrario
puede provocar considerables problemas, como por ejemplo, información errónea,
desorganizada, duplicada, etc. Lo anterior deriva en un producto deficiente y de poca
calidad.
El sistema de información propuesto brindara a la empresa ISMET S.A.S la facilidad
de llevar un control organizado de las tareas administrativas básicas para la misma
como son: facturación, control de clientes, inventarios y proveedores, análisis
estadístico de ventas. Principalmente el sistema servirá de base para la gestión de
algunos procesos de la empresa, contando con diferentes módulos, para facilitar la
interacción entre el usuario y el sistema.
Con la culminación del sistema propuesto se pretende suplir las necesidades
existentes en la empresa en las cuales se enfoca el presente desarrollo, logrando la
facturación de los productos de forma clara, rápida y sencilla, igualmente los reportes
oportunos de las ventas realizadas como también un control eficiente de los recursos
y terceros.
16
5. OBJETIVOS
5.1 OBJETIVO GENERAL
Desarrollar un sistema de información web para la gestión de inventarios, clientes,
proveedores, y ventas de la empresa INDUSTRIA Y SOLUCIONES
METALMECÁNICAS COLOMBIA SAS.
5.2 OBJETIVOS ESPECÍFICOS
• Identificar los requerimientos del sistema de información web mediante
entrevistas programadas con el usuario y establecer la estructura lógica del
sistema de información.
• Desarrollar una base de datos que contenga la información de los
requerimientos analizados.
• Crear el módulo de registro de usuarios con sus respectivos roles (vendedores,
administrador de inventarios, contador).
• Desarrollar un subsistema de facturación, con el fin de llevar un control contable
estricto y periódico de cada una de las ventas realizadas.
• Desarrollar un módulo de gestión de inventarios y proveedores, que permita
obtener información detallada de cada uno éstos.
• Crear un subsistema de gráficos estadísticos de inventarios, clientes,
proveedores y ventas el cual permita analizar planes de mercadeo futuros.
• Realizar las respectivas pruebas de cada fase a partir de la metodología de
desarrollo de software RUP utilizando el lenguaje de modelado UML.
• Contextualizar el sistema de información web junto con el modelo “EOQ con
faltante”.
17
6. ALCANCE Y DELIMITACIONES
6.1 ALCANCE
El proyecto será implementado en el área de tesorería de la empresa Industria y
soluciones metalmecánicas Colombia S.A.S (ISMET), y contará con la validación
respectiva del gerente responsable de esta área. Para el control de los procesos
llevados a cabo en dicha área serán desarrollados los siguientes módulos:
A NIVEL FUNCIONAL
MÓDULO DE CONTROL DE CLIENTES Y PROVEEDORES
El módulo de control de clientes y proveedores será utilizado para gestionar la
información (creación, actualización y eliminación) así como consultas rápidas y
oportunas al requerir información de los clientes o proveedores.
MÓDULO DE INGRESO
El módulo de ingreso de usuarios será utilizado para controlar el acceso al sistema
de información y manejar permisos según el rol ingresado a su vez permite
conocer modificaciones realizado un usuario.
MÓDULO DE CONTROL DE INVENTARIOS
El módulo de control de inventarios se encargará de dar a conocer la existencia de
los materiales y herramientas de la empresa en cualquier momento, su cantidad,
estado y descripción como también detallará el responsable de las herramientas
en caso de estar en estado de préstamo
MÓDOLO DE FACTURACIÓN
El módulo de facturación permite la emisión de facturas de ventas de forma
interactiva, donde el usuario detallará todos los aspectos necesarios para la
creación, impresión y exportación a formato PDF de una factura de venta, también
es posible anular facturas posteriormente a su creación.
18
6.1.1.1.5 MÓDULO DE INFORMES ESTADÍSTICOS
El módulo de informes estadísticos permite generar reportes con la información
correspondiente a inventarios, usuarios, clientes y proveedores, informes de pagos
detallados por cliente en un rango de fechas y finalmente estadísticas de ventas,
costos y gastos.
6.2 DELIMITACIONES
6.2.1 DELIMITACIÓN TEMPORAL
El proyecto esta destino a desarrollarse en un lapso límite de 6 meses
comprendido entre 22 de septiembre del 2014 hasta el 29 de abril del 20015.
6.2.2 DELIMITACIÓN GEOGRÁFICA
El proyecto será desarrollado en las instalaciones de la empresa Industria y
soluciones metalmecánicas Colombia S.A.S (ISMET).
6.2.3 DELIMITACIÓN TÉCNICA
V.O DESAROLLO V.O PRUEBAS V.O IMPLEMENTACIÓN
SERVIDOR Xammpfor Windows
V. 1.8.3
PHP 5.5
APACHE 2.4.9
SGBD 5.6.20
WEB BROWSER
INTERNET EXPLORER 10
GOOGLE CHROME 21.0
MOZILLA FIREFOX 14.0
OPERA 12.0
SAFARI 5.1.7
Tabla 1-Delimitación técnica.
19
7 FACTIBILIDAD
El estudio de factibilidad, es una de las primeras etapas del desarrollo de un sistema
informático. El estudio incluye los objetivos, alcances y restricciones sobre el sistema,
además de un modelo lógico de alto nivel del sistema actual (si existe). A partir de
esto, se crean soluciones alternativas para el nuevo sistema, analizando para cada
una de éstas, diferentes tipos de factibilidades. Los tipos de factibilidades
básicamente son1:
• Factibilidad técnica: si existe o está al alcance la tecnología necesaria para el
sistema.
• Factibilidad económica: relación beneficio costo.
• Factibilidad operacional u organizacional: si el sistema puede funcionar en la
organización.
7.1 FACTIBILIDAD TÉCNICA
Las características esenciales de los dispositivos con los cuales se debe hacer uso de
nuestro sistema de información, deberán poseer la mayoría de las tecnologías
utilizadas dentro del desarrollo del sistema.
El proyecto es factible técnicamente ya que cuenta con las siguientes herramientas:
Características mínimas del computador, para que se pueda dar uso al sistema de
información:
• Procesador de 3.0 GHz de velocidad.
• Memoria RAM de 2.00 GB
• Espacio libre en disco duro de 512 Mb
• Sistema Operativo Windows (XP o posterior).
Recursos Adicionales:
• Acceso a internet
1http://www.alegsa.com.ar/Dic/factibilidad.php- enero 15 de 2015.
20
• Servidor web externo WAMP
• Sistema de gestor de Bases de Datos MySQL
• Impresora
7.2 FACTIBILIDAD OPERATIVA
El sistema fue desarrollado con una interfaz amigable y de fácil manipulación para el
usuario, permitiendo realizar procesos simultáneos, ya que la interfaz es similar al
entorno del sistema operativo Windows. Además el sistema a desarrollarse será
mantenible ya que es susceptible a cambios, confiable por que se maneja un
aceptable nivel de seguridad y se controla fallos tanto en base de datos como en el
cliente.
El sistema permitirá llevar un control correcto y organizado de las entradas y salidas
de mercaderías atreves de la kardex de inventario, esta herramienta permitirá imprimir
reportes con información resumida de las transacciones de inventario registradas.
Puede realizar un seguimiento de movimientos y costos de los productos.
7.3 FACTIBILIDAD ECONÓMICA
RECURSOS HUMANOS
TIPO DESCRIPCIÓN VALOR-
HORA
CANTIDAD TOTAL
Tutor: Gerardo
Alberto
Castang
Asesorías para la
realización del proyecto,
referente a la
metodología a seguir y
las herramientas con las
que se debe
trabajar
$30.000
40
$1.200.000
Programador1:
Jhonny Gaona
Analista y desarrollador.
$8.000
440
$3.360.000
Programador2:
Fabián Novoa
Analista y desarrollador.
$8.000
440
$3.360.000
Total Recursos
Humanos
$7.920.000 Tabla 2-Recursos Humanos.
21
RECURSOS TÉCNICOS
RECURSO VALOR UNITARIO CANTIDAD TOTAL
Computadores $ 1.000.000 2 $ 2.000.000
Impresora $380.000 1 $380.000
Papelería $120.000 1 $ 120.000
Acceso Internet $ 100.000 6 $ 600.000
Transportes $ 100.000 1 $ 100.000
TOTAL
RECURSOS
TÉCNICOS
$ 3.200.000
Tabla 3-Recursos Técnicos.
RECURSOS DE SOFTWARE
RECURSO VALOR UNITARIO CANTIDAD TOTAL
Licencia PHP $ 0 1 $ 0
Licencia MYSQL $ 0 1 $ 0
Licencia XAMMP $ 0 1 $ 0
Licencia YII
FRAMEWORK
$0 1 $ 0
Licencia
CSS3,HTML Y
JQUERY
$ 0
1
$ 0
Dominio y host $130.000 (Anuales) 1 $ 130.000
TOTAL
RECURSOS DE
SOFTWARE
$ 130.000
Tabla 4-Recursos de Software.
22
PRESUPUESTO
RECURSO VALOR
RECURSO HUMANO $ 7.920.000
RECURSO TÉCNICO $ 3.200.000
RECURSO DE SOFTWARE $ 130.000
TOTAL PRESUPUESTO $ 14.450.000
Tabla 5-Presupuesto.
8 MARCO DE REFERENCIA
8.1 MARCO TEÓRICO
SISTEMA DE INFORMACIÓN
S.I. (Sistema de Información) es un conjunto de elementos que interactúan entre sí
con el fin de apoyar las actividades de una empresa o negocio. Es la reunión
ordenada, y muchas veces sistematizada y en otras ocasiones automatizada, de
un conjunto de funciones y componentes interrelacionados como un todo o
conjunto universal, que obtiene, procesa, almacena y distribuye información para
apoyar la toma de decisiones y el control de una organización 2 .
Un sistema de información realiza cuatro actividades básicas sobre la información
o datos: entrada, almacenamiento, procesamiento y salida de información3.
• Entrada de Información: Es el proceso mediante el cual el sistema toma los
datos que requiere para procesar la información. Las entradas pueden ser
manuales o automáticas. Las manuales son aquellas proporcionadas por el
usuario, mientras que las automáticas provienen de otros sistemas o módulos
informáticos.
• Almacenamiento de información: A través de esta propiedad el sistema puede
recordar y volver a recurrir a la información guardada en la sección o proceso
2Sistematización de información para historias clínicas odontológicas y generación de estadística, en Revista de
Tecnología. v.5, No. 2 (Julio-Diciembre 2006); pp. 81-82. Universidad El Bosque, Bogotá.[Consultado 30 septiembre 2014]3
Sistema de información-[Disponible en línea]- http://www.monografias.com/trabajos7/sisinf/sisinf.shtml [Consultado 30 de septiembre 2014]
23
anterior. Esta información suele ser almacenada en estructuras de información
denominadas archivos.
• Procesamiento de Información: Capacidad del Sistema para realizar cálculos de
acuerdo con una secuencia de operaciones preestablecidas o programadas. Estos
cálculos pueden efectuarse con datos introducidos recientemente en el sistema o
bien con datos que están almacenados.
• Salida de Información: La salida es la capacidad del Sistema de sacar la
información procesada o bien llevar los datos de entrada al exterior.
Para las organizaciones de tipo empresarial, de cualquier sector económico, los
sistemas de información o aplicaciones software, representan una de las mejores
opciones para solucionar problemas, para suplir necesidades tecnológicas, asumir
retos de innovación y cambio, soportar la toma de decisiones, agilizar tiempos de
respuestas, de producción y comercialización, solo por nombrar algunos.
El modo de hacerlo y de diseñarlo depende fundamentalmente de la arquitectura
con que se piense diseñar e implementar una herramienta tecnológica o
informática para atacar, minimizar y resolver cualquier problemática presente en el
contexto anteriormente citado de opciones que puede abordar y representar una
ayuda de este tipo.
A partir del levantamiento de información del proceso de reingeniería interna de
ISMET, se optó por diseñar un sistema de información, con características de
cliente servidor o aplicativo web, con la arquitectura que sustenta el
funcionamiento y considera los aspectos relacionados al hardware requerido.
FACTURA ELECTRÓNICA
La facturación electrónica es un documento que soporta transacciones de venta de
bienes y/o servicios, que para efectos fiscales debe ser:
• Expedida
• Entregada
• Aceptada
• Exhibida y Conservada por y en medios y formatos electrónicos.
24
De acuerdo con los requisitos técnicos y legales establecidos por ley 527 de 1999,
el decreto 1929 de 2007 y la resolución de la Dian 14465 de 2007.
Las facturas electrónicas se determinan como un documento alternativo de
facturación que debe ser aprobado legalmente por la Dian.
“Esta cumple con los requisitos legales y reglamentariamente exigibles a las
facturas tradicionales, garantizando entre otras cosas, la autenticidad de su origen
y la integridad de su contenido”, indica NushikaZalentein, de Facture Colombia.
De esta manera, al realizar una compra de cualquier bien o servicio es necesario
que exista ese respaldo legal donde se refleje el proceso de adquirir o vender un
producto que al ser revisado, se compruebe su autenticidad e integridad durante
todo el transcurso de la facturación, es decir, desde que se expide y durante la
conservación de la misma.
En Colombia, ahora en el 2012 se cuentan por miles las compañías que usan
facturación electrónica, y que vienen utilizándola desde hace varios años.
¿Cuáles son los beneficios de factura electrónica para su empresa?
• Automatización de los procesos de facturación.
• Eliminación de intervención manual, reduciendo la posibilidad de errores.
• Aporta trazabilidad sobre los procesos de envío posibilitando el acortamiento de
la gestión de cobros.
• Informa sobre estados de situación de la factura.
• Control de calidad, los sistemas de recepción comprueban la correcta
elaboración de la factura.
• Agiliza procesos de almacenaje y consulta de las facturas.
• Disminución de los costos de operación.
• Agiliza la relación con los socios comerciales.
25
• Mejora el cash management financiero y operativo.
Estos beneficios comprenden el núcleo de un proceso que finalmente lleva a un
crecimiento de las empresas y el país, puesto que al aplicarlo, el impacto medio
ambiental disminuye, y los participantes se vuelven más competitivos a nivel mundial3.
¿Cómo se puede garantizar la autenticidad e integridad de la factura electrónica?
El Decreto 1929 de 2007 establece que se debe garantizar la autenticidad e integridad
de los datos.
Artículo 1- definiciones-Factura electrónica: Es el documento que soporta
transacciones de venta de bienes y/o servicios, que para efectos fiscales debe ser
expedida, entregada, aceptada y conservada por y en medios y formatos electrónicos,
a través de un proceso de facturación que utilice procedimientos y tecnología de
información, en forma directa o a través de terceros, que garantice su autenticidad e
integridad desde su expedición y durante todo el tiempo de su conservación, de
conformidad con lo establecido en este decreto, incluidos los documentos que la
afectan como son las notas crédito.
En Colombia, mediante la resolución 14465 Articulo 4 del 28/11/2007 se establece
que las facturas electrónicas debe llevar “contenido técnico de control correspondiente
a un valor alfanumérico obtenido a partir de la aplicación de un procedimiento que
utiliza algunos datos de la factura o de las notas crédito, tales como: la fecha de
expedición (generación, numeración) entendida como año, mes, día y hora, minutos y
segundos)”4.
3 Factura electrónica: ¿Una nueva alternativa? [online]http://www.finanzaspersonales.com.co/trabajo-
yeducacion/articulo/facturacion-electronica-una-nueva-alternativa/48409 [Consultado 30 septiembre 2014]. 4 Decreto 1929 de 2007 Factura electrónica [online]
http://www.alcaldiabogota.gov.co/sisjur/normas/Norma1.jsp?i=25311 [Consultado 30 septiembre 2014].
26
8.2 MARCO CONCEPTUAL
Para el desarrollo del proyecto fue necesario tener en cuenta los conceptos de los
siguientes términos:
PHP 5.3
PHP es el acrónimo de HipertextPreprocesor. Es un lenguaje de programación del
lado del servidor gratuito e independiente de plataforma, rápido, con una gran
librería de funciones y mucha documentación5.
PHP fue concebido en 1994 y es fruto del trabajo de un hombre, RasmusLerdorf.
Ha sido adoptado por otras personas de talento y ha experimentado tres
transformaciones importantes hasta convertirse en el producto actual. En octubre
de 2002, era utilizado por más de nueve millones de dominios de todo el mundo y
su número crece rápidamente.
PHP es un producto de código abierto, lo que quiere decir que puede acceder a su
código, utilizarlo, modificarlo y redistribuirlo sin coste alguno.
Las siglas PHP equivalían inicialmente a Personal Home Page (Página de inicio
personal) pero se modificaron de acuerdo con la convención de designación de
GNU (del inglés, Gnu´sNot Unix, Gnu no es Unix) y ahora equivale a PHP
HipertextPreprocessor (Procesador de Hipertexto PHP)6.
Durante los últimos años, PHP se ha convertido, de facto, en la opción para el
desarrollo de aplicaciones Web orientadas a base de datos, sobre todo por su
escalabilidad, facilidad, uso y el amplio soporte para diferentes bases de datos y
formatos de éstos.
¿Cuáles son las características únicas de PHP?
• Rendimiento, los scripts escritos en PHP se ejecutan más rápido que los
escritos en otros lenguajes de creación de scripts como JSP, ASP.NET y Perl.
5 Qué es PHP [online] http://www.desarrolloweb.com/articulos/392.php [Connsultado 30 septiembre 2014] 6LukeWelling, Laura Thompson. Desarrollo web con PHP y MySQL. PHP. (2003) [Consultado 30 sept 2014]
27
• Portabilidad, está disponible para UNIX, Microsoft Windows, Mac OS, los
programas se pueden transportar de una plataforma a la otra, valioso cuando
se trabaja en ambientes corporativos de varias plataformas.
• Fácil de usar, su sintaxis es clara y consistente y viene con una documentación
exhaustiva para las más de 5000 funciones incluidas en la distribución
principal, lo que reduce de manera importante la curva de aprendizaje,
• Código libre, PHP es un proyecto de código libre, es desarrollado por un grupo
de programadores voluntarios distribuidos por todo el mundo, quienes ponen a
disposición gratuita el código fuente a través de internet y puede ser utilizado
sin costo y sin pagos por licencia.
• Soporte comunitario, esta soportado por cientos de desarrolladores ubicados en
diferentes partes del mundo7.
BASES DE DATOS
Las bases de datos, (BBDD) son estructuras en las que se almacena información
siguiendo unas pautas de disposición y ordenación para el posterior procesado de
los datos. Es una definición tan buena como cualquier otra. Seguramente, si usted
lee cincuenta libros al respecto, encuentre otras tantas definiciones distintas, pero
todas coincidirán en lo esencial. Como sistema de almacenamiento de datos, las
BBDD son por mucho más eficientes que los archivos de texto que conocemos. Y
esto por varias razones pero, principalmente, porque nos permiten un acceso
directo a los datos que necesitamos sin que sea preciso recorrer todo un fichero
para encontrarlo. Además, los modernos sistemas de gestión de BBDD
relacionales admiten el almacenamiento de muchos tipos de datos, no sólo texto
plano. Hablamos de BBDD relacionales cuando podemos establecer relaciones
entre las distintas informaciones que componen una base de datos. Por ejemplo,
suponga que usted quiere guardar la lista de clientes de una empresa de servicios.
Por otro lado, tiene una lista de los servicios que ofrece dicha entidad. Además
conserva una relación histórica de los servicios empleados por cada cliente. A
partir de ahí, mediante el uso de un Sistema De Gestión De Bases De Datos
7 Fundamentos de PHP – VikramVaswani -2010[Consultado 30 septiembre 2014].
28
Relacionales (RDBMS, Relation Data Base Management System) puede sacar
estadísticas u otro informes que le ayuden en la planificación u organización de su
trabajo diario.
Los motores de BBDD actuales (la parte que se encarga de gestionar la BBDD
fuera de la vista del usuario) están basados en el lenguaje SQL
(EstructuredQueryLanguage, Lenguaje estructurado de consulta)8.
SQL
En los albores de la informática de gestión, allá por los tardíos 70 o primeros 80 del
pasado siglo, las aplicaciones comerciales que manejaban ficheros de datos tenían
sus propios formatos para almacenar y recuperar la información. Cada nuevo
programa que se desarrollaba, normalmente bajo demanda y a medida en aquellos
tiempos, grababa y recuperaba los datos en un formato específico, nativo de esa
aplicación o del lenguaje en el que había sido escrita. Esto presentaba varios
problemas. El usuario de un programa de, digamos, contabilidad que quisiera
migrar a otro necesitaba reconvertir todos los datos, en ocasiones, volviendo a
grabarlos. Además en una empresa mediana o grande (las únicas que, en aquellos
días, podían permitirse tener sistemas informáticos), los datos de almacén podían
no estar grabados en un formato compatible con los de facturación. Esto obligaba
a grabar los pedidos en los dos departamentos. Cuando la información se graba
por duplicado o triplicado en diferentes sistemas siempre pueden aparecer
diferencias. Además, es posible que unos datos se actualicen en un sistema pero
no en otro. Y, en muchas ocasiones, cuando había varias versiones de la misma
información circulando por distintos departamentos de una misma empresa, no se
sabía cuáles eran los datos más actualizados. Esto es lo que se llama
inconsistencia de la información.
Surgía la necesidad de tratar los archivos de datos de forma que todos presentarán
un formato coherente, y que cualquier aplicación pudiera acceder a las mismas
fuentes de información. El lenguaje SQL cubría estas necesidades.
Por una parte encapsulaba los datos, interponiéndose entre estos y la aplicación,
de modo que esta usaba instrucciones SQL y era él quien manejaba los datos. Así
8 José LopezQuijado. Domine PHP y MySQL, programación dinámica en el lado del servidor. Lenguaje SQL .(2008) :
339 [Consultado 12 de octubre del 2014].
29
pues, bastaba con que una aplicación implementase SQL para que pudiera
acceder a los datos de cualquier otra aplicación. Por otra parte, dado que está
orientado a la gestión básica de los datos, SQL tiene, relativamente, pocas
instrucciones, y es muy fácil de aprender y manejar con soltura. Aprendiendo SQL
se integra así con los lenguajes de programación modernos, supeditado a ellos.
Las instrucciones de SQL (llamadas genéricamente, consultas) se pueden
considerar divididas en dos grupos principales. Las estructurales, también
llamadas de definición de datos, o DLL y las de datos, también llamadas de
manipulación de datos o DML. Las primeras están destinadas a crear, modificar y
eliminar las BBDD y las estructuras de las tablas que la conforman así como los
índices. Las segundas se ocupan de incorporar nuevos registros a las tablas,
buscar determinados registros según los criterios necesarios, modificar los datos
grabados o eliminarlos, si procede9.
MYSQL
MySQL es un sistema para la administración de bases de datos relacional
(RDBMS) rápido y sólido. Las bases de datos permiten almacenar, buscar, ordenar
y recuperar datos de forma eficiente. El servidor de MySQL controla el acceso a
los datos para garantizar el uso simultáneo de varios usuarios, para proporcionar
acceso a dichos datos y para asegurarse de que sólo obtienen acceso a ellos los
usuarios con autorización. Por lo tanto MySQL es un servidor multiusuario y de
subprocesamiento múltiple. Ultiliza SQL (del inglés StructuredQueryLanguage,
lenguaje de consulta estructurado), el lenguaje estándar para la consulta de bases
de datos utilizado en todo el mundo. MySQL lleva disponible desde 1996 pero su
nacimiento se remonta a 1979. A obtenido el galardón ChiceAward del Linux
JournalReaders en varias ocasiones.
MySQL se distribuye bajo una licencia de código abierto en la actualidad, pero
también existen licencias comerciales10.
9 Jacobo Pavon Puertas. Creación de un portal con PHP y MySQL. MySQL.(2011):15 [Consultado 12 de octubre del
2014]. 10 Jacobo Pavon Puertas. Creación de un portal con PHP y MySQL. MySQL.(2011):15 [Consultado 12 de octubre del
2014].
30
MySQL es, por otro lado, la base de datos elegida por la gran mayoría de
programadores en PHP. Soporta el lenguajes SQL y la conexión de varios
usuarios, pero, en general, se utiliza para aplicaciones de tamaño pequeñomedio.
Al igual que PHP, su principal ventaja reside en que es una base de datos gratuita.
MODELO VISTA CONTROLADOR (MVC)
MVC, son las siglas de modelo-vista-controlador (o en inglés, model-
viewcontroller), que es uno de los tantos patrones de arquitectura de software. El
patrón MVC es un patrón de arquitectura de software encargado de separar la
lógica de negocio de la interfaz del usuario y es el más utilizado en aplicaciones
Web, ya que facilita la funcionalidad, mantenimiento y escalabilidad del sistema, de
forma simple y sencilla, a la vez que permite “no mezclar lenguajes de
programación en el mismo código”11. MVC divide las aplicaciones en tres niveles
de abstracción:
MODELO: Encapsula la información que maneja el sistema, incluyendo la
información de negocio y las lógicas de acceso a los mismos. El modelo avisa a la
vista cuando se produce alguna modificación en los datos del modelo y le permite
consultar el estado de los mismos. También permite al controlador acceder a las
funcionalidades de la aplicación encapsuladas por el modelo. El modelo es
independiente de cualquier representación de salido y/o comportamiento de
entrada.
VISTA: Es la interfaz de usuario, es decir, decide cómo se presenta la información
del modelo al usuario, actualizando la interfaz cuando se produce alguna
modificación de los mismos. La vista también reenvía la entrada del usuario al
controlador. Pueden existir múltiples vistas del modelo. Cada vista tiene asociado
un componente controlador.
CONTROLADOR: Es el intermediario entre la vista y el modelo. Es quien controla
las interacciones del usuario como eventos que codifican los movimientos o
pulsación de botones del ratón, pulsaciones de teclas, etc. Responde a dichos
eventos modificando el modelo y pudiendo producir, por tanto, cambios en la vista.
11Bahit, Eugenia. 2012, disponible en internet octubre, 2014: http://www.eugeniabahit.com/mvc/
31
Así pues, el controlador interpreta la entrada del usuario y la correspondencia en
acciones que serán llevadas a cabo por el modelo. Un controlador escoge la
siguiente vista a mostrar basándose en las interacciones del usuario y los
resultados de las operaciones de modelo12.
XAMPP SERVER
XamppServer es un entorno de desarrollo web para Windows en el cual se podrán
crear aplicaciones web con Apache, PHP y base de datos en MySQL (motor de
base de datos). Esta herramienta incluye además con un administrador de base de
datos PHPMyAdmin con el cual podremos crear una nueva base de datos e
ingresar la data de las tablas creadas en ella, realizar consultas y generar scripts
SQL, como exportar e importar scripts de base de datos. XAMPP ofrece a los
desarrolladores herramientas necesarias para realizar aplicaciones web de manera
local, con un sistema operativo (Windows), un manejador de base de datos
(MySQL), un software de programación script web PHP. XamppSever se
caracteriza por que puede ser usado de forma libre es decir no debemos de contar
con alguna licencia el cual nos permita el uso de la misma, ya que pertenece a la
corriente de "open source".
Su utilidad es importante a la hora de desarrollar aplicaciones web, ya que
funciona al igual como si cuando trabajamos en un servidor web, ya que podemos
ejecutar estas aplicaciones de manera local y ver como seria el funcionamiento
antes de ser subidas a un hosting o servidor web13.
HTML5
HTML5 es un lenguaje markup (de hecho, las siglas de HTML significan Hyper
Text MarkupLanguage) usado para estructurar y presentar el contenido para la
web. Es uno de los aspectos fundamentales para el funcionamiento de los sitios,
pero no es el primero. Es de hecho la quinta revisión del estándar que fue creado
en 1990. A fines del año pasado, la W3C la recomendó para transformarse en el
estándar a ser usado en el desarrollo de proyectos venideros. Por así decirlo, qué
12 David Roldán Martínez, Pedro J. Valderas Aranda, Oscar Pastor Lopez. “Aplicaciones web, un enfoque práctico”.
Modelo- Vista- Controlador. (2010): 137-138 p [Consultado 12 de octubre 2014]. 13 http://mantenimientosdeunapc.blogspot.com/2011/11/que-es-xampp-y-para-que-sirve.html [En inea ][Consultaoo 12 de octubre 2014]
32
es HTML5 está relacionado también con la entrada en decadencia del viejo
estándar HTML 4, que se combinaba con otros lenguajes para producir los sitios
que podemos ver hoy en día. Con HTML5, tenemos otras posibilidades para
explotar usando menos recursos. Con HTML5, también entra en desuso el formato
XHTML, dado que ya no sería necesaria su implementación.
Se trata de un sistema para formatear el layout de nuestras páginas, así como
hacer algunos ajustes a su aspecto. Con HTML5, los navegadores como Firefox,
Chrome, Explorer, Safari y más pueden saber cómo mostrar una determinada
página web, saber dónde están los elementos, dónde poner las imágenes, dónde
ubicar el texto. En este sentido, el HTML5 no se diferencia demasiado de su
predecesor, La diferencia principal, sin embargo, es el nivel de sofisticación del
código que podremos construir usando HTML514.
CSS3
CSS (Cascading Style Sheets o CSS) es un lenguaje para definir el estilo o la
apariencia de las páginas web, escritas con HTML o de los documentos XML. CSS
se creó para separar el contenido de la forma, a la vez que permite a los
diseñadores mantener un control mucho más preciso sobre la apariencia de las
páginas, ofrecen la posibilidad de definir las reglas y estilos de representación
en diferentes dispositivos, ya sean pantallas de equipos de escritorio, portátiles,
móviles u otros dispositivos capaces de mostrar contenidos web15.
JAVASCRIPT
JavaScript es un lenguaje de programación que permite a los desarrolladores crear
acciones en sus páginas web, principalmente para crear páginas web dinámicas.
Una página web dinámica es aquella que incorpora efectos como texto que
aparece y desaparece, animaciones, acciones que se activan al pulsar botones y
ventanas con mensajes de aviso al usuario. No requiere de compilación ya que el
14
http://bitelia.com/2013/05/entendiendo-html5-guia-para-principiantes [En línea][Consultado 12 de octubre del
2014] 15 http://tc2-proyectodegradoingdesistemas.blogspot.com/2012/05/que-es-y-para-que-sirve-css3.html. [En
línea][Consultado el 12 de octubre del 2014].
33
lenguaje funciona del lado del cliente, los navegadores son los encargados de
interpretar estos códigos16.
Fue originalmente creado por la empresa Netscape para añadir interactividad a las
páginas web vistas con su navegador de internet. Actualmente JavaScript está
integrado en otras aplicaciones y otros navegadores de Internet, y es unos de los
lenguajes más utilizados en la red de redes para añadir interactividad a las páginas
web17.
JQUERY
JQuery es una biblioteca de JavaScript rápida y concisa que simplifica el recorrido
documento HTML, manejo de eventos, animación, y las interacciones Ajax para el
desarrollo web rápido. JQuery está diseñado para cambiar la forma en que
escribes JavaScript.
AJAX
Ajax, siglas de Asynchronous JavaScript and XML, es un término que describe un
nuevo acercamiento a usar un conjunto de tecnologías existentes juntas,
incluyendo las siguientes: HTML o XHTML, hojas de estilo (Cascading Style
Sheets o css), Javascript, el DOM (DocumentObjectModel), XML, XSLT, y el objeto
XMLHttpRequest. Cuando se combinan estas tecnologías en el modelo Ajax, las
aplicaciones funcionan mucho más rápido, ya que las interfaces de usuario se
pueden actualizar por partes sin tener que actualizar toda la página completa. Por
ejemplo, al rellenar un formulario de una página web, con Ajax se puede actualizar
la parte en la que se elige el país de residencia sin tener que actualizar todo el
formulario o toda la página web completa. AJAX permite mejorar completamente la
interacción del usuario con la aplicación, evitando las recargas constantes de la
página, ya que el intercambio de información con el servidor se produce en un
segundo plano. Las aplicaciones construidas con AJAX eliminan la recarga
constante de páginas mediante la creación de un elemento intermedio entre el
usuario y el servidor. La nueva capa intermedia de AJAX mejora la respuesta de la
16 http://librosweb.es/javascript/capitulo_1.html. [En línea][Consultado 12 de octubre de 2014]. 17 José Manuel Alarcón. Programación en JavaScript. Introducción a JavaScript.(2000): 21 [Consultado 12 de
octubre del 2014].
34
aplicación, ya que el usuario nunca se encuentra con una ventana del navegador
vacía esperando la respuesta del servidor18.
MODELO EOQ CON FALTANTE
Un factor importante en el éxito de una empresa es el control de inventarios debido
a los constantes problemas de desbalanceo (cantidad) entre productos, la
ineficacia en este sistema afecta el monto de las inversiones que requieren, es
decir, a menor eficiencia en el sistema de control de inventarios, mayor la
necesidad de inversión, es por esta razón que se hace indispensable la utilización
de modelos que ayuden a controlar estos problemas e implementarlo junto al
software para que la productividad sea excelente, el método a utilizar es el
MODELO EOQ CON FALTANTE ya que la empresa permite que haya tiempos de
espera entre un pedido y otro, es decir, que hayan pedidos atrasados, de esta
manera se supone que hay un tiempo donde la demanda no se satisface a tiempo
y se produce una escasez. Este modelo se caracteriza por lo siguiente19:
• La demanda es constante y conocida.
• Se admiten faltantes
• Los costos se mantienen constantes
• La reposición es instantánea (Esto quiere decir que un pedido llega tan pronto
se hace.)
• Los pedidos se mandan completos.
9 MARCO METODOLÓGICO
RUP (RATIONAL UNIFED PROCESS)
La metodología requerida y sobre la cual se desarrolló este proyecto es RUP. RUP
es un marco de proceso integral que ofrece prácticas probadas en la industria y
18
masadelante. ¿qué es ajax?. [ en línea] http://www.masadelante.com/faqs/ajax [consultado el 12 de octubre de
2014] 19 http://investigacionoperacionespao.blogspot.com/p/modelo-eoq-con-faltantes.html [en linea][consultado 12
de octubre 2014]
35
entrega de software e implementación de sistemas y para la gestión eficaz de
proyectos de software. Es uno de los muchos procesos contenidos dentro de la
RATIONAL PROCESS LIBRARY, que ofrece mejores directrices adecuadas para
el desarrollo en particular o las necesidades del proyecto20.
Ilustración 1-Fase metodología RUP
Las mejores prácticas del RATIONAL UNIFIED PROCESS, son un conjunto de
procesos WEB-ENABLED de ingeniería de software que dan guía para conducir las
actividades de desarrollo del equipo. Como una plataforma de procesos que abarca
todas las prácticas de la industria, RUP permite seleccionar fácilmente el conjunto de
componentes de proceso que se ajusten a las necesidades específicas del proyecto.
Se podrán alcanzar resultados predecibles unificando el equipo con procesos
comunes que optimicen la comunicación y creen un entendimiento común para todas
las tareas, responsabilidades y artefactos.
20ibm, portal web. 2013, disponible en internet: http://www.ibm.com/software/awdtools/rup/ [En
linea][Consultado 12 octubre 2014]
36
Disciplinas.
Las disciplinas conllevan los flujos de trabajo, los cuales son una secuencia de
pasos para la culminación de cada disciplina, estas disciplinas se dividen en dos
grupos: las primarias y las de apoyo. Las primarias son las necesarias para la
realización de un proyecto de Software, aunque para proyectos no muy grandes se
pueden omitir algunas; entre ellas se tienen: modelado del negocio,
requerimientos, análisis y diseño, implementación, pruebas, despliegue. Las de
apoyo son las que como su nombre lo indica, sirven de apoyo a las primarias y
especifican otras características en la realización de un proyecto de Software;
entre estas se tienen: entorno, gestión del proyecto, gestión de configuración y
cambios. A continuación se describe rápidamente cada una de estas disciplinas.
Modelado Del Negocio.
Esta disciplina tiene como objetivos comprender la estructura y la dinámica de la
organización, comprender problemas actuales e identificar posibles mejoras,
comprender los procesos de negocio. Utiliza el modelo de Casos de Uso del
negocio para describir los procesos del negocio y los clientes, el modelo de objetos
del negocio para describir cada Casos de Uso del negocio con los trabajadores,
además utilizan los diagramas de actividad y de clases.
Requerimientos.
Esta disciplina tiene como objetivos establecer lo que el sistema debe hacer
(especificar requisitos), definir los límites del sistema, y una interfaz de usuario,
realizar una estimación del costo y tiempo de desarrollo. Utiliza el modelo de
Casos de Uso para modelar el sistema que comprenden los CU, actores y
relaciones, además utiliza los diagramas de estados de cada Casos de Uso y las
especificaciones suplementarias.
Análisis y diseño.
Esta disciplina define la arquitectura del sistema y tiene como objetivos trasladar
requisitos en especificaciones de implementación, al decir análisis se refiere a
transformar Casos de Uso en clases, y al decir diseño se refiere a refinar el
37
análisis para poder implementar los diagramas de clases de análisis de cada
Casos de Uso, los diagramas de colaboración de cada Casos de Uso, el de clases
de diseño de cada Casos de Uso, el de secuencia de diseño de Casos de Uso, el
de estados de las clases, el modelo de despliegue de la arquitectura.
Implementación.
Esta disciplina tiene como objetivos implementar las clases de diseño como
componentes (ej. Fichero fuente), asignar los componentes a los nodos, probar los
componentes individualmente, integrar los componentes en un sistema ejecutable
(enfoque incremental). Utiliza el modelo de implementación, conjuntamente los
diagramas de componentes para comprender cómo se organizan los componentes
y dependen unos de otros.
Pruebas.
Esta disciplina tiene como objetivos verificar la integración de los componentes
(prueba de integración), verificar que todos los requisitos han sido implementados
(pruebas del sistema), asegurar que los defectos detectados han sido resueltos
antes de la distribución.
Despliegue.
Esta disciplina tiene como objetivos asegurar que el producto está preparado para
el cliente, proceder a su entrega y recepción por el cliente. En esta disciplina se
realizan las actividades de probar el Software en su entorno final (prueba beta),
empaquetarlo, distribuirlo e instalarlo, así como la tarea de enseñar al usuario.
Gestión y configuración de cambios.
Es esencial para controlar el número de artefactos producidos por la cantidad de
personal que trabajan en un proyecto conjuntamente. Los controles sobre los
cambios son de mucha ayuda ya que evitan confusiones costosas como la
compostura de algo que ya se había arreglado etc., y aseguran que los resultados
de los artefactos no entren en conflicto con algunos de los siguientes tipos de
problemas:
• Actualización simultánea: es la actualización de algo elaborado con
anterioridad, sin saber que alguien más lo está actualizando.
38
• Notificación limitada: al realizar alguna modificación, no se deja información
sobre lo que se hizo, por lo tanto no se sabe quién, cómo, y cuándo se
hizo.
• Versiones múltiples: no saber con exactitud, cual es la última versión, y al
final no se tiene un orden sobre que modificaciones se han realizado a las
diversas versiones.
Gestión del proyecto.
Su objetivo es equilibrar los objetivos competitivos, administrar el riesgo, y superar
restricciones para entregar un producto que satisface las necesidades de ambos
clientes con éxito (los que pagan el dinero) y los usuarios. Con la gestión del
proyecto se logra una mejoría en el manejo de una entrega exitoso de Software, en
resumen su propósito consiste en proveer pautas para:
• Administrar proyectos de Software Intensivos.
• Planear, dirigir personal, ejecutar acciones y supervisar proyectos.
Administrar el riesgo,
Sin embargo, esta disciplina no intenta cubrir todos los aspectos de dirección del
proyecto. Por ejemplo, no cubre problemas como:
• Administración de personal: contratando, entrenando, enseñando.
• Administración del presupuesto: definiendo, asignando.
• Administración de los contratos con proveedores y clientes.
Entorno.
Esta disciplina se enfoca sobre las actividades necesarias para configurar el
proceso que engloba el desarrollo de un proyecto y describe las actividades
requeridas para el desarrollo de las pautas que apoyan un proyecto, su propósito
es proveer a la organización que desarrollará el Software, un ambiente en el cual
basarse, el cual provee procesos y herramientas para poder desarrollar el
software.
39
10 DESARROLLO DEL PROYECTO
El presente capítulo muestra el proceso que se llevó a cabo para el diseño y
desarrollo del sistema de información Web y para la gestión de inventarios, clientes,
proveedores, ventas y facturación de la empresa ISMET. Para el desarrollo de este
proyecto, se llevaron a cabo diversas etapas, logrando por medio de cada una de ellas
un entorno de modelado clave para la implementación de esta aplicación.
10.1 LEVANTAMIENTO DE REQUERIMIENTOS
Para identificar las necesidades del negocio y definir la estructura funcional del
software se realizaron una serie de entrevistas con el gerente, levantando los
requerimientos respectivos al aplicativo y dando lugar al cumplimiento del primer
objetivo planteado al principio de este documento y estableciendo de esta manera
la estructura lógica del sistema (diagrama de clases).
FORMATO DE ENTREVISTAS
N° Interno 001 Prioridad ALTA
Detalle del solicitante
Nombre: Jorge Enrique Gaona Cargo: Gerente Ismet
Fecha Solitud: 12/12/2014
Detalle del requerimiento:
Crear un módulo de insumos en el cual se puedan crear, eliminar y actualizar cada uno de los
productos que utiliza la empresa para fines de información y utilizarlos en las órdenes de
compra.
Justificación:
Este módulo permitirá a la empresa tener un buen orden en lo que concierna al listado de
productos que la empresa vende a sus clientes y maneja en el área de metalmecánica.
Control: ACEPTADO
Tabla 6-Entrevista 1.
40
N° Interno 002 Prioridad ALTA
Detalle del solicitante
Nombre: Jorge Enrique Gaona Cargo: Gerente Ismet
Fecha Solitud: 12/12/2014
Detalle del requerimiento:
Crear un módulo de proveedores en el cual se puedan ingresar nuevos como así mismo actualizar la
información de los ya existentes
Justificación:
Este módulo permitirá a la empresa tener un buen control sobre todas las empras o personas que
nos proveen de materiales para nuestro fin lucrativo de esta manera la información se obtendrá de
forma más precisa y rápida.
Tabla 7-Entrevista 2.
41
N° Interno 003 Prioridad ALTA
Detalle del solicitante
Nombre: Jorge Enrique Gaona Cargo: Gerente Ismet
Fecha Solitud: 12/12/2014
Detalle del requerimiento:
Crear un módulo de Usuarios con sus respectivos roles, es decir dependiendo de su cargo
puedan o no acceder a los diferentes procesos del aplicativo.
Justificación:
De esta manera cada usuario de nuestra empresa realizada sus distintas labores de forma
autosuficientes y controlada, realizando un proceso limpio y eficaz más que todo en el proceso
de realización de facturas.
Control: ACEPTADO
Tabla 8-Entrevista 3
42
N° Interno 004 Prioridad ALTA
Detalle del solicitante
Nombre: Jorge Enrique Gaona Cargo: Gerente Ismet
Fecha Solitud: 12/12/2014
Detalle del requerimiento:
Crear un módulo de facturación, el cual sea dinámico y se pueda agregar cada uno de los
insumos que posee la empresa con el fin de generar una orden de compra digital para
nuestros clientes y tener una copia de cada uno de las ventas que ha realizado la empresa.
Justificación:
Este módulo permitirá a la empresa tener un control eficaz de sus ventas, llevar la
contabilidad de manera ordenada y digital, en el momento de revisar una factura ya creada se
puede obtener de manera rápida sin ningún tipo de inconveniente.
Control:
ACEPTADO
Tabla 9-Entrevista 4.
43
N° Interno 005 Prioridad ALTA
Detalle del solicitante
Nombre: Jorge Enrique Gaona Cargo: Gerente Ismet
Fecha Solitud: 12/12/2014
Detalle del requerimiento:
Crear un módulo de gráficos todos centrados sobre ventas en un rango de fechas , dividas por
usuarios con más ventas, insumos más vendidos, clientes que más compran, ventas por
periodo de tiempo
Justificación:
Este módulo permitirá visualizar de manera más rápida las ventas hechas por la empresa en
periodos de tiempo, de esta manera se pueden tomar decisión pensando en el futuro como
podría ser incentivos a nuestros clientes más fieles.
Control: ACEPTADO
Tabla 10-Entrevista 5.
44
N° Interno 006 Prioridad ALTA
Detalle del solicitante
Nombre: Jorge Enrique Gaona Cargo: Gerente Ismet
Fecha Solitud: 12/12/2014
Detalle del requerimiento:
Crear facturas digitales con el nit de la empresa y su logo, y con el detalle de la compra.
Justificación:
Para la empresa es realmente importante poder digitalizar su factura ya el control seríamás eficaz
y atacaríamos una de las solicitudes más pedidas por todos los clientes de ISMET.
Control: ACEPTADO
Tabla 11-Entrevista 6.
45
10.2 FASE DE MODELAMIENTO DE NEGOCIO
Consiste primordialmente en identificar y describir de manera estructural el flujo de
procesos en cada área y su información, de igual forma los usuarios involucrados y
su rol a lo largo de la implementación del sistema de información web a desarrollar,
de esta manera se da inicio al cumplimiento de los objetivos específicos
relacionados a la creación y desarrollo de cada uno de los módulos funcionales del
sistema de información web para la gestión de inventarios, clientes, proveedores,
ventas y facturación de la empresa ISMET.
10.3 ANÁLISIS Y DISEÑO
10.3.1 DEFINICIÓN DE ACTORES
ACTOR DESCRIPCIÓN
ADMINISTRADOR Tendrá todos los accesos y permisos de la gestión de
toda la información del sistema (usuarios, clientes,
proveedores, vendedores, facturas, informes, etc.).
SECRETARIA Será el actor auxiliar del administrador, posee permisos
para gestionar información de los clientes, proveedores
y vendedores, como también acceso a los módulos de
facturación e informes.
VENDEDOR Tendrá acceso a consulta de clientes, proveedores y
productos.
CONTADOR Tendrá acceso a los módulos de facturación y de
informes. Tabla 12-Definición de actores
46
10.3.2 DIAGRAMAS DE CASOS DE USO
Describe el comportamiento del sistema de información web que se implementará en
la empresa ISMET enfocado en el valor suministrado por éste a entidades externas
tales como los empleados que harán uso del sistema de gestión de inventarios,
clientes, proveedores, ventas y facturación permitiendo así, el proceso de desarrollo
de cada objetivo específico planteado para los módulos que componen este sistema
de gestión.
10.3.3 DIAGRAMA GENERAL DE CASOS DE USO
De esta manera se puede observar de manera resumida el comportamiento de los
usuarios en cada uno de los procesos del sistema de gestión de inventarios, clientes,
proveedores, ventas y facturas.
Ilustración 2-Diagrama general de casos de uso.
uc Diagrama General
Diagrama general de casos de uso
Administrador Secretaria
Contador
Vendedor
Generar Informes
Gestionar Usuarios
Gestionar Clientes
Gestionar Proveedores
Gestionar Inventario
Actualizar Información Personal
Crear Factura
Anular Factura
Imprimir Factura
Buscar Factura
47
10.3.4 DIAGRAMA DE MODIFICACIÓN DE INFORMACIÓN PERSONAL.
Ilustración 3-Diagrama de casos de uso modificación de información personal
uc Diagrama General
Modificación de información personal
Administrador
Vendedor Secretaria Contador
Iniciar Sesión
Cerrar Sesión
Actualizar Información Personal
«include»
«include»
48
10.3.5 DIAGRAMA SUBSISTEMA DE CONTROL DE USUARIOS
En el siguiente diagrama se puede observar el comportamiento del módulo de
registro de usuarios con sus respectivos roles (vendedores, administrador de
inventarios, contador), permitiendo así crear su estructura funcional y cumplir el
objetivo específico planteado.
Ilustración 4-Diagrama de casos de uso subsistema de control de usuarios
49
10.3.6 DIAGRAMA SUBSISTEMA DE CONTROL DE CLIENTES
El diagrama de control de clientes permite contemplar la estructura funcional del
módulo “gestión de clientes” haciendo énfasis en las acciones permitidas para el
desempeño del módulo (Creación, eliminación, modificación y consulta).
Ilustración 5-Diagrama de casos de uso subsistema de control de clientes
50
10.3.7 DIAGRAMA SUBSISTEMA DE CONTROL DE PROVEEDORES
El diagrama de control de proveedores contempla la estructura funcional del
“módulo de gestión de proveedores” haciendo énfasis en cada una de las acciones
permitidas para el desempeño del módulo (Creación, eliminación, modificación y
consulta).
Ilustración 6-Diagrama de casos de uso subsistema de control de proveedores
51
10.3.8 DIAGRAMA SUBSISTEMA DE CONTROL DE INVENTARIOS
El módulo de gestión de inventarios es la base fundamental del sistema de
información web que se implementará en la empresa ISMET ya que abarca,
comprende y contextualiza el modelo EOQ con faltante el cual maneja productos
con cantidad cero es decir que en el momento actual no se encuentren en la
bodega, por tal motivo la estructura funcional presentada a continuación
comprende los cuatro procesos primordiales en el módulo (Agregación, eliminación,
Consulta y modificación), adicionalmente previo aviso de inventario en cero y
actualización puntal sobre estos ítems.
Ilustración 7-Diagrama de casos de uso subsistema de control de inventarios
52
10.3.9 DIAGRAMA SUBSISTEMA DE CONTROL DE GRÁFICAS
Para el desarrollo del módulo de gráficas se contempló la siguiente estructura
funcional teniendo en cuenta la selección de fechas y los distintos tipos de gráficas
dando así desarrollo continuo al objetivo específico planteado sobre éste módulo.
Ilustración 8-Diagrama de casos de uso subsistema de informes y gráficas.
uc Subsistema de informes y gráficas
Subsistema de informes y gráficas
Contador Secretaria
Administrador
Genera gráficas Seleccionar intervalo de Fechas
Visualiza gráfica Seleccionar Tipo de Gráfica
Tipos de informes:
Inventario.
Proveedores.
Clientes.
Ventas
«extend»
«extend»
«include»
53
10.3.10 DIAGRAMA SUBSISTEMA DE FACTURACIÓN
El desarrollo estructural del subsistema de facturación se expone según la
operatividad y el uso constante del que dispondrán los usuarios del sistema en la
empresa ISMET, de esta manera se suple el objetivo que gira en torno a este módulo
y se observa de forma específica los procesos que lo componen.
Ilustración 9-Diagrama de casos de uso subsistema de facturación
10.4 DIAGRAMA DE ACTIVIDADES
Estos diagramas presentan el flujo de trabajo entre los usuarios y el sistema de
información web para la gestión de inventarios, clientes, proveedores, ventas y
facturación de la empresa ISMET, en ellos se puede identificar la secuencia
cronológica o paso a paso de cada subproceso desde el punto de inicio hasta el punto
final en cada módulo (Clientes, Proveedores, Usuarios, Facturación, Inventario,
Gráficas).
54
10.4.1 DIAGRAMA DE ACTIVIDADES CREACIÓN DE USUARIOS
Ilustración 10-Diagrama de actividades de creación de usuarios
act Subsistema de usuarios
Creación de Usuarios
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Ingresar Información del usuario
¿Datos Correctos?
Almacena datos del usuario
Proporciona el estado de la operación
No
No
Si
55
10.4.2 DIAGRAMA DE ACTIVIDADES CONSULTA DE USUARIOS
Ilustración 11-Diagrama de actividades de consulta de usuarios.
act Consulta de usuarios
Consulta de usuarios
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
muestra la información del usuario
¿El usuario existe?
Busca el usuario
No
Si
Si
No
56
10.4.3 DIAGRAMA DE ACTIVIDADES MODIFICACIÓN DE USUARIOS
Ilustración 12-Diagrama de actividades de modificación de usuarios.
57
10.4.4 DIAGRAMA DE ACTIVIDADES ELIMINACIÓN DE USUARIOS
Ilustración 13-Diagrama de actividades de eliminación de usuarios.
act Eliminación de usuarios
Eliminación de usuarios
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
eliminar cuenta del usuario
¿Confirma Eliminación?
Elimina la cuenta del usuario
Proporciona el estado de la operación
¿El usuario existe?
Busca el usuario
Si
No
Si
No
Si
58
10.4.5 DIAGRAMA DE ACTIVIDADES CREACIÓN DE PROVEEDORES
Ilustración 14-Diagrama de actividades de creación de proveedores.
act Creación de proveedores
Creación de Proveedores
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Ingresar Información del proveedor
¿Datos Correctos?
Almacena datos del proveedor
Proporciona el estado de la operación
No
Si
No
Si
59
10.4.6 DIAGRAMA DE ACTIVIDADES CONSULTA DE PROVEEDORES
Ilustración 15-Diagrama de actividades de consulta de proveedores.
act Consulta de proveedores
Consulta de Proveedores
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
muestra la información del proveedor
¿El proveedor existe?
Busca el proveedor
No
Si
Si
60
10.4.7 DIAGRAMA DE ACTIVIDADES MODIFICACIÓN DE PROVEEDORES
Ilustración 16-Diagrama de actividades de modificación de proveedores.
act Modificación de proveedores
Modificación de Proveedores
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Ingresar nueva Información del proveedor
¿Datos Correctos?
Almacena datos del proveedor
Proporciona el estado de la operación
¿El proveedor existe?
Busca el proveedor
Si
No
Si
No
No
61
10.4.8 DIAGRAMA DE ACTIVIDADES ELIMINACIÓN DE PROVEEDORES
Ilustración 17-Diagrama de actividades de eliminación de proveedores.
act Eliminación de proveedores
Eliminación de Proveedores
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Eliminar cuenta del proveedor
¿Confirma Eliminación?
Elimina la cuenta del proveedor
Proporciona el estado de la operación
¿El cliente existe?
Busca el proveedor
Si
No
Si
No
Si
62
10.4.9 DIAGRAMA DE ACTIVIDADES CREACIÓN DE CLIENTES
Ilustración 18-Diagrama de actividades de creación de clientes.
act Creación de clientes
Creación de Clientes
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Ingresar Información del cliente
¿Datos Correctos?
Almacena datos del cliente
Proporciona el estado de la operación
No
Si
No
Si
63
10.4.10 DIAGRAMA DE ACTIVIDADES CONSULTA DE CLIENTES
Ilustración 19-Diagrama de actividades de consulta de clientes.
act Consulta de clientes
Consulta de clientes
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
muestra la información del cliente
¿El cliente existe?
Busca el cliente
No
Si
No
Si
64
10.4.11 DIAGRAMA DE ACTIVIDADES MODIFICACIÓN DE CLIENTES
Ilustración 20-Diagrama de actividades de modificación de clientes.
act Modificación de clientes
Modificación de clientes
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Ingresar nueva Información del cliente
¿Datos Correctos?
Almacena datos del cliente
Proporciona el estado de la operación
¿El cliente existe?
Busca el cliente
Si
No
Si
Si
No
No
65
10.4.12 DIAGRAMA DE ACTIVIDADES ELIMINACIÓN DE CLIENTES
Ilustración 21-Diagrama de actividades de eliminación de clientes.
act Eliminación de clientes
Eliminación de clientes
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Eliminar cuenta del cliente
¿Confirma Eliminación?
Elimina la cuenta del cliente
Proporciona el estado de la operación
¿El cliente existe?
Busca el cliente
Si
No
No
Si
No
Si
66
10.4.13 DIAGRAMA DE ACTIVIDADES CREACIÓN DE ARTÍCULOS
Ilustración 22-Diagrama de actividades de creación de artículos.
act Creación de Artículos
Creación de Artículos
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Ingresar Información del artículo
¿Datos Correctos?
Almacena datos del Artículo
Proporciona el estado de la operación
No
Si
No
Si
67
10.4.14 DIAGRAMA DE ACTIVIDADES CONSULTA DE ARTÍCULOS
Ilustración 23-Diagrama de actividades de consulta de artículos.
act Consultar Artículo
Consulta de Artículos
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
muestra la información del artículo
¿El artículo existe?
Busca el artículo
No
Si
Si
No
68
10.4.15 DIAGRAMA DE ACTIVIDADES MODIFICACIÓN DE ARTÍCULOS
Ilustración 24-Diagrama de actividades de modificación de artículos.
act Modificación de Artículos
Modificación de Artículos
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Ingresar nueva Información del artículo
¿Datos Correctos?
Almacena datos del artículo
Proporciona el estado de la operación
¿El proveedor existe?
Busca el artículo a modificar
No Si
Si
No
Si
69
10.4.16 DIAGRAMA DE ACTIVIDADES ELIMINACIÓN DE ARTÍCULOS
Ilustración 25-Diagrama de actividades de eliminación de artículos.
act Eliminación de artículos
Eliminación de Artículos
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Eliminar el artículo
¿Confirma Eliminación?
Elimina el artículo Proporciona el estado de la operación
¿El artículo existe?
Busca el artículo a eliminar
Si
No
Si
Si No
70
10.4.17 DIAGRAMA DE ACTIVIDADES CREACIÓN DE FACTURAS
Ilustración 26-Diagrama de actividades de creación de facturas.
71
10.4.18 DIAGRAMA DE ACTIVIDADES BÚSQUEDA DE FACTURAS
Ilustración 27-Diagrama de actividades de busqueda de facturas.
act Buscar Factura
Busqueda de facturas
InicioDeActividad
FinalDeActividad
Inicio de sesión ¿Datos Correctos? Carga interfaz de inicio
Seleccionar cliente
Carga Información y facturas del cliente
¿El cliente existe?
NO
SI
NO
SI
72
10.4.19 DIAGRAMA DE ACTIVIDADES ANULACIÓN DE FACTURAS
Ilustración 28-Diagrama de actividades de anulación de facturas.
73
10.5 DIAGRAMAS DE ESTADO
Estos diagramas permiten visualizar de una forma secuencial la ejecución de cada uno
de los procesos que intervienen en el sistema de información web para la gestión de
inventarios, clientes, proveedores, ventas y facturación de la empresa ISMET, en ellos
describimos gráficamente los eventos y los estados de los objetos que intervienen en
cada módulo.
10.5.1 DIAGRAMA DE ESTADO DE INICIO DE SESIÓN
Ilustración 29-Diagrama de estado de inicio de sesión
10.5.2 DIAGRAMA DE ESTADO DE INSERCIÓN DE USUARIOS
Ilustración 30-Diagrama de estado de inserción de usuario
stm Crear Usuario
Diagrama de estado insertar usuarios
Carga formulario
Valida usuario
Valida datos Inicial
Final
Final
Inserta datos
Registra nuevo usuario
Datos incorrectos
Existe el usuario
Datos correctos
Diligencia formulario Selecciona tipo de usuario
stm Estado
Diagrama de estado iniciar sesión
Carga formulario
Ingresa al sistema
Valida datos Inicial
Final
Final
Ingresar datos Iniciar Sesión
El usuario No existe El usuario existe
74
10.5.3 DIAGRAMA DE ESTADO DE CONSULTA DE USUARIOS
Ilustración 31-Diagrama de estado de consulta de usuarios
10.5.4 DIAGRAMA DE ESTADO DE MODIFICACIÓN DE USUARIOS
Ilustración 32-Diagrama de estado de modificación de usuarios
stm Modificar Usuario
Diagrama de estado modificar usuarios
Carga formulario
Muestra información del usuario
Inicial Final
Modificar Usuario
Final
Usuario modificado
Ingresa datos ] [ ] El usuario No existe [
] El usuario existe [
[ Cancela ] [ Confirma ]
stm Consulta usuario
Diagrama de estado consultar usuarios
Carga formulario
Muestra indormación del usuario
Inicial Final
Final
[ El usuario existe ]
No existe el usuario Ingresa datos del usuario
75
10.5.5 DIAGRAMA DE ESTADO DE ELIMINACIÓN DE USUARIOS
Ilustración 33-Diagrama de estado de eliminación de usuarios
10.5.6 DIAGRAMA DE ESTADO DE INSERCIÓN DE PROVEEDORES
Ilustración 34-Diagrama de estado de inserción de proveedores
stm Crear Proveedor
Diagrama de estado insertar proveedores
Carga formulario
Valida proveedor
Valida datos Inicial
Final
Final
Inserta datos
Registra nuevo proveedor
] Datos incorrectos [
[ Existe el proveedor ]
[ Datos correctos ]
[ Diligencia formulario ]
stm Eliminar Usuario
Diagrama de estado eliminar usuarios
Carga formulario
Muestra información del usuario
Inicial Final
Eliminar Usuario
Final
Usuario eliminado
[ Confirma ] [ ] Cancela
El usuario existe [ ]
[ El usuario No existe ] Ingresa datos
76
10.5.7 DIAGRAMA DE ESTADO DE CONSULTA DE PROVEEDORES
Ilustración 35-Diagrama de estado de consulta de proveedores
10.5.8 DIAGRAMA DE ESTADO DE MODIFICACIÓN DE PROVEEDORES
Ilustración 36-Diagrama de estado de consulta de proveedores
stm Modificar Proveedor
Diagrama de estado modificar proveedores
Carga formulario
Muestra información del proveedor
Inicial Final
Modificar Proveedor
Final
Proveedor modificado
] Ingresar datos [ ] [ El proveedor No existe
[ El proveedor existe ]
[ Cancela ] [ ] Confirma
stm Consulta proveedores
Diagrama de estado consultar Proveedores
Carga formulario
Muestra información del proveedor
Inicial Final
Final
[ El proveedor existe ]
[ No existe el proveedor ] [ Ingresa datos del proveedor ]
77
10.5.9 DIAGRAMA DE ESTADO DE ELIMINACIÓN DE PROVEEDORES
Ilustración 37-Diagrama de estado de eliminación de proveedores
10.5.10 DIAGRAMA DE ESTADO DE INSERCIÓN DE CLIENTES
Ilustración 38-Diagrama de estado de inserción de clientes
stm Crear Clientes
Diagrama de estado insertar clientes
Carga formulario
Valida cliente
Valida datos Inicial
Final
Final
Inserta datos
Registra nuevo cliente
Diligencia formulario ] [
Existe el cliente ] [
] [ Datos incorrectos [ Datos correctos ]
stm Eliminar Proveedor
Diagrama de estado eliminar proveedores
Carga formulario
Muestra información del proveedor
Inicial Final
Eliminar proveedor
Final Proveedor eliminado
Ingresa datos ] [ ] El proveedor no existe [
] el proveedor existe [
[ Cancela ] [ Confirma ]
78
10.5.11 DIAGRAMA DE ESTADO DE CONSULTA DE CLIENTES
Ilustración 39-Diagrama de estado de consulta de clientes
10.5.12 DIAGRAMA DE ESTADO DE MODIFICACIÓN DE CLIENTES
Ilustración 40-Diagrama de estado de consulta de clientes
stm Modificar Clientes
Diagrama de estado modificar clientes
Carga formulario
Muestra información del cliente
Inicial Final
Modificar cliente
Final
Cliente modificado
] Cancela [ ] Confirma [
] [ Ingresar datos
[ El cliente existe ]
[ El cliente No existe ]
stm Consulta Clientes
Diagrama de estado consultar clientes
Carga formulario
Muestra información del cliente
Inicial Final
Final
[ Ingresa datos del cliente ] [ No existe el cliente ]
[ El cliente existe ]
79
10.5.13 DIAGRAMA DE ESTADO DE ELIMINACIÓN DE CLIENTES
Ilustración 41-Diagrama de estado de eliminación de clientes
10.5.15 DIAGRAMA DE ESTADO DE INSERCIÓN DE ARTÍCULOS
Ilustración 42-Diagrama de estado de inserción de artículos
stm Crear Artículo
Diagrama de estado insertar artículos
Carga formulario
Valida artículo
Valida datos
Inicial
Final
Final
Inserta datos
Registra nuevo artículo
] Diligencia formulario [
[ Existe el artículo ]
[ Datos incorrectos ] [ Datos correctos ]
stm Eliminar Clientes
Diagrama de estado eliminar clientes
Carga formulario
Muestra información del cliente
Inicial Final
Eliminar cliente
Final
Cliente eliminado
] Ingresa datos [ [ ] El cliente no existe
[ el cliente existe ]
[ Cancela ] [ Confirma ]
80
10.5.16 DIAGRAMA DE ESTADO DE CONSULTA DE ARTÍCULOS
Ilustración 43-Diagrama de estado de consulta de artículos.
10.5.17 DIAGRAMA DE ESTADO DE MODIFICACIÓN DE ARTÍCULOS
Ilustración 44-Diagrama de estado de modificación de artículos
stm Modificar Artículo
Diagrama de estado modificar artículos
Carga formulario
Muestra información del artículo
Inicial Final
Modificar artículo
Final Artículo modificado
[ ] El artículo No existe ] Ingresar datos [
[ El artículo existe ]
[ Cancela ] [ ] Confirma
stm Consultar Artículo
Diagrama de estado consultar artículos
Carga formulario
Muestra información del artículo
Inicial Final
Final
[ No existe el artículo ]
[ El artículo existe ]
[ Ingresa datos del artículo ]
81
10.5.18 DIAGRAMA DE ESTADO DE ELIMINACIÓN DE ARTÍCULOS
Ilustración 45-Diagrama de estado de eliminación de artículos
stm Eliminar Artículo
Diagrama de estado eliminar artículos
Carga formulario
Muestra información del artículo
Inicial Final
Eliminar artículo
Final
Artículo eliminado
] El artículo no existe [
[ elatrículo existe ]
[ Confirma ] [ ] Cancela
[ Ingresa datos ]
82
10.6 IMPLEMENTACIÓN DEL DISEÑO
10.6.1 MODELOS DE SECUENCIAS
Estos diagramas presentan un conjunto de objetos y los mensajes enviados y recibidos
entre ellos, se utilizaron para describir la vista dinámica del sistema y dar cumplimiento a
los objetivos que detallan el desarrollo y la creación de cada uno de los módulos que
intervienen en el sistema.
A continuación se listan los diagramas de secuencia de los casos de uso listados
anteriormente
10.6.2 MODELO DE SECUENCIA INICIAR SESIÓN
Ilustración 46-Modelo de secuencia iniciar sesión
83
10.6.3 MODELO DE SECUENCIA CREAR USUARIOS, CLIENTES,
PROVEEDORES Y VENDEDORES.
Ilustración 47-Modelo de secuencia crear usuarios, clientes, proveedores y vendedores.
84
10.6.4 MODELO DE SECUENCIA CONSULTAR USUARIOS, CLIENTES,
PROVEEDORES Y VENDEDORES.
Ilustración 48-Modelo de secuencia consultar usuarios, clientes, proveedores y vendedores.
85
10.6.5 MODELO DE SECUENCIA MODIFICAR USUARIOS, CLIENTES,
PROVEEDORES Y VENDEDORES.
Ilustración 49-Modelo de secuencia modificar usuarios, clientes, proveedores y vendedores.
86
10.6.6 MODELO DE SECUENCIA ELIMINAR USUARIOS, CLIENTES,
PROVEEDORES Y VENDEDORES.
Ilustración 50-Modelo de dominio eliminar usuarios, clientes, proveedores y vendedores.
.
91
10.7 DIAGRAMA DE CLASES
Un diagrama de clases es un tipo de diagrama estático que describe la estructura de
un sistema mostrando sus clases, orientados a objetos y sus relaciones.21, de esta
manera se da cumplimiento a los objetivos relacionados con el desarrollo y creación
de los módulos que intervienen en el sistema de información web de ISMET.
Ilustración 55-Diagrama de clases
21 http://es.wikipedia.org/wiki/Diagrama_de_clases
class Sistema
Personas
- Apellido: String - Cedula: String - Direccion: String - Email: int - FechaNac: String - Nit: String - Nombre: String
- Telefono: int
Proveedores
+ ActualizarProveedor() : void + ConsultarProveedor(String) : String
+ CrearProveedor() : void + EliminarProveedor() : void
+ GenerarInforme() : void A
Clientes
+ ActualizarCliente() : void + ConsultarCliente(String) : String + CrearCliente() : void
+ EliminarCliente() : void + GenerarInforme() : void
Usuarios
- Clave: String - Rol: Int
- Session: Object - User: String
Session
+ IniciarSession() : void + TerminarSession() : void
Productos
- Cantidad: int - Descripcion: String - Id: int
- Iva: Float
- Nombre: String - Precio: Double - Proveedores: Object
- Tipo: String - Volumen: String
+ ActualizaProducto() : void
+ ConsultarProducto(String) : String + CrearProducto() : void
+ EliminarProducto() : void
+ GenerarInforme() : void
Compras
- Cantidad: int - Clientes: Object
- ConsultarCompra: int - Descripcion: String - Factura: Object
- Productos: Object - SubTotal: Double
- Usuarios: Object - VTotal: Double
- VUnitario: Double
+ ConsultarCompra(Int) : String
+ RealizarCompra() : void
Facturas
- AnularFactura: int - Estado: int - FechaEmision: String - Id: int - Iva: Float - VTotal: Double
+ AnularFactura() : void + BuscarFactura(Int) : void + GenerarInforme() : void
92
10.8 MODELO RELACIONAL
El modelo relacional para la gestión de una base de datos es un modelo de datos
basado en la lógica de predicados y en la teoría de conjuntos. Es el modelo más
utilizado en la actualidad para modelar problemas reales y administrar datos
dinámicamente,22 de esta manera se crea el sistema estructural de la base de datos
de la empresa ISMET cumpliendo así con el objetivo específico planteado al principio
del documento basado en la información real de la empresa organizada en una base
de datos automatizada.
Ilustración 56-Diagrama Relacional
22 http://es.wikipedia.org/wiki/Modelo_relacional
93
10.9 TEST DE INTEGRACIÓN Y DESPLIEGUE DEL PRODUCTO
10.9.1 FASE DE PRUEBAS
INTRODUCCIÓN
Propósito
El propósito de este Plan de Pruebas es recopilar toda la información necesaria para
planificar y controlar el esfuerzo de Pruebas de esta iteración. Este documento
describe una aproximación de las pruebas realizadas para la ejecución de este
proyecto.
10.9.2 PRUEBAS FUNCIONALES
OBJETIVO DE LA PRUEBA: Asegurar la funcionalidad del conjunto de casos, incluyendo la navegación en la aplicación, el ingreso de datos, el proceso y la recuperación (resultados). Que la navegación a través de los casos de prueba refleje apropiadamente las reglas del negocio y los requerimientos, incluyendo ventana a ventana, campo a campo y usando los métodos de acceso correctamente (tecla tab, movimiento del mouse, etc.) Que los objetos de las ventanas y sus características, tales como menús, tamaño, posición, estados y el foco, estén de acuerdo a los estándares.
TÉCNICA A UTILIZAR: Ejecutar cada Caso de Uso, su flujo y funcionalidad usando tanto datos válidos como inválidos para verificar lo siguiente:
Que los resultados esperados ocurren cuando los datos válidos son utilizados.
Tabla 13-Objetivos Pruebas Funcionales.
94
N° Prueba Descripción Gravedad Acción
1 Inconveniente en el direccionamiento de página al iniciar la sesión
ALTA Se corrige mediante una validación de sesión de código de servidor direccionando las páginas según el usuario.
2 Inconveniente en la generación de pdf de la orden de compra.
ALTA Se presenta por el tiempo de renderización para pintar la orden de compra, se utiliza la función settimeout de jquery para controlar los tiempos.
3 Inconvenientes al eliminar un insumo ya utilizado en una compra
ALTA Se crea un estado para el insumo (activo e inactivo) Para evitar errores de proceso en las órdenes de compra.
4 Inconvenientes a la hora de visualizar gráficas estadísticas
MEDIA Se hace funcionalidad de la librería jgraph de php para el control visual de estas gráficas
5 Espacio en blanco en el footer de la pagina
BAJA Se crea una hoja de estilos independiente (normalize.css) para evitar diseño basura.
6 Consultar sin filtro tanto en insumos como en clientes generaba error
ALTA Se crea una validación en código cliente para generar la lista de toda la información cuando no hay filtro.
7 El usuario no podía visualizar el tipo de rol que posee
MEDIA Se crea un label en la parte superior al lado de su nombre con el tipo de rol que representa.
95
8 Cualquier usuario podía visualizar todo el menú de opciones.
ALTA Se hace el control por medio del atributo class de html y control por javascript para deshabilitar estas opciones.
10 Al realizar una factura el calculo total estaba erróneo
ALTA Se crean validaciones por medio de javascript para evitar estos inconvenientes.
11 Al crear un insumo su cantidad podía ser negativa
ALTA Se hace necesario utilizar el atributo min de html5 en los inputs de cantidades.
12 El menú desplegable se sobreponía con los submenús
MEDIA Se crea una hoja de estilos propia para el menú, exceptuando estilos absolutos.
Tabla 14-Pruebas Funcionales.
10.9.3 PRUEBAS DE INTEGRIDAD DE LA BASE DE DATOS Y LOS DATOS
OBJETIVO DE LA PRUEBA: Asegurar que los métodos de Acceso a la Base de Datos SQL y los procesos asociados, funcionan apropiadamente y sin riesgo de datos corruptos.
TÉCNICA A UTILIZAR: Realizar la llamada a una Base de Datos y ejecutar algún proceso con datos válidos e inválidos. Inspeccionar la Base de Datos para verificar que los procesos se han realizado correctamente
Tabla 15-Objetivos Pruebas Integrales.
96
N° Prueba Descripción Gravedad Acción
1 Inconveniente al guardar la descripción del insumo
ALTA Se expande la capacidad del tipo de dato de la descripción.
2 Las valores de las tablas aparecen sin formato
MEDIA Se utiliza la función FORMAT de la base mysql
3 Inconvenientes al realizar una consulta por la fecha
ALTA Se cambia el tipo de dato a “date”
4 La consulta a las tablas tomaban más tiempo.
BAJA Se reduce el tiempo de consulta creando índices para cada uno de las tablas.
5 Inconveniente al realizar consultas cruzadas
ALTA En la consulta se coloca alias a las tablas para que los campos se relacionen a sus padres y no se trunquen
Tabla 16-Pruebas Integrales.
10.9.4 PRUEBAS DE MONTAJE
OBJETIVO DE LA PRUEBA: Asegurar que el aplicativo funcione de la mejor forma en la web.
TÉCNICA A UTILIZAR: Realizar la llamada a la base de datos, ejecutar cada proceso con datos válidos e inválidos.
Tabla 17-Objetivos Pruebas de Montaje.
N° Prueba Descripción Gravedad Acción
1 Inconveniente con la configuración de la base de datos
ALTA Se cambia su configuración a UTF8
2 Inconvenientes en el acceso a la base de datos
ALTA Se cambia el usuario y la contraseña las cuales ya están pre-configuradas por el servidor
Tabla 18-Pruebas Integrales.
97
10.9.5 PRUEBAS DE SEGURIDAD Y CONTROL DE ACCESO
OBJETIVO DE LA PRUEBA: Seguridad a Nivel de Aplicación: Verificar que un usuario puede acceder sólo a las funcionalidades y datos para las cuales ese tipo de usuario tiene permiso. Seguridad a Nivel de Sistema: Verifica que sólo esos usuarios con acceso al sistema y aplicación tienen permitido el acceso.
Tabla 19-Objetivos Pruebas de Seguridad y Control de Acceso.
NO SE ENCONTRARON FALLOS AL REALIZAR ESTRA PRUEBA. EL NIVEL DE CONTROL DE ACCESO Y SU SEGURIDAD FUNCIONARON ADECUADAMENTE EN EL SERVIDOR.
Tabla 20-Pruebas de Seguridad.
10.10 DESPLIEGUE DE RESULTADO DE PRUEBAS
10.10.1 PRUEBAS DE OPTIMIZACIÓN DEL TIEMPO. La siguiente tabla contiene el listado de pruebas que se realizaron a los procesos
más complejos de ISMET, dichas tiempos pruebas fueron tomadas con apoyo de
Auxiliar Administrativo Wilson Vázquez y el Gerente General.
TA: Tiempos estimados en el proceso antes de la
implementación, tiempo medido en minutos.
TS: Tiempos estimados en el proceso después de la
implementación, tiempo medido en minutos.
%: Porcentaje estimado de optimización.
# PROCESO TA TS %
1 INGRESAR UN INSUMO AL INVENTARIO 5 2 250
2 CONSULTAR INSUMOS 4 1 400
3 REALIZAR COMPRA-FACTURA 8 2 400
4 CONSULTAR VENTAS REALIZADAS 20 1 2000
5 CONSULTAR PROVEEDORES 5 2 250
6 INGRESAR CLIENTE 5 2 250
7 CONSULTAR CLIENTE 4 1 400
51 11 463
Tabla 21-Pruebas de Optimización
98
10.10.2 PRUEBAS DE COMPATIBILIDAD NAVEGADORES.
El siguiente listado ilustra la compatibilidad de las tecnologías CSS3, JavaScript y
HTML5 usadas en los diferentes navegadores más comerciales del mercado, los
cuales son IE10 (Internet Explorer 10 de Microsoft), S5.1 (Safari 5.1 de Apple),
M20.1 (Mozilla 20.1 de Mozilla) y C26.0 (Chrome 26.0 de Google).
Los campos marcados con una X indican que el navegador supero el proceso
realizado en cada navegador, los campos marcados con – indican que se
presentan incompatibilidades al momento de realizar el mismo procedimiento en
cada módulo.
IE8 IE9 IE10 S5.1
M20.1
C26.0
USUARIOS
1. Crear X X X X
2. Editar X X X X
3. Eliminar X X X X
4. Consultar X X X X
PROVEEDORES
1. Crear X X X X
2. Editar X X X X
3. Eliminar X X X X
4. Consultar X X X X
Tabla 22-Pruebas de Compatibilidad Navegadores (Usuarios-proveedores)
99
CLIENTES
1. Crear X X X X
2. Editar X X X X
3. Eliminar X X X X
4. Consultar X X X X
PRODUCTOS
1. Crear X X X X
2. Editar X X X X
3. Eliminar X X X X
4. Consultar X X X X
FACTURA
1. Crear X X X X
2. Anular X X X X
3. Consultar X X X X
4. Imprimir X X X X
EDICIÓN DE PERFIL
1. Actualizar X X X X
2. Filtrar X X X X
INICIO Y CIERRE DE SESIÓN
1. Iniciar sesión
X X X X
2. Cerrar sesión
X X X X
REPORTES
1. Consultar X X X X
Tabla 23-Pruebas de compatibilidad (Clientes-Productos-Facturas-Edición de perfil- Reportes –Inicio y cierre de sesión).
100
CONCLUSIONES
Para el desarrollo de este proyecto fue de gran importancia aplicar temas vistos en los
cursos de Ingeniería de Software, base de datos y Seguridad informática, tales como;
descripción de casos de uso, diagramas de clase, diagramas de secuencia, diseño y
modelado de bases de datos, modelo entidad relación, modelo relacional de datos,
plan de pruebas, etc., donde muchos de estos conceptos aprendidos fueron
fundamentales para la correcta elaboración de este proyecto y el cumplimiento de
cada uno de los objetivos planteados .
El utilizar RUP como modelo de desarrollo de software, permitió que el desarrollo de la
aplicación se realizara en el tiempo y parámetros establecidos según el cronograma de
trabajo en donde sus 4 faces (Inicio, Elaboración, Construcción y Transición) fueron de
gran importancia, ya que, brindaron un control sobre cada uno de los pasos del
proyecto y una organización durante el ciclo de desarrollo del sistema de información
web.
La implementación y posterior implantación de esta aplicación permitirá a la empresa
ISMET, un manejo controlado y centralizado de la información perteneciente a los
procesos de gestión de usuarios, clientes, proveedores, ventas y facturas, gracias a la
estructuración de cada uno de los módulos que compone el software.
El desarrollo de este proyecto, ayudo a eliminar una serie de problemas que se venían
presentando al interior de la Empresa ISMET, dicho de otra forma, al no realizarse
este proyecto la compañía continuaría con la descentralización de la información y por
consiguiente la pérdida de esta por diferentes eventualidades. Por otro lado, la
ineficiente gestión de la información se traducía en demoras respecto a la recepción,
producción y despacho de los insumos, con ello se seguirían afectando las relaciones
con sus clientes ya que estos encontrarían inconsistencias y atrasos en sus compras.
El desarrollo del sistema de información Web tuvo una expectativa positiva que se
expresó en la reducción de más del 50% de tiempo en la atención a los clientes y en la
generación de sus facturas, esto se hizo con la ayuda de la implantación de pruebas
realizadas con el módulo de facturación.
Por último se comprobó que el uso de una metodología de software como RUP,
garantiza de manera acertada el buen diseño y la construcción de cualquier proyecto
de software.
101
RECOMENDACIONES
Se sugiere a futuro la creación de un módulo de pagos en línea; esta sugerencia se
realiza teniendo en cuenta el crecimiento en el número de sus clientes o usuarios que
disponen de servicios y medios electrónicos requeridos para este tipo de
transacciones, de esta manera generarán beneficios en tiempo, pagos oportunos y
desplazamientos innecesarios a los usuarios.
Es recomendable que los usuarios nuevos de la empresa tengan los conocimientos
mínimos sobre su funcionamiento, de esta manera se garantiza la eficiencia de la
aplicación, reduciendo notablemente los errores humanos los cuales son inherentes a
la aplicabilidad del sistema.
Si se requiere realizar proyectos de integración donde sea necesario el intercambio de
información como por ejemplo servicios Web se recomienda su instauración desde la
capa de aplicación.
Respecto al módulo de facturas, se sugiere ampliar su capacidad para el envío de este
formato por medio de correo electrónico directamente desde el aplicativo, de esta
manera se suple la necesidad de hacer uso de servicios de correo personal (Outlook,
Gmail, Yahoo).
Finalmente se sugiere la inclusión de otros tipos de gráficas según las necesidades
futuras que la empresa pueda desencadenar debido a su crecimiento.
102
BIBLIOGRAFÍA
DURÁN Francisco, Francisco GUTIÉRREZ y Ernesto PIMENTEL
2007 Programación Orientada a Objetos con Java. Madrid, España:
Thomson Ediciones. Consulta: Agosto de 2014.
FIGUEROA G. Roberth, Camilo J. SOLIS, Armando A. CABRERA
2006 [3] Metodologías tradicionales vs. Metodologías ágiles. (Artículo).
Universidad Técnica Particular de Loja,
Escuela de Ciencias en Computación, Loja (Ecuador).
Consulta: Agosto de 2014.
GABÁS H. Cindy
2011[1] Sistema de facturación y control de clientes de la empresa
técnicos en servicios tes,c.a (Tesis de grado).
Universidad de Nacional Experimental de Guayana.
Consulta: Agosto de 2014
GÓMEZ Ángel, Patricia PEREZ y Daniel COBO
103
2007 PHP Y MYSQL 1º Edición España. Ediciones Diaz
Santos IBN:9788479787066. Consulta: Agosto de 2014
HEURTER Oliver
2014 PHP 5.5 Desarrollar un sitio Web dinámico e interactivo.
ISBN:9782746087989. Consulta: Agosto 2014.
MARTÍNEZ Pedro, David ROLDAN y Aranda VALDERAS
2007 Aplicaciones web: Un enfoque práctico 1ºed.España:
Editorial Ra-Ma ISBN:8478979573
Consulta: Agosto de 2014.
ORÓS CABELLO Juan Carlos
2013 Guía práctica de XHTML, JavaScript y CSS 1º
edBarcelona México: Alfaomega Ra-Ma
ISBN: 9786077072225. Consulta: Agosto de 2014
OVANDO CORTÉS Cristóbal
2009 [2] Rediseño en el sistema de pago de facturas a proveedores
en la empresa Constructora Almagro (Tesis de grado)
Universidad de Chile. Consulta: Agosto de 2014.
104
POLO Macairo y Daniel VILLAFRANCA
2013 Introducción a las aplicaciones WEB con JAVA.
http://www.inf-cr.uclm.es/www/mpolo/asig/0708/tutorJavaWeb.pdf
Consulta: Agosto de 2014.
QUERO Enrique, Román GARCÍA y Javier PEÑA
2008 Mantenimiento de portales de la información, España:
Thomson Ediciones. Consulta: Agosto de 2014.
WEB Consultas
[4] http://php.net//manual/es/intro-whatis.php
[5] http://www.esepestudio.com/noticias/que-es-mysql
[6] http://bitelia.com/2013/05/entendiendo-html5-guia-para-principiantes
[7] http://tc2-proyectodegradoingdesistemas.blogspot.com/2012/05/que-es-y-para-
que-sirve-css3.html
[8] http://librosweb.es/javascript/capitulo_1.html
105
ANEXOS EN CD -ROM
Anexo A. Descripción de casos de uso
Este anexo contiene la descripción de los casos de uso, donde muestra cual es el
flujo de eventos y que actores interactúan en cada uno de ellos. Se encuentra en
formato digital con el nombre “Anexo A Descripción de Casos de Uso” dentro de la
carpeta anexos.
Anexo B. Modelo diagramas de procesos
Este anexo contiene el modelo de diagramas de procesos, modelo que se obtiene a
partir de los diagramas de actividades. Se encuentra en formato digital con el
nombre “Anexo B. Modelo diagramas de procesos” dentro de la carpeta anexos.
Anexo C. Manual de usuario
Este anexo contiene el manual de usuario, en él se explica visualmente el
comportamiento de cada módulo que compone el sistema de información web. Se
encuentra en formato digital con el nombre “Anexo C Manual de usuario”