Академический Документы
Профессиональный Документы
Культура Документы
CARRERA DE SISTEMAS
PROYECTO INTEGRADOR
IBARRA - ECUADOR
OCTUBRE - FEBRERO
2017 - 2018
CERTIFICACIÓN DEL ASESOR
Yo, Ing. Andrés León, tutor del Proyecto Integrador de Carrera, cuyo tema es: APLICACIÓN
WEB PARA EL CONTROL DE PEDIDOS EN LINEA PARA LA EMPRESA “LA LICO”,
certifico que la presente investigación ha sido realizada por los estudiantes, Sr. Landi Zhicay Marco
Joel con C.I 100379870-7, Sr. Rosero Bolaños Marco Andrés con C.I 100330941-4, Sr Diego
Rafael Salazar Rivadeneira con C.I 100361151-2 bajo mi dirección y cumple con las normas
establecidas por la Universidad Regional Autónoma de Los Andes - UNIANDES. En
consecuencia, autorizo su presentación y dejo constancia de la aprobación del presente Proyecto
Integrador de Carrera, a través de mi firma.
II
CERTIFICACIÓN DE LOS DOCENTES DEL NIVEL
Docentes:
III
DECLARACIÓN DE AUTORÍA
Ante las autoridades de la Universidad Regional Autónoma de Los Andes “UNIANDES” Ibarra
declaró que el contenido del Proyecto Integrador de Carrera cuyo título es: “APLICACIÓN WEB
PARA EL CONTROL DE PEDIDOS EN LINEA PARA LA EMPRESA “LA LICO” DE LA
CIUDAD DE IBARRA.”, es exclusivo de nuestra autoría y total responsabilidad.
Atentamente.
IV
AGRADECIMIENTO
A la Universidad Regional Autónoma de los Andes “UNIANDES” que abrió sus puertas para
nuestra formación profesional, A sus autoridades y docentes que con paciencia y amor nos
imparten cada día sus conocimientos adquiridos.
Gracias a los Ingenieros por sus opiniones y guías permanentes para hacer realidad este Proyecto
Integrador.
Desde lo más profundo de nuestros corazones y con la mirada altiva de ser los portadores de
una mejor sociedad sedientes de conocimientos y de buen vivir estamos infinitamente
agradecidos.
LOS AUTORES
V
DEDICATORIA
Deseamos dedicar este proyecto integrador a Dios que nos da la pauta y fortaleza y fe para
seguir en adelante y por darnos vida hasta hoy para realizar nuestros propósitos. Que nos
hemos encaminado.
A nuestros padres por darnos la fortaleza y esfuerzo que hacen cada día para guiarnos por ese
camino del conocimiento e inducirnos a ser personas más capacitadas para enfrentar el futuro.
LOS AUTORES
VI
ÍNDICE
CERTIFICACIÓN DEL ASESOR....................................................................................... II
CERTIFICACIÓN DE LOS DOCENTES DEL NIVEL .................................................... III
DECLARACIÓN DE AUTORÍA ....................................................................................... IV
AGRADECIMIENTO .......................................................................................................... V
DEDICATORIA .................................................................................................................. VI
RESUMEN .......................................................................................................................... 11
CAPITULO I. PROBLEMA ............................................................................................ 12
1.1. PLANTEAMIENTO DEL PROBLEMA 12
1.1.1. SITUACIÓN CONFLICTO ................................................................................................ 12
1.2. FORMULACIÓN DEL PROBLEMA 12
1.3. OBJETIVOS 12
1.3.1. GENERAL ..................................................................................................................... 12
1.3.2. ESPECÍFICOS ................................................................................................................ 12
1.4. JUSTIFICACIÓN E IMPORTANCIA 12
CAPÍTULO II. ................................................................................................................... 13
2.1. ANTECEDENTES DEL ESTUDIO 13
2.1. DEFINICIONES CONCEPTUALES. 13
2.1.1.7. Mecanismos de seguridad ................................................................................. 19
2.1.1.8. Especificaciones de los usuarios ....................................................................... 19
2.1.1.9. Configurar un usuario para usar sudo: .............................................................. 19
2.1.2. Metodología XP .......................................................................................................... 20
2.2.2.2. Calidad del Software......................................................................................... 23
2.2.2.3. Calidad en los productos software .................................................................... 23
2.2.2.4. Riesgos del Software ........................................................................................ 23
2.2.3. DESARROLLO CLIENTE SERVIDOR ................................................................................ 24
2.2.3.1. Cliente-Servidor .......................................................................................................... 24
2.2.3.2. Arquitectura Cliente-Servidor .......................................................................... 26
2.2.3.3. Intranet .............................................................................................................. 26
2.2.3.4. Extranet ............................................................................................................. 27
2.2.4. SISTEMAS MÓVILES .................................................................................... 27
7
2.2.4.1. Capas de un uso móvil ...................................................................................... 27
2.2.4.2. Sistemas Operativos Móviles ........................................................................... 28
2.2.4.3. Lenguajes de desarrollo para dispositivos móviles .......................................... 31
2.2.5. HERRAMIENTAS DE DESARROLLO ......................................................... 32
2.2.5.1. Postgresql .......................................................................................................... 32
2.2.5.2. Netbeans ........................................................................................................... 32
2.2.5.3. JSP .................................................................................................................... 32
2.2.5.4. Android Studio ................................................................................................. 32
2.2.5.5. Apache Tomcat ................................................................................................. 33
2.2.5.6. GlassFish .......................................................................................................... 33
CAPITULO III. METODOLOGÍA ................................................................................. 34
3.1. Diseño de la investigación 34
3.2. Modalidad y tipo de la investigación 34
3.2.1. Modalidad cualitativa .................................................................................................. 34
3.2.2. Modalidad cuantitativa................................................................................................ 34
3.2.3. Investigación de Campo ............................................................................................. 34
3.3. Técnicas e instrumentos de la investigación 34
3.3.1. Técnicas ....................................................................................................................... 34
3.3.2. Instrumentos ............................................................................................................... 35
3.4. Población y muestra 35
3.4.1. Cálculo de la muestra .................................................................................................. 35
3.4.2. ANÁLISIS E INTERPRETACIÓN DE RESULTADOS ........................................................... 36
3.4.3. Respuestas a las preguntas directrices .................................................................... 42
3.5. Propuesta 43
3.5.1. Metodología XP 43
3.5.1.2 Fase II Diseño ................................................................................................... 51
4 CONCLUSIONES Y RECOMENDACIONES ............................................... 63
3.6. CONCLUSIONES 63
3.7. RECOMENDACIONES 64
BIBLIOGRÁFIA ................................................................................................................... 65
Anexos ................................................................................................................................. 67
8
ÍNDICE TABLAS
Tabla 1 Metodologías Tradicionales .................................. ¡Error! Marcador no definido.
Tabla 2 Adquisición de un producto ................................................................................... 37
Tabla 3 Procesos dentro de la empresa ................................................................................ 37
Tabla 4 Productos ................................................................................................................ 38
Tabla 5 Costos dentro de la empresa ................................................................................... 38
Tabla 6 Aplicación web ....................................................................................................... 39
Tabla 7 Stock de productos dentro de la empresa ............................................................... 39
Tabla 8 Automatización de servicios................................................................................... 40
Tabla 9 Módulo móvil ......................................................................................................... 40
Tabla 10 Tabla de funcionamiento ...................................... ¡Error! Marcador no definido.
Tabla 11 Complementos para la aplicación móvil .............. ¡Error! Marcador no definido.
Tabla 12 Complementos para la aplicación web ................. ¡Error! Marcador no definido.
Tabla 13 Requerimientos mínimos y pruebas en computadoras físicas .............................. 60
9
ÍNDICE FIGURAS
Figura 1:: Ciclo de vida del proyecto ................................. ¡Error! Marcador no definido.
Figura 2 Adquisición de un producto ................................................................................. 37
Figura 3: Procesos dentro de la empresa ............................................................................ 37
Figura 4 :Productos ............................................................................................................. 38
Figura 5: Costos dentro de la empresa ............................................................................... 38
Figura 6 :Aplicación web ................................................................................................... 39
Figura 7: Stock de productos dentro de la empresa ............................................................ 39
Figura 8: Automatización de servicios ............................................................................... 40
Figura 9:Modulo móvil....................................................................................................... 40
Figura: 10 Registro de Usuarios .......................................................................................... 55
Figura 11: Ingreso al sistema .............................................................................................. 55
Figura 12 Panel de administración del sistema .................................................................. 55
Figura 13: Ventana Principal .............................................................................................. 56
Figura 14: Registro de usuarios .......................................................................................... 56
Figura 15 Panel de administración del módulo móvil ........................................................ 56
Figura 16:Pruebas del sistema ............................................................................................ 58
Figura 17 Pruebas del sistema ............................................................................................ 58
Figura 18: Pruebas de compatibilidad y conversión ........................................................... 59
Figura 19: Pruebas de Seguridad y Control de Acceso ...................................................... 59
Figura 20 Pruebas del sistema ............................................................................................ 60
10
RESUMEN
Al implantar una página web para la empresa La Lico de la ciudad de Ibarra, tiene como objetivo
ayudar al propietario automatizar los procesos de venta y asignación de pedidos en línea, la cual
permitirá un mayor rendimiento de servicio hacia los clientes.
La aplicación se implementó en un entorno de desarrollo llamado NetBeans bajo el lenguaje de
Programación Web JSP, con base de datos PostgreSQL, para luego logar conseguir reportes
puntuales y confiables para el bienestar de la empresa y de sus beneficiarios dentro y fuera de
ella.
La realización del presente proyecto, se utiliza la metodología cuantitativa y cualitativa; la
metodología cuantitativa se la llevó a cabo ya que se requirió información de las personas afines
a la empresa, por otro lado, la metodología cualitativa fue utilizada debido a que se usó la
observación como método de recolección de los datos.
Del mismo modo, se emplea la metodología de software XP, ya que puede adaptarse a los
cambios de requisitos en cualquier punto de vida del proyecto, además se requiere del contacto
directo con el cliente, el mismo que es el encargado de especificar sus necesidades y
requerimientos para la correcta realización del software.
Los principales beneficiarios es el dueño de la empresa La Lico, debido que podrá contar con
un software que le permita llevar de mejor manera todos sus procesos tornándose ágil y eficiente;
los clientes y la sociedad en general se beneficiarán, esto debido a que al aplicar el sistema se está
incrementara su prestigio, por lo cual tiene mayores recursos para atraer nuevos clientes con una
mayor calidad en su atención.
11
CAPITULO I. PROBLEMA
1.1. PLANTEAMIENTO DEL PROBLEMA
1.1.1. SITUACIÓN CONFLICTO
En la empresa “LA LICO” las ventas de los productos se realiza mediante asistencia telefónica
y personalmente, generándose dificultad a la hora de hacer los pedidos por la cantidad de
órdenes que existen.
Otro problema que tiene la empresa es el tiempo que demora en trasladarse hacia la matriz para
hacer el pedido o su retiro.
Además, la empresa dispone de terceras personas para que realicen el control de pedidos en
línea.
¿Cómo mejorar el control de pedidos en línea de la empresa “La Lico” de la ciudad de Ibarra?
1.3. OBJETIVOS
1.3.1. GENERAL
Implantar una aplicación web para el control de pedidos en línea en la empresa “LA LICO” de
la ciudad de Ibarra.
1.3.2. ESPECÍFICOS
• Fundamentar bibliográficamente las técnicas de pedidos en línea.
• Diagnosticar los procesos actuales que la empresa lleva a cabo para el control de pedidos.
• Desarrollar una aplicación web para la empresa “LA LICO” de la ciudad de Ibarra.
• Validar la propuesta por parte de los expertos.
12
CAPÍTULO II.
2.1. ANTECEDENTES DEL ESTUDIO
La empresa “LA LICO” tiene como finalidad dedicarla a la comercialización de licores, con
una filosofía de mejora continua, responsabilidad, actitud de servicio al cliente y
profesionalismo, a través del personal especializado y certificado. La diversificación de los
servicios, la capacitación del personal y la atención efectiva a los clientes, siendo una empresa
altamente competitiva, sólida y confiable que apoye e incentive a su personal a superarse
creando un excelente ambiente de trabajo en donde se promueve y reconocen los logros
conquistados.
Actualmente la empresa “LA LICO” lleva el control de pedidos de forma manual lo que
provoca que los clientes se sientan insatisfechos y no se brinde una atención de calidad y un
buen servicio, Además los clientes tienen que acudir a la empresa para realizar su pedido lo que
provoca pérdida de tiempo, demora en la atención y entrega de productos, Por lo tanto los
clientes al acudir a la empresa tienen que averiguar si el producto que lo solicitan se encuentra
o no en el inventario, todo esto genera que la empresa no brinde un buen servicio a los clientes,
generando así perdidas a la empresa, debido a eso los clientes se encuentran inconformes con el
servicio que presta y que no puedan entregar los productos a tiempo. La empresa va a tener
mayores ingresos al disponer de una aplicación móvil, ágil y rápida la cual va a estar disponible
en todo momento, logrando que los clientes cuando lo necesiten realicen el pedido del artículo
necesitado. (LICO, 2017)
13
de base de datos, ya que puede haber amenazas particulares a las que se esté más expuesto.
• Contramedidas
Las contramedidas que se toman para enfrentar las amenazas pueden ser físicas y
administrativas.
• Controles informatizados para entornos multiusuarios.
Autorización es como el poder administrativo que se necesita para acceder legítimamente a un
sistema.
La autenticación es la validación de identidad del usuario.
• Controles de acceso
Existen dos tipos de controles de acceso al programa.
➢ Control de accesos discrecional (DAC)
Emplea un mecanismo de SQL conocido con el nombre de control de accesos discrecional.
➢ Control de acceso obligatorio (MAC)
Se basa en políticas de nivel de sistema que no pueden ser modificadas por usuarios individuales.
• Vistas
Este mecanismo de vistas proporciona un sistema de seguridad potente y flexible, al ocultar
partes de la base de datos a ciertos usuarios.
Son relaciones virtuales que no existen en realidad en la base de datos.
• Copias de seguridad
Tener respaldos de los BD actualizados para cuando se produzcan errores de perdida de datos,
para garantizar la integridad física de los datos.
• Integridad
La seguridad en un SGDB se trata de impedir la distorsión de la DB, mediante esta se pretende
proteger la base de datos contra operaciones que introduzcan inconsistencias en los datos
• Cifrado
Es ocultar los caracteres legibles de una clave
• Seguridad de un SGBD en entornos web
Debemos incluir para este tipo de seguridad: los servidores proxy, cortafuegos, algoritmos de
compendio de mensajes y firmas digitales, certificados digitales, kerberos, Secure Sockets Layer
(SSL) y secure HTTP (S-HTTP), secure electronic Transactions (SET), etc. (Seguridad en las
14
Bases de Datos, s.f.)
2.1.1.2.Descripción y estándares de seguridad
15
• Integridad
La información solo puede ser insertada, modificada o eliminada por personal autorizado, se lo
pueden realizar mediante hash criptográfico con firma
• No repudio
Es la protección de un usuario a otro cuando se niega que se realizara alguna comunicación y se
emplea firmas digitales.
• Control de acceso
La información deberá ser controlada y limitado por el sistema mediante contraseñas o llaves
hardware.
• Disponibilidad
Los recursos del sistema estarán disponibles en todo momento.
2.1.1.3.Mecanismos de Seguridad
16
virus.
2.1.1.4.Criterios de evaluación de sistemas computacionales confiables
17
recuperada.
2.1.1.5. Métodos de aplicación
• Cifrado de bloques
Este cifrado transforma un bloque de longitud fija de texto plano a uno de texto cifrado de la
misma longitud.
• Cifrados de flujo
Una cifra de flujo es un algoritmo de encriptación simétrica
Relleno de datos: es el proceso de agregar solicitudes, información al azar al final de un mensaje
para encubrir el punto final de los datos que han sido encriptados.
La encriptación fuete implica el uso de claves mayor a los 1024 bits.
A continuación, tenemos algunos algoritmos de Encriptación: simétrica clave, algoritmo
simétrico, asimétrica, hash y clave de intercambio.
DES es un algoritmo prototipo del cifrado de bloque, es un algoritmo que toma un texto plano
de una longitud fija de bits y lo transforma mediante una serie de complicadas operaciones en
otro texto cifrado de la misma longitud.
El PGP controla que claves del anillo de claves públicas han sido certificadas adecuadamente
con firmas de referencias en las que confías.
La infraestructura de clave pública (PKI) requiere administración de claves que el esquema
simétrico de administración de llaves.
Los certificados digitales proveen un significado de verificación de identidad.
2.1.1.6.Asegurando el ambiente del usuario
Los ID de usuarios, contraseñas y permisos de archivos son importantes para asegurar los
sistemas de host.
• Niveles de seguridad y las políticas
Las opciones de seguridad nos permiten ajustar la seguridad a las necesidades de la
implementación del sistema y se las clasifica en:
• Niveles de seguridad
Los niveles de seguridad son ventajosos cuando se trabaja con multiplataforma, estos niveles
son: bajo, medio y alto esto permite al administrador agrupar los tipos de contra-medidas y
protecciones tratada para las diferentes aplicaciones.
18
2.1.1.7.Mecanismos de seguridad
Son usados para implementar sistemas de seguridad y se los clasifica en:
• Políticas de Seguridad
Son ataques a los sistemas en cualquier sistema de red: sistemas conectados a internet o sistemas
que funcionan las 24 horas
• Sistema de seguridad GNU/Linux
La principal característica es el Kernel: controla todo acceso del software a dispositivos físicos
o dominios, con privilegios asignados por UID y ID de grupo.
• Módulos Estándar
Web min ofrece más de 100 módulos que nos pueden ser de mucha ayuda
• Sudo
Un usuario cualquiera no debe tener la clave de root, esta herramienta permite tener una propia
contraseña
Debe ser escrito antes de ser ejecutado y se aloja en el directorio /etc/
2.1.1.8. Especificaciones de los usuarios
Utiliza las especificaciones de alias para determinar los comandos específicos y los
computadores que los usuarios que pueden accesar a continuación tenemos su clasificación:
2.1.1.9. Configurar un usuario para usar sudo:
Editar el archivo /etc/sudoaers, editar el archivo /etc/syslog.conf, usar touch para refrescar la
fecha de acceso del archivo.
• Asegurado los servicios
En este capítulo aprendimos varios servicios de red y tenemos los siguientes servicios:
➢ TCP Wrapers, inetd que proveen una capacidad adicional de seguridad para los servicios
de TCP/IP
➢ Los servicios que no los estemos utilizando deben ser desactivados en /etc/services y en
el sistema de scripts de inicio.
➢ Hemos analizado diferentes servicios como FTP, HTTP, NFS, SMTP estos servicios
poseen un archivo de configuración que permite el control de acceso al servicio.
➢ Cuando dedicamos servidores individuales a servicios en específico es una manera
efectiva de agregar riesgos y mantener nuestros servicios seguros
19
• Asegurando la red
En este capítulo aprendimos que un firewall es un componente crítico de su política,
principalmente porque es donde podemos forzar la autentificación de todos los usuarios y
monitorear el tráfico que entra y sale.
Además, comprendimos que muchas implementaciones requerirán múltiples firewalls para
poder manejar los diferentes niveles de seguridad de la red.
Además, los firewalls pueden funcionar de diferentes maneras como el filtrado de paquetes,
gateways del circuito y de navegación.
Para poder diseñar un firewall se requiere conocimiento de TCP, UDP, ICMP y los servicios de
IP. Además, un VPN requiere componentes de autentificación, tunneling, encriptación.
2.1.2. Metodología XP
2.1.2.1. Metodología XP
Figura 2: Metodología XP
Fuente: Autores
Es una metodología ágil centrada en potenciar las relaciones interpersonales como clave para
el éxito en desarrollo de software, promoviendo el trabajo en equipo, preocupándose por el
aprendizaje de los desarrolladores, y propiciando un buen clima de trabajo. XP se basa en
realimentación continua entre el cliente y el equipo de desarrollo, comunicación fluida entre
todos los participantes, simplicidad en las soluciones implementadas y coraje para enfrentar los
cambios. XP se define como especialmente adecuada para proyectos con requisitos imprecisos
y muy cambiantes, y donde existe un alto riesgo técnico.
20
• 1ª Fase: Planificación del proyecto.
➢ Historias de usuario:
El primer paso de cualquier proyecto que siga la metodología X.P es definir las historias de
usuario con el cliente. Las historias de usuario tienen la misma finalidad que los casos de uso,
pero con algunas diferencias. Constan de 3 o 4 líneas escritas por el cliente en un lenguaje no
técnico sin hacer mucho hincapié en los detalles.
➢ Release planning:
Después de tener ya definidas las historias de usuario es necesario crear un plan de
publicaciones, en inglés "Release plan", donde se indiquen las historias de usuario que se
crearán para cada versión del programa y las fechas en las que se publicarán estas versiones.
Un "Release plan" es una planificación donde los desarrolladores y clientes establecen los
tiempos de implementación ideales de las historias de usuario.
➢ Iteraciones
Todo proyecto que siga la metodología X.P. se ha de dividir en iteraciones de aproximadamente
3 semanas de duración. Al comienzo de cada iteración los clientes deben seleccionar las
historias de usuario definidas en el "Release planning" que serán implementadas.
➢ Velocidad del proyecto:
La velocidad del proyecto es una medida que representa la rapidez con la que se desarrolla el
proyecto; estimarla es muy sencillo, basta con contar el número de historias de usuario que se
pueden implementar en una iteración; de esta forma.
➢ Programación en pareja:
La metodología X.P. aconseja la programación en parejas pues incrementa la productividad y
la calidad del software desarrollado. El trabajo en pareja involucra a dos programadores
trabajando en el mismo equipo.
➢ Reuniones diarias.
Es necesario que los desarrolladores se reúnan diariamente y expongan sus problemas,
soluciones e ideas de forma conjunta. Las reuniones tienen que ser fluidas y todo el mundo
tiene que tener voz y voto.
21
• 2ª Fase: Diseño.
➢ Diseños simples:
La metodología X.P sugiere que hay que conseguir diseños simples y sencillos. Hay que
procurar hacerlo todo lo menos complicado posible para conseguir un diseño fácilmente
entendible e impleméntale que a la larga costará menos tiempo y esfuerzo desarrollar.
➢ Glosarios de términos:
Usar glosarios de términos y una correcta especificación de los nombres de métodos y clases
ayudará a comprender el diseño y facilitará sus posteriores ampliaciones y la reutilización del
código.
➢ Riesgos:
Si surgen problemas potenciales durante el diseño, X.P sugiere utilizar una pareja de
desarrolladores para que investiguen y reduzcan al máximo el riesgo que supone ese problema.
➢ Funcionalidad extra:
Nunca se debe añadir funcionalidad extra al programa, aunque se piense que en un futuro será
utilizada. Sólo el 10% de la misma es utilizada, lo que implica que el desarrollo de funcionalidad
extra es un desperdicio de tiempo y recursos.
➢ Re factorizar.
Re factorizar es mejorar y modificar la estructura y codificación de códigos ya creados sin
alterar su funcionalidad. Re factorizar supone revisar de nuevo estos códigos para procurar
optimizar su funcionamiento.
➢ Tarjetas C.R.C.
El uso de las tarjetas C.R.C (Class, Responsabilities and Collaboration) permiten al
programador centrarse y apreciar el desarrollo orientado a objetos olvidándose de los malos
hábitos de la programación procedural clásica.
• 3ª Fase: Codificación.
La codificación debe hacerse ateniendo a estándares de codificación ya creados. Programar bajo
estándares mantiene el código consistente y facilita su comprensión y escalabilidad. Crear test
que prueben el funcionamiento de los distintos códigos implementados nos ayudará a
22
desarrollar dicho código.
• 4ª Fase: Pruebas.
Hay que someter a pruebas las distintas clases del sistema omitiendo los métodos más triviales.
Se deben crear los test que pasarán los códigos antes de implementarlos; en el apartado anterior
se explicó la importancia de crear antes los test que el código. (Fases de la Programación
Extrema, 2013)
2.2.2.2.Calidad del Software
La calidad del software es el conjunto de cualidades que lo caracterizan y que determinan su
utilidad y existencia. La calidad es sinónimo de eficiencia, flexibilidad, corrección,
confiabilidad, mantenibilidad, portabilidad, usabilidad, seguridad e integridad. La calidad del
software puede medirse después de elaborado el producto. Pero esto puede resultar muy costoso
si se detectan problemas deriva dos de imperfecciones en el diseño, por lo que es imprescindible
tener en cuenta tanto la obtención de la calidad como su control durante todas las etapas del
ciclo de vida del software.” (LÓPEZ ECHEVERRY, CABRERA, & VALENCIA AYALA,
2013)
2.2.2.3.Calidad en los productos software
Hasta el momento puede dilucidarse algunos de los atributos que hacen comparable un producto
de otro. Quizás podemos considerar formas, colores, tamaños, manejabilidad, entre otros
muchos. Estas características pueden ser físicamente mensurables y, por ello, fácilmente
comparables.
Así como existen medidas para atributos físicos, para el software también existen medidas que
pueden hacerlo comparables, tales como puntos de Calidad de los Productos Software
Estas medidas aportan a la medida de variación entre productos software, las cuales podrían
ser analizadas con detenimiento en otro trabajo. (25000, s.f.)
La principal meta de un equipo desarrollador de software debería ser siempre producir
software catalogado como de alta calidad.
2.2.2.4.Riesgos del Software
Aunque ha habido amplios debates sobre la definición adecuada para riesgo de software, hay
acuerdo común en que el riesgo siempre implica dos características:
23
ejemplo, no hay riesgos de un 100 por ciento de probabilidad.
• Pérdida: Si el riesgo se convierte en una realidad, ocurrirán consecuencias no deseadas o
pérdidas.
Cuando se analizan los riesgos es importante cuantificar el nivel de incertidumbre y el grado de
pérdidas asociado con cada riesgo. Para hacerlo, se consideran diferentes categorías de riesgos.
Los riesgos del proyecto amenazan al plan del proyecto. Es decir, si los riesgos del proyecto se
hacen realidad, es probable que la planificación temporal del proyecto se retrase y que los costos
aumenten. Los riesgos del proyecto identifican los problemas potenciales de presupuesto,
planificación temporal, personal (asignación y organización), recursos. Cliente y requisitos y su
impacto en un proyecto de software. (Barreiro, s.f.)
Los riesgos técnicos amenazan la calidad y la planificación temporal del software que hay que
producir. Si un riesgo técnico se convierte en realidad, la implementación puede llegar a ser
difícil o imposible. Los riesgos técnicos identifican problemas potenciales de diseño,
implementación, de interfaz. Verificación y de mantenimiento. Además. Las ambigüedades de
especificaciones, incertidumbre técnica, técnicas anticuadas y las "tecnologías punta" son
también factores de riesgo. Los riesgos técnicos ocurren porque el problema es más difícil de
resolver de lo que pensábamos. (Macias, 2011)
2.2.3. DESARROLLO CLIENTE SERVIDOR
2.2.3.1.Cliente-Servidor
Sistema donde el cliente es una máquina que solicita un determinado servicio y se denomina
servidor a la máquina que lo proporciona. Los servicios pueden ser:
• Ejecución de un determinado programa.
• Acceso a un determinado banco de información.
• Acceso a un dispositivo de hardware.
Es un elemento primordial, la presencia de un medio físico de comunicación entre las máquinas,
y dependerá de la naturaleza de este medio la viabilidad del sistema.
• Categoría de Servidores
➢ Servidores de archivos
Proporciona archivos para clientes. Si los archivos no fueran tan grandes y los usuarios que
comparten esos archivos no fueran muchos, esto sería una gran opción de almacenamiento y
procesamiento de archivos. El cliente solicita los archivos y el servidor los ubica y se los envía.
24
➢ Servidores de Base de Datos
Son los que almacenan gran cantidad de datos estructurados, se diferencian de los de archivos
pues la información que se envía está ya resumida en la base de datos. Ejemplo: El Cliente hace
una consulta, el servidor recibe esa consulta (SQL) y extrae solo la información pertinente y
envía esa respuesta al cliente.
➢ Servidores de Software de Grupo
El software de grupo es aquel, que permite organizar el trabajo de un grupo. El servidor gestiona
los datos que dan soporte a estas tareas. Por ejemplo: almacenar las listas de correo electrónico.
El Cliente puede indicarle, que se ha terminado una tarea y el servidor se lo envía al resto del
grupo.
➢ Servidores WEB
Son los que guardan y proporcionan Páginas HTML. El cliente desde un browser o link hace un
llamado de la página y el servidor recibe el mensaje y envía la página correspondiente.
➢ Servidores de correo
Gestiona el envío y recepción de correo de un grupo de usuarios (el servidor no necesita ser muy
potente). El servidor solo debe utilizar un protocolo de correo.
➢ Servidor de objetos
Permite almacenar objetos que pueden ser activados a distancia. Los clientes pueden ser capaces
de activar los objetos que se encuentran en el servidor.
➢ Servidores de impresión
Gestionan las solicitudes de impresión de los clientes. El cliente envía la solicitud de impresión,
el servidor recibe la solicitud y la ubica en la cola de impresión, ordena a la impresora que lleve
a cabo las operaciones y luego avisa a la computadora cliente que ya acabo su respectiva
impresión.
➢ Servidores de aplicación
Se dedica a una única aplicación. Es básicamente una aplicación a la que pueden acceder los
clientes.
➢ Componentes del Software
❖ Presentación: Tiene que ver con la presentación al usuario de un conjunto de objetos
visuales y llevar a cabo el procesamiento de los datos producidos por el mismo y los
devueltos por el servidor.
25
❖ Lógica de aplicación: Esta capa es la responsable del procesamiento de la información
que tiene lugar en la aplicación.
❖ Base de datos: Está compuesta de los archivos que contienen los datos de la aplicación.
2.2.3.2. Arquitectura Cliente-Servidor
• Arquitectura Cliente Servidor Dos Capas
Está compuesta por una capa de presentación y lógica de aplicación.
• Arquitectura Cliente Servidor Tres Capas
Está compuesta por una capa de presentación y lógica de aplicación y otra capa de la base de
datos.
• Clasificación de los sistemas Cliente-Servidor
La interacción con el usuario se realiza en el servidor, el cliente hace de pasarela entre el usuario
y el servidor.
2.2.3.3. Intranet
“Es la implantación o integración en una red local o corporativa de tecnologías avanzadas de
publicación electrónica basadas en WEB en combinación con servicios de mensajería, con
partición de recursos, acceso remoto y toda una serie de facilidades cliente/servidor
proporcionadas por la pila de protocolos TCP/IP, diseñado inicialmente para la red global
Internet. Su propósito fundamental es optimizar el flujo de información con el objeto de lograr
una importante reducción de costes en el manejo de documentos y comunicación interna.
Es una herramienta de gestión que permite una potente difusión de información y mecanismos
de colaboración entre el personal.” (Matheus, 2013).
• Estructura
“Es una red tipo LAN (Redes de Área Local), generalmente instalada dentro de una empresa,
que posee algún tipo de conexión a Internet, haciendo de la red de redes un recurso más de la
red interna. Este tipo de red se utiliza para compartir recursos en una organización de trabajo
interno.
Una vez que la red está funcionando, podremos acceder a las estaciones de trabajo
pertenecientes a esta e incluso (con un manejo más avanzado), o integradas a otras redes. Quizá
la mayor utilidad de una intranet radique en el uso de mensajería tanto interna como externa.
Los mails podrán ser enviados a personas conectadas a la red, así como a otras fuera de ella, sin
variar el modo de enviarlos.” (Matheus, 2013).
26
2.2.3.4. Extranet
Es una red de ordenadores interconectada que utiliza los estándares de Internet. El acceso a esa
red está restringido a un determinado grupo de empresas y organizaciones independientes que
necesitan trabajar de manera coordinada para ahorrar tiempo y dinero en sus relaciones de
negocio (Matheus, 2013).
Una extranet es adecuada para aquellas empresas cuyas cadenas de valor (value chain) son
interdependientes, tienen necesidad de comunicarse datos confidenciales entre ellas y el utilizar
la tecnología de Internet supone un importante ahorro de tiempo y dinero (Matheus, 2013).
• Estructura
“Es una res tipo MAN (Redes de Área Metropolitana), suelen ser redes de área local conectadas
entre sí (redes de redes), además abarcan una zona geográfica mayor que las LAN. Red de alta
velocidad (banda ancha) que da cobertura en un área geográfica extensa, proporciona capacidad
de integración de múltiples servicios mediante la transmisión de datos, voz y vídeo, sobre
medios de transmisión tales como fibra óptica y par trenzado. Permitiendo la interconexión entre
varias empresas que se encuentran distantes en un área geográfica, esta estructura de red tiene
acceso restringido.” (Matheus, 2013).
2.2.4. SISTEMAS MÓVILES
Un sistema operativo móvil o SO móvil es un conjunto de programas de bajo nivel que permite
la abstracción de las peculiaridades del hardware específico del teléfono móvil y provee
servicios a las aplicaciones móviles, que se ejecutan sobre él. Al igual que los PCs que utilizan
Windows o Linux, los dispositivos móviles tienen sus sistemas operativos como Android, IOS
entre otros. Los sistemas operativos móviles son mucho más simples y están más orientados a
la conectividad inalámbrica, los formatos multimedia para móviles y las diferentes maneras de
introducir información en ellos.
2.2.4.1. Capas de un uso móvil
• Kernel
El núcleo o kernel proporciona el acceso a los distintos elementos del hardware del dispositivo.
Ofrece distintos servicios a las superiores como son los controladores o drivers para el hardware,
la gestión de procesos, el sistema de archivos y el acceso y gestión de la memoria.
• Middleware
El middleware es el conjunto de módulos que hacen posible la propia existencia de aplicaciones
27
para móviles. Es totalmente transparente para el usuario y ofrece servicios claves como el motor
de mensajería y comunicaciones, códecs multimedia, intérpretes de páginas web, gestión del
dispositivo y seguridad.
• Entorno de ejecución de aplicaciones
El entorno de ejecución de aplicaciones consiste en un gestor de aplicaciones y un conjunto de
interfaces programables abiertas y programables por parte de los desarrolladores para facilitar
la creación de software.
• Interfaz de usuario
Las interfaces de usuario facilitan la interacción con el usuario y el diseño de la presentación
visual de la aplicación. Los servicios que incluye son el de componentes gráficos (botones,
pantallas, listas, etc.) y el del marco de interacción.
Aparte de estas capas también existe una familia de aplicaciones nativas del teléfono que suelen
incluir los menús, el marcador de números de teléfono etc.
2.2.4.2. Sistemas Operativos Móviles
• Android
El sistema operativo Android es sin duda el líder del mercado móvil en sistemas operativos, está
basado en Linux, diseñado originalmente para cámaras fotográficas profesionales, luego fue
vendido a Google y modificado para ser utilizado en dispositivos móviles como los teléfonos
inteligentes y luego en tablets como es el caso del Galaxy Tab de Samsung , actualmente se
encuentra en desarrollo para usarse en netbooks y PCs, el desarrollador de este S.O. es Google,
fue anunciado en el 2007 y liberado en el 2008; además de la creación de la Open Handset
Alliance, compuesto por 78 compañías de hardware, software y telecomunicaciones dedicadas
al desarrollo de estándares abiertos para celulares, esto le ha ayudado mucho a Google a
masificar el S.O, hasta el punto de ser usado por empresas como HTC, LG, Samsung, Motorola
entre otros.
• iOS
iOS es el sistema operativo que da vida a dispositivos como el iPhone, el iPad, el iPod Touch o
el Apple TV. Su simplicidad y optimización son sus pilares para que millones de usuarios se
decanten por iOS en lugar de escoger otras plataformas que necesitan un hardware más potente
para mover con fluidez el sistema operativo. Cada año, Apple lanza una gran actualización de
iOS que suele traer características exclusivas para los dispositivos más punteros que estén a la
28
venta en ese momento.
• Windows Phone
Windows Phone (abreviado WP) es un sistema operativo móvil desarrollado por Microsoft,
como sucesor de Windows Mobile. Con Windows Phone; Microsoft ofrece una nueva interfaz
de usuario que integra varios de sus servicios propios como OneDrive, Skype y Xbox Live en
el sistema operativo. Compite directamente contra Android de Google e iOS de Apple. Debido
a la evidente fragmentación de sus sistemas operativos, Microsoft anunció en enero de 2015 que
dará de baja a Windows Phone, para enfocarse en un único sistema más versátil denominado
Windows 10 Mobile, disponible para todo tipo de plataformas (teléfonos inteligentes, tabletas
y computadoras).
• BlackBerry 6
BlackBerry es un sistema desarrollado por Research In Motion el cual fue presentado en el WES
2010 junto con un video promocional donde se muestra algunas novedades. RIM apuesta que
su BlackBerry 6 estará enfocado en el mercado corporativo y no-corporativo. La mejor
experiencia de este sistema se encontrará en los equipos touchscreen (Pantalla Táctil), aunque
RIM aseguro que en los equipos que cuenten con un TouchPad o TrackPad podrán ejecutarlo
ya que ejerce casi la misma función.
• Symbian
Fue producto de la alianza de varias empresas de telefonía móvil, entre las que se encuentran
Nokia como la más importante, Sony Ericsson, Samsung, Siemens, BenQ, Fujitsu, Lenovo, LG,
Motorola, esta alianza le permitió en un momento dado ser unos de los pioneros y más usados.
El objetivo de Symbian fue crear un sistema operativo para terminales móviles que pudiera
competir con el de Palm o el Smartphone de Microsoft. Técnicamente, el sistema operativo
Symbian es una colección compacta de código ejecutable y varios archivos, la mayoría de ellos
son bibliotecas vinculadas dinámicamente (DLL por sus siglas en inglés) y otros datos
requeridos, incluyendo archivos de configuración, de imágenes y de tipografía, entre otros
recursos residentes.
• Firefox O.S
Firefox OS es un sistema operativo móvil, basado en HTML5 con núcleo Linux, para
smartphones y tabletas. Es desarrollado por Mozilla Corporation bajo el apoyo de otras
empresas como Telefónica y una gran comunidad de voluntarios de todo el mundo. Este sistema
29
operativo está enfocado especialmente en los dispositivos móviles incluidos los de gama baja.
Está diseñado para permitir a las aplicaciones HTML5 comunicarse directamente con el
hardware del dispositivo usando JavaScript y Open Web APIs. Ha sido mostrado en
smartphones y Raspberry Pi, compatibles con Android.
• Ubuntu Touch
Ubuntu Touch es un sistema operativo móvil basado en Linux. Es desarrollado por Canonical
Ltd. Presentado el 2 de enero de 2013 al público mediante un anuncio en la web de Ubuntu,
culmina el proceso de Canonical de desarrollar una interfaz que pueda utilizarse en ordenadores
de sobremesa, portátiles, netbooks, tablets y teléfonos inteligentes.
• Estudio de HTML5 para dispositivos móviles
HTML 5 es un lenguaje markup que se utiliza para estructurar y mostrar contenidos en web.
Proporciona soporte para aplicaciones multimedia avanzadas, incluyendo audio y video. Pero
también nos permite modificar el layout de una página y modificar asi su aspecto.
HTML 5 es uno de los lenguajes más versátiles para desarrollar aplicaciones web y el más
utilizado al crear apps no nativas.
➢ Importancia:
❖ Su versatilidad: Funciona en todos los navegadores ya sean en dispositivos móviles o
desde el ordenador tradicional. El código es interpretado y mostrado por cualquiera de los
navegadores.
❖ Es un lenguaje con vocación claramente audiovisual: Permite incluir nativamente tanto
audio como video.
Este lenguaje puede adaptarse a la pantalla en la que se muestra el contenido
Por esto se convierte en perfecto para crear webs que se vayan a ver como aplicaciones web
apps.
• Estudio del entorno de desarrollo de Android
Android Studio es el entorno de desarrollo integrado (IDE) oficial para el desarrollo de
aplicaciones para Android y se basa en Intelli IDEA. Además del potente editor de códigos y
las herramientas para desarrolladores de Intelli J, Android Studio ofrece aún más funciones que
aumentan la productividad durante la compilación de apps para Android como las siguientes:
(Android, 2014)
30
2.2.4.3. Lenguajes de desarrollo para dispositivos móviles
• Ruby
Es un lenguaje de programación interpretado, reflexivo y orientado a objetos, creado por el
programador japonés Yukihiro "Matz" Matsumoto, quien comenzó a trabajar en Ruby en 1993,
y lo presentó públicamente en 1995. Combina una sintaxis inspirada en Python y Perl con
características de programación orientada a objetos similares a Smalltalk.
• HTML5
(HyperText Markup Language, versión 5) es la quinta revisión importante del lenguaje básico
de la World Wide Web, HTML. HTML5 especifica dos variantes de sintaxis para HTML: un
«clásico» HTML (text/html), la variante conocida como HTML5 y una variante XHTML
conocida como sintaxis XHTML5 que deberá ser servida como XML. Esta es la primera vez
que HTML y XHTML se han desarrollado en paralelo.
• Visual Basic
Las aplicaciones se crean utilizando la CTP tanto en el emulador como en el teléfono. Para
probar la versión de CTP, necesitará la versión final de las herramientas de desarrollo de
Windows Phone (en inglés) y Visual Studio 2010 Professional o posterior. Si no dispone de
Visual Studio 2010 Professional, puede instalar la versión de evaluación gratuita de Visual
Studio Professional.
• Java Script
consiste en un JavaScript biblioteca, Cascading Style Sheets(CSS), e imágenes para el desarrollo
de avanzadas aplicaciones web móviles (webapps). Se permite a los desarrolladores
familiarizados con lenguajes de programación como Objective-C, o que no quieren construir
aplicaciones nativas utilizando propietarias kits de desarrollo de software (SDK), para utilizar
llanura HTML, CSS y JavaScript
• AppMobi XDK
Esta herramienta llamada appMobi XDK te permite desarrollar aplicaciones en HTML5 basadas
en la nube que empaqueta tu aplicación para hacerla compatible con Android, iOS y Chrome
apps de manera que te hace el trabajo menos difícil, esta plataforma te permite utilizar, además,
cosas como el GPS, acelerometro, cámara y muchos otros medios de entrada.
• Xamarin
Con Xamarin, escribes tus aplicaciones enteramente en C #, compartiendo el mismo código en
31
iOS, Android, Windows, Mac y más. Cualquier cosa que usted puede hacer en Objective-C,
Swift o Java, puede hacerlo en C #.
2.2.5. HERRAMIENTAS DE DESARROLLO
2.2.5.1. Postgresql
Es un sistema de gestión o administración de bases de datos relacionales, que puede ejecutar
muchas tareas simultáneamente con otras y es accesible a muchos usuarios a la hora de obtener
información que se encuentra almacenada en este gestor de base de datos.
• Características
➢ Software libre
➢ Licencia GNU/GPL
➢ Velocidad de accesibilidad a los datos
➢ Múltiples motores de almacenamiento
2.2.5.2. Netbeans
La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir de un conjunto
de componentes de software llamados módulos. Un módulo es un archivo Java que contiene
clases de java escritas para interactuar con las APIs de NetBeans y un archivo especial (manifest
file) que lo identifica como módulo. Las aplicaciones construidas a partir de módulos pueden
ser extendidas agregándole nuevos módulos. Debido a que los módulos pueden ser desarrollados
independientemente, las aplicaciones basadas en la plataforma NetBeans pueden ser extendidas
fácilmente por otros desarrolladores de software.
2.2.5.3. JSP
Es una tecnología que ayuda a los desarrolladores de software a crear páginas web dinámicas
basadas en HTML y XML, entre otros tipos de documentos. JSP es similar a PHP, pero usa el
lenguaje de programación Java.
Para desplegar y correr JavaServer Pages, se requiere un servidor web compatible con
contenedores servlet como Apache Tomcat o Jetty.
2.2.5.4. Android Studio
Android Studio es el entorno de desarrollo integrado (IDE) oficial para el desarrollo de
aplicaciones para Android y se basa en IntelliJ IDEA. Además del potente editor de códigos y
las herramientas para desarrolladores de IntelliJ, Android Studio ofrece aún más funciones que
aumentan tu productividad durante la compilación de apps para Android
32
2.2.5.5. Apache Tomcat
Apache Tomcat (también llamado Jakarta Tomcat o simplemente Tomcat) funciona como un
contenedor de servlets desarrollado bajo el proyecto Jakarta en la Apache Software Foundation.
Tomcat implementa las especificaciones de los servlets y de JavaServer Pages (JSP) de Oracle
Corporation (aunque creado por Sun Microsystems).
2.2.5.6. GlassFish
GlassFish es un servidor de aplicaciones de software libre desarrollado por Sun Microsystems,
compañía adquirida por Oracle Corporation, que implementa las tecnologías definidas en la
plataforma Java EE y permite ejecutar aplicaciones que siguen esta especificación. Es gratuito,
de código libre y se distribuye bajo un licenciamiento dual a través de la licencia CDDL y la
GNU GPL. La versión comercial es denominada Oracle GlassFish Enterprise Server (antes Sun
GlassFish Enterprise Server).
33
CAPITULO III. METODOLOGÍA
• La Entrevista
Es una técnica directa de recolección de datos de forma oral y personalizada sobre “LA LICO”
en relación a la situación que se está estudiando, con una intencionalidad y un objetivo
implícito dado por la investigación, dirigiéndola al personal administrativo involucrado
en el manejo de la empresa.
34
• La Encuesta
Técnica cuantitativa que consiste en la investigación realizada sobre una muestra de la población
de Imbabura, utilizando procedimientos estandarizados de interrogación con el fin de conseguir
mediciones cuantitativas sobre una gran cantidad de características objetivas y subjetivas de la
empresa., dirigiéndola a clientes de “LA LICO” elegidos al azar mediante el muestreo que se
realizo
3.3.2. Instrumentos
• Guía de entrevista
Diseñada con preguntas abiertas orientadas a conocer el criterio del personal vinculado con el
manejo de la empresa.
k: es una constante que depende del nivel de confianza que asignemos. El nivel de confianza
indica la probabilidad de que los resultados de nuestra investigación sean ciertos: un 95,5 % de
confianza es lo mismo que decir que nos podemos equivocar con una probabilidad del 4,5%.
e: es el error muestral deseado. El error muestral es la diferencia que puede haber entre el
resultado que obtenemos preguntando a una muestra de la población y el que obtendríamos si
preguntáramos al total de ella.
35
Tabla 2:
Datos para cálculos de muestra de los habitantes de la provincia de Imbabura
Datos
N: 398.244
k: 1.15
e: 5% =0.05
P: 5% =0.5.
Q: 5%=0.5.
Fórmula
𝑘2 ∗ 𝑝 ∗ 𝑞 ∗ 𝑁
𝑛= 2
(𝑒 ∗ (𝑁 − 1)) + 𝑘2 ∗ 𝑝 ∗ 𝑞
𝑛 = 398
En esta pregunta se puede evidenciar que la mayoría de las personas encuestadas respondieron
que no saben exactamente los precios de los productos que van a adquirir, por lo tanto, se puede
determinar que la implementación de la aplicación web con su módulo móvil favorece en los
procesos de ventas de productos de primera necesidad permitiendo obtener más compradores,
además de tener a sus clientes satisfechos con el servicio brindado.
36
ENCUESTA DIRIGIDA A LOS CLIENTES DE LA EMPREZA LA “LICO” DE LA CIUDAD DE IBARRA
37
3. ¿Considera necesario que la empresa tenga un sistema
informático que le ayude adquirir los productos que se ADQUISICIÓN DE PRODUCTOS
comercializan en la empresa?
Respuestas:
10%
Tabla 3: 90%
Productos
FRECUENCIA PORCENTAJE
SI NO
A.- Si 357 90%
Tabla 4: 19%
1%
Costos dentro de la empresa
FRECUENCIA PORCENTAJE 80%
C.- A veces 75 1%
Figura 4: Costos dentro de la empresa
TOTAL 398 100% Fuente: Encuestas realizadas a los clientes de la empresa La Lico
ANÁLISIS: las personas encuestadas respondieron que no saben
Fuente: Encuestas realizadas a los clientes de la empresa La Lico exactamente los precios de los productos que van a adquirir.
38
5. ¿Para Ud. ¿Es importante que se pueda hacer revisión de stock
y precios de los productos en la aplicación web de la empresa? REVISIÓN DE STOCK
Respuestas:
0%
Tabla 5:
100%
Aplicación web
MEDIDAS CANTIDADES
A.- Si 398 Si No
B- No 0
Figura 5 :Aplicación web
Fuente: Encuestas realizadas a los clientes de la empresa La Lico Fuente: Encuestas realizadas a los clientes de la empresa la lico
ANÁLISIS: En esta pregunta se puede evidenciar la mayoría de las
personas encuestadas respondió sería de gran importancia para ellos poder
revisar el stock y precios de los productos en una página web.
Tabla 6 :
97%
Stock de productos dentro de la empresa
MEDIDAS CANTIDADES
Si No A VECES
A.- Si 373
39
7. ¿Ud conoce los servicios que ofrece la empresa?
Respuestas: SERVICIOS
1%
5%7%
Tabla 7:
Automatización de servicios
MEDIDAS CANTIDADES 87%
B. Adquisiciones 19
Figura 7: Automatización de servicios
C. Pedidos 26
Fuente: Encuestas realizadas a los clientes de la empresa La Lico
D. Otros
5 ANÁLISIS: las personas encuestadas respondieron que los servicios que
ofrece la empresa mayormente es el de venta de productos de primera
Fuente: Encuestas realizadas a los clientes de la empresa La Lico necesidad
Respuestas:
99%
Tabla 8: Si No TAL VEZ
Módulo móvil
MEDIDAS CANTIDADES
Figura 8:Modulo móvil
A.- Si 395 Fuente: Encuestas realizadas a los clientes de la empresa La Lico
ANÁLISIS: las personas encuestadas respondieron que si les gustaría que la
B.- No 4 empresa conste con un módulo móvil que ayude a realizar consultas y pedidos
C.-Tal vez 0 en línea
40
GUIÓN DE LA ENTREVISTA DIRIGIDA AL PROPIETARIO DE LA EMPRESA “La
LICO” DE LA CIUDAD DE IBARRA.
ANÁLISIS:
Fabricio Daniel Guerrón estudiaba la carrera de derecho, pero por situaciones personales tuvo
que retirarse. Tiene 34 años de edad, ahora se dedica al negocio y es el administrador de La Lico
hace 5 años. Empezó su trabajo en la casa de su mamá, Aida Guerrón quien además le apoyo
económicamente.
La mayoría de los amigos de Fabricio trabajan con él. “son personas muy trabajadoras, aquí creo
el ejemplo mas claro es que toca darle duro, entre mas se trabaja mas se gana”, comenta este
emprendedor.
Por la amistad que tiene este grupo de personas, Fabricio denomina a “La Lico” como su segunda
familia.
Cuenta sus inicios con esta pequeña empresa: “tenía un poco de ahorros y acondicione el local.
La idea siempre fue dedicarse a este negocio, porque he visto que los productos son mas rentables
que los servicios.
Su primer cliente fue Felipe Ponce, del Tsunami, él le dio la mano ahí y así pudo abrir más mercado
dentro de todo Imbabura.
Comenzó a trabajar con bares y con el tiempo sus clientes fueron aumentando. Las ganas de darle
y darle todavía no se le terminan a Fabricio Guerrón.
41
La lico tiene como objetivo abrir nuevos locales en toda la zona norte y con el tiempo el tiempo
quieren hacer una industria imbabureña de productos de bebidas alcohólicas y no alcohólicas.
La lico cuenta con el apoyo de varias cooperativas de taxis ya que ellos escogieron a esta empresa
como su proveedor principal.
Para la implementación de la página web de la “La Lico” cuenta con equipos informáticos para que
se pueda implementar el sistema que beneficiará tanto a la clínica como a sus clientes. (Guerrón,
2017)
Para el desarrollo de la aplicación web nos basamos en los fundamentos teóricos que
incluimos en el capítulo 2 del marco teórico
¿De qué manera se puede diagnosticar las necesidades y requerimientos que existen
dentro de la Empresa “LA LICO “para tomarlos en cuenta en el desarrollo de la
aplicación web?
Para el desarrollo de la aplicación web con modulo móvil las herramientas que se va a utilizar
son las siguientes
❖ IDE: netbeans
❖ Base de datos: Postgresql
❖ Servidor: Glash Fish 4.1.0
❖ Lenguaje de programación web: JSP
❖ Lenguaje de programación movil: android
❖ AppInventor
42
3.5. Propuesta
3.5.1. Metodología XP
Para el desarrollo de software se utilizará la metodología XP la misma que consta de:
• Planificación
• Diseño.
• Desarrollo.
• Pruebas.
3.5.1.1. PLANIFICACIÓN
El trabajo comienza estableciendo requisitos de todos los elementos del sistema. Esta
perspectiva del sistema es esencial cuando el software se debe interconectar con otros elementos
como hardware, personas y bases de datos.
Fuente: Autores
43
Tabla 10 Planificación del Proyecto-Precios
Descripción Tiempo Valor Total
Programador: Marco Rosero 5h * 8h=40h 1.62*40h=64.92 64.92
402.54/31=12.98
12.98/8=1.62
Diseñador: Marco Landi 3h*8h=24h 1.62*24h=38.88 38.88
402.54/31=12.98
12.98/8=1.62
Documentación: Diego Salazar 4h*8h=32h 1.60*32h=51.20 51.20
399.10/31=12.87
12.87/8=1.60
Hojas de Impresión 20.00 20.00
Transportación 5.00 5.00
Nivel de Hardware 800.00 800.00
Nivel de Software libre Libre
Total 980 980
Fuente: Autores
Nota: Los precios obtenidos son extraídos del Código Sectorial del IESS (IEES, 2017)
La empresa “La Lico” al contar con los requisitos de hardware y software en su empresa no
tendrá costo alguno para implantar el sistema.
44
• Cronograma de actividades
Fuente: Autores
45
• Asignación de Roles
➢ Socio (Gerente):
❖ Escribe “Historias de Usuario” y especifica Pruebas Funcionales
❖ Establece prioridades de Historias
❖ Decide qué Historia se implementa en cada iteración
❖ Tiene autoridad para decidir cuestiones relativas a las Historias
❖ Busca aportar mayor valor a la institución
❖ Puede ser o no socio final
➢ Programador (Marco Landi), Diseñador (Marco Rosero), Documentación (Diego
Salazar):
❖ Hace estimaciones sobre las Historias
❖ Define tareas a partir de las Historias y hace estimaciones
❖ Hace estimaciones sobre el diseño la página web
❖ Realización del documento
➢ Encargado de pruebas (Diego Salazar):
❖ Implementa y corre las pruebas funcionales
❖ Presenta graficas de los resultados y se asegura de que la gente conoce cuando los
resultados empiezan a decaer.
❖ Es responsable de las herramientas de soporte para pruebas
➢ Tutor/Entrenador (Docentes de la carrera de Séptimo Sistemas):
❖ Responsable del proceso global
❖ Debe proveer guías de forma que se apliquen las practicas XP y se siga el proceso
correctamente.
❖ Observa todo, identifica señales de peligro, se asegura que el proyecto se mantiene en
curso.
❖ Da avisos cuando se necesita
➢ Encargado de seguimiento (Docentes de la carrera de Séptimo Sistemas):
❖ Monitoriza el progreso del programador, toma acción si las cosas tienden a salirse de su
senda.
❖ Las acciones incluyen reuniones con el cliente, solicitar ayuda al tutor u al programador
❖ Proporciona realimentación al equipo.
❖ Verifica el grado de acierto entre las estimaciones realizadas y el tiempo real dedicado,
para mejorar futuras estimaciones.
❖ Realiza el seguimiento del progreso de cada iteración
➢ Consultor (Docentes de la carrera de Séptimo Sistemas):
❖ Es un miembro externo del equipo, tiene conocimiento específico en algún tema necesario
para el proyecto, en el que puedan surgir problemas.
➢ Gestor (Marco Landi):
❖ Planifica las reuniones (plan de iteraciones, lanzamientos-releases), anota los resultados
de la reunión para futuros informes y los pasa al Tracker, su labor esencial es de
coordinación.
❖ Asiste a las reuniones, aporta información útil anterior
❖ Es el vínculo entre clientes y programador
46
• Historias de usuarios
➢ Acceso y control al sistema.
Historia de Usuario
Número: 1 Usuario: Administrador
Nombre historia: Acceso y control al sistema
Prioridad en institución: Alta Riesgo en desarrollo: Baja
Días estimados: 4 Iteración asignada: 1
Programador responsable: Marco Rosero
➢ Asignación de roles.
Historia de Usuario
Número: 2 Usuario: Administrador
Nombre historia: Asignación de roles.
Prioridad en negocio: Alta Riesgo en desarrollo: Baja
Días estimados: 5 Iteración asignada: 1
Programador responsable: Diego Salazar
Descripción: El gestor dispondrá de formularios para ingresar, editar y eliminar la información
de una entidad usuario.
Observaciones:
Fuente: Autores
47
➢ Control y validación de usuarios y clientes
Historia de Usuario
Número: 3 Usuario: Administrador
Nombre historia: Control de Usuarios
Prioridad en negocio: Media Riesgo en desarrollo: Baja
Días estimados: 1 Iteración asignada: 1
Programador responsable: Marco Landi
Descripción: Se podrán registrar, modificar, eliminar usuarios y asignarle privilegios a cada
uno de los usuarios otorgándoles o restringiéndoles privilegios de acceso al sistema
Observaciones:
Fuente: Autores
➢ Registro de clientes
Historia de Usuario
Número: 4 Usuario: Administrador
Nombre historia: Proceso del control de las entradas
Prioridad en negocio: Alta Riesgo en desarrollo: Baja
Días estimados: 5 Iteración asignada: 1
Programador responsable: Marco Rosero – Marco Landi
Descripción: Ingreso de datos de los pacientes.
Observaciones:
Fuente: Autores
48
➢ Asignación de pedidos
Historia de Usuario
Número: 5 Usuario: Administrador
Nombre historia: Ingreso de pedidos.
Prioridad en negocio: Media Riesgo en desarrollo: Media
Días estimados: 6 Iteración asignada: 1
Programador responsable: Diego Salazar
Descripción: Se validan las fechas de registro de pedidos de los clientes; Se puede editar,
modificar, eliminar el pedido
Observaciones:
Fuente: Autores
➢ Historial de compras
Historia de Usuario
Número: 6 Usuario: Adminstrador
Nombre historia: Generación del historial de compras
Prioridad en negocio: Media Riesgo en desarrollo: Baja
Días estimados: 5 Iteración asignada: 1
Programador responsable: Marco Rosero
Descripción: Se generarán los historiales de las compras escogiendo las opciones que se
muestran en pantalla.
Observaciones:
Fuente: Autores
50
Atención de clientes
Historia de Usuario
Observaciones:
Fuente: Autores
ANÁLISIS:
El usuario primeramente debe ingresar al sistema de la lico en donde debe registrar he iniciar
sesión, realiza su compra correspondiente; cancela el pago debido e imprime su factura
correspondiente.
51
• Diagrama de Casos de usos – Proveedor
ANÁLISIS:
El proveedor primeramente debe ingresar al sistema de la lico una vez realizado esto registra
y guarda los datos del cliente, asigna la entrega y genera la factura de entrega e imprime el
mismo.
52
• Diagrama de Contexto
➢ Nivel 0
➢ Nivel 1
ANÁLISIS: En el diagrama 1, se puede diferenciar los procesos que realizan los actores,
tales como el cliente el cual ingresa con sus datos personales y genera su compra con el
Administrador que es el encargado de verificar las compras; por último, este genera un
análisis del cliente, le da a conocer los resultados y genera su factura de adquisición del
producto.
53
• Diseño de la Base de Datos
➢ Diseño Lógico
➢ Diseño Físico
• DISEÑO
3.5.1.3 Diseño
Para elegir un diseño se resuelve descomponer las partes de la base de datos y organizar el
sistema en elementos que puedan elaborarse por separado, aprovechando las ventajas del
desarrollo en equipo, en este caso se habla del diseño tanto de estructura de programación
como el diseño visual y estético, para este último se decidió en primer plano y de manera
definitiva aplicar colores referentes a la empresa que se realiza el software.
54
• Interfaces de la aplicación web
Ingreso de información de a la base de datos de usuarios
Fuente: Autores
Nota: A Través de esta ventana se podrá ingresar información de un nuevo usuario el que
realizará pedidos u procesos de administración de la empresa, en donde el campo código está
formado por el número correspondiente a cada cedula o ruc.
Nota: A través de esta ventana podemos ingresar Nota: Esta ventana de la aplicación permite
a la cuenta de la aplicación web, en caso de que configurar las cuentas de clientes, cajeros,
el usuario no tenga una cuenta también le bodegueros y administradores a su vez también
permite registrarse. permite asignar privilegios a las cuentas ya
registradas.
55
• Interfaces de la aplicación móvil • Registro de usuarios
Ventana principal de la aplicación móvil
Nota: En esta ventana tenemos las opciones de usuarios además del registro de los pedidos
de los clientes
56
3.5.1.4 DESARROLLO
• Codificación
Esta clase permite la conexión a la interacción entre aplicaciones y sistemas gestores de base
de datos ya que es un paso fundamental para el almacenamiento de la información y así
obtener un mejor control de sus actividades.
Nota: Este código permite la conexión de nuestra base de datos con nuestro sistema
57
out.print(" </select>"); onkeydown='return numeros(event)' maxlength='15'
out.print(" </div>"); value='" + rs.getString("telefono") + "'>");
out.print("<div class='form-group'>"); out.print(" </div>");
out.print(" <h5><span class='help-block'> Sexo out.print(" <div class='form-group'>");
</span></h5>"); out.print(" <h5><span class='help-block'> Número
out.print(" <select name='sexo' required de Celular </span></h5>");
class='form-control' id='sexo'>"); out.print("<input name='celular' type='text'
if (rs.getString("sexo").equals("t")) { class='form-control' id='celular'
out.print(" <option placeholder='Ingrese su numero de celular'
value='true'>Masculino</option>"); onkeydown='return numeros(event)' maxlength='15'
} else { out.print(" value='" + rs.getString("celular") + "'>");
<option value='false'>Femenino</option>"); out.print("</div>");
} out.print(" <option out.print(" <div class='form-group'>");
value='true'>Masculino</option>"); out.print(" <h5><span class='help-block'>
out.print(" <option Dirección </span></h5>");
value='false'>Femenino</option>"); out.print(" <input type='text' required class='form-
out.print(" </select>"); control' id='direccion' name='direccion'
out.print(" </div>"); placeholder='Ingrese su direccion donde vive
out.print(" <div class='form-group'>"); actualmente' value='" + rs.getString("direccion") +
out.print(" <h5><span class='help-block'> Fecha "'>"); out.print("</div>");
De Nacimiento </span></h5>"); out.print(" <div class='form-group'>");
out.print(" <input type='text' required class='form- out.print(" <h5><span class='help-block'> Perfil
control' id='fnacimiento' name='fnacimiento' del Usuario </span></h5>");
placeholder='Fecha de Nacimiento' title='Fecha de out.print(" <select name='perfil' required
Nacimiento' value='" + rs.getString("fnacimiento") class='form-control' id='perfil'>");
+ "'>"); out.print(" <option value='" +
out.print(" </div>"); rs.getString("idperfil") + "'>" +
out.print(" <button type='submit' class='btn btn- rs.getString("nomperfil") + "</option>");
default btn-green' id='enviar' name='enviar'>Guardar ResultSet rs1 = con.consulta("select * from perfiles
Registro</button>"); where estado='true'"); while
out.print(" </form>");} %> (rs1.next()) {
out.print(" out.print('<option value='" +
rs1.getString("idperfil") + "'>" +
rs1.getString("nomperfil") + "</option>');");
}
Nota: Este código permite que el formulario sea llenado y extraída la información requerida
por el usuario para que así pueda ser modificada i guardada con la misma validez.
3.5.1.5 PRUEBAS
58
Resultados: Resultados:
En esta prueba se revisó que cada ventana y se En esta prueba se revisó que cada ventana y se
determinó si es comprensible para el usuario, al determinó si es comprensible para el usuario, al
finalizar esta prueba se demostró que la interfaz finalizar esta prueba se demostró que la interfaz de
de cada ventana del sitio es muy comprensible cada ventana del sitio es muy comprensible para
para que el usuario ingrese su información. que el usuario ingrese su información.
Resultados:
En esta prueba se analizó si el sistema es capaz
de correr en diferentes navegadores web, al
finalizar la prueba se logró que el sistema corra Figura 18: Pruebas de Seguridad y Control de Acceso
en plataformas Firefox, Google Chrome, Fuente: Los Autores
Internet Explorer de Microsoft Edge Resultados:
En esta prueba ser reviso todos los procesos de
seguridad que el usuario necesita, al finalizar esta
prueba se logró que cada usuario posea acceso a
datos o funciones permitidos por el administrador del
sitio.
59
• Pruebas de recuperación de contraseña. - En esta prueba se realizó los
siguientes pasos.
Asegurar que el usuario pueda recuperar su contraseña
Resultados:
En esta prueba se comprobó que usuario puede obtener una nueva contraseña
y seguir teniendo acceso a su cuenta
• Requerimientos mínimos
Tabla 18:
Requerimientos mínimos y pruebas en computadoras físicas
60
sistema operativo, sin instalación del
embargo, se presentó un error mismo.
al ejecutar la aplicación en el
navegador Mozilla Firefox,
esto debido a la ausencia del
plugin Adobe Flash Player.
Laptop LENOVO
Prueba con navegador Con sistema operativo Error de conexión
Con navegador
Google Chrome y Windows 8.1, presentó un con la base de datos
Google Chrome y
sistema Operativo error fácil de corregir con una por falta de una
Sistema Operativo
Windows 10 librería de la conexión a la librería, esto fue
Windows 10 base de datos, sin embargo, solucionado
con respecto al navegador instalando la misma,
Google Chrome no presento y en cuanto al
error alguno. navegador no
existieron
problemas.
Fuente: Autores
61
• Pruebas de Sistemas Operativos y Versiones
Fuente: Autores
62
4 CONCLUSIONES Y RECOMENDACIONES
3.6. CONCLUSIONES
❖ La implementación de la aplicación web con módulo móvil es una buena decisión para
que la empresa brinde mejores servicios a los clientes
❖ La aplicación web con módulo móvil se desarrolló en base a las necesidades y
requerimientos dentro de la empresa consiguiendo buenos resultados.
❖ Con los resultados obtenidos mediante las pruebas se puede determinar que la aplicación
web con módulo móvil es de gran utilidad ya que se va a poder llevar un control de
compra-venta y pedidos
63
3.7. RECOMENDACIONES
64
BIBLIOGRÁFIA
65
Paez, J. (29 de 11 de 2014). Obtenido de http://www.definicionabc.com/tecnologia/correo-
electronico.php
Rengel, Y. d. (2013). Sistema para la Gestión de Información del Eje Proyecto. Sucre: Académica
Española.
66
Anexos
67
UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES
CARRERA DE SISTEMAS
TITULO
OCTUBRE-FEBREO
2017
68
PERFIL DEL PROYECTO
1. PROBLEMA
1.1 Planteamiento del problema.
Situación conflicto
En la empresa “LA LICO” las ventas de los productos se realiza mediante asistencia
telefónica y personalmente, generándose dificultad a la hora de hacer los pedidos por
la cantidad de órdenes que existen.
Otro problema que tiene la empresa es el tiempo que demora en trasladarse hacia la matriz
para hacer el pedido o su retiro.
Además la empresa dispone de terceras personas para que realicen el control de pedidos en
línea.
¿Cómo mejorar el control de pedidos en línea de la empresa “La lico” de la ciudad de Ibarra?
1.3 Objetivos
1.3.1 Objetivo general
Implantar una aplicación web para el control de pedidos en línea en la empresa “LA LICO”
de la ciudad de Ibarra.
2. Diagnosticar los procesos actuales que la empresa lleva a cabo para el control de
pedidos.
3. Desarrollar una aplicación web para la empresa “LA LICO” de la ciudad de Ibarra.
69
En vista de lo mencionado anterior mente es conveniente que se implemente un sistema de
control de pedidos en linea que ayude de manera eficiente al proceso de ventas,
además mediante la implementación del sistema de distribución en línea no solo se
llevará un control eficiente de las vetas sino que también se lograra optimizar los
recursos de la empresa y dar un respectivo control de sus productos.
MARCO TEORICO
“Podemos confirmar que el año que nació como tal el comercio electrónico fue hacia el 1920 en los
Estados Unidos dónde apareció la venta por catálogo. Este nuevo sistema de distribución fue
una gran revolución en ese momento, ya que fue la primera vez que se podía comprar sin
antes ver el producto. La venta por catálogo funcionaba mediante fotos ilustrativas del
producto. La gran ventaja que posibilitaba este sistema comercial era que se podía vender en
zonas rurales difíciles de acceder.” (lynkoo, 2012)
“En el año 2013, la empresa global Cisco Systems principalmente dedicada a la fabricación,
venta, mantenimiento, y consultoría de equipos de telecomunicaciones implementó
un probador (virtual dressing rooms) con realidad aumentada (Cisco Style) que
permite a sus clientes de ciertas tiendas probarse ropa sin desvestirse. El usuario o
usuaria se coloca delante de un gran espejo sobre el cual aparece su doble virtual y
las prendas de vestir (la colección de la tienda) que desea probar antes de comprar.
Sobre el mismo principio, el Centro de Innovación de las Tecnologías sin Contacto
(CITC EuraRFID, organización sin fines de lucro con sede en Lille (norte de
Francia)) implementó hace poco un sistema que permite probarse prendas
sin ponérselas. Esto se puede hacer en un probador, con un dispositivo móvil,
un espejo sobre el cual es conectado un dispositivo reconocedor de imagen (Kinect)
y las etiquetas del traje RFID. Las pruebas se muestran en lo alto del espejo. Estas
soluciones de prueba virtual están recién en su etapa inicial y son todavía reservadas
sólo para las marcas más reconocidas pero gracias a su éxito seguro pronto se
introducirá al comercio de la moda en general.” (J.L.Mico, 2011)
70
1.6.2 Desarrollo Cliente - Servidor
• Sistema operativo
Requerimientos
• Base de datos
Base de datos relacionales
Definición
Lenguaje SQL
Consultas
Subconsultas
1.6.3 Seguridad informática
• Seguridades en aplicaciones web
• Seguridad en la base de datos
• Seguridad en la aplicación
1.6.4 Aplicaciones Móviles
Definiciones
Procesos
Tipos de aplicaciones
71
ENCUESTA DIRIGIDA A LOS CLIENTES DE LA EMPREZA LA “LICO” DE LA
CIUDAD DE IBARRA
Objetivo: La presente encuesta está planteada para recolectar datos de interés previo a la
Aplicación de Tics para el desarrollo económico de las diferentes sucursales que tiene la empresa.
A: DESPACIO
B: RAPIDO
C: OTRO
A: BUENO
B: REGULAR
C: MALO
¿Considera necesario que la empresa tenga un sistema informático que ayude a la compra y
venta de productos?
SI
NO
¿Cuándo Ud. acude a la empresa sabe el costo de cada uno de los productos que va a adquirir?
SI
NO
A VECES
¿Para Ud. ¿Es importante que se pueda hacer revisión de stock y precios de los productos en la
aplicación web de la empresa?
SI
NO
72
SI
NO
A VECES
VENTAS
ADQUISICIONES
PEDIDOS
OTROS …………………………………………………………………………………………….
¿Le gustaría que a través de una aplicación móvil le permita realizar consultas y pedidos en
línea?
SI
NO
TALVEZ
73
UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES “UNIANDES”
IBARRA
TEMA: APLICACIÓN PARA EL CONTROL DE PEDIDOS EN LINEA PARA LA
EMPRESA “LA LICO” DE LA CIUDAD DE IBARRA.
74