Upload
raquel-gutierrez
View
232
Download
0
Embed Size (px)
Citation preview
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 1/172
1
UNIVERSIDAD TECNOLÓGICA ISRAEL
FACULTAD DE SISTEMAS INFORMÁTICOS
TEMA: Desarrollo de un sistema de control de procesos de
entrada y salida de un producto mediante tecnología móvil
en empresas comerciales
Estudiante
María Eulalia Gutiérrez Tuapante
Tutor
Ing. Pablo Tamayo
Cuenca – Ecuador
Diciembre 2011
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 2/172
2
UNIVERSIDAD TECNOLÓGICA ISRAEL
FACULTAD DE SISTEMAS INFORMÁTICOS
CERTIFICADO DE AUTORÍA
El documento de tesis con título “Desarrollo de un sistema para el control
de entradas y salidas de un producto mediante tecnología móvil en
empresas comerciales” ha sido desarrollado por María Eulalia Gutiérrez
Tuapante con C.I Nº 010495243-7 persona que posee los derechos de autoría
y responsabilidad, restringiéndose la copia o utilización de cada uno de los
productos de esta tesis sin previa autorización.
María Eulalia Gutiérrez Tuapante
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 3/172
3
UNIVERSIDAD TECNOLÓGICA ISRAEL
FACULTAD DE SISTEMAS INFORMÁTICOS
CERTIFICADO DE RESPONSABILIDAD
Yo, Ing. Pablo Tamayo, certifico que la señora María Eulalia Gutiérrez
Tuapante con C.I, Nº. 010495243-7 realizó la presente tesis con el título
“Desarrollo de un sistema para el control de entradas y salidas de un
producto mediante tecnología móvil en empresas comerciales”, y que es
autor intelectual del mismo, que es original, auténtico y personal.
______________________________
Ing. Pablo Tamayo
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 4/172
4
UNIVERSIDAD TECNOLÓGICA ISRAEL
FACULTAD DE SISTEMAS INFORMÁTICOS
CERTIFICA:
Que el presente trabajo de investigación “Desarrollo de un sistema para el
control de entradas y salidas de un producto mediante tecnología móvil en
empresas comerciales”, realizado por la Sra. María Eulalia Gutiérrez Tuapante,
egresada de la facultad Sistemas Informáticos, se ajusta a los requerimientos
técnicos-metodológicos y legales establecidos por la Universidad TecnológicaIsrael, por lo que se autoriza su presentación.
Cuenca, 1 de Diciembre de 2011
___________________________
Ing. Pablo Tamayo
DIRECTOR DE TESIS
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 5/172
5
UNIVERSIDAD TECNOLÓGICA ISRAEL
FACULTAD DE SISTEMAS INFORMÁTICOS
ACTA DE CESIÓN DE DERECHOS
Yo, María Eulalia Gutiérrez Tuapante declaro conocer y aceptar la disposición
de la Normativa de la Universidad Tecnológica Israel que en su parte pertinente
textualmente dice: “Forma parte del Patrimonio de la Universidad la propiedad
intelectual de las investigaciones, trabajos científicos o técnicos y tesis de
grado que se realicen a través, o con el apoyo financiero, académico oinstitucional (operativo) de la Universidad”.
Cuenca, Diciembre 1 del 2011
___________________________
María Eulalia Gutiérrez Tuapante
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 6/172
6
AGRADECIMIENTO
Quiero agradecer y reconocer la colaboración de todas las personas que
hicieron posible que esta tesis se realizara, es por ello que agradezco a todos
los profesores que durante el tiempo que he permanecido en esta Institución,
han plasmado sus enseñanzas en el contenido teórico y práctico en esta tesis,
pero en especial a mi Tutor el Ingeniero Pablo Tamayo, por todo su apoyo
brindado al desarrollo de este proyecto, que ayudó a que esta idea se convierta
en realidad, y quien con su colaboración, esfuerzo, paciencia y comprensión,
ha sido la coautor de este importante logro obtenido.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 7/172
7
DEDICATORIA
La presente Tesis de Grado la dedico primeramente a Dios por guiarme en
cada instante de mi vida, por darme la salud y la fuerza para poder culminar
esta etapa de mi carrera y por ser el amigo incondicional que está siempre
junto a mí y que con su bondad me permitió alcanzar una meta más de las que
me he propuesto.
A mi esposo y mis padres quienes con sus sacrificios diarios se constituyeron
en los principales gestores del objetivo que hoy alcanzo, que con paciencia y
compresión ha permanecido a mi lado en buenos y malos momentos.
Gracias al apoyo de todos ellos conseguiré una educación que permitirá en el
futuro ser una profesional de provecho para mi familia y la sociedad.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 8/172
8
TABLA DE CONTENIDO
Pág.CAPITULO I
1. INTRODUCCI N 1
1.1 Tema de investigación 2
1.2 Planteamiento del Problema 2
1.2.1 Antecedentes 2
1.3 Diagnóstico o planteamiento de la problemática general 3
1.3.1 Causa 31.3.2 Efectos 3
1.4 Sistematización 4
1.4.1 Diagnostico 4
1.4.2 Pronostico. 4
1.4.3 Control del Pronóstico 5
1.5 Objetivos 5
1.5.1 Objetivo general 51.5.2 Objetivos específicos 5
1.6 Justificación 6
1.6.1 Justificación Teórica 6
1.6.2 Justificación Práctica 6
1.6.3 Justificación Metodológica 7
1.7 Estudios de factibilidad 8
1.7.1 Factibilidad Técnica 8
1.7.2 Factibilidad Operativa 8
1.7.3 Factibilidad Económica 9
CAPITULO II
2. MARCO DE REFERENCIA 10
2.1 Marco Conceptual 10
2.1.1 Definición de Empresa 10
2.1.2 Empresas Comerciales 10
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 9/172
9
2.1.3 Definición de Sistema Informático 10
2.1.4 Software de control de entradas y salidas 11
2.1.5 Tecnología Inalámbrica 12
2.1.5.1Ventajas de la Tecnología Inalámbrica 13
2.1.6 Red Inalámbrica 13
2.1.7 La seguridad en las WLAN 13
2.1.8 Dispositivos móviles 14
2.1.8.1PDA (Personal Digital Assistant) 14
2.1.8.2Pocket PC 17
2.1.8.3Handheld PC 18
2.1.8.4Tablet PC 182.1.8.5Smartphone 19
2.1.8.6Teléfonos celulares 20
2.1.9 Sistemas Operativos Móviles 20
2.1.9.1Windows Mobile 20
2.1.9.2Symbian 21
2.1.9.3Palm OS 23
2.1.9.4Android 242.1.10 Plataformas de desarrollo de aplicaciones móviles 24
2.1.10.1 J2ME 24
2.1.10.2 Microsoft .NET 25
2.1.11 Emuladores para Dispositivos Móviles 29
2.1.12 Centro de dispositivos de Windows Mobile 31
2.1.13 Gestores de Base de Datos 32
2.1.13.1 SQL Server 2005 Compact Edition 322.1.13.2 Oracle 32
2.1.13.3 MySQL 33
2.1.13.4 PostgreSQL 34
2.2 Marco Temporal/Espacial 35
CAPITULO III
3. METODOLOGÍA 36
3.1. Metodología de Investigación 36
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 10/172
10
3.1.1 Tipo de Investigación 36
3.1.2 Métodos 36
3.1.3 Técnicas 37
3.2. Metodología de desarrollo de software 38
3.2.1 Proceso Unificado de Desarrollo 38
3.2.1.1 Descripción de RUP (Rational Unified Process) 39
3.2.1.2 Fases del RUP 40
3.3. Tecnología 42
3.3.1 Sistemas Operativos para dispositivos móviles 42
3.3.1.1 Comparación de los detalles básicos y el funcionamiento de
los Sistemas Operativos 433.3.2 Herramientas para el desarrollo de la aplicación móvil 45
3.3.3 Software de Desarrollo 45
3.3.3.1 Visual Studio 2008 46
3.3.4 Funcionalidad del Emulador en Windows Mobile 47
3.3.5 Centro de dispositivos de Windows Mobile 50
3.3.6 Gestor de Base de Datos a desarrollo en la aplicación 51
3.3.6.1 SQL Server 2005 Compact Edition 513.3.6.2 Comparación de SQL Server con otros gestores de base de
datos 53
CAPITULO IV
4. DESARROLLO 54
4.1 Perspectiva del sistema 54
4.2 Restricciones del sistema de entrada y salida 54
4.3 Interfaces externas 554.3.1 Interfaces de usuario 55
4.3.2 Interfaces hardware 55
4.3.3 Interfaces software 56
4.4 Flujo de trabajo (Workflow) del sistema 56
4.4.1 Fase de Inicio 56
4.4.1.1 Análisis del sistema actual 56
4.4.1.2 Descripción de Actores 58
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 11/172
11
4.4.1.3 Identificación de los casos de uso 58
4.4.1.4 Catálogo de Requerimientos del sistema 59
4.4.2 Fase de Elaboración 62
4.4.2.1 Modelado de Caso de Uso 62
4.4.2.1.1 Aplicación de Casos de Uso 63
4.4.2.1.1.1 Caso de uso Mantenimiento de Usuarios 63
4.4.2.1.1.2 Caso de uso Mantenimiento de Bodega 64
4.4.2.1.1.3 Caso de uso Mantenimiento de Producto 65
4.4.2.1.1.4 Caso de uso Mantenimiento de Proveedor 66
4.4.2.1.1.5 Caso de uso Movimiento de Entrada 67
4.4.2.1.1.6 Caso de uso Movimiento de Salida 684.4.2.1.2 Descripción de casos de uso 69
4.4.2.2 Diagrama de Actividad 81
4.4.2.2.1 Diagrama de Actividad Ingreso al Sistema 81
4.4.2.2.2 Diagrama de Actividad Movimiento de Entrada 82
4.4.2.2.3 Diagrama de Actividad Movimiento de Salida 83
4.4.2.2.4 Diagrama de Actividad Consultas de los Movimientos 84
4.4.2.3 Diagrama de Colaboración 854.4.2.3.1 Diagrama de Colaboración Inicio de Sesión 85
4.4.2.3.2 Diagrama de Colaboración del Movimiento de Entrada 85
4.4.2.3.3 Diagrama de Colaboración del Movimiento de Salida 86
4.4.2.4 Diseño del sistema 86
4.4.2.4.1 Descripción de las clases 86
4.4.2.4.2 Diccionario de clases 87
4.4.2.4.3 Diagrama de Clases 884.4.2.4.4 Diagrama de Secuencia 89
4.4.2.4.4.1 Diagrama de Secuencia Ingreso al Sistema 89
4.4.2.4.4.2 Diagrama de Secuencia Movimiento de Entrada 90
4.4.2.4.4.3 Diagrama de Secuencia Movimiento de Salida 91
4.4.2.4.5 Diagrama de Estado 92
4.4.2.4.5.1 Diagrama de Estado Inicio de Sesión 92
4.4.2.4.5.2 Diagrama de Estado de Ingreso de Productos 92
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 12/172
12
4.4.2.4.5.3 Diagrama de Estado de la Salida de Productos 93
4.4.2.4.6 Diseño de Interfaces 94
4.4.2.4.6.1 Pantalla Ingreso al Sistema 94
4.4.2.4.6.2 Menú Principal del Administrador 94
4.4.2.4.6.3 Mantenimiento de Proveedores 95
4.4.2.4.6.4 Mantenimiento de Bodega 95
4.4.2.4.6.5 Mantenimiento de Usuarios 96
4.4.2.4.6.6 Mantenimiento de Productos 96
4.4.2.4.6.7 Menú Principal del Bodeguero 97
4.4.2.4.6.8 Entrada de Mercadería 97
4.4.2.4.6.9 Salida de Mercadería 984.4.2.4.6.10 Consulta de los Movimiento de Entrada y Salida 98
4.4.2.4.6.11 Kardex del Producto 99
4.4.2.5 Implementación 99
4.4.2.5.1 Creación de tablas 99
4.4.2.5.2 Modelo Entidad Relación 100
4.4.3 Fase de Construcción 102
4.4.3.1 Plan de Prueba 1024.4.3.2 Objetos Evaluados 103
4.4.3.3 Acciones de Prueba 103
CAPITULO IV
5. CONCLUSIONES Y RECOMENDACIONES 106
5.1 Conclusiones 106
5.2 Recomendaciones 106
BIBLIOGRAFÍA 107ANEXOS 108
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 13/172
13
LISTA DE CUADOR Y GRAFICOS
Pág.
Figura 1. Matriz de Hardware necesario para el sistema 9
Figura 2 Matriz de Software necesario para el sistema 9
Figura 3. Matriz del costos de la implementación del sistema 9
Figura 4. Gráfico de la Interfaz de la aplicación 11
Figura 5. Ejemplos de los PDA 16
Figura 6. Ejemplo de un Pocket PC 17
Figura 7. Ejemplo de un Handheld PC 18Figura 8. Ejemplo de un Tablet PC 19
Figura 9. Ejemplos de Smartphones 19
Figura 10. Vista del Sistema Operativo de Windows Mobile 21
Figura 11. Vista de la Plataforma S60 22
Figura 12. Vista de la Plataforma UIQ 22
Figura 13. Vista del Sistema Operativo de Palm OS 23
Figura 14. Vista del Sistema Operativo de Android 24Figura 15. Esquema de Comunicación de J2ME 25
Figura 16. Componentes de Visual C# 29
Figura 17. Centro de dispositivos de Windows Mobile 31
Figura 18. Fases del RUP 40
Figura 19. Comparación de los detalles básicos entre los Sistemas
Operativos Móviles 43
Figura 20. Comparación sobre el Funcionamiento de los Sistemas
Operativos Móviles 44
Figura 21 Dispositivos móviles que se pueden programar con .NET 47
Figura 22. Administrador de emuladores de dispositivos 48
Figura 23. Emulador del Pocket PC 49
Figura 24. Matriz comparativa de gestores de base de datos 53
Figura 25. Matriz de Interfaz con el Hardware 55
Figura 26. Diagrama de Flujo de datos 57
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 14/172
14
Figura 27. Matriz de Actores del sistema 58
Figura 28. Diagrama de caso de uso 62
Figura 29. Caso de uso control de usuarios 63
Figura 30. Caso de uso control de bodegas 64
Figura 31. Caso de uso control de producto 65
Figura 32. Caso de uso control de proveedores 66
Figura 33. Caso de uso movimiento entrada 67
Figura 34. Caso de uso movimiento salida 67
Figura 35. Diagrama de Actividad Ingreso al sistema 81
Figura 36. Diagrama de Actividad del Movimiento de Entrada 82
Figura 37. Diagrama de Actividad del Movimiento de Salida 83
Figura 38. Diagrama de Actividad sobre consulta de los movimientos 84
Figura 39. Diagrama de Colaboración de Inicio de Sesión 85
Figura 40. Diagrama de Colaboración del Movimiento de Entrada 85
Figura 41. Diagrama de Colaboración del Movimiento de Salida 86
Figura 42. Descripción de clases 86
Figura 43. Matriz Diccionario de clases 87Figura 44. Diagrama de clases 88
Figura 45. Diagrama de Secuencia Ingreso al Sistema 89
Figura 46. Diagrama de Secuencia Movimiento de Entrada 90
Figura 47. Diagrama de Secuencia Movimiento de Salida 91
Figura 48. Diagrama de Estado de Inicio de Sesión 92
Figura 49. Diagrama de Estado de la Entrada de Productos 92
Figura 50. Diagrama de Estado de la Salida de Productos 93
Figura 51. Pantalla Ingreso al Sistema 94
Figura 52. Menú Principal del Administrador 94
Figura 53. Mantenimiento de Proveedores 95
Figura 54. Mantenimiento de Bodega 95
Figura 55. Mantenimiento de Usuarios 96
Figura 56. Mantenimiento de Productos 96
Figura 57. Menú Principal del Bodeguero 97
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 15/172
15
Figura 58. Entrada de Mercadería 97
Figura 59. Entrada de Mercadería 98
Figura 60. Consulta de los Movimiento de Entrada y Salida 98
Figura 61. Kardex de productos 99
Figura 62. Tabla Bodega 99
Figura 63. Tabla Producto 100
Figura 64. Tabla Movimiento Cabecera 100
Figura 65. Tabla Movimiento Detalle 100
Figura 66. Tabla Usuario 101
Figura 67. Tabla Proveedor 101
Figura 68. Tabla Proveedor 101Figura 69. Diagrama de Entidad Relación 102
Figura 70. Caso de Prueba Entrada de Productos 103
Figura 71. Caso de Prueba Salida de Productos 104
Figura 72. Caso de Prueba Consulta de los movimientos 104
Figura 73. Caso de Prueba Kardex de los productos 105
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 16/172
16
RESUMEN
El presente tema de tesis tiene como objetivo el resolver la problemática que
afronta actualmente la distribuidora “Orellana”, el cual no dispone de ningún
tipo de automatización en el proceso de Control de entrada y salida de
producto, ya que al realizarlo de forma manual está propenso a que se
cometan muchos errores y pérdidas de información.
Se ha propuesto una alternativa efectiva y viable a este problema, la cual
soluciona de manera eficaz los contratiempos que en este momento afronta la
empresa.
La solución para automatizar y mejorar el Control de Inventario de bodega, es
desarrollar un software que realice este proceso de manera segura y confiable,
usando tecnología de punta y muy actual, como es el caso de los Asistentes
Personales Digitales, que accederán en tiempo real y de forma inalámbrica a la
base de datos de la aplicación, registrando de forma inmediata la información
necesaria para llevar correctamente el inventario de bodega de la empresa.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 17/172
17
SUMMARY
The present thesis theme is to resolve the trouble that the enterprise "Orellana"
has right now, as they don’t have any software for the inventory control process
because when you do it by hand you can make a lot of mistakes and can miss
information.
Our proposal is a new effective choice for this problem, which solves effectively
all the problems that the enterprise has right now.
The solution to improve the control of the inventory of cellar, is development
software that makes this process trustful, using actual technology, like the
personal digital assistance (PDA´s), that will access in real time and wireless to
the database of the application, registering immediately the required information
to maintain the inventory of cellar of the company correctly.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 18/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 19/172
19
Por lo tanto, estos aspectos son importantes para la elaboración y diseño de
sistemas de información, así satisfacer los requerimientos de los usuarios y
mejoras las tareas de control del producto de la empresa.
Es importante en toda empresa, que se dedique a la comercialización de
productos, tener un sistema eficiente de control de artículos, el cual permita
saber, cuánto y cuándo se debe pedir para el reabastecimiento de la bodega de
mercaderías para la venta.
1.1 Tema de investigación
Desarrollo de un sistema para el control de entradas y salidas de un producto
mediante tecnología móvil en empresas comerciales.
1.2 Planteamiento del Problema
1.2.1 Antecedentes
La Distribuidora Orellana fue creada en el año 2005, actualmente está ubicada
en la calle Paseo de los Cañarís de la ciudad de Cuenca. Su objetivo es la
compra y venta de productos terminados,
Actualmente no mantienen datos actualizados de los niveles de stock la mayor
parte del tiempo, esto debido a que la empresa realiza sus controles de forma
manual, por lo que la entrada y salida de productos del inventario no son lo
suficientemente efectivos para poder controlar la información.
En conclusión si los procesos de carga y descarga del inventario no se realizan
directamente al sistema, si no que incluyen un proceso manual con papeleo se
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 20/172
20
genera una pérdida de tiempo que conlleva a la falta de información
actualizada y al desaprovechamiento de recursos humanos, de tiempo y
financieros
1.3 Diagnóstico o planteamiento de la problemática general
1.3.1 Causa
La inversión que debe realizar una empresa en adquirir un software para
el control de los procesos de entrada y salida del inventario es baja,
teniendo en cuanta que su principal capital está en sus activos que
posee.
Es por eso que la forma tradicional de manejar el control de inventarios
en un sistema manual es insegura ya que puede existir la modificación
o pérdida de información.
1.3.2 Efectos
La no inversión de tecnología en una empresa que apoye a los
principales procesos disminuirá el nivel de competitividad y productividad
de una organización.
Al mantenerse con un sistema manual de procesos, no se tendrá un
soporte en la toma de decisiones, para ello necesitan llevar a cabo una
buena administración, por lo cual se propone desarrollar un sistema que
facilite la administración de los recursos y que a su vez proporcione
información veraz y oportuna en tiempo real.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 21/172
21
1.4 Sistematización
1.4.1 Diagnostico
Mediante la investigación que se ha realizado dentro de la Distribuidora
“Orellana” se ha determinado el siguiente diagnóstico.
Esta empresa viene trabajando hace 6 años atrás, Su objetivo es la compra y
venta de productos terminados, actualmente maneja sus procesos de forma
manual, su visión es poder controlar sus procesos mediante un sistema
automatizado que le permita agilizar sus actividades.
En este momento la empresa maneja el proceso de entrada mediante una hoja
de Excel y en cuanto al proceso de salida lo realiza de forma manual, es decir
este control es registro en una hoja de papel, para luego realizar la descarga
del inventario. Esos controles actualmente no mantienen datos actuales y
conlleva a no tener una información oportuna.
1.4.2 Pronostico.
Una empresa al no utilizar un sistema informático, que le ayude a controlar la
entrada y la salida de un producto, implica que no tendrá una información
oportuna de su mercancía y por ello no se pueda tomar decisiones para el
bienestar de la empresa. Es por ello que se propone desarrollar una aplicación
que cubra estos requerimientos, con el fin de automatizar y agilizar los
procesos.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 22/172
22
1.4.3 Control del Pronóstico
Debido al pronóstico antes mencionado surge la idea de automatizar las
actividades de control de entradas y salidas de un producto; cabe mencionar el
vertiginoso avance de las telecomunicaciones y el progreso que han
experimentado las ciencias informáticas que obliga a estar a tono y entrar
al moderno mundo de la tecnología, para poder ser competitivos. Con este
software se pretende controlar las entradas y salidas de los productos, también
se podrá realizar consultas sobre los producto. Este proyecto a su vez
optimizará los recursos materiales y tiempo, ya que el usuario se podrá
conectar en cualquier momento y lugar.
1.5 Objetivos
1.4.1 Objetivo general
Desarrollar un sistema de control de entradas y salidas de productos
mediante el uso de tecnología móvil en el área de bodega, permitiendo
automatizar y agilizar el proceso.
1.4.2 Objetivos específicos
Analizar y Diseñar un modelo de control de entradas de
productos.
Analizar y Diseñar un modelo de control de salida de productos
Control del movimiento de los productos de entrada y salida.
Generación de consultas de los movimientos de entrada y salida.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 23/172
23
1.6 Justificación
1.5.1 Justificación Teórica
El software elegido a desarrollar previa la obtención del título de Ingeniería de
Sistemas se debe a los avances tecnológicos y además porque existen muchos
empresas comerciales que no cuentan con un sistema que les permita manejar
sus principales actividades de una manera eficaz y eficiente, dentro de nuestro
país muchas organizaciones ya disponen de un software que controle sus
productos, siendo este una gran ayuda para el profesional de esta rama.
La realización de este software se lo realizara Microsoft Visual Studio 2008
herramientas de actualidad y con una base de datos SQL Server C.E, estas
herramientas facilitaran el mejor desarrollo de programas. Con el fin de
solucionar el control de productos de una empresa.
El desarrollo del sistema permite plasmar cada uno de los conocimientos
adquiridos en clases y de esta manera también adquirir nuevos conocimientos
a través de la investigación.
1.5.2 Justificación Práctica
El presente tema de tesis tiene como objetivo el resolver la problemática que
afronta actualmente la Distribuidora Orellana, el cual no dispone de ningún tipo
de automatización en los procesos de Control de Entrada y Salida de sus
productos, ya que al realizarlo de forma manual está propenso a que se
cometan muchos errores y pérdidas de información.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 24/172
24
Se ha propuesto una alternativa efectiva y viable a este problema, la cual
soluciona de manera eficaz los contratiempos que en este momento afronta el
almacén. La solución para automatizar y mejorar el Control de Entrada y Salida
es desarrollar un software que realice estos procesos de manera segura y
confiable, usando tecnología de punta y muy actual, como es el caso de los
Asistentes Personales Digitales (PDA’s), que accederán en tiempo real y de
forma inalámbrica a la base de datos de la aplicación, registrando de forma
inmediata la información necesaria para llevar correctamente el inventario de
bodega de la empresa.
1.5.3 Justificación Metodológica
El sistemas se lo realizar mediante una investigación aplicada, la que nos
permitirá conocer de manera amplia la problemática que se está viviendo
dentro de las empresas comerciales.
También se utilizara la metodología inductiva-deductiva para poder determinar
los requerimientos. Se empleara la técnica de las entrevistas, para recabar
información en forma verbal, ya que las opiniones, comentarios, ideas o
sugerencias en relación a como se podría hacer solucionar los problemas que
están surgiendo dentro del proceso de entrada y salida de los producto.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 25/172
25
1.7 Estudios de factibilidad
1.6.1 Factibilidad Técnica
Dentro de la factibilidad técnica de este proyecto está la parte del hardware
necesario para el funcionamiento de la aplicación, como es un Pocket PC y una
PC Pentium IV 1.8 Ghz.
En cuanto al Software, para el desarrollo de la aplicación se usará el Visual
Studio .NET, con la cual tendremos la posibilidad de una vez desarrollada la
misma, cargarlo en el emulador de Microsoft Windows Mobile .NET
proporcionado por la Microsoft como Edición Gratuita, así comprobar su
funcionamiento. Además será necesario SQL Server 2005 Compact Edition
para la Base de datos.
1.6.2 Factibilidad Operativa
En cuanto a la factibilidad operativa, para el desarrollo de este proyecto, no
existe resistencia al cambio por parte de los usuarios al automatizar sus
procesos actuales, ya que estos cambios permitirá trabajar de manera óptima y
eficaz, con el fin de mejorar su productividad y atención y servicio al cliente.
1.6.3 Factibilidad Económica
En la factibilidad económica se establecen los costos y beneficios del proyecto.
A continuación se presenta un cuadro que muestra un resumen de los costos
de implantación del Sistema para el Control de Entrada y Salida.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 26/172
26
Hardware
Cantidad Descripción Costo
1 Pocket PC 350
Costo del Hardware 350$
Figura 1. Matriz de Hardware necesario para el sistema
Software
Descripción Costo
Visual Studio 2008 Professional
Windows Mobile 5.0 0
SQL Server 2005 Compact Edition 0
Costo del Software $
Figura 2. Matriz de Software
Costo de la implementación del sistema
Descripción Costo
Hardware 350
Software
Gastos de operación (Gastos depapelería, impresión de
documentos, energía electica, otros
gastos)
200
Costo total de implementación 550$
Figura 3. Matriz del costos de la implementación del sistema
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 27/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 28/172
28
2.1.4 Software de control de entradas y salidas
El software de control de entradas y salidas, es una herramienta que nos
permitirá controlar los productos ingresados a la área de bodega de la empresa
de igual manera el control de la salida del producto se lo llevara mediante el
traslado entre sucursales o almacenes registrados en el sistema. Hoy en día
mediante el uso de tecnología móvil, este sistema tiene la ventaja de realizar la
actualización y consulta de información en tiempo real, hacia la base de datos
del sistema de forma directa, lo cual agiliza las actividades de control de
entradas y salidas de productos. Esta aplicación nos permite saber la cantidad
de producto que disponemos y la que se ha trasladado a las respectivas
sucursales o almacenes. Mediante este sistema, las empresas comerciales
obtendrán información real de los proceso del inventario de bodega con que se
cuenta físicamente, el usuario tener información oportuna y actualizada para
poder tomar decisiones a bienestar de la empresa.
Figura 4. Gráfico de la Interfaz de la aplicación
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 29/172
29
2.1.5 Tecnología Inalámbrica
La tecnología inalámbrica ofrece una oportunidad extraordinaria para que las
empresas extiendan su información y servicios hasta los usuarios móviles. La
combinación de estos factores puede aumentar la productividad, reducir los
costes operativos e incrementar la satisfacción de los clientes.
Existen una gran cantidad de aplicaciones para la tecnología inalámbrica como
una aplicación de entradas y salidas de productos para una empresa comercial
mediante un dispositivo móvil, este tipo de aplicación nos permite saber la
cantidad exacta de productos que ingresan a bodega y los que son trasladados
a las diferentes sucursales
La implementación de este tipo de tecnología es gracias a los diferentes tipos
de equipos móviles que poseen funciones similares a las de un computador
personal, con esto los usuarios solo necesitan un dispositivo móvil para
acceder a las aplicaciones empresariales y por consiguiente a su información,
con lo que se verá incrementado su rendimiento y la velocidad de respuesta en
un proceso. Con la implementación de este tipo de aplicaciones se consigue la
disminución de costos, incremento en la satisfacción de sus clientes,
incremento en la velocidad de respuesta, mayor productividad de los
empleados e incremento en las utilidades de la empresa.
2.1.5.1 Ventajas de la Tecnología Inalámbrica
La tecnología inalámbrica aporta las siguientes ventajas:
Rapidez de instalación.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 30/172
30
Desaparición del cableado.
Facilidad de funcionamiento.
Movilidad: Se debe de tomar en cuenta la zona de cobertura inalámbrica
(muy útil para PDAs, portátiles, etc.)
Bajo coste de adquisición y mantenimiento.
Escalabilidad: Se puede expandir a centenares de usuarios en una red
local inalámbrica.
Portabilidad: Se puede trasladar una red local sin depender de complejos
cableados fijos.
2.1.6 Red Inalámbrica
Una red inalámbrica es un sistema de comunicación de datos que proporciona
conexión inalámbrica entre equipos situados dentro de la misma área (interior o
exterior) de cobertura. En lugar de utilizar el par trenzado, el cable coaxial o lafibra óptica, utilizado en las redes LAN convencionales, las redes inalámbricas
transmiten y reciben datos a través de ondas electromagnéticas, con esta
tecnología, los empleados de las empresas pueden permanecer conectados a
las aplicaciones de productividad y a los recursos informativos prácticamente
en todo momento y lugar.
2.1.7 La seguridad en las WLAN
El tema de la seguridad representa un gran inconveniente en este tipo de redes
pues es muy difícil controlar el acceso a ellas, pues, en redes con cables suele
contarse con un firewall que impide el acceso desde el exterior a personas no
autorizadas, y no puede saltearse este dispositivo porque el cable pasa por él y
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 31/172
31
no hay forma de eludirlo. En cambio, en una red inalámbrica, un firewall puede
esquivarse, pues las ondas viajan en todas direcciones, con lo cual un intruso
puede saltear esa protección. Por ello, para proteger estas redes se utiliza un
método de autentificación y cifrado. El primero impide el acceso a personas no
autorizadas mediante un nombre de usuario y una contraseña, y el segundo
impide que algún intruso que intercepte una comunicación pueda descifrarla.
2.1.8 Dispositivos móviles
Gran variedad de dispositivos móviles existen en la actualidad, cada uno con
diferentes funciones que se ajustan a las necesidades de los usuarios. Este
proyecto va dirigido a los Pocket PC 1 pero existen una gran variedad de
dispositivos que permiten utilizar aplicaciones inalámbricas. Entre estos
tenemos:
2.1.8.1 PDA (Personal Digital Assistant)
Es un pequeño ordenador de bolsillo equipado con pantalla de cristal líquido
que no posee teclado físico, tiene un lápiz digital que hace las veces de ratón y
teclado. Este incluye un conjunto de programas útiles para el control de las
actividades personales: lista de teléfonos, planificador de citas, bloc de notas,
calculadora, hoja de cálculo, etc. Estos dispositivos poseen un MODEM o
tarjeta inalámbrica tienen acceso a Internet con lo que es posible correr
aplicaciones móviles, algunos tienen incorporadas una pequeña cámara digital
y con esto es posible enviar imágenes mediante correo electrónico. También
1 Pocket PC: es un ordenador de bolsillo, también llamado PDA (Personal Digital Assistant)
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 32/172
32
permite almacenar correo electrónico que el usuario desee. Este dispositivo
utiliza las redes de telefonía celular para acceder a Internet y correr
aplicaciones móviles.
Ya que los PDA’s carecen de teclado, utilizan como método de introducción de
datos un sistema de reconocimiento de escritura. El usuario escribe sobre la
pantalla del PDA con un lápiz de plástico (Stylus), y la máquina interpreta sus
trazos y los convierte en las letras correspondientes.
Elementos básicos de un PDA
Sistema operativo. Los más frecuentes son:
- PalmOS de Sony.
- Windows Mobile, también conocido como Pocket PC.
Procesador . Los PDA basados en Palm OS están equipados con
procesadores de pocos Mhz (unos 16), pues resultan más que
suficientes para el tipo de aplicaciones que tienen que ejecutar, mientras
que los PDA basados en Windows u otros sistemas operativos incluyen
procesadores más potentes (hasta 150 Mhz).
Memoria. La memoria RAM de los PDA basados en Palm OS suele ser
de 2, 4 u 8 MB, y en muchas ocasiones no puede ampliarse; la de los
Pocket PC y Handheld PC, entre otros, es como mínimo de 16 ó 32 MB,
pudiendo generalmente ampliarse mediante tarjetas de memoria flash.
Puertos expansión. Es el término que hace referencia a las posibles
ranuras de expansión existentes en un PDA, es decir, los puertos en que
pueden conectarse las tarjetas de memoria o módems. Los PDA
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 33/172
33
basados en Palm OS no siempre disponen de una ranura para tarjetas
de memoria.
Pantalla. Supone casi el 80% de la superficie del aparato. Existen
pantallas monocromas y con pantallas a color. La resolución es otra
consideración clave. Generalmente se miden en píxeles horizontales por
verticales, determinando así el número de puntos en pantalla. Por
ejemplo las de 160 x 160 son de baja resolución, mientras que las 640 x
480 constituyen las mejores.
Peso y ergonomía. Debido al tipo de uso, su PDA está destinado a
convertirse en un acompañante diario. Por ello es necesario considerar
su peso. Generalmente, los modelos de más de 200 gr o demasiado
gruesos no son realmente funcionales. Es el peso óptimo se encuentra
alrededor de los 110 y los 130 gr. En lo que respecta al tamaño, debe
adaptarse lo mejor posible al de su mano.
Figura 5. Ejemplos de los PDA
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 34/172
34
2.1.8.2 Pocket PC
Una Pocket PC es un dispositivo que brinda al usuario las funciones más
comunes de un computador, diseñado para ocupar el mínimo espacio y ser
fácilmente transportable que ejecuta el sistema operativo Windows CE de
Microsoft entre otros, el cual le proporciona capacidades similares a los PC de
escritorio. Entre sus principales funciones son:
Organizador de tareas, permite organizar y recordar tareas pendientes
Bloc de notas, se puede almacenar cualquier tipo de nota.
Hoja de cálculo y editor de texto, da la facilidad de realizar cualquier tipo
de informe desde este dispositivo.
Permite reproducir archivos de audio y video
Acceso a Internet, se puede almacenar correo electrónico y correr
aplicaciones móviles desde este dispositivo.
Este no posee teclado, en su lugar posee un lápiz digital llamado stylus. De
igual manera que el PDA este tiene acceso mediante las redes de telefonía
celular a Internet y a las aplicaciones móviles.
Figura 6. Ejemplo de un Pocket PC
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 35/172
35
2.1.8.3 Handheld PC
Sus características son similares que un PDA y un Pocket PC, su diferencia
está en sus características físicas ya que estos poseen una pantalla más
grande y tienen incorporado un teclado. Estos dispositivos son ideales al
momento de redactar cualquier tipo de informes gracias a su teclado y su
software de edición de texto y hoja de cálculo. A diferencia de los dispositivos
anteriores este posee un módem el cual permite el acceso a Internet mediante
la línea telefónica convencional.
Figura 7. Ejemplo de un Handheld PC
2.1.8.4 Tablet PC
Estos dispositivos básicamente no poseen teclado pero tienen un puerto por el
cual es posible conectar un teclado para facilidad del usuario. Sus
características son similares a un computador personal por el software que
tiene instalado, de igual manera sus principales funciones son: organizador de
citas, libreta de direcciones, bloc de notas, editor de texto, hoja de cálculo,
administración de correo electrónico, etc.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 36/172
36
Tienen acceso a redes inalámbricas mediante el protocolo 802.11 2 Wi-Fi, por
lo cual es posible correr aplicaciones móviles empresariales.
Figura 8. Ejemplo de un Tablet PC
2.1.8.5 Smartphone
Estos dispositivos tienen características similares a un teléfono celular, además
incluyen las principales funciones de un PDA que son: libreta de direcciones,
organizador de tareas, bloc de notas, calculadora, hoja de cálculo, etc. Al tener
la capacidad de un teléfono celular para realizar comunicaciones es posible
acceder a diferentes tipos de aplicaciones móviles usando tecnologías de
comunicación celular.
Figura 9. Ejemplos de Smartphones
2802.11: es un estándar internacional que define las características de una red de área local inalámbrica
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 37/172
37
2.1.8.6 Teléfonos celulares
Son los más utilizados en nuestro medio, su función principal es la
comunicación. Actualmente existen teléfonos celulares que incorporan
diferentes funciones como libreta de direcciones, calculadora, organizador de
tareas, etc. Mediante estos dispositivos es posible acceder a diferentes tipos de
aplicaciones móviles, la limitación de estos es la capacidad de procesamiento y
el tipo de pantalla que poseen que limita el acceso a diferentes aplicaciones
móviles.
2.1.9 Sistemas Operativos Móviles
Un Sistema operativo es un programa que actúa como intermediario entre el
usuario y el hardware de un PC. Su propósito es proporcionar un entorno en el
cual el usuario pueda ejecutar programas.
El objetivo principal de un Sistema Operativo es lograr que el sistema de
cálculo se use de manera cómoda y que el hardware del PC se emplee de
manera eficiente. Entre los Sistemas Operativos Móviles más vistos en los
dispositivos están:
2.1.9.1 Windows Mobile
El desarrollo de este proyecto está bajo esta Sistemas Operativos Móviles,
debido a que está basado al PocketPC. Este sistema operativo es el que
cuenta con la mayor difusión en el mercado de PDAs.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 38/172
38
Windows Mobile, permite una fácil conexión a una gran variedad de redes
inalámbricas, detecta automáticamente las redes Wi-Fi y se conecta de forma
sencilla a ellas y a las redes de área personal a través de Bluetooth.
Los lenguajes de programación que se pueden utilizar mediante Visual Studio
para desarrollar una aplicación son; C#, C++, J#, JScript o ASP .Net.
Figura 10. Vista del Sistema Operativo de Windows Mobile
2.1.9.2 Symbian
Es el Sistemas Operativos instalado en mayor número de dispositivos móviles
en la actualidad, sobre todo en teléfonos móviles. Tiene dos plataformas: S60 y
UIQ
Plataforma S60
Es una plataforma para terminales móviles que utilicen el sistema operativo
Symbian OS. Esta plataforma consiste en un conjunto de bibliotecas y
aplicaciones informáticas estándar, tales como telefonía, herramientas de
gestión de información personal, y reproductores multimedia. Se puede
encontrar en terminales móviles modernos de amplias características, con
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 39/172
39
pantallas en color muy grandes, que son conocidos comúnmente como
terminales Smartphone.
Figura 11. Vista de la Plataforma S60
Plataforma UIQ
UIQ (Interfaz de Usuario Quartz) es una plataforma para terminales móviles
desarrollada por UIQ Technology basada en el sistema operativo Symbian. Se
caracteriza por agregar soporte para pantallas táctiles. Se usa principalmente
en smartphones de Sony Ericsson.
Figura 12. Vista de la Plataforma UIQ
Symbian está basado en un micro kernel, una mínima porción del sistema tiene
privilegios del kernel. Una de las tareas del kernel es manejar las interrupciones
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 40/172
40
y prioridades. El sistema posee componentes que permiten el diseño de
aplicaciones multiplataforma, diferentes tamaños de pantalla, color, resolución,
teclados, etc. La mayoría de estos componentes han sido diseñados en C++.
Las empresas que han intervenido en el desarrollo de aplicaciones de la
plataforma Symbian son: IBM, Lotus, Oracle, SAP, Sybase, Nokia Developer
Community.
Los lenguajes de programación utilizados en la plataforma Symbian son: C++,
Java y Visual Basic sobre un emulador.
2.1.9.3 Palm OS
Palm OS es un sistema operativo para móviles inicialmente desarrollado por
Palm Inc, está diseñado para ser de fácil uso con una interfaz gráfica de
usuario basada en el touch screen, en este vienen incluidas aplicaciones
básicas para la administración de información personal (calendario,
calculadora, notas, etc.).
Dentro de las versiones más recientes de este sistema operativo fueron
extendidas para soportar smartphones.
Figura 13. Vista del Sistema Operativo de Palm OS
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 41/172
41
2.1.9.4 Android
Android es el sistema operativo de Google, y está basado en el núcleo Linux,
diseñado originalmente para dispositivos móviles, tales como teléfonos
inteligentes, pero que posteriormente se expandió su desarrollo para soportar
otros dispositivos tales como tablet, reproductores MP3, netbook, PC, entre
otros. Es a código abierto y existen de aplicaciones gratis.
Figura 14. Vista del Sistema Operativo de Android
2.1.10 Plataformas de desarrollo de aplicaciones móviles
2.1.10.1 J2ME
J2ME es la versión de Java orientada a los dispositivos móviles con poca
capacidad de memoria, poca capacidad de proceso y pantallas de reducidas
dimensiones, es multiplataforma y se ejecuta bajo una máquina virtual especial.
Dentro de los dispositivos que se pueden utilizar con J2ME esta los siguiente;
Teléfonos Celulares Convencionales
Smart Phones
Palms
Hanhelds
Otros Dispositivos Portátiles
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 42/172
42
La arquitectura J2ME brinda además conectividad a Internet a través de
GPRs3, con lo cual todos los dispositivos telefónicos celulares convencionales
tienen enlace a Internet, evitando así disponibilidad de Wifi u otros servicios.
Figura 15. Esquema de Comunicación de J2ME
2.1.10.2 Microsoft .NET
Microsoft .NET es una plataforma de desarrollo y ejecución de aplicaciones.
Los componentes principales de la plataforma .NET son:
Un entorno de ejecución de aplicaciones, también llamado “Runtime”.
Un conjunto de bibliotecas
Un conjunto de lenguajes de programación de alto nivel, junto con sus
compiladores y linkers, que permitirán el desarrollo de aplicaciones
sobre la plataforma .NET.
Un conjunto de herramientas de desarrollo para simplificar las tareas
más comunes del proceso de desarrollo de aplicaciones
3
GPRs (General Packet Radio Service) oservicio general de paquetes vía radio es una extensión delSistema Global para Comunicaciones Móviles.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 43/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 44/172
44
Visual Basic .NET
Es un lenguaje orientado a objetos y eventos que soporta encapsulación,
herencia y polimorfismo. Visual Basic permite a los desarrolladores centrar el
diseño en Windows, el Web y dispositivos móviles. Como con todos los
lenguajes que tienen por objetivo Microsoft .NET Framework, los programas
escritos en Visual Basic se benefician de la seguridad y la interoperabilidad de
lenguajes, ofrece una manera rápida y fácil de crear aplicaciones basadas en
.NET Framework.
Esta plataforma cuenta con un entorno de desarrollo de alto rendimiento, es
posible aprovechar su entorno para construir una amplia gama de aplicaciones
móviles, Web, Windows y basadas en Office. Presenta mejoras en el IDE,
además de que proporciona soporte de depuración remoto, posibilidad de
generar aplicaciones de 64 bits, y acceso completo a los servicios del sistema y
a las bases de datos. Incluye Crystal Reports para la generación de reportes y
proyectos de instalación basados en Windows Installer.
Visual C++ .NET
Visual C++ .NET es un completo conjunto de herramientas para la creación de
aplicaciones basadas en Microsoft Windows y Microsoft .NET, aplicaciones
Web dinámicas y servicios Web XML utilizando el lenguaje de programación
C++. Este sólido entorno de desarrollo incluye las bibliotecas estándar como
son; ATL (Active Template Library) y MFC (Microsoft Foundation Class),
extensiones avanzadas del lenguaje y eficaces características del entorno de
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 45/172
45
desarrollo integrado (IDE) que permiten a los programadores editar y depurar
código fuente de un modo eficaz.
Entre las nuevas características de Visual C++ .NET, se encuentran atributos
de C++, extensiones administradas, servidor ATL y numerosas optimizaciones
y mejoras de las bibliotecas, el IDE y el compilador.
Visual C++ .NET es único entre los lenguajes compatibles con .NET porque
admite tanto el modelo de código administrado que proporciona .NET
Framework como el modelo de código nativo no administrado basado en
Windows. Al ser compatible con ambos modelos de programación, Visual C++
.NET mantiene y mejora el código y los conocimientos existentes, y
proporciona las máximas opciones posibles para los programadores y las
organizaciones.
Visual C# .NET
C# es un lenguaje de programación orientado a objetos desarrollado y
estandarizado por Microsoft como parte de su plataforma .NET, es uno de los
lenguajes de programación diseñados para la infraestructura de lenguaje
común. C# permite la creación de aplicaciones para Windows, servicios web,
herramientas de bases de datos, componentes, controles, etc.
Ventajas de Visual C#
La facilidad del lenguaje permite crear aplicaciones para Windows en
muy poco tiempo. Es decir, permite un desarrollo eficaz y menor
inversión en tiempo que con otros lenguajes.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 46/172
46
Permite generar librerías dinámicas (DLL) mediante una reconfiguración
de su enlazador en el proceso de compilación.
Figura 16. Componentes de Visual C#
2.1.11 Emuladores para Dispositivos Móviles
Los emuladores nos permiten probar nuestras aplicaciones sin necesidad de
utilizar un dispositivo real. Es importante recalcar el hecho de que los
emuladores con los que vamos a trabajar emulan y no simulan los dispositivos
reales. Esto significa que nuestras aplicaciones se ejecutan tal y como se
ejecutarían sobre el dispositivo real, pues lo que se emula es realmente el
hardware tipo de una PDA.
Existe algunos tipos de emuladores de móvil, entre estos hay tres categorías
principales:
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 47/172
47
Emuladores de dispositivos: Generalmente los ofrecen los fabricantes
de dispositivos y simulan el dispositivo real. Son válidos para las
pruebas de aplicación del sitio web en un dispositivo o conjunto de
dispositivos.
Emuladores de navegadores: Simulan los navegadores de los
entornos móviles. Son útiles para determinan la funcionalidad disponible
en un navegador, pero no valen para la prueba específica del
dispositivo.
Emuladores del sistema operativo: Microsoft proporciona emuladores
para Windows Mobile y Google proporciona un emulador de Android. Se
ejecutan en un entorno simulado de dispositivos móviles y proporcionan
acceso a aplicaciones que se ejecutan en el sistema operativo.
El SDK de Windows consiste en un conjunto de herramientas, ejemplos de
código, documentación, compiladores, encabezados y bibliotecas que pueden
usar los desarrolladores para crear aplicaciones que se ejecuten en los
sistemas operativos con modelos de programación nativos (Win32) o
administrados (.NET Framework).Así tenemos actualmente los siguientes
SDKs disponibles:
Windows Mobile 5.0 Pockets PC SDK: En el SDK de Windows Mobile
5.0 para Pocket PC se puede escribir software administrado y nativo de
aplicaciones dirigidas a Windows Mobile 5.0 dispositivos basados en
Pocket PC. Que contiene un emulador de dispositivo.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 48/172
48
2.1.12 Centro de dispositivos de Windows Mobile
El Centro de dispositivos de Windows Mobile es un software de sincronización
desarrollado por Microsoft, y el sucesor de ActiveSync5. Está diseñado para
sincronizar el contenido de diversas aplicaciones como música, vídeo,
contactos, calendario de eventos, favoritos del navegador web, y otros archivos
entre los dispositivos de Windows Mobile y el sistema operativo de Microsoft
Windows. Centro de dispositivos de Windows Mobile tiene la capacidad de
sincronizar lo siguiente:
Fotos con Galería fotográfica de Windows
Videos con Windows Media Player
Música con Windows Media Player
Favoritos de Internet Explorer
Carpetas / archivos generales con el Explorador de Windows
Los programas de Windows Mobile y actualizaciones de la versión
Figura 17. Centro de dispositivos de Windows Mobile
5
ActiveSync es la aplicación que nos permitirá conectar nuestro Pocket PC con la computadora deescritorio para intercambiar información entre ambos dispositivos.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 49/172
49
2.1.13 Gestores de Base de Datos
Una base de datos es un sistema formado por un conjunto de datos
almacenados en discos que permite guardar grandes cantidades de
información de forma organizada para luego poder encontrar y utilizar
fácilmente. El presente proyecto está realizado mediante la base de datos SQL
Server CE, pero existen otros tipos de base de datos como son Oracle,
PostgreSQL o MySQL.
2.1.13.1 SQL Server 2005 Compact Edition
Microsoft SQL Server 2005 Compact Edition (anteriormente denominada
Microsoft SQL Server 2005 Mobile Edition) es una base de datos compacta
ideal para ser incrustada en aplicaciones móviles y de escritorio.
SQL Server Compact Edition proporciona a los programadores un modelo de
programación común a otras ediciones de SQL Server para el desarrollo tanto
de aplicaciones nativas como administradas.
Ofrece funcionalidad de base de datos relacional en un espacio reducido: un
sólido almacén de datos, un procesador de consultas de optimización y una
conectividad escalable y de confianza.
2.1.13.2 Oracle
Oracle es un sistema de administración de base de datos, fabricado por Oracle
Corporation. Se considera a Oracle como el sistema de bases de datos más
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 50/172
50
completo que existe, debido al soporte de transacciones, su gran estabilidad,
seguridad, es multiplataforma y soporta PL/SQL.
La arquitectura de un servidor Oracle se compone por tres partes importantes:
1. Procesos de usuarios.
2. Estructuras lógicas de memoria que en conjunto son conocidas como la
instancia Oracle (Oracle instance).
3. Estructuras de archivos físicos que en conjunto son llamados la base de
datos oradle (oradle database).
Oracle es básicamente una herramienta cliente/servidor para la gestión de
Bases de Datos. Es un producto vendido a nivel mundial, aunque la gran
potencia que tiene y su elevado precio hacen que sólo se vea en empresas
muy grandes y multinacionales.
2.1.13.3 MySQL
MySQL es un sistema de administración de bases de datos (Database
Management System, DBMS) para bases de datos relacionales. Así, MySQL
no es más que una aplicación que permite gestionar archivos llamados de
bases de datos. MySQL es la base de datos open source más popular y, su
continuo desarrollo y su creciente popularidad está haciendo de MySQL un
competidor cada vez más directo de gigantes en la materia de las bases de
datos como Oracle
MySQL fue escrito en C y C++ y destaca por su gran adaptación a diferentes
entornos de desarrollo, permitiendo su interactuación con los lenguajes de
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 51/172
51
programación más utilizados como PHP, Perl y Java y su integración en
distintos sistemas operativos.
También es muy destacable, la condición de open source de MySQL, que hace
que su utilización sea gratuita e incluso se pueda modificar con total libertad,
pudiendo descargar su código fuente. Esto ha favorecido muy positivamente en
su desarrollo y continuas actualizaciones, para hacer de MySQL una de las
herramientas más utilizadas por los programadores orientados a Internet.
2.1.13.4 PostgreSQL
PostgreSQL es un gestor de bases de datos orientadas a objetos, muy
conocido y usado en entornos de software libre porque cumple los estándares
SQL92 y SQL99, y también por el conjunto de funcionalidades avanzadas que
soporta, lo que lo sitúa al mismo o a un mejor nivel que muchos SGBD
comerciales.
PostgreSQL es un motor de bases de datos relacionales, que verifica integridad
referencial con gran funcionalidad como base de datos, aunque un poco más
lenta que otros motores. PostgreSQL se distribuye bajo licencia BSD, lo que
permite su uso, redistribución, modificación con la única restricción de
mantener el copyright del software a sus autores, PostgreSQL Global
Development Group y la Universidad de California
PostgreSQL corre en casi todos los principales sistemas operativos como son;
Linux, Unix, Solaris, BSDs, Mac OS, Beos, Windows, etc. Soporta los lenguajes
más populares del medio como es; PHP, C, C++, Java, Perl, Python, Ruby, etc.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 52/172
52
2.2 Marco Temporal/Espacial
El tiempo estimado para el análisis y realización de este proyecto planteado, es
de dos meses, es decir hasta Noviembre del presente año. La empresa en
donde se va a recopilar la información es en la Distribuidora “Orellana” que está
ubicada Paseo de los Cañarís
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 53/172
53
3. METODOLOGÍA
3.1. Metodología de Investigación
3.1.1 Tipo de Investigación
El tipo de investigación que se empleara en este proyecto es aplicada, debido a
que se utilizara conocimientos existentes para aplicarlos a la solución de un
problema o necesidad en un corto tiempo.
Conjuntamente se empleara una investigación descriptiva, ya que éste describe
las situaciones y eventos, es decir cómo se manifiesta el fenómeno a
investigar. Esta investigación es importante para el proyecto puesto que nos
ayudará a tener en cuenta cuales son las necesidades más prioritarias para la
mejora del sistema actual.
3.1.2 Métodos
Se utilizar el Método Inductivo, debido a que partiremos de la investigación de
las actividades desarrolladas dentro de la Empresa, para luego partir de la
información obtenida, se puedan organizar los datos en forma de procesos
establecidos.
Mediante este método se lograra la recolección de información de manera
independiente de varias fuentes, para luego realizar un estudio e investigación
exhaustiva de los puntos que estén relacionados
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 54/172
54
3.1.3 Técnicas
La técnica que se implementara es la entrevista, con la cual se recaudar
información precisa de las actividades o procesos de que realizan en cuanto al
manejo de datos y las actividades que se desarrollan dentro de la empresa.
Con el fin de conocer más a fondo el funcionamiento del control de entrada y
salida del producto de bodega de la empresa.
Preguntas de la entrevista
1. ¿Cómo se manejan los procedimientos de control de entrada y salida del
producto de la empresa?
2. El tiempo de respuesta acerca de los productos del inventario de bodega
es rápida y eficaz
3. ¿La venta de sus productos lo hace mediante vendedores?
4. ¿Utiliza algún Sistema en red para el ingreso y salida de sus productos?
5. ¿Conoce usted acerca de los Sistemas de control de entrada y salida de
productos con tecnología móvil?
6. ¿Usted se interesaría en adquirir un sistema utilizando la tecnología
móvil?
Conclusiones de la entrevista:
Durante la entrevista se pudo recabar la información necesaria, con respecto al
volumen de actividad que se presenta dentro de la empresa es muy buena, el
manejo de los registro se lleva mediante hojas de Excel, los datos que son
manipulados es el código del producto, el nombre del producto, cantidad en
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 55/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 56/172
56
UML es bastane independiente del proceso, lo que significa que se puede
utilizar con diferentes proceso de ingenieria de software. El Proceso Unificado
de Rational (RUP), es uno de esos enfoques de ciclo de vida que se adapta
especialmete bien a UML.
Las características de RUP son:
Está basado en UML.
Orientado a sistemas de información de gestión.
Simple, eficaz y pequeño, fácil de aprender y usar.
Centrado en el análisis y diseño.
Permite el desarrollo iterativo e incremental del software.
Está dirigido por casos de uso y permite la administración de
requerimientos.
Control de cambios.
Modelado visual del software
Verificación de la calidad del software
El objetivo del Proceso Unificado de Rational es permitir la produccion de un
software de la mayor calidad que satisfaga las necesidades de los usuarios
finales, dentro de planificaciones y presupuesto predecibles. El El Proceso
Unificado de Rational captura algunas de las mejores practicas de desarrollo de
software, de una forma que es adaptable a un amplio rango de proyectos y
organizaciones. En el aspecto de la gestión, el El Proceso Unificado de
Rational proporciona un enfoque disciplinado sobre como asignar tares y
responsabilidades dentro de una organización de desarrollo de software.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 57/172
57
3.2.1.2 Fases del RUP
Una fase es el intervalo de tiempo entre dos hitos importantes del proceso
durante la cual se cumple un conjunto bien definido de objetivos, completan
artefactos y se toman las decisiones sobre si pasa a la siguiente fase. El
Proceso Unificado de Rational consta de las cuatrro fases siguientes:
Iniciación: Establece la planificación del proyecto.
Elaboración: Establece un plan para el proyecot y una arquitectura.
Construccion: Desarrollar el sistema
Transición: Proporcinar el sitema a sus usuarios finales.
Figura 18. Fases del RUP
Las fases de iniciación y elaboración incluyen las actividades de diseño de ciclo
de vida del desarrollo; la construcción y la transición constituyen su producción.
Dentro de cada fase hay varias iteraciones. Una iteración representa un ciclo
de desarrollo completo, desde la captura de requisitos en el análisis hasta la
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 58/172
58
implementación y pruebas, que produce como resultado la entrega al cliente o
la salida al mercado de un proyecto ejecutable.
Fase de inicio: Durante la fase de iniciación, se establece la planificación del
proyecto y se delimita su alcance. La planificación del proyecto incluye los
criterios de éxito, la evaluación del riesgo, estimulaciones de recursos que se
necesita y un plan de fases que muestra la planificación de los hitos
principales. Durante la iniciación, es frecuentemente crear un prototipo
ejecutable que sirva para probar los conceptos. Al final de la fase de inicio se
examinan los objetivos del ciclo de vida del proyecto y se decide si proceder
con el desarrollo del sistema.
Fase de Elaboración: Los objetivos de la fase de elaboración son analizar el
dominio del problema, establecer una base arquitectónica sólida, desarrollar el
plan de proyecto y eliminar los elementos de más alto riesgo del proyecto. Esto
implica que se debe describir la mayoría de los requisitos del sistema.
Fase de Construcción: Durante la fase de construcción, se desarrolla de
forma iterativa e incremental un producto completo que está preparado para la
transición hacia la comunidad de usuarios. Esto implica describir los requisitos
restantes y los criterios de aceptación, refinando el diseño y completando la
implementación y las pruebas del software.
Fase de Transición: Durante la fase de transición, el software se despliega en
la comunidad de usuarios. Una vez que el sistema ha sido puesto en manos de
los usuarios finales, a menudo aparecen cuestiones que requieren un
desarrollo adicional para ajustar el sistema, corregir algunos problemas no
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 59/172
59
detectados o finalizar algunas características que habían sido pospuestas. Esta
fase comienza normalmente con una visión beta del sistema, que luego será
reemplazada con el sistema de producción.
Al final de la fase de transición se decide si se han satisfecho los objetivos de
ciclo de vida del proyecto, y se determina si se debería empezar otro ciclo de
desarrollo.
3.3. Tecnología
3.3.1 Sistemas Operativos para dispositivos móviles
Como se mensiono anteriormente que el Sistema Operativo, facilita al usuario
las herramientas e interfaces adecuadas para realizar sus tareas informáticas.
Podemos deducir que el uso de uno u otro Sistema Operativo determinarán las
capacidades multimedia de los dispositivos, y la forma de éstas de interactuar
con el usuario.
Este proyecto estara bajo el sistema operativo de Windows Mobile, pero
existen multitud de opciones en cuanto a los Sistema Operativo, si bien las más
conocido hoy en día son; Symbian, BlackBerry OS y recientemente iPhone OS
y el sistema móvil de Google, Android, además por supuesto de los dispositivos
con sistema operativo Linux.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 60/172
60
3.3.1.1 Comparacion de los detalles básicos y el funcionamiento de los Sistemas Operativos
Android
Cupcake
BlackBerry
OS 4.7
S60 5th
Edition
Palm
WebOS
Windows
Mobile 6.5
Tipo de núcleo Linux Propietario Symbian Linux Windows CE
Soporte para empresas
Nada BlackBerry Exchange,
Domino,
BlackBerry
Exchange Exchange,
Domino,
BlackBerry
Tecnologías
inalámbricas
GSM, WiFi GSM,
CDMA, WiFi
GSM, WiFi GSM,
CDMA, WiFi
GSM, CDMA,
WiFi
Figura 19. Comparacion de los detalles basicos entre los Sistemas Operativos Móviles
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 61/172
61
Android
Cupcake
BlackBerry OS
4.7
S60 5th
Edition
Palm WebOS Windows
Mobile 6.5
Notificación Bandeja Pop-up, fondo Pop-up Bandeja Bandeja, pop-
up
Administración de
contactos
Google BES, BIS Exchange,
Domino,
BlackBerry,
iSync
Synergy Exchange,
Domino,
BlackBerry,
ActiveSync
Multitasking Sí Sí Sí Sí Sí
Copiar / pegar Sí Sí Sí Sí Sí
Ecosistema / Soporte
multimedia
Amazon iTunes sin
DRM
Ovi Amazon Windows Media
Player
Búsqueda global No No Sí Sí No
Actualización de firmware OTA Tethered, OTA Tethered, OTA Desconocido Tethered, OTA
Motor del navegador WebKit Propietario WebKit WebKit Internet
Explorer
Tethering (módem) Sí (no oficial) Sí Sí Sí Sí
Bluetooth estéreo Sí Sí Sí Sí Sí
Figura 20. Comparación sobre el Funcionamiento de los Sistemas Operativos Móviles
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 62/172
62
3.3.2 Herramientas para el desarrollo de la aplicación móvil
Para el desarrollo de este proyecto fueron necesario instalar las siguientes
herramientas;
Visual Studio 2008 Professional
Emulador en Windows Mobile
− Windows Mobile 5.0 Pocket PC SDK
Centro de dispositivos de Windows Mobile
Microsoft SQL Server 2005 Compact Edition
3.3.3 Software de Desarrollo
Las herramientas usadas en este proyecto como Visual Studio .Net facilita la
interfaz para el desarrollo de aplicaciones de varios tipos como son:
aplicaciones distribuidas, aplicaciones para Web y aplicaciones para servicios
móviles.
Esta herramienta presenta facilidades en el momento de programar, como
conexión a la base de datos, creación de componentes, etc.
Para el desarrollo de este proyecto se utilizará específicamente el lenguaje
Visual C# de Visual Studio.Net. De igual manera se usará SQL Server 2005
Compact Edition para el almacenamiento de datos de la aplicación.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 63/172
63
3.3.3.1 Visual Studio 2008
Visual Studio 2008 proporciona múltiples versiones de. NET Framework desde
el mismo entorno de desarrollo, es decir se puede crear aplicaciones que se
dirigen al. NET Framework 2.0, 3.0 o 3.5, lo que significa que puede soportar
una amplia variedad de proyectos en el mismo entorno.
Visual Studio .Net
Visual Studio .NET proporciona una herramienta que permite generar
aplicaciones para Microsoft Windows y el Web. Visual Studio .NET permite
crear aplicaciones para dispositivos compatibles con Internet que se integren
en cualquier plataforma, también permite optimizar la programación basada en
el Web y brinda facilidad para la creación de aplicaciones basadas en
Windows.
Para el mayor alcance posible de dispositivos compatibles con Internet, Visual
Studio .NET proporciona características de Internet Móvil que permite generar
una interfaz Web móvil compatible con una amplia gama de dispositivos
móviles.
Para el desarrollo de aplicaciones móviles Visual Studio.Net dispone de un
módulo que permite el desarrollo de una manera rápida de este tipo de
aplicaciones.Para el desarrollo de esta aplicación se utilizara el lenguaje Visual
C# de la aplicación Visual Studio.Net
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 64/172
64
Existe una gran ventaja al trabajar con la plataforma .NET ya que se puede
acceder a toda la gama de equipos móviles en el mercado, ya sea con
aplicaciones online o aplicaciones ejecutables.
Figura 21. Dispositivos moviles que se pueden programar con .NET
Este proyecto esta desarrollado bajo la plataforma de Visual Studio 2008 en el
Lenguaje de progamación Visual C# .NET y esta orientado hacia los
dispositivos moviles Pocket PC, en el siguente cuadro comparativo nos
muestra las razones de porque se a utilizado este lenguaje.
3.3.4 Funcionalidad del Emulador en Windows Mobile
Como se menciono anteriormente el emularo nos permitira probar nuestra
aplicacion sin necesidad de utilizar un dispositivo real. Es muy importanteseñalar que los emuladores con los que vamos a trabajar emulan y no simulan
los dispositivos reales. Esto significa que nuestra aplicación se ejecutara tal y
como se ejecutarían sobre el dispositivo real, pues lo que se emula es
realmente el hardware de una PDA.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 65/172
65
Para abrir la ejecución del emulador de Windows Mobile, accedemos a
la barra de herramientas y a continuación abrimos el Administrador de
emuladores de dispositivos. En el proyecto a presentar se utilizara
Windows Mobile 5.0 Pocket PC y se realiza la coneccion.
Figura 22. Administrador de emuladores de dispositivos
Al momento que hacemos click en conectar lanzaremos a ejecución el
emulador correspondiente. La pantalla del emulador nos ofrece tres
menús: Archivo, Flash y Ayuda.
A través del menú Archivo podremos guardar el estado del emulador,
borrar un estado guardado, realizar una reinicialización hardware o
software y configurar el emulador. La diferencia entre una reinicialización
hardware y uno software es que mediante el primero realizamos el
restablecimiento de los ajustes de fábrica de la PDA, mientras que con el
segundo no perdemos los programas instalados ni los datos
almacenados, simplemente vaciamos la RAM del sistema.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 66/172
66
Figura 23. Emulador del Pocket PC
El emulador del dispositivo contiene exactamente una copia de un dispositivo
real y puede ser utilizado como tal. Además se puede administrar el dispositivo
desde las opciones del menú realizando acciones tales como:
Guardar el estado: Esta acción realiza la emulación de conservación en
memoria de todo lo que se encuentra en el dispositivo, esta opción es
útil ya que cada vez que se lanza el dispositivo es como un nuevo inicio
desde cero.
Borrar el estado guardado: En esta opción nos permite formatear la PC y
volver a instalar el Sistema Operativo.
Restablecer software: En este caso se reinicia el sistema operativo de la
máquina, es un reinicio normal del sistema operativo.
Restablecer hardware: Es una forma de reiniciar el sistema operativo
desde cero, como formatear el dispositivo.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 67/172
67
Configurar: El emulador del dispositivo se puede configurar para estar
siempre presente, cambiar de modo de visualización y utilizar recursos
del pc como parte del emulador.
3.3.5 Centro de dispositivos de Windows Mobile
El Centro de dispositivos de Windows Mobile ofrece administración de
dispositivos y sincronización de datos entre un dispositivo basado en Windows
Mobile y un equipo. El Centro de dispositivos de Windows Mobile incluye las
siguientes características:
Programa de instalación optimizada: El Centro de dispositivos de
Windows Mobile tiene un asistente de asociación nuevo y simplificado y
ha mejorado la administración de asociación.
Sincronización sólida
Administración de foto: La función de administración de fotos le ayuda
a detectar nuevas fotos en un dispositivo basado en Windows Mobile.
Por lo tanto, esta característica le ayuda etiquetar las fotografías e
importarlas en la Galería fotográfica de Windows Vista.
Sincronización de medios: Puede usar el Reproductor de Windows
Media de Microsoft para sincronizar archivos de música y parareproducir aleatoriamente estos archivos en un dispositivo basado en
Windows Mobile.
Búsqueda de archivos: Una nueva experiencia de búsqueda de
dispositivo le permite examinar rápidamente archivos y carpetas.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 68/172
68
Además, puede abrir documentos que se encuentren en un dispositivo
basado en Windows Mobile directamente desde el equipo.
Interfaz de usuario mejorada: El Centro de dispositivos de Windows
Mobile tiene una interfaz de usuario simple que ayuda a obtener acceso
rápido a tareas importantes y a configurar un dispositivo basado en
Windows Mobile.
3.3.6 Gestor de Base de Datos a desarrollo en la aplicación
3.3.6.1 SQL Server 2005 Compact Edition
SQL Server Compact Edition es una tecnología de bases de datos versátil
compatible con todas las plataformas de Windows y tiene una evolución de la
tecnología de bases de datos de Windows Mobile conocida como SQL Server
Mobile Edition (SQL Mobile).
SQL Server Compact Edition cuenta con muchas características nuevas y
actualizadas que mejoran la confiabilidad y el rendimiento de las bases de
datos. Estas mejoras se pueden dividir en categorías generales: motor de
almacenamiento y procesador de consultas.
Las caracteristicas de SQL Server Compact Edition
Un motor de base de datos compacto y un sólido optimizador de
consultas.
Compatibilidad con la réplica de mezcla y el acceso a datos remotos.
Integración con Microsoft SQL Server 2005.
Integración con Microsoft Visual Studio.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 69/172
69
Acceso a datos remotos y réplica de mezcla para sincronizar datos.
Compatibilidad con Microsoft ADO.NET
Posee un subconjunto de sintaxis SQL.
Se implementa como una base de datos incrustada en equipos de
escritorio, dispositivos móviles y Tablet PC.
Ventajas de SQL Server Compact Edition
Funciones más básicas de BD relacional en un formato compacto
Ideal para aplicaciones de móviles y de escritorio, como ciertas
aplicaciones de conexión esporádica
Se puede inserta dentro de las aplicaciones
La descarga, desarrollo, instalación y redistribución son gratuitas
En conclusion el motor de base de datos para este proyeto sera SQL Server
2005 Compact Edition, por su flexibilidad y por sus caracteristicas antes
mencionad, una de las ventajas de esta base de datos es que el usuario
pueden tener acceso a los resultados mediante un método más completo y
sencillo.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 70/172
70
3.3.6.2 Comparación de SQL Server con otros gestores de base de datos
CARACTERÍSTICAS
SQL
SERVER ORACLE MYSQL POSTGRESQL
Soporte de transacciones Si Si Si Si
Escalabilidad, estabilidad
y seguridad.
Si Si No No
Soporta procedimientos
almacenados.
Si No Si No
Permite realizar Vistas,
Triggers
Si No Si No
Posee un entorno gráfico
de administración, que
permite el uso de
comandos DDL y DML
gráficamente.
SI No No No
Permite trabajar en modo
cliente-servidor
SI No SI No
Su soporte
multiplataforma
No SI No No
Posee un entorno gráfico
de administración, que
permite el uso de
comandos DDL y DML
gráficamente.
SI No No No
Figura 24. Matriz comparativa de gestores de base de datos
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 71/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 72/172
72
En cuanto a las limitaciones del hardware debemos tener en cuenta que
cada usuario tiene una velocidad de acceso a la red diferente. Para
poder tener acceso en tiempo real a cualquier tipo de información.
En cuanto a la seguridad del sistema, deberemos protegerlo frente a
cualquier intento de acceso no permitido, por ello todo usuario dispondrá
de una contraseña para poder acceder al sistema.
4.3 Interfaces externas
4.3.1 Interfaces de usuario
Estas interfaces permitirán realizar procesos de registros de productos, ingreso
de artículos, y salida de productos, además nos presentara las consultas
necesarias. El ingreso al sistema requiere un tipo de usuario y contraseña.
Nuestra aplicación funcionará bajo el entorno de Windows y dentro de éste, la
interfaz hacia el usuario se mostrará mediante un emulador de dispositivo, para
introducir datos en los respectivos campos.
4.3.2 Interfaces hardware
El sistema soportará las siguientes actividades:
Navegación entre interfaces Mouse y Teclado.
Ingresos de datos Teclado, Administrador del
Emulador del dispositivo.
Salida de datos Monitor
Figura 25. Matriz de Interfaz con el Hardware
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 73/172
73
4.3.3 Interfaces software
Se usará el siguiente software:
Herramienta UML para el análisis y diseño del
Herramientas Base de Datos
− SQL Server 2005 Compact Edition
Herramientas de desarrollo
− Visual Studio .Net 2008. Lenguaje Visual C# .NET
Para Documentar
− Microsoft Word.
4.4 Flujo de trabajo (Workflow) del sistema
4.4.1 Fase de Inicio
4.4.1.1 Análisis del sistema actual
Los métodos tradicionales que se han utilizado para llevar el control de entrada
y salida de un producto, de cierta forma son inseguros. La problemática que se
vive actualmente dentro de la Distribuidora es que los procesos son llevados de
forma manual, provocando pérdida de tiempo en la actualización de datos y la
falta de información al momento de tomar una decisión.
Hoy en día gracias a los avances de la tecnología permite que lasorganizaciones se hagan competitivas en este mundo globalizado en el que las
organizaciones luchan por mantenerse en el mercado. Es favorable para
nuestro país la implementación de tecnología mediante la implementación de
proyectos como este, el mismo que permite mantener la información a toda
hora y en todo lugar. La necesidad de obtener la información de una manera
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 74/172
74
rápida y eficiente no surge de recién, sino desde que existen las empresas que
manejan grandes cantidades de información y el servicio al cliente es parte
esencial de la empresa, es por ello que se plantea el desarrollo de un sistema
de control de entradas y salidas de productos utilizando tecnología PDA.
Con esto nos ayudara a tener una información rápida, segura y que ayude a la
gerencia en la toma de decisiones para lograr ser más productivos.
Figura 26. Diagrama de Flujo de datos
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 75/172
75
4.4.1.2 Descripción de Actores
ACTORES DEL SISTEMA
Administrador Responsable de la gestión y buen funcionamiento del
sistema, y dar mantenimiento de usuarios, bodega,
productos y proveedores.
Bodegueros Cualquier persona que utilice el sistema para la
entrada y salida del producto.
Figura 27. Matriz de Actores del sistema
4.4.1.3 Identificación de los casos de uso
El sistema de control de entradas y salidas está constituido por los siguientes
casos de uso que son:
ACTOR CASO DE USO
Administrador
Mantenimiento de Usuarios
Mantenimiento de Productos
Mantenimiento de Bodegas
Mantenimiento de Proveedores
Bodeguero Control de entrada de productos
Control de salida de productos
Consulta de movimientos
Figura 28. Matriz de identificación de casos de uso
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 76/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 77/172
77
IRQ Nº 3 Mantenimiento de Bodegas
Actor Administrador
Descripción El sistema deberá tener la opción de
mantenimiento de bodegas, permitirá crear,
modificar y eliminar una bodega del sistema.
Datos Específicos Código
Nombre del bodega
Importancia Alta
Comentario El mantenimiento de bodegas nos servirá
para realizar el movimiento de salida del
producto.
IRQ Nº 4 Mantenimiento de Proveedores
Actor Administrador
Descripción El sistema deberá tener la opción demantenimiento de proveedores, permitirá
crear, modificar y eliminar un proveedor del
sistema.
Datos Específicos Nombre del Proveedor
Dirección
Teléfono
RUCImportancia Alta
Comentario La lista de los proveedores se utilizara al
momento de realizar el movimiento de
entrada del producto.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 78/172
78
IRQ Nº 5 Control de Entrada de productos
Actor Bodeguero
Descripción El sistema permitirá al usuario bodeguero
realizar el movimiento de entrada de un
producto hacia el inventario de bodega.
Datos Específicos Fecha
Usuario
Bodega
Proveedor
Producto
Importancia Alta
Comentario Con este movimiento se actualizara el
Kardex de productos.
IRQ Nº 5 Control de Salida de productos
Actor Bodeguero
Descripción El sistema permitirá al usuario bodeguero
realizar el movimiento de salida del producto
del inventario de bodega.
Datos Específicos Fecha
Usuario
Bodega
Observación
Producto
Importancia Alta
Comentario Con este movimiento se actualizara el
Kardex de productos.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 79/172
79
4.4.2 Fase de Elaboración
4.4.2.1 Modelado de Caso de Uso
Identificador y nombre Control de entrada y salida de productos
Actores Administrador y Bodeguero
Diagrama
detallado
Figura 29. Diagrama de caso de uso
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 80/172
80
4.4.2.1.1 Aplicación de Casos de Uso
4.4.2.1.1.1 Caso de uso Mantenimiento de Usuarios
Caso de uso # 1
Identificador y nombre Control de Usuarios
Actores Administrador
Diagrama
detallado
Administrador
Registra Nuevo
Usuario
Control de Usuarios
Modifica Usuario
Elimina Usuario
Figura 30. Caso de uso control de usuarios
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 81/172
81
4.4.2.1.1.2 Caso de uso Mantenimiento de Bodega
Caso de uso # 2
Identificador y nombre Control de Bodegas
Actores Administrador
Diagrama
detallado
Administrador
Registra NuevaBodega
Control de Bodegas
Modifica Bodega
Elimina Bodega
Figura 31. Caso de uso control de bodegas
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 82/172
82
4.4.2.1.1.3 Caso de uso Mantenimiento de Producto
Caso de uso # 3
Identificador y nombre Control de Productos
Actores Administrador
Diagrama
detallado
Administrador
Registra NuevaProducto
Control de Productos
Modifica Producto
Elimina Producto
Figura 32. Caso de uso control de producto
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 83/172
83
4.4.2.1.1.4 Caso de uso Mantenimiento de Proveedor
Caso de uso # 4
Identificador y nombre Control de Proveedor
Actores Administrador
Diagrama
detallado
Figura 33. Caso de uso control de proveedores
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 84/172
84
4.4.2.1.1.5 Caso de uso Movimiento de Entrada
Caso de uso # 5
Identificador y nombre Control de Entrada del Producto
Actores Bodeguero
Diagrama
detallado
Bodeguero
Ingresa al menu
Ingreso de Productos
Control de Entrada de Producto
Selecciona el
producto
Actualiza el Stock Consultar
«extends»
Selecciona el
proveedor
Selecciona la
cantidad
Figura 34. Caso de uso movimiento entrada
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 85/172
85
4.4.2.1.1.6 Caso de uso Movimiento de Salida
Caso de uso # 6
Identificador y nombre Control de Salida del Producto
Actores Bodeguero
Diagrama
detallado
Figura 35. Caso de uso movimiento salida
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 86/172
86
4.4.2.1.2 Descripción de casos de uso
El sistema debe gestionar información relacionada con el usuario.
Nombre Iniciar sesión
Objetivo Identificar el nivel de acceso de los usuarios al
sistema
Precondición
Conexión a la base de datos satisfactoria
Que el usuario este registrado en el sistema
Que se haya iniciado el programa
Usuario Sistema
1. Inicia cuando el
usuario pide
funcionalidad para
iniciar sesión.
2. El sistema despliega
una interfaz de usuario
para iniciar sesión, con
dos campos de contraseña
y usuario
Flujo del Sistema
3. El usuario, ingresa el
usuario y la contraseña.
4. El sistema valida los
datos
5. El sistema consulta la
existencia del usuario enla base de datos
6. El sistema despliega la
interfaz gráfica para dicho
usuario.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 87/172
87
Caso de uso # 1
Nombre Registra Nuevo Usuario
Objetivo Registrar un nuevo usuario
Actor Administrador
Precondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Administrador
Flujo del Sistema
Usuario Sistema
1. El usuario a
ingresado como
administrador al sistema
2. El sistema valida si el
usuario en sesión tiene
nivel de accesibilidad de
administrador
3. El usuario pide
funcionalidad a registrar
nuevo usuario
4. El sistema despliega la
interfaz gráfica para
registrar un nuevo usuario
5. El usuario llena los
atributos del nuevo
usuario solicitados por
la interfaz gráfica dada
por el sistema
6. El sistema valida los
datos introducidos por el
usuario
7. El sistema guarda en la
base de datos el nuevo
usuario
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 88/172
88
Caso de uso # 1
Nombre Modificar usuario
Objetivo Registrar modificaciones en un usuario deseado
Actor Administrador
Precondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Administrador
Flujo del Sistema
Usuario Sistema
1. El usuario a
ingresado como
administrador al sistema
2. El sistema valida si el
usuario en sesión tiene
nivel de accesibilidad de
administrador
3. El usuario selecciona
Modificar Usuario
4. El sistema despliega
una interfaz gráfica para
modificar
5. El usuario selecciona
los atributos del usuario
que desee modificar.
6. El sistema valida los
datos entrantes.
7. El sistema actualiza en
la base de datos la nueva
modificación
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 89/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 90/172
90
El sistema debe gestionar información relacionada con Bodega.
Caso de uso # 2
Nombre Crea Nueva Bodega
Objetivo Registrar un nuevo Bodega
Actor Administrador
Precondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Administrador
Flujo del Sistema
Usuario Sistema
1. El usuario a
ingresado como
administrador al sistema
2. El sistema valida si el
usuario en sesión tiene
nivel de accesibilidad de
administrador
3. El usuario pide
funcionalidad a crear
nueva bodega
4. El sistema despliega la
interfaz gráfica para
registrar un nueva bodega
5. El usuario llena los
campos de la nueva
bodega solicitados por
la interfaz gráfica dada
por el sistema
6. El sistema valida los
datos introducidos por el
usuario
7. El sistema guarda en la
base de datos la nueva
bodega
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 91/172
91
Caso de uso # 2
Nombre Modificar Bodega
Objetivo Registrar modificaciones en una bodega deseada
Actor Administrador
Precondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Administrador
Flujo del Sistema
Usuario Sistema
1. El usuario a
ingresado como
administrador al sistema
2. El sistema valida si el
usuario en sesión tiene
nivel de accesibilidad de
administrador
3. El usuario selecciona
Modificar Bodega
4. El sistema despliega
una interfaz gráfica para
modificar
5. El usuario selecciona
los campos de la
bodega que desee
modificar.
6. El sistema valida los
datos entrantes.
7. El sistema actualiza en
la base de datos la nueva
modificación
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 92/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 93/172
93
Caso de uso # 3
Nombre Modificar producto
Objetivo Registrar modificaciones en un producto deseado
Actor Administrador
Precondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Administrador
Flujo del Sistema
Usuario Sistema
1. El usuario a
ingresado como
administrador al sistema
2. El sistema valida si el
usuario en sesión tiene
nivel de accesibilidad de
administrador
3. El usuario selecciona
Modificar producto
4. El sistema despliega
una interfaz gráfica para
modificar
5. El usuario selecciona
los campos del producto
que desee modificar.
6. El sistema valida los
datos entrantes.
7. El sistema actualiza en
la base de datos la nueva
modificación
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 94/172
94
Caso de uso # 3
Nombre Eliminar producto
Objetivo Eliminar del sistema un producto ya sea por causas
no relacionadas con el sistema sino con la empresa
Actores Administrador
Precondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Administrador
Flujo del Sistema
Usuario Sistema
1. El usuario a
ingresado como
administrador al sistema
2. El sistema valida si el
usuario en sesión tiene
nivel de accesibilidad de
administrador
3. El usuario selecciona
Eliminar producto
4. El sistema despliega
una interfaz gráfica para
eliminar
5. El usuario selecciona
el producto a eliminar
6. El sistema valida el dato
entrante.
7. El sistema actualiza la
base de datos
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 95/172
95
El sistema debe controlar la entrada del producto de la empresa.
Caso de uso # 4
Nombre Registrar la entrada del productoObjetivo Controlar las entradas de los productos hacia el área
de Bodega.Actor BodegueroPrecondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Bodeguero
Flujo del Sistema
Usuario Sistema 1. El usuario aingresado como
bodeguero al sistema
2. El sistema valida si elusuario en sesión tiene
nivel de accesibilidad debodeguero3. El usuario seleccionaentrada de productos
4. El sistema despliega lainterfaz gráfica pararegistrar la entrada de unproducto.
5. El usuario llena loscampos; fecha, nombredel proveedor, nombredel usuario, en lainterfaz gráfica dada porel sistema6. El usuario graba estainformación
7. El sistema muestra lalista de los productosdisponible para realiza lacarga al inventario.
8. El usuario seleccionael nombre del productoy la cantidad que desee
ingresar.
9. El sistema valida losdatos introducidos por elusuario
10. El sistema guarda enla base de datos el ingresode los productos yactualiza el stock.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 96/172
96
El sistema debe controlar la salida del producto de la empresa.
Caso de uso # 5
Nombre Registrar la salida del productoObjetivo Controlar las salidas del productosActor BodegueroPrecondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Bodeguero
Flujo del Sistema
Usuario Sistema 1. El usuario aingresado comobodeguero al sistema
2. El sistema valida si elusuario en sesión tienenivel de accesibilidad de
bodeguero3. El usuario seleccionasalida de productos
4. El sistema despliega lainterfaz gráfica pararegistrar la salida de unproducto.
5. El usuario llena loscampos; fecha, nombredel bodega, nombre delusuario, en la interfazgráfica dada por elsistema6. El usuario graba estainformación
7. El sistema muestra lalista de los productosdisponible para realiza ladescarga del inventario.
8. El usuario seleccionael nombre del productoy la cantidad que deseetransferir.
9. El sistema valida losdatos introducidos por elusuario
10. El sistema guarda enla base de datos la salidade los productos yactualiza el stock.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 97/172
97
El sistema debe generar las consultas de entrada y salida del producto
Caso de uso # 4, 5
Nombre Consulta de las entradas y salidas de los productos
Objetivo Ver la lista de los productos entrantes y salientes del
sistema. Donde nos muestre el stock actualizado.
Actores Bodeguero
Precondición Conexión a la base de datos satisfactoria
Haber iniciado sesión un Bodeguero
Flujo del Sistema
Usuario Sistema
1. El usuario desea ver
la lista de los productos
de entrada y salida que
se han realizado en el
día
2. El sistema despliega
una interfaz gráfica para
consultar las entradas y
salidas de los productos,
mediante la fecha de
ingreso o egreso del
producto.
3. El usuario ingresa lafecha desde y hasta que
desea ver los producto
4. El sistema consulta enbase de datos la
existencia de dichos
productos
3. El sistema despliega
una interfaz gráfica
mostrando la lista de
productos actualizada.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 98/172
98
4.4.2.2 Diagrama de Actividad
4.4.2.2.1 Diagrama de Actividad Ingreso al Sistema
Usuario
Usuario no existe
Si
No
Acceso al Sistema
Ingreso de Usuario y contraseña valido
Validad parámetros de acceso al sistema
Conectar a la Base de Datos del Sistema
Figura 36. Diagrama de Actividad Ingreso al sistema
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 99/172
99
4.4.2.2.2 Diagrama de Actividad Movimiento de Entrada
Iniciar seción como bodeguero
Ingresar al movimiento de entrada
Interfaz del menu principal
Retorna
Ingresa Datos
Si
Graba los datos validados
Muestra datos en la pantalla
Tipo de dato correcto
Corregir dato
No
No
Si
Figura 37. Diagrama de Actividad del Movimiento de Entrada
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 100/172
100
4.4.2.2.3 Diagrama de Actividad Movimiento de Salida
Iniciar seción como bodeguero
Ingresar al movimiento de salida
Interfaz del menu principal
Retorna
Ingresa Datos
Si
Graba los datos validados
Muestra datos en la pantalla
Tipo de dato correcto
Corregir dato
No
No
Si
Figura 38. Diagrama de Actividad del Movimiento de Salida
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 101/172
101
4.4.2.2.4 Diagrama de Actividad Consultas de los Movimientos
Iniciar seción como bodeguero
Consulta de movimientos
Interfaz del menu principal
Valida la fecha
Realiza la consulta en la BD
Muestra Información
Selecciona el tipo de movimiento (Entrada / Salida)
Figura 39. Diagrama de Actividad sobre consulta de los movimientos
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 102/172
102
4.4.2.3 Diagrama de Colaboración
4.4.2.3.1 Diagrama de Colaboración Inicio de Sesión
Usuario del Sistema
Interfaz
1. Ingresar al sistema
Usuario
2. Datos del Usuario
Sistema
Base de Datos
5. Inicio de Secion
4. Verificación
3. Conexión
Figura 40. Diagrama de Colaboración de Inicio de Sesión
4.4.2.3.2 Diagrama de Colaboración del Movimiento de Entrada
Bodeguero
Interfaz
1. Ingresar al sistema 2. Ingreso de Datos
Sistema Movimiento Entrada
Base de Datos
5. Muestra información de la entrada
4. Guarda 3. Conexión
Figura 41. Diagrama de Colaboración del Movimiento de Entrada
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 103/172
103
4.4.2.3.3 Diagrama de Colaboración del Movimiento de Salida
Bodeguero
Interfaz
1. Ingresar al sistema 2. Ingreso de Datos
Sistema Movimiento Salida
Base de Datos
5. Muestra información de la salida
4. Guarda 3. Conexión
Figura 42. Diagrama de Colaboración del Movimiento de Salida
4.4.2.4 Diseño del sistema
4.4.2.4.1 Descripción de las clases
Figura 43. Descripción de clases
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 104/172
104
4.4.2.4.2 Diccionario de clases
CLASE DESCRIPCIÓN
Bodega Esta clase representa las sucursales o
almacén donde se vende los productos
Usuaridat Es la clase que registra las características
principales que identifican a usuario
administrador o usuario bodeguero.
Rol Almacena los tipos de usuarios del sistema
Proveedor Permite almacenar las características
principales que identifican a un proveedor.
Producto Es la clase que registra las características
principales que identifican a un producto
MovimientoC Esta clase nos permite sacar los datos por
rango de fechas
Consulta Filtrada Esta clase nos permite sacar el movimiento del
kardex del producto
Figura 44. Matriz Diccionario de clases
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 105/172
105
4.4.2.4.3 Diagrama de Clases
+Eliminar()
+Insertar()
+LlenarBodega()
+Modificar()+ObtieneBodega()
-codigo
-descripcion
Bodega
+Eliminar()
+Insertar()+LlenarRol()
+Modificar()
+ObtieneRol()
-codigo-descripción
Rol
+Eliminar()
+Insertar()
+LlenarUsuario()
+Modificar()+ObtieneUsuario()
-clave-codigo
-descripcion
-rol
Usuario
+ConsultaDetalle()
+ConsultaKardex()+ConsultaxFechas()
Consulta Filtrada
+Insertar()
+LlenarMoviC()+ObtieneMovxNum()
+ObtieneUltimo()
-Bodcod
-Fecha
-Observacion
-Tipo-UsuCod
MovimientoC
+Eliminar()+Insertar()
+LlenarProveedor()
+Modificar()+ObtieneProveedor()
-codigo
-direccion
-nombre
-ruc-telefono
Proveedor
+ActualizaStock()+Eliminar()
+Insertar()
+LlenarProducto()
+Modificar()+ObtieneProducto()
-descripcion
-stock
Producto
Figura 45. Diagrama de clases
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 106/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 107/172
107
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 108/172
108
4.4.2.4.4.2 Diagrama de Secuencia Movimiento de Entrada
Bodeguero
Interface Usuario Menu Principal Interface Base de Datos
Base de Datos
1. Inicia secion
3. Validación de los datos2. Ingresa Usuario y Contraseña
5. Acepta que existe
6. Despliega el menu principal
4. Busca si existe el usuario
Movimiento Entrada
7. Selecciona Movimiento de Entrada
8. Registra informacion para la entrada del producto
9. Registra el nombre y cantidad del producto
11. Execute Create (SQL)
12. Aceptar
13. Salir
10. Maneja Evento (Guardar)
Figura 47. Diagrama de Secuencia Movimiento de Entrada
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 109/172
109
4.4.2.4.4.3 Diagrama de Secuencia Movimiento de Salida
Bodeguero
Interface Usuario Menu Principal Interface Base de Datos
Base de Datos
1. Inicia secion
3. Validación de los datos
2. Ingresa Usuario y Contraseña
5. Acepta que existe
6. Despliega el menu principal
4. Busca si existe el usuario
Movimiento Salida
7. Selecciona Movimiento de Salida
8. Registra informacion para la salida del producto
9. Registra el nombre del producto
11. Execute Create (SQL)
12. Aceptar
13. Salir
10. Maneja Evento (Guardar)
Figura 48. Diagrama de Secuencia Movimiento de Salida
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 110/172
110
4.4.2.4.5 Diagrama de Estado
4.4.2.4.5.1 Diagrama de Estado Inicio de Sesión
En reposo Comparando
Volver a entrar
Seleccionando
Se introduce la
contraseña
Comparar contraseña
(Contraseña incorrecta)
Activación
correcta
Comparar contraseña
(contraseña incorrecta)
Comparar contraseña
(contraseña correcta)
Figura 49. Diagrama de Estado de Inicio de Sesión
4.4.2.4.5.2 Diagrama de Estado de Ingreso de Productos
Bodeguero
Verifica
Modulo Productos
Ingreso de nuevosproducto a bodega
Ingresa los productos alinventario de bodega
Actualiza el stock
Sistema
Inicio
Fin
Figura 50. Diagrama de Estado de Ingreso de Productos
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 111/172
111
4.4.2.4.5.3 Diagrama de Estado de la Salida de Productos
Bodeguero
Recibe
Inventario
Solicitud de salida
Descarga de Productos
Sistema
Actualiza el stock
Inicio
Fin
Figura 51. Diagrama de Estado de la Salida de Productos
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 112/172
112
4.4.2.4.6 Diseño de Interfaces
4.4.2.4.6.1 Pantalla Ingreso al Sistema
Figura 52. Pantalla Ingreso al Sistema
4.4.2.4.6.2 Menú Principal del Administrador
Figura 53. Menú Principal del Administrador
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 113/172
113
4.4.2.4.6.3 Mantenimiento de Proveedores
Figura 54. Mantenimiento de Proveedores
4.4.2.4.6.4 Mantenimiento de Bodega
Figura 55. Mantenimiento de Bodega
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 114/172
114
4.4.2.4.6.5 Mantenimiento de Usuarios
Figura 56. Mantenimiento de Usuarios
4.4.2.4.6.6 Mantenimiento de Productos
Figura 57. Mantenimiento de Productos
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 115/172
115
4.4.2.4.6.7 Menú Principal del Bodeguero
Figura 58. Menú Principal del Bodeguero
4.4.2.4.6.8 Entrada de Mercadería
Figura 59. Entrada de Mercadería
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 116/172
116
4.4.2.4.6.9 Salida de Mercadería
Figura 60. Entrada de Mercadería
4.4.2.4.6.10 Consulta de los Movimiento de Entrada y Salida
Figura 61. Consulta de los Movimiento de Entrada y Salida
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 117/172
117
4.4.2.4.6.11 Kardex del Producto
Figura 62. Kardex de productos
4.4.2.5 Implementación
4.4.2.5.1 Creación de tablas
Tabla Bodega
Figura 63. Tabla Bodega
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 118/172
118
Tabla Productos
Figura 64. Tabla Producto
Tabla Rol
Figura 65. Tabla Proveedor
Tabla Movimiento Cabecera
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 119/172
119
Figura 66. Tabla Movimiento Cabecera
Tabla Movimiento Detalle
Figura 67. Tabla Movimiento Detalle
Tabla Usuario
Figura 68. Tabla Usuario
Tabla Proveedor
Figura 69. Tabla Proveedor
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 120/172
120
4.4.2.5.2 Modelo Entidad Relación
Figura 70. Diagrama de Entidad Relación
4.4.3 Fase de Construcción
4.4.3.1 Plan de Prueba
Mediante el Proceso Unificado de Desarrollo de Software, determina que la
fase de pruebas es la encargada de; Planificar las pruebas en cada iteración,
incluyendo las pruebas de interacción del sistema. Ejecutar las diferentes
pruebas y manejar los resultados de cada prueba sistemáticamente.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 121/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 122/172
122
Caso de Prueba Salida de productos
Nº Acción Resultado Éxito
1 Verificar si ingreso correcto
como bodeguero
Se ingresó de manera correcta si
2 Seleccionar la opción salida
de productos
Se despliega correctamente si
3 Validación de los campos Se ejecuta sin problema esta
acción.
si
4 Carga de productos Se mostró todos los productos
que dispone la empresa si
5 Grabar el movimiento Se ejecutó correctamente y
actualiza los datos.
si
Figura 72. Caso de Prueba Salida de Productos
Caso de Prueba Consulta de los Movimientos
Nº Acción Resultado Éxito
2 Seleccionar la opción
Consulta de movimientos
Se despliega correctamente si
Selecciona la fecha y el tipo
de movimiento
Se ejecuta esta acción
correctamente.
si
3 Seleccionar la opción
Consultar
Se carga los datos en la grilla. si
4 Ver detalle Nos muestra el producto que
ha sido ingresa o egresado si
5 Selecciona Salir Regresa al menú principal del
bodeguero.
si
Figura 73. Caso de Prueba Consulta de los movimientos
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 123/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 124/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 125/172
125
BIBLIOGRAFÍA
- [1] Wikipedia (sf) consultado el 06.sep.2011 Copiado de:
- http://es.wikipedia.org/wiki/Comunicaci%C3%B3n_inal%C3%A1mbric
a
- [2] Wikipedia (sf) consultado el 02.sep.2011 Copiado de:
http://es.wikipedia.org/wiki/Proceso_Unificado_de_Rational
- [3] Wikipedia (sf) consultado el 02.sep.2011 Copiado de:
http://es.wikipedia.org/wiki/Lenguaje_Unificado_de_Modelado
- [4] Wikipedia (sf) consultado el 26.ago.2011 Copiado de:
http://es.wikipedia.org/wiki/Microsoft_SQL_Server
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 126/172
126
ANEXOS
MANUAL DE USUARIO
INTRODUCCIÓN
El manual del sistema de entrada y salida, permite visualizar de manera
perceptible su entorno gráfico y su operatividad, ya que en él se explica
detalladamente los pasos que deben seguir para el manejo general de las
estructuras de las pantallas, así como las funciones de los iconos básicos.
Por consiguiente, el usuario obtendrá información valiosa para el manejo de las
herramientas que le permitirán aprovechar las bondades que le ofrece el
Sistema.
Entre las bondades que ofrece el Sistema, se pueden citar las siguientes:
Es amigable y de fácil manejo, ya que queda a conveniencia del usuario
utilizar desde el emulador o mediante un dispositivo móvil.
Facilita la gestión de manejo y control de procesos del inventario, a
través de los procesos de entrada y salida.
Contiene mensajes en caso que el usuario ingrese alguna información
mal.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 127/172
127
Ingreso al sistema
El sistema de Entrada y Salida cuenta con tres tipos de usuarios. Para realizar
los mantenimientos del sistema se ingresara como Administrador . Para
acceder al sistema es necesario tener un nombre del usuario y contraseña.
Menú Principal del Administrador
Dentro del menú principal del administrador, esta los mantenimientos de
Usuarios, Productos, Proveedores, Bodegas
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 128/172
128
Mantenimiento de Proveedores
La aplicación permite crear, modificar y eliminar un proveedor del sistema
Nuevo Proveedores
Al seleccionar Nuevo se abre una pantalla mostrandomos los campos que se
debe llenar (Nombre, Direccion, Telefono, RUC), luego de llenar estos datos,
hacemos clik en Grabar y nos visualiza un mensaje que el producto a sido
creado y si no queremos guardar damos clik en Cerrar y nos regresaremos al
mantenimiento de proveedores.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 129/172
129
Modificar Proveedores
Al seleccionar Modificar se abre una pantalla mostrandomos los campos que
deseemos cambiar (Nombre, Direccion, Telefono, RUC), luego de modificar los
datos, hacemos clik en Grabar y nos visualiza un mensaje que el producto a
sido modificado, presionamos ok y regresa al mantenimiento del proveedores y
si no queremos guardar los cambios damos clik en Cerrar y nos regresaremos
al mantenimiento de proveedores.
Eliminar Proveedores
Al seleccionar Eliminar se abre una pantalla mostrandomos los campos de lo
que vamos a eliminar (Nombre, Direccion, Telefono, RUC), hacemos clik en
Eliminar y nos visualiza un mensaje “Realmente desea Eliminar”, si damos clik
en Si se eliminara automaticamente y regresa al mantenimiento del
proveedores y si no queremos eliminar damos clik en No y nos regresaremos
al mantenimiento de proveedores.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 130/172
130
Mantenimiento de Bodega
La aplicación permite crear, modificar y eliminar una bodega del sistema
Nuevo Bodega
Al seleccionar Nuevo se abre una pantalla mostrandomos el campo que se
debe llenar (Descripción), luego de llenar ese dato, hacemos clik en Grabar y
nos visualiza un mensaje que el producto a sido creado y si no queremos
guardar damos clik en Cerrar y nos regresaremos al mantenimiento de bodega.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 131/172
131
Modificar Bodega
Al seleccionar Modificar se abre una pantalla mostrando el campo a cambiar
cambiar (Descripción), luego de modificar el dato, hacemos clik en Grabar y
nos visualiza un mensaje que el producto a sido modificado, presionamos ok y
regresa al mantenimiento del bodega y si no queremos guardar los cambios
damos clik en Cerrar y nos regresaremos al mantenimiento de bodega.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 132/172
132
Eliminar Bodega
Al seleccionar Eliminar se abre una pantalla mostrandomos el campo que
vamos a eliminar (Descripción), hacemos clik en Eliminar nos visualiza un
mensaje “Realmente desea Eliminar”, si damos clik en Si se eliminara
automaticamente y regresa al mantenimiento del producto y si no queremos
eliminar damos clik en Cerrar y nos regresaremos al mantenimiento de
bodega.
Mantenimiento de Usuarios
La aplicación permite crear, modificar y eliminar un usuario del sistema
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 133/172
133
Nuevo Usuario
Al seleccionar Nuevo se abre una pantalla mostrandomos los campos que se
debe llenar (Descripción, Rol, Clave), luego de llenar estos datos, hacemos clik
en Grabar si deseamos que se guarde la información y no damos clik en
Cerrar y nos regresaremos al mantenimiento de usuarios.
Modificar Usuario
Al seleccionar Modificar se abre una pantalla mostrandomos los campos que
deseemos cambiar (Descripción, Rol, Clave), luego de modificar los datos,
hacemos clik en Grabar si deseamos que se guarde la información y no damos
clik en Cerrar y nos regresaremos al mantenimiento de usuarios.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 134/172
134
Eliminar Usuario
Al seleccionar Eliminar se abre una pantalla mostrandomos los campos de lo
que deseemos eliminar (Descripción, Rol, Clave), al dar clik en Eliminar nos
muestra un mensaje, si estamos seguros que deseamos elimar la información
si estamos seguros damos clik en Si y se elimian el dato y si damos clik en No
regresaremos al mantenimiento de usuarios.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 135/172
135
Mantenimiento de Productos
La aplicación permite crear, modificar y eliminar un producto del sistema
Nuevo Productos
Al seleccionar Nuevo se abre una pantalla mostrandomos los campos que se
debe llenar (Descripción, Stock), luego de llenar estos datos, hacemos clik en
Grabar y nos visualiza un mensaje que el producto a sido creado y si no
queremos guardar damos clik en Cerrar y nos regresaremos al mantenimiento
de productos.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 136/172
136
Modificar Productos
Al seleccionar Modificar se abre una pantalla mostrandomos los campos que
deseemos cambiar (Descripción, Rol, Clave), luego de modificar los datos,
hacemos clik en Grabar y nos visualiza un mensaje que el producto a sido
modificado, presionamos ok y regresa al mantenimiento del producto y si no
queremos guardar los cambios damos clik en Cerrar y nos regresaremos al
mantenimiento de productos.
Eliminar Productos
Al seleccionar Eliminar se abre una pantalla mostrandomos los campos de lo
que vamos a eliminar (Descripción, Rol, Clave), hacemos clik en Eliminar y
nos visualiza un mensaje “Realmente desea Eliminar”, si damos clik en Si se
eliminara automaticamente y regresa al mantenimiento del producto y si no
queremos eliminar damos clik en Cerrar y nos regresaremos al mantenimiento
de productos.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 137/172
137
Menú Principal del Bodeguero
Dentro del menú principal del bodeguero, esta los movimientos de entrada y
salida, consultas de los movimientos y kardex del producto.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 138/172
138
Entrada de Mercadería
Luego de haber ingresado como usuario Bodeguero, tiene la opción de realizar
este movimiento de entrada, para esta acción se debe registrar los campos
solicitados (Fecha, Usuario, Proveedor, Bodega, Observación), luego de llenar
esta información, hacemos clik en Grabar, no aparece un mensaje “movimiento
registrado se procede a solicitar la mercadería”, damos clik en ok y se carga la
lista de los productos en el cual nos aparece le stock actual de los mismos, el
usuario debe colocar la cantidad que va a ingresar al sistema, luego de esto
damos clik en Grabar y nos muestra un mensaje “Producto Grabado” y damos
clik en ok y seguimos cargando los productos, si ya no se quiere damos clik en
Salir.
Salida de Mercadería
Esta opción realizar este movimiento de salida del producto, para registrar la
salida se debe registrar los campos solicitados (Fecha, Usuario, Proveedor,
Bodega, Observación), luego de llenar esta información, hacemos clik en
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 139/172
139
Grabar, no aparece un mensaje “movimiento registrado se procede a solicitar la
mercadería”, damos clik en ok y se carga la lista de los productos en el cual
nos aparece le stock actual de los mismos, el usuario debe colocar la cantidad
que va a ingresar al sistema, luego de esto damos clik en Grabar y nos
muestra un mensaje “Producto Grabado” y damos clik en ok y seguimos
cargando los productos, si ya no se quiere damos clik en Salir.
Salida de Mercadería
Esta opción realizar este movimiento de salida del producto, para registrar la
salida se debe registrar los campos solicitados (Fecha, Usuario, Bodega,
Observación), luego de llenar esta información, hacemos clik en Grabar, no
aparece un mensaje “movimiento registrado se procede a solicitar la
mercadería”, damos clik en ok y se carga la lista de los productos en el cual
nos aparece le stock actual de los mismos, el usuario debe colocar la cantidad
que va a ingresar al sistema, luego de esto damos clik en Grabar y nos
muestra un mensaje “Producto Grabado” y damos clik en ok y seguimos
cargando los productos, si ya no se quiere damos clik en Salir.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 140/172
140
Consulta de Entrada y Salida
El sistema permite realizar consultas sobre los movimientos de entrada y salida
de los productos, para ello el usuario deberá colocar la fecha desde y hasta,
luego seleccionar el tipo de movimiento (Entrada o Salida), y dar clik en
Consultar. A continuación nos muestra en la grilla la información solicitada y
para ver con más detalle de que producto se trata damos clik en Ver Detalle y
nos muestra el producto que ha tenido la acción.
Kardex de Producto
El usuario podrá consultar el historial de cada uno de los productos, para ellodebe ingresar la fecha desde y hasta, el nombre del producto y dar clik en
Consulta, y en seguida nos muestra los movimientos que ha tenido el
producto. Si se desea salir damos clik en Salir y regresamos al menú principal
del bodeguero.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 141/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 142/172
142
Mantenimiento de Roles
La aplicación permite crear, modificar y eliminar los roles del sistema
Nuevo Rol
Al seleccionar Nuevo se abre una pantalla mostrandomos el campo que se
debe llenar (Descripción), luego de llenar ese dato, hacemos clik en Grabar y
nos visualiza un mensaje “Rol Creado”, damos clik en ok y regresamos al
mantenimiento de roles y si no queremos guardar damos clik en Cerrar y nos
regresaremos al mantenimiento de roles.
Modificar Rol
Al seleccionar Modificar se abre una pantalla mostrando el campo a cambiar
cambiar (Descripción), luego de modificar el dato, hacemos clik en Grabar y
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 143/172
143
nos visualiza un mensaje “Rol Modificado”, damos clik ok y regresa al
mantenimiento del roles y si no queremos guardar los cambios damos clik en
Cerrar y nos regresaremos al mantenimiento de roles.
Eliminar Rol
Al seleccionar Eliminar se abre una pantalla mostrandomos el campo que
vamos a eliminar (Descripción), hacemos clik en Eliminar nos visualiza un
mensaje “Realmente desea Eliminar”, si damos clik en Si se eliminara
automaticamente y regresa al mantenimiento del roles y si no queremos
eliminar damos clik en Cerrar y nos regresaremos al mantenimiento de roles.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 144/172
144
UNIVERSIDAD TECNOLÓGICA ISRAELDIRECCIÓN DE POSGRADOS
AUTORIZACIÓN DE EMPASTADO
DE: Ing. Miriam AlmachePARA: Msc. Luis Andrés Chávez Ing.
DIRECTOR DEL SINED DE LA UNIVERSIDAD ISRAELASUNTO: Autorización de EmpastadoFECHA Cuenca, Diciembre 1 de 2011
Por medio de la presente certifico que la pregradista María Eulalia GutiérrezTuapante con CI No.0104952437 han realizado las modificaciones solicitadasde acuerdo a la última revisión realizada en mi tutoría, al documento de tesistitulada Desarrollo de un sistema para el control de entradas y salidas deun producto mediante tecnología móvil en empresas comerciales, deltítulo de ingenieros en sistemas informáticos
Atentamente
_______________________________Ing. Miriam Almache
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 145/172
145
UNIVERSIDAD TECNOLÓGICA ISRAELDIRECCIÓN DE POSGRADOS
AUTORIZACIÓN DE EMPASTADO
DE: Ing. Henry CórdovaPARA: Msc. Luis Andrés Chávez Ing.
DIRECTOR DEL SINED DE LA UNIVERSIDAD ISRAELASUNTO: Autorización de EmpastadoFECHA Cuenca, Diciembre 1 de 2011
Por medio de la presente certifico que la pregradista María Eulalia GutiérrezTuapante con CI No.0104952437 han realizado las modificaciones solicitadasde acuerdo a la última revisión realizada en mi tutoría, al documento de tesistitulada Desarrollo de un sistema para el control de entradas y salidas de
un producto mediante tecnología móvil en empresas comerciales, deltítulo de ingenieros en sistemas informáticos
Atentamente
_______________________________Ing. Henry Córdova
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 146/172
146
UNIVERSIDAD TECNOLÓGICA ISRAELDIRECCIÓN DE POSGRADOS
AUTORIZACIÓN DE EMPASTADO
DE: Ing. Max ZúñigaPARA: Msc. Luis Andrés Chávez Ing.
DIRECTOR DEL SINED DE LA UNIVERSIDAD ISRAELASUNTO: Autorización de EmpastadoFECHA Cuenca, Diciembre 1 de 2011
Por medio de la presente certifico que la pregradista María Eulalia GutiérrezTuapante con CI No.0104952437 han realizado las modificaciones solicitadasde acuerdo a la última revisión realizada en mi tutoría, al documento de tesistitulada Desarrollo de un sistema para el control de entradas y salidas deun producto mediante tecnología móvil en empresas comerciales, deltítulo de ingenieros en sistemas informáticos
Atentamente
_______________________________Ing. Max Zúñiga
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 147/172
147
Manual de Programación
Podremos revisar en nuestro trabajo que está desarrollado con la técnica deprogramación orientada a objetos, para eso hemos creado una para cada tipo
de movimiento, es decir, tenemos clases como: Bodega, Consulta Filtrada,MovimientoC, producto, etc.
A continuación revisaremos las mismas donde detallamos el código fuente:
CLASE BODEGA.-
using System;using System.Linq;using System.Collections.Generic;using System.Text;using System.Data.SqlServerCe;using System.Data;
namespace Tesis_ES_Movil.Bodegas{classBodega
{
publicstaticTesisBD_ESDataSet.BodegaDataTable llenarBodega(){
TesisBD_ESDataSet.BodegaDataTable dat =newTesisBD_ESDataSet.BodegaDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),
"TesisBD_ES.sdf") + ";Max Database Size=2047")));
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 148/172
148
{conn.Open();
string sql = @"select * FROM Bodega";System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);
da.Fill(dat);conn.Close();
}return dat;
}
publicstaticstring Insertar(string Descripcion){
TesisBD_ESDataSet.BodegaDataTable dat =newTesisBD_ESDataSet.BodegaDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Insert into Bodega(Descripcion)values('" + Descripcion + "')";
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);conn.Close();
}return"OK";
}
publicstaticstring Modificar(int Codigo, string Descripcion){TesisBD_ESDataSet.BodegaDataTable dat =newTesisBD_ESDataSet.BodegaDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));{
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 149/172
149
string sql = @"Update Bodega Set Descripcion ='" + Descripcion + "' WhereCodigo=" + Codigo;conn.Open();
System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
}return"OK";
}
publicstaticstring Eliminar(int Codigo){TesisBD_ESDataSet.BodegaDataTable dat =
newTesisBD_ESDataSet.BodegaDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Delete from Bodega Where Codigo=" + Codigo;
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
}return"OK";
}
publicstaticstring ObtieneBodega(int Codigo){
string Descripcion;System.Data.SqlServerCe.SqlCeConnection cn = new
System.Data.SqlServerCe.SqlCeConnection(("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));TesisBD_ESDataSet.BodegaDataTable dat =newTesisBD_ESDataSet.BodegaDataTable();SqlCeCommand cmd = newSqlCeCommand();
cmd.Connection = cn;
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 150/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 151/172
151
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{ conn.Open();string sql = @"select * FROM MoviC";
System.Data.SqlServerCe.SqlCeCommand cmd =conn.CreateCommand();
cmd.CommandText = sql;SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);
da.Fill(dat);conn.Close();
}return dat;
}
publicstaticstring Insertar(string Tipo, DateTime Fecha, int UsuCod, int BodCod,string Observacion, int Estado, int Proveedor){TesisBD_ESDataSet.ProductoDataTable dat =newTesisBD_ESDataSet.ProductoDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));{string LaFecha;
LaFecha = Fecha.ToString("MM/dd/yyyy hh:mm");string sql = @"Insert into MoviC(Tipo, Fecha, UsuCod, BodCod, Observacion,Estado, PrvCod)values('" + Tipo + "','" + LaFecha + "', " + UsuCod + ", " +BodCod + ", '" + Observacion + "', 1, " + Proveedor + ")";conn.Open();
System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);
da.Fill(dat);conn.Close();
}return"OK";
}publicstaticstring Insertar(string Tipo, DateTime Fecha, int UsuCod, int BodCod,string Observacion, int Estado){
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 152/172
152
TesisBD_ESDataSet.ProductoDataTable dat =newTesisBD_ESDataSet.ProductoDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));{string LaFecha;
LaFecha = Fecha.ToString("MM/dd/yyyy hh:mm");string sql = @"Insert into MoviC(Tipo, Fecha, UsuCod, BodCod, Observacion,Estado, PrvCod)values('" + Tipo + "','" + LaFecha + "', " + UsuCod + ", " +BodCod + ", '" + Observacion + "', 1, 0)";conn.Open();
System.Data.SqlServerCe.SqlCeCommand cmd =conn.CreateCommand();
cmd.CommandText = sql;SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);
da.Fill(dat);conn.Close();
}return"OK";
}
publicstaticMovimientoC ObtieneMovxNum(int NumMov){
MovimientoC MC = newMovimientoC();System.Data.SqlServerCe.SqlCeConnection cn = new
System.Data.SqlServerCe.SqlCeConnection(("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));TesisBD_ESDataSet.MoviCDataTable dat =
newTesisBD_ESDataSet.MoviCDataTable();SqlCeCommand cmd = newSqlCeCommand();cmd.Connection = cn;
string sql = @"Select * from MoviC where Numero = " + NumMov;cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);cn.Open();
SqlCeDataReader reader = cmd.ExecuteReader();do
{
reader.Read();
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 153/172
153
MC.Tipo = reader.GetString(1).Trim();MC.Fecha = reader.GetDateTime(2);MC.UsuCod = reader.GetInt32(3);MC.Bodcod = reader.GetInt32(4);
MC.Observacion = reader.GetString(5);MC.PrvCod = reader.GetInt32(6);} while (reader.NextResult());
reader.Close();cn.Close();
return MC;}
publicstaticint ObtieneUltimo()
{int Numero;
System.Data.SqlServerCe.SqlCeConnection cn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));TesisBD_ESDataSet.MoviCDataTable dat =newTesisBD_ESDataSet.MoviCDataTable();SqlCeCommand cmd = newSqlCeCommand();
cmd.Connection = cn;string sql = @"Select * from MoviC order by Numero Desc";
cmd.CommandText = sql;SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);
da.Fill(dat);cn.Open();
SqlCeDataReader reader = cmd.ExecuteReader();reader.Read();Numero = reader.GetInt32(0);
return Numero;
}
}}
CLASE CONSULTAFILTRADA
using System;
using System.Linq;
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 154/172
154
using System.Collections.Generic;using System.Text;using System.Data.SqlServerCe;
namespace Tesis_ES_Movil{classConsultaFiltrada
{
publicstaticTesisBD_ESDataSet.MoviCDataTable ConsultaxFechas(DateTime desde, DateTime hasta, string Consultar)
{string tipo;if (Consultar == "Entrada")
tipo = "E";
elsetipo = "S";
TesisBD_ESDataSet.MoviCDataTable dt =newTesisBD_ESDataSet.MoviCDataTable();
System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"select * FROM MoviC where fecha >= '"+desde.ToString("MM/dd/yyyy")+ " 00:00:01' and fecha <= '"+hasta.ToString("MM/dd/yyyy")+ " 23:59:59' and tipo = @tipo";
System.Data.SqlServerCe.SqlCeCommand cmd =conn.CreateCommand();
cmd.CommandText = sql;cmd.Parameters.AddWithValue("@tipo", tipo);
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dt);
}return dt;}
publicstaticTesisBD_ESDataSet.MoviDDataTable ConsultaDetalle(int NumMov){
TesisBD_ESDataSet.MoviDDataTable dat =newTesisBD_ESDataSet.MoviDDataTable();
System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflectio
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 155/172
155
n. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"select MoviD.Secuencia, MoviD.MoDCantidad, MoviD.ProCod,
Producto.Descripcion FROM MoviDinner join Productoon MoviD.ProCod = Producto.codigo and Numero = @NumMov ";System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;cmd.Parameters.AddWithValue("@NumMov", NumMov);
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);
}
return dat;}
publicstaticTesisBD_ESDataSet.MoviDDataTable ConsultaKardex(DateTime desde, DateTime hasta, int CodPro)
{TesisBD_ESDataSet.MoviDDataTable dt =newTesisBD_ESDataSet.MoviDDataTable();
System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"select * FROM MoviD
where MoDfecha >= '"+desde.ToString("MM/dd/yyyy")+ " 00:00:01'and MoDfecha <= '"+ hasta.ToString("MM/dd/yyyy")+ " 23:59:59' and ProCod =@CodPro Order By Orden";
System.Data.SqlServerCe.SqlCeCommand cmd =conn.CreateCommand();
cmd.CommandText = sql;cmd.Parameters.AddWithValue("@CodPro", CodPro);SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);
da.Fill(dt);
}return dt;
}
}
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 156/172
156
}
CLASE PRODUCTO
using System;using System.Linq;using System.Collections.Generic;using System.Text;using System.Data.SqlServerCe;using System.Data;
namespace Tesis_ES_Movil.Productos{classProducto
{publicstring Descripcion;publicint Stock;
publicstaticTesisBD_ESDataSet.ProductoDataTable llenarProducto(){
TesisBD_ESDataSet.ProductoDataTable dat =newTesisBD_ESDataSet.ProductoDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{conn.Open();
string sql = @"select * FROM Producto";System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);
conn.Close();}
return dat;}
publicstaticstring Insertar(string Descripcion){TesisBD_ESDataSet.ProductoDataTable dat =newTesisBD_ESDataSet.ProductoDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 157/172
157
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Insert into Producto(Descripcion, Stock)values('" + Descripcion +"', 0)";
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);conn.Close();
}
return"OK";}
publicstaticstring Modificar(int Codigo, string Descripcion){TesisBD_ESDataSet.ProductoDataTable dat =newTesisBD_ESDataSet.ProductoDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));{string sql = @"Update Producto Set Descripcion ='" + Descripcion + "' WhereCodigo=" + Codigo;conn.Open();
System.Data.SqlServerCe.SqlCeCommand cmd =conn.CreateCommand();
cmd.CommandText = sql;cmd.ExecuteNonQuery();
conn.Close();}return"OK";
}
publicstaticstring Eliminar(int Codigo){TesisBD_ESDataSet.ProductoDataTable dat =newTesisBD_ESDataSet.ProductoDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 158/172
158
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Delete from Producto Where Codigo=" + Codigo;conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
}return"OK";
}
publicstaticProducto ObtieneProducto(int Codigo){
Producto MiProducto = newProducto();System.Data.SqlServerCe.SqlCeConnection cn = new
System.Data.SqlServerCe.SqlCeConnection(("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));TesisBD_ESDataSet.ProductoDataTable dat =newTesisBD_ESDataSet.ProductoDataTable();SqlCeCommand cmd = newSqlCeCommand();
cmd.Connection = cn;string sql = @"Select * from Producto where Codigo = " + Codigo;
cmd.CommandText = sql;SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);
da.Fill(dat);cn.Open();
SqlCeDataReader reader = cmd.ExecuteReader();do
{ reader.Read();MiProducto.Descripcion = reader.GetString(1).Trim();MiProducto.Stock = reader.GetInt32(2);
} while (reader.NextResult());
reader.Close();cn.Close();
return MiProducto;}
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 159/172
159
publicstaticint ActualizaStock(int Codigo, string Operacion, int Cantidad){
Producto MiProducto = newProducto();int Cant2;
TesisBD_ESDataSet.ProductoDataTable dat =newTesisBD_ESDataSet.ProductoDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new
System.Data.SqlServerCe.SqlCeConnection(("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Update Producto Set Stock = Stock " + Operacion +Cantidad.ToString() +" Where Codigo=" + Codigo;
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
TesisBD_ESDataSet.ProductoDataTable dat2 =newTesisBD_ESDataSet.ProductoDataTable();SqlCeCommand cmd2 = newSqlCeCommand();
cmd2.Connection = conn;sql = @"Select Stock from Producto where Codigo = " + Codigo;cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat2);conn.Open();
SqlCeDataReader reader = cmd.ExecuteReader();do
{reader.Read();
MiProducto.Stock = reader.GetInt32(0);} while (reader.NextResult());
reader.Close();conn.Close();Cant2 = MiProducto.Stock;
}return Cant2;
}
}
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 160/172
160
}
CLASE PROVEEDOR
using System;using System.Linq;using System.Collections.Generic;using System.Text;using System.Data.SqlServerCe;using System.Data;
namespace Tesis_ES_Movil.Proveedores{publicclassProveedor
{publicint Codigo;publicstring Nombre;publicstring Direccion;publicstring Telefono;publicstring Ruc;
publicstaticTesisBD_ESDataSet.ProveedorDataTable llenarProveedor(){
TesisBD_ESDataSet.ProveedorDataTable dat =newTesisBD_ESDataSet.ProveedorDataTable();
System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{conn.Open();
string sql = @"select * FROM Proveedor";System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();
cmd.CommandText = sql;SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);
da.Fill(dat);conn.Close();
}return dat;
}
publicstaticstring Insertar(string Nombre, string Direccion, string Telefono, string Ruc)
{
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 161/172
161
TesisBD_ESDataSet.ProveedorDataTable dat =newTesisBD_ESDataSet.ProveedorDataTable();
System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));{string sql = @"Insert into Proveedor(Nombre, Direccion, Telefono, Ruc)values('" + Nombre + "','" + Direccion + "','" + Telefono + "','" + Ruc + "' )";conn.Open();
System.Data.SqlServerCe.SqlCeCommand cmd =conn.CreateCommand();
cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);conn.Close();
}return"OK";
}
publicstaticstring Modificar(int Codigo, string Nombre, string Direccion, string Telefono, string Ruc)
{TesisBD_ESDataSet.ProveedorDataTable dat =newTesisBD_ESDataSet.ProveedorDataTable();
System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));{string sql = @"Update Proveedor Set Nombre ='" + Nombre + "', Direccion='" +Direccion + "', Telefono='"+Telefono + "', Ruc='"+Ruc+"' Where Codigo=" +
Codigo;conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
}return"OK";
}
publicstaticstring Eliminar(int Codigo)
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 162/172
162
{TesisBD_ESDataSet.ProveedorDataTable dat =newTesisBD_ESDataSet.ProveedorDataTable();
System.Data.SqlServerCe.SqlCeConnection conn = new
System.Data.SqlServerCe.SqlCeConnection(("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Delete from Proveedor Where Codigo=" + Codigo;
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;
cmd.ExecuteNonQuery();conn.Close();
}return"OK";
}
publicstaticProveedor ObtieneProveedor(int Codigo){
Proveedor MiProveedor = newProveedor ();System.Data.SqlServerCe.SqlCeConnection cn = new
System.Data.SqlServerCe.SqlCeConnection(("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));TesisBD_ESDataSet.ProveedorDataTable dat =newTesisBD_ESDataSet.ProveedorDataTable();SqlCeCommand cmd = newSqlCeCommand();
cmd.Connection = cn;string sql = @"Select * from Proveedor where Codigo = " + Codigo;
cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);cn.Open();
SqlCeDataReader reader = cmd.ExecuteReader();do
{reader.Read();MiProveedor.Nombre = reader.GetString(1).Trim();MiProveedor.Direccion = reader.GetString(2).Trim();MiProveedor.Telefono = reader.GetString(3).Trim();MiProveedor.Ruc = reader.GetString(4).Trim();
} while (reader.NextResult());
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 163/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 164/172
164
return dat;}
publicstaticstring Insertar(string Descripcion)
{TesisBD_ESDataSet.RolDataTable dat =newTesisBD_ESDataSet.RolDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Insert into Rol(Descripcion)values('"+Descripcion+"')";
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);conn.Close();
}return"OK";
}
publicstaticstring Modificar(int Codigo, string Descripcion){TesisBD_ESDataSet.RolDataTable dat =newTesisBD_ESDataSet.RolDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Update Rol Set Descripcion ='" + Descripcion + "' WhereCodigo=" + Codigo;
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
}return"OK";
}
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 165/172
165
publicstaticstring Eliminar(int Codigo){TesisBD_ESDataSet.RolDataTable dat =
newTesisBD_ESDataSet.RolDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Delete from Rol Where Codigo=" + Codigo;
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
}return"OK";
}
publicstaticstring ObtieneRol(int Codigo){
string Descripcion;
System.Data.SqlServerCe.SqlCeConnection cn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));TesisBD_ESDataSet.RolDataTable dat =newTesisBD_ESDataSet.RolDataTable();SqlCeCommand cmd = newSqlCeCommand();
cmd.Connection = cn;string sql = @"Select * from Rol where Codigo = " + Codigo;cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);cn.Open();
SqlCeDataReader reader = cmd.ExecuteReader();do
{reader.Read();Descripcion = reader.GetString(1).Trim();
} while (reader.NextResult());
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 166/172
166
reader.Close();cn.Close();
return Descripcion;}}
}
CLASE USUARIO
using System;using System.Linq;using System.Collections.Generic;using System.Text;
using System.Data.SqlServerCe;using System.Data;
namespace Tesis_ES_Movil.Usuarios{publicclassUsuario
{publicint Codigo;publicstring Descripcion;publicint Rol;publicstring Clave;
publicstaticTesisBD_ESDataSet.UsuarioDataTable llenarUsuario(){
TesisBD_ESDataSet.UsuarioDataTable dat =newTesisBD_ESDataSet.UsuarioDataTable();
System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{conn.Open();
string sql = @"select * FROM Usuario";System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);conn.Close();
}
return dat;
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 167/172
167
}
publicstaticstring Insertar(string Descripcion, int CodRol, string Clave){
TesisBD_ESDataSet.UsuarioDataTable dat =newTesisBD_ESDataSet.UsuarioDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));{string sql = @"Insert into Usuario(Nombre, Rol, Clave)values('" + Descripcion +"',"+CodRol+",'" + Clave + "' )";
conn.Open();System.Data.SqlServerCe.SqlCeCommand cmd =
conn.CreateCommand();cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);conn.Close();
}return"OK";
}
publicstaticstring Modificar(int Codigo, string Descripcion, int CodRol, string Clave){TesisBD_ESDataSet.UsuarioDataTable dat =newTesisBD_ESDataSet.UsuarioDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),
"TesisBD_ES.sdf") + ";Max Database Size=2047")));{string sql = @"Update Usuario Set Nombre ='" + Descripcion + "', Rol="+CodRol +", Clave = '"+ Clave +"' Where Codigo=" + Codigo;conn.Open();
System.Data.SqlServerCe.SqlCeCommand cmd =conn.CreateCommand();
cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
}
return"OK";
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 168/172
168
}
publicstaticstring Eliminar(int Codigo){
TesisBD_ESDataSet.UsuarioDataTable dat =newTesisBD_ESDataSet.UsuarioDataTable();System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection(
("Data Source=" +(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));
{string sql = @"Delete from Usuario Where Codigo=" + Codigo;
conn.Open();
System.Data.SqlServerCe.SqlCeCommand cmd =conn.CreateCommand();
cmd.CommandText = sql;cmd.ExecuteNonQuery();conn.Close();
}return"OK";
}
publicstaticUsuario ObtieneUsuario(int Codigo){
Usuario MiUsuario = newUsuario();System.Data.SqlServerCe.SqlCeConnection cn = new
System.Data.SqlServerCe.SqlCeConnection(("Data Source=" +
(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection. Assembly.GetExecutingAssembly().GetName().CodeBase),"TesisBD_ES.sdf") + ";Max Database Size=2047")));TesisBD_ESDataSet.UsuarioDataTable dat =newTesisBD_ESDataSet.UsuarioDataTable();SqlCeCommand cmd = newSqlCeCommand();
cmd.Connection = cn;string sql = @"Select * from Usuario where Codigo = " + Codigo;cmd.CommandText = sql;
SqlCeDataAdapter da = newSqlCeDataAdapter (cmd);da.Fill(dat);cn.Open();
SqlCeDataReader reader = cmd.ExecuteReader();do
{reader.Read();MiUsuario.Descripcion = reader.GetString(1).Trim();
MiUsuario.Rol = reader.GetInt32(2);
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 169/172
169
MiUsuario.Clave = reader.GetString(3);} while (reader.NextResult());
reader.Close();
cn.Close();
return MiUsuario;}
}}
ORGANIZACIÓN
Debemos ser organizados en nuestra programación para poder realizarmodificaciones al mismo sin tener que perderse entre tantos objetos, para estousamos carpetas que nos sirven para agrupar determinados temas de nuestroproyecto, de esta forma:
Como vemos en el ejemplo de los Productos los agrupamos dentro la pantallade lista de productos, la clase que realiza las actividades, y la pantalla dedigitación de los datos del producto. De esta forma esta cada uno de los temaso tópicos de nuestro proyecto.
CONEXIÓN
Para las conexiones que haremos a nuestra Base de Datos se utilizará lasiguiente cadena, se la pone en este manual pues es un poco complicadoarmarla ya que los directorios de instalación de la aplicación dentro deldispositivo móvil (EMULADOR) son diferentes al de una Pc común.
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 170/172
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 171/172
171
Aquí digitaremos los nuevos datos, cambiaremos los datos o confirmaremos laeliminación según sea la acción que se eligió en la pantalla anterior. Una vezgrabado se retorna a la pantalla de listado con una grilla llena de informaciónactualizada.
OBJETOS UTILIZADOS.
A continuación listaremos los objetos utilizados para la elaboración delprograma.
Formulario
Botones de comando
Labels y TextBox
DateTimePicker
ComboBox
8/10/2019 Ingenieria de Sistemas tesis
http://slidepdf.com/reader/full/ingenieria-de-sistemas-tesis 172/172
172
MenuForm
DataGrid
DataSet’s
Enlaces a la BD
Adaptadores
Base de Datos