Documentos de Académico
Documentos de Profesional
Documentos de Cultura
“UNIANDES”
CARRERA DE SISTEMAS
SEMESTRE: SÉPTIMO
I
CERTIFICACIÓN DE LOS DOCENTES DEL NIVEL
Nosotros: ING. RITA AZUCENA DÍAZ VÁSQUEZ, MSc. ING ANA LUCÍA
SANDOVAL PILLAJO, MSc. ING. MARCO ANTONIO CHECA CABRERA, MBA.
ING. JUBER RODRIGO MONTESDEOCA GALARRAGA, ING. LADY JANETH
GARCÍA TULCÁN docentes de Séptimo Nivel de Sistemas sección matutina
certificamos que el proyecto: APLICACIÓN WEB PARA EL CONTROL DE
COMPRA-VENTA CON MODULO MÓVIL DE CONTROL DE PEDIDOS EN
LA EMPRESA “JUAN DE LA CRUZ” DE LA CIUDAD DE IBARRA. Ha sido
desarrollado por los alumnos Katherine Espinosa, Javier Ipiales, Marcelo Guerrón,
Carlos Cañares y Víctor Chamorro bajo nuestra tutoría y dirección, cumpliendo todos
los requisitos y disposiciones legales establecidas por la Universidad UNIANDES, por
lo que autorizamos su presentación.
II
DECLARACIÓN DE AUTORÍA
Nosotros: Espinosa Katherine, Ipiales Javier, Marcelo Guerrón, Carlos Cañares y Víctor
Chamorro declaramos que nuestro Proyecto Integrador es auténtico y los derechos le
pertenecen a la Universidad Regional Autónoma de Los Andes UNIANDES, cuyo tema
es: APLICACIÓN WEB PARA EL CONTROL DE COMPRA-VENTA CON
MODULO MÓVIL DE CONTROL DE PEDIDOS EN LA EMPRESA “JUAN DE
LA CRUZ” DE LA CIUDAD DE IBARRA. Desarrollado libre y voluntariamente,
declaramos que el presente proyecto investigativo es original.
CC. 1004460653
CARLOS CAÑARES
III
ÍNDICE
CAPÍTULO I...................................................................................................................................1
1. PROBLEMA............................................................................................................................1
CAPÍTULO II..................................................................................................................................4
2. MARCO TEÓRICO...................................................................................................................4
IV
2.2.1.2.2. 2ª Fase: Diseño..........................................................................................................9
2.2.1.2.3. 3ª Fase: Codificación.................................................................................................9
2.2.1.2.4. 4ª Fase: Pruebas......................................................................................................10
2.2.1.3. Calendarización de proyectos de software.................................................................10
2.2.1.4. Gestión de riesgo........................................................................................................10
2.2.1.5. Marco lógico...............................................................................................................10
2.2.2. SERVICIOS EMPRESARIALES...........................................................................................10
2.2.2.1. Notificación de Pedidos y Ventas...............................................................................10
2.2.2.2. Adquisición de productos...........................................................................................10
2.2.2.3. Solicitudes de stock de productos..............................................................................11
2.2.2.4. Inventario...................................................................................................................11
2.2.2.5. Funcionamiento de Inventarios..................................................................................11
2.2.3. SEGURIDAD EN LAS APLICACIONES WEB.......................................................................12
2.2.3.1. Seguridad en base de datos.......................................................................................12
2.2.3.1.1. Amenazas................................................................................................................12
2.2.3.1.2. Contramedidas........................................................................................................12
2.2.3.1.3. Controles informatizados para entornos multiusuarios..........................................12
2.2.3.1.4. Controles de acceso................................................................................................13
2.2.3.1.5. Vistas.......................................................................................................................13
2.2.3.1.6. Copias de seguridad................................................................................................13
2.2.3.1.7. Integridad................................................................................................................13
2.2.3.1.8. Cifrado.....................................................................................................................13
2.2.3.1.9. Seguridad de un SGBD en entornos web.................................................................13
2.2.3.2. Descripción y estándares de seguridad......................................................................13
2.2.3.2.1. Estándares de seguridad.........................................................................................14
2.2.3.2.2. Servicios de seguridad.............................................................................................14
2.2.3.2.3. Mecanismos de Seguridad.......................................................................................15
2.2.3.2.4. Criterios de evaluación de sistemas computacionales confiables...........................16
2.2.3.2.5. Encriptación............................................................................................................16
2.2.3.3. Categorías de encriptación.........................................................................................17
2.2.3.3.1. Simétrica:................................................................................................................17
2.2.3.3.2. Asimétrico:..............................................................................................................17
2.2.3.4. Métodos de aplicación:..............................................................................................17
2.2.3.4.1. Cifrado de bloques:.................................................................................................17
2.2.3.4.2. Cifrados de flujo:.....................................................................................................17
V
2.2.3.5. Asegurando el ambiente del usuario..........................................................................18
2.2.3.5.1. Niveles de seguridad y las políticas.........................................................................18
2.2.3.5.2. Niveles de seguridad...............................................................................................18
2.2.3.5.3. Mecanismos de seguridad.......................................................................................18
2.2.3.5.4. Políticas de Seguridad.............................................................................................18
2.2.3.5.5. Sistema de seguridad GNU/Linux............................................................................18
2.2.3.5.6. Módulos Estándar...................................................................................................18
2.2.3.5.7. Sudo........................................................................................................................18
2.2.3.5.8. Especificaciones de los usuarios..............................................................................18
2.2.3.5.9. Configurar un usuario para usar sudo:....................................................................19
2.2.3.6. Asegurado los servicios..............................................................................................19
2.2.3.7. Asegurando la red......................................................................................................19
2.2.4. DESARROLLO CLIENTE SERVIDOR...........................................................................................19
2.2.4.1. Cliente-Servidor..........................................................................................................19
2.2.4.2. Categoría de Servidores.............................................................................................20
2.2.4.2.1. Servidores de archivos.............................................................................................20
2.2.4.2.2. Servidores de Base de Datos...................................................................................20
2.2.4.2.3. Servidores de Software de Grupo............................................................................20
2.2.4.2.4. Servidores WEB.......................................................................................................20
2.2.4.2.5. Servidores de correo...............................................................................................20
2.2.4.2.6. Servidor de objetos.................................................................................................20
2.2.4.2.7. Servidores de impresión..........................................................................................21
2.2.4.2.8. Servidores de aplicación..........................................................................................21
2.2.4.3. Componentes del Software........................................................................................21
2.2.4.4. Arquitectura Cliente-Servidor.....................................................................................21
2.2.4.4.1. Arquitectura Cliente Servidor Dos Capas.................................................................21
2.2.4.4.2. Arquitectura Cliente Servidor Tres Capas................................................................21
2.2.4.5. Clasificación de los sistemas Cliente-Servidor............................................................21
2.2.4.6. Intranet......................................................................................................................22
2.2.4.6.1. Estructura................................................................................................................22
2.2.4.7. Extranet......................................................................................................................22
2.2.4.7.1. Estructura................................................................................................................23
2.2.5. SISTEMAS MOVILES.......................................................................................................23
2.2.5.1. CAPAS DE UN SO MÓVIL.............................................................................................23
2.2.5.1.1. Kernel......................................................................................................................23
VI
2.2.5.1.2. Middleware.............................................................................................................23
2.2.5.1.3. Entorno de ejecución de aplicaciones.....................................................................23
2.2.5.1.4. Interfaz de usuario..................................................................................................24
2.2.5.2. Sistemas Operativos Móviles......................................................................................24
2.2.5.2.1. iOS...........................................................................................................................24
2.2.5.2.2. Windows Phone......................................................................................................24
2.2.5.2.3. BlackBerry 6.............................................................................................................25
2.2.5.2.4. Symbian...................................................................................................................25
2.2.5.2.5. Firefox O.S...............................................................................................................25
2.2.5.2.6. Ubuntu Touch..........................................................................................................26
2.2.5.3. Estudio de HTML5 para dispositivos móviles..............................................................26
2.2.5.4. Estudio del entorno de desarrollo de Android...........................................................26
2.2.5.5. Lenguajes de desarrollo para dispositivos móviles.....................................................27
2.2.5.5.1. Ruby........................................................................................................................27
2.2.5.5.2. HTML5.....................................................................................................................27
2.2.5.5.3. Visual Basic..............................................................................................................27
2.2.5.5.4. Java Script................................................................................................................27
2.2.5.5.5. appMobi XDK...........................................................................................................27
2.2.5.5.6. Xamarin...................................................................................................................28
2.2.6. HERRAMIENTAS DE DESARROLLO.................................................................................28
2.2.6.1. Postgresql...................................................................................................................28
2.2.6.2. Características............................................................................................................28
2.2.6.3. Netbeans....................................................................................................................28
2.2.6.4. JSP..............................................................................................................................28
2.2.6.5. Android.......................................................................................................................29
2.2.6.6. Android Studio...........................................................................................................29
2.2.6.7. Apache Tomcat...........................................................................................................29
2.2.6.8. GlassFish.....................................................................................................................29
2.3. PREGUNTAS DIRECTRICES O GENERATIVAS.............................................................................30
3. METODOLOGIA....................................................................................................................31
VII
3.2.2. MODALIDAD CUANTITATIVA.................................................................................................31
3.2.3. INVESTIGACIÓN DE CAMPO..................................................................................................31
3.3. TÉCNICAS E INSTRUMENTOS DE LA INVESTIGACIÓN..................................................................31
3.3.1. TÉCNICAS.........................................................................................................................31
3.3.2. INSTRUMENTOS.................................................................................................................32
3.4. POBLACIÓN Y MUESTRA...................................................................................................32
3.4.1. CÁLCULO DE LA MUESTRA...................................................................................................32
3.4.2. CÁLCULO DE LA MUESTRA CORREGIDA...................................................................................33
5. PROPUESTA.........................................................................................................................44
VIII
6. CONCLUSIONES Y RECOMENDACIONES...............................................................................65
7.1. CONCLUSIONES..........................................................................................................65
7.2. RECOMENDACIONES..................................................................................................65
7. REFERENCIAS BIBLIOGRÁFICAS............................................................................................66
IX
ÍNDICE DE TABLAS
X
ÍNDICE DE FIGURAS
XI
FIGURA 18: PRUEBAS DEL SISTEMA............................................................................................57
XII
XIII
XIV
CAPÍTULO I.
1. PROBLEMA
Por tal motivo es necesario la implementación de una página web de control de pedidos
con modulo móvil a fin de que sus adquisiciones sean efectivas y se brinde un mejor
servicio beneficiando tanto a los clientes como al dueño de la empresa de
multiservicios.
1
1.4.Objetivos
1.4.1. Objetivo General
Implementar una aplicación web para el control de pedidos con módulo móvil en la
empresa “Juan de la Cruz” de la ciudad de Ibarra.
1.5.Justificación e importancia
La empresa Multiservicios “Juan de la Cruz” es una empresa que tiene como finalidad
dedicarla a la comercialización de productos de primera necesidad, se va desarrollar un
sistema informático que permita solucionar los requerimientos de la empresa generando
rapidez en la comercialización de los productos, ocupando menos recursos a la hora de
comprar y vender, además que el sistema consta con un módulo móvil que le permite a
los clientes realizar los pedidos de los productos que necesitan incentivando el progreso
y desarrollo dentro de la empresa.
Con la elaboración de este sistema la empresa Juan de la Cruz podrá tener un mejor
manejo de compra-venta así como también pedidos de los clientes. Actualmente este
control se lleva de manera manual, lo cual lleva a un proceso lento y desorganizado al
momento de archivar información además que se usan documentos que pueden
ocasionar perdidas de información importante, evitando la utilización de métodos
antiguos y la acumulación de documentos dentro de la empresa.
2
vanguardia, para ofrecer el mejor servicio a sus clientes, donde se encuentren cómodos
y satisfechos. Los procesos serán más confiables a la hora de realizar compras-ventas y
pedidos.
3
CAPÍTULO II.
2. MARCO TEÓRICO
4
2.2.Definiciones Conceptuales
2.2.1. Aplicaciones web
2.2.1.1. Etapas del ciclo de vida del proyecto de software
El SDLC (Systems Development Life Cycle) o ciclo de vida de desarrollo de software
aporta una serie de pasos a seguir con la finalidad de diseñar y desarrollar un producto
software de manera eficiente. El borrador del SDLC incluye los pasos que veremos a
continuación:
2.2.1.1.1. Comunicación
Este es el primer paso donde el usuario inicia la petición de un producto software
determinado. Contacta al proveedor de servicios e intenta negociar las condiciones.
Presenta su solicitud al proveedor de servicios aportando la organización por escrito.
5
2.2.1.1.3. Estudio de viabilidad
Después de la recolección de requisitos, el equipo idea un plan para procesar el
software. En esta fase, el equipo analiza si el software puede hacerse para cubrir todos
los requisitos del usuario y si hay alguna posibilidad de que el software ya no sea
necesario.
2.2.1.1.6. Codificación
Esta fase también se puede denominar 'fase de programación'. La implementación del
diseño de software empieza con el lenguaje de programación más conveniente, y
desarrollando programas ejecutables y sin errores de manera eficiente.
2.2.1.1.7. Pruebas
Se estima que el 50% de todos los procesos de desarrollo de software deberían ser
evaluados. Los errores pueden arruinar el software tanto a nivel crítico y hasta el punto
de ser eliminado. Las pruebas de Software se hacen mientras se codifica y suelen
hacerlo los desarrolladores y otros expertos evaluadores a varios niveles. Esto incluye
evaluación de módulos, evaluación del programa.
6
2.2.1.1.8. Implementación
Aquí se instala el software en máquinas de clientes. A veces, el software necesita
instalar configuraciones para el consumidor final con posterioridad.
2.2.1.1.10. Disposición
Con el paso del tiempo, puede que el software falle en su ejecución. Puede que se
vuelva totalmente obsoleto o que necesite actualizaciones. De ahí surge una necesidad
urgente de eliminar una parte importante del sistema. Esta fase incluye archivar datos y
componentes software requerido, cierre del sistema, planificación de la actividad de
disposición y terminación de sistema en el momento final del sistema.
2.2.1.2. Metodología XP
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.
7
2.2.1.2.1. 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.
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.
8
2.2.1.2.2. 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.
9
2.2.1.2.4. 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.
10
Pero también se considera “compra” el objeto adquirido, una vez consumado el acto de
adquisición. Podemos decir que el hecho de que se produzca una compra también
presume la existencia de otra parte, que es la que recibe el precio pactado por la
prestación, es decir quien realiza la venta. Resulta obvio que cada parte necesita de la
existencia de la otra para cumplir su función, lo que se plasma en la conocida “compra-
venta”. (carlos, 2015)
El stock es una inversión que debe de realizar el comercio para asegurarse de atender el
flujo de demanda de manera adecuada para el buen funcionamiento del mismo y asi
poder llevar acabo sus actividades de manera normal sin necesidad de paralizar sus
ventas por falta del producto.
2.2.2.4. Inventario
Los inventarios son bienes reales y concretos, es decir bienes muebles e inmuebles.
Estos forman el caudal comercial de una persona o de una empresa. Dichos bienes son
para vender, de ahí el carácter de comercial o para consumición de bienes o servicios.
11
El concepto de inventario tiene que ver con la contabilidad, que es un sistema de control
y registro de ganancias (ingresos y egresos), tanto como operaciones económicas, el
inventario brinda información resumida y también concreta sobre las acciones de
compra y venta de bienes o servicios. (carlos, 2015)
el inventario inicial
las compras representan la mercancía adquirida por la empresa con el fin de
comercializarla.
Las devoluciones y gastos de compras
Las ventas
Las devoluciones de ventas
Mercancía en tránsito (son aquellas que están en camino a llegar a la empresa pero
que no han arribado todavía)
El inventario final
2.2.3. SEGURIDAD EN LAS APLICACIONES WEB
2.2.3.1. Seguridad en base de datos
La seguridad en las base de datos es un mecanismo fundamental ya que todo de sistema
informatizado está expuesto a cualquier tipo de amenazas de daño, enormes y
desastrosas como pequeñas y leves pero que de una manera u otra causan perdida de
confidencialidad.
2.2.3.1.1. Amenazas.
Se deben considerar las amenazas para cada tipo de empresa donde se implementara el
sistema de base de datos, ya que puede haber amenazas particulares a las que se esté
más expuesto.
2.2.3.1.2. Contramedidas
Las contramedidas que se toman para enfrentar las amenazas pueden ser físicas y
administrativas.
12
2.2.3.1.4. Controles de acceso
Existen dos tipos de controles de acceso al programa.
2.2.3.1.5. Vistas
Este mecanismo de vistas proporciona un sistema de seguridad potente y flexible, al
ocultar partes de la base de datos a ciertos usuarios.
2.2.3.1.7. 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
2.2.3.1.8. Cifrado
Es ocultar los caracteres legibles de una clave
13
Además la seguridad se encarga de reducir las debilidades en un sistema y los recursos,
la seguridad en internet es el almacenamiento y la transferencia de información
Amenazas accidentales:
Son amenazas sin intentos premeditados como desastres naturales y los sistemas que no
funcionen adecuadamente.
Amenazas internacionales:
Se extienden desde la examinación casual de datos de computadores y redes hasta
ataques elaborados.
Amenazas pasivas:
No modifican la información y tampoco cambian la operación ni el estado de su
sistema.
Confidencialidad:
La información será accesible solo por el personal autorizado, para la confidencialidad
se aplica el cifrado.
Autenticación:
Se refiere a que la dirección a la que se dirija la página debe ser verdadera, se puede
emplear mediante huellas dactilares, identificación de iris, contraseñas.
Integridad:
14
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.
Específico:
Es una tecnología que solo implementa un servicio de seguridad a la vez como la
encriptación.
General:
Lista procedimientos que ayudan a implementar uno o más servicios de seguridad a la
vez.
15
Este documento define las vulnerabilidades como algo que los administradores de
sistemas deben ser responsables.
Algunos procedimientos que podemos poner en práctica para asegurar nuestro sistema
son: proceso de auditoría, sistemas de archivos auditados, determinación de riesgos y
control de virus.
A1 (máxima seguridad): los sistemas operativos son muy seguros como autentificación.
B3 (Dominios de seguridad): requieren una re-escritura del kernel del sistema operativo
de tal forma que el sistema operativo sea seguro.
2.2.3.2.5. Encriptación
La encriptación es el proceso de codificar la información, se la utiliza para que los
documentos más seguros de modificarlos.
La encriptación debe ser difícil des encriptar un mensaje sin la clave de encriptación y
se lo realiza usando un algoritmo matemático complejo.
16
2.2.3.3. Categorías de encriptación
La encriptación usa un algoritmo matemático para que sean resueltos, de tal forma que
el mensaje sea presentado sin sentido y se clasifican en:
2.2.3.3.1. Simétrica:
Este encripta los datos usando una cadena de texto
2.2.3.3.2. Asimétrico:
Encripta los datos usando un par de llaves, también conocida como criptografía.
Hash: encripta los datos usando una ecuación matemática despliega la información y
puede ser recuperada.
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.
17
2.2.3.5. Asegurando el ambiente del usuario
Los ID de usuarios, contraseñas y permisos de archivos son importantes para asegurar
los sistemas de host.
2.2.3.5.7. Sudo
Un usuario cualquiera no debe tener la clave de root, esta herramienta permite tener una
propia contraseña
18
2.2.3.5.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.
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
2.2.3.7. 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.
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.
19
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.
20
2.2.4.2.7. 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.
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.
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.
21
2.2.4.6. 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.
2.2.4.6.1. 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 ésta 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).
2.2.4.7. 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).
22
2.2.4.7.1. 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.5.1.2. Middleware
El middleware es el conjunto de módulos que hacen posible la propia existencia de
aplicaciones 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.
23
2.2.5.1.4. 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.5.2.1. 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 venta en ese momento.
24
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).
2.2.5.2.3. 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 encontrara 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.
2.2.5.2.4. 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.
25
2.2.5.2.6. 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.
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.
26
2.2.5.5. Lenguajes de desarrollo para dispositivos móviles
2.2.5.5.1. 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.
2.2.5.5.2. 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.
27
2.2.5.5.6. Xamarin
Con Xamarin, escribes tus aplicaciones enteramente en C #, compartiendo el mismo
código en 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.6.2. Características
Software libre
Licencia GNU/GPL
Velocidad de accesibilidad a los datos
Múltiples motores de almacenamiento
2.2.6.3. 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.6.4. 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.
28
2.2.6.5. Android
Android es un sistema operativo basado en el núcleo Linux. Fue diseñado
principalmente para dispositivos móviles con pantalla táctil, como teléfonos
inteligentes, tablets o tabléfonos; y también para relojes inteligentes, televisores y
automóviles. Inicialmente fue desarrollado por Android Inc.
2.2.6.8. 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).
29
2.3.Preguntas directrices o generativas
¿Qué fundamentos teóricos sustentan el desarrollo del control de los procesos de
compra-venta pedidos de productos de primera necesidad en la empresa Juan de
la Cruz?
¿Para diagnosticar las necesidades y requerimientos que existen dentro de la
Empresa Juan de la Cruz cuales serían los instrumentos utilizados para poder
tomarlos en cuenta en el desarrollo de la aplicación web?
¿Qué herramientas se utilizan para desarrollar la aplicación web para la compra-
venta de artículos de primera necesidad dentro de la Empresa “Juan de la Cruz”
con módulo móvil para el control de pedidos?
30
3. METODOLOGÍA
3.1.Diseño de la investigación
Parte del diseño de la investigación se ha venido generando desde el capítulo 1 desde
que se inicia el estudio del problema.
La Entrevista
Es una técnica directa de recolección de datos de forma oral y personalizada sobre “Juan
de la Cruz” 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.
31
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 “Juan de la Cruz”
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.
Cuestionarios
Elaborado con preguntas cerradas, para facilitar el procesamiento de la información q se
necesita.
3.4.Población y muestra
Con el resultado de la siguiente muestra podremos saber cuántas encuestas se realizaran
a los clientes de la empresa “Juan de la Cruz”.
Hay que considerar que para el estudio se realizará una entrevista al gerente de la
empresa y la encuesta a los clientes de la misma basados en la muestra que a
continuación se realiza
n = El tamaño de la muestra.
32
E: Límite aceptable de error muestra que, generalmente cuando no se tiene su valor,
suele utilizarse un valor que varía 3% (0,03), valor que queda a criterio del encuestador.
Tabla 1
Datos para cálculos de muestra de los habitantes de la ciudad de Ibarra
Tamaño de la población.
168.734
N: 168.734
Z: 1.96
E: 5% =0.05
P: 5% =0.5.
Q: 5%=0.5.
Formula
Z 2∗p∗q
n=
e2
(1.96)2∗0.5∗0.5
n=
(0.05)2
3.84∗0.25 0.96
n= = =384
0.0025 0.0036
n
n0 =
( n−1)
1+
N
33
384
n0 =
(384−1)
1+
168.734
384
n=
383
1+
168.734
384 384
n= = =117
1+2.26984 3.26984
34
4. ANÁLISIS E INTERPRETACIÓN DE RESULTADOS
Tabla 2:
Adquisición de un producto
MEDIDAS CANTIDADES
A. Despacio 46
B. Rápido 63
C. Otro 8
Fuente: Encuestas realizadas a los clientes de la empresa Juan de la Cruz
60
50
40
30
20
10
0
A B C
Tabla 3:
Procesos dentro de la empresa
MEDIDAS CANTIDADES
A.- Bueno 23
B.- Regular 86
C.- Malo 8
Fuente: Encuestas realizadas a los clientes de la empresa Juan de la Cruz
ANALISIS
En esta pregunta se puede evidenciar que la mayoría de las personas encuestadas respondieron que el
proceso de ventas manual que la empresa utiliza actualmente es un servicio regular, 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
3. ¿Considera necesario que la empresa tenga un sistema informático que
ayude a la compra y venta de productos?
Respuestas:
Tabla 4:
Sistema Informático
MEDIDAS CANTIDADES
A.- Si 95
B.- No 22
Fuente: Encuestas realizadas a los clientes de la empresa Juan de la Cruz
37
4. ¿Cuándo Ud. acude a la empresa sabe el costo de cada uno de los productos
que va a adquirir?
Respuestas:
Tabla 5:
Costos dentro de la empresa
MEDIDAS CANTIDADES
A.- Si 33
B.- No 60
C.- A veces 24
Fuente: Encuestas realizadas a los clientes de la empresa Juan de la Cruz
60
50
40
30
20
10
0
A B C
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?
Respuestas:
Tabla 6:
Aplicación web
MEDIDAS CANTIDADES
A.- Si 109
B- No 8
Fuente: Encuestas realizadas a los clientes de la empresa Juan de la Cruz
100
80
60
40
20
0
A B
ANALISIS
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, 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.
39
6. ¿Cuándo acude a la empresa encuentra disponibles los productos que
necesita?
Respuestas:
Tabla 7:
Stock de productos dentro de la empresa
MEDIDAS CANTIDADES
A.- Si 42
B.- No 11
C.- A veces 64
Fuente: Encuestas realizadas a los clientes de la empresa Juan de la Cruz
60
50
40
30
20
10
0
A B C
MEDIDAS CANTIDADES
A. Ventas 67
B. Adquisiciones 19
C. Pedidos 26
D. Otros 5
Fuente: Encuestas realizadas a los clientes de la empresa Juan de la Cruz
70
60
50
40
30
20
10
0
A B C D
ANALISIS
En esta pregunta se puede evidenciar que todas las personas encuestadas respondieron que los servicios
que ofrece la empresa mayormente es el de venta de productos de primera necesidad, 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.
41
8. ¿Le gustaría que atravez de una aplicación móvil le permita realizar
consultas y pedidos en línea?
Respuestas:
Tabla 9:
Módulo móvil
MEDIDAS CANTIDADES
A.- Si 93
B.- No 14
C.-Tal vez 10
Fuente: Encuestas realizadas a los clientes de la empresa Juan de la Cruz
42
4.2.Respuestas a las preguntas directrices
¿Qué fundamentos teóricos sustentan el desarrollo de los procesos de compra-
venta y pedidos de productos de primera necesidad en la empresa Juan de la
Cruz?
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
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
43
5. PROPUESTA
5.
5.1.DESARROLLO DE LA PROPUESTA
Para el desarrollo de software se utilizará la metodología XP la misma que consta de:
Planificación
Diseño.
Desarrollo.
Pruebas.
5.2.PLANIFICACIÓN
Para el desarrollo del sistema de compra ventas y pedidos en un sitio de aplicación Web
se lo desarrollo en el lenguaje de programación JSP y la base de datos Postgresql ya que
entre ambos poseen una licencia gratuita y están disponibles para muchas plataformas.
5.2.1. Cronograma de actividades
No Actividad Duración Comienzo Fin
1 Inicio
Analizar de las necesidades de las 3 días 21/10/2016 24/10/2016
empresas
2 Seleccionar la empresa 2 días 24/10/2016 26/10/2016
3 Elaborar perfil de proyecto 4 días 26/10/2016 30/10/2016
informático
4 Corrección del perfil 4 días 31/10/2016 4/11/2016
5 Presentación y aprobación del 4 días 4/11/2016 8/11/2016
perfil
6 Realizar una observación de las 5 días 4/11/2016 8/11/2016
falencias
7 Levantar requerimientos 4 días 4/11/2016 8/11/2016
8 Documentación Avance 6 días 4/11/2016 8/11/2016
9 Presentación del primer informe 2 días 4/11/2016 8/11/2016
10 ANALISIS 8 días 4/11/2016 8/11/2016
Elaboración entrevista y
cuestionarios
44
11 Revisión y corrección de encuesta 3 días 4/11/2016 8/11/2016
y guía de entrevista
12 Aplicar encuestas y entrevistas 4 días 4/11/2016 8/11/2016
13 Análisis de encuestas y entrevistas 5 días 4/11/2016 8/11/2016
14 Presentación del segundo informe 6 días 4/11/2016 8/11/2016
15 DISEÑO 10 días 4/11/2016 8/11/2016
Diseño de diagramas
16 Diseño de base de datos 5 días 4/11/2016 8/11/2016
17 Diseñar interfaces 8 días 4/11/2016 8/11/2016
18 CODIFICACIÓN 10días 4/11/2016 8/11/2016
Codificación de procesos
19 Codificación de interfaces 10 días 4/11/2016 8/11/2016
20 Documentación 5 días 4/11/2016 8/11/2016
21 PRUEBAS 4 días 4/11/2016 8/11/2016
Pruebas de Aplicación web
22 Pruebas de aplicación móvil 4 días 4/11/2016 8/11/2016
23 Avance de Documento 2 días 4/11/2016 8/11/2016
24 IMPLEMENTACIÓN 5días 4/11/2016 8/11/2016
Avances de la aplicación web
25 Avances de la aplicación móvil 5 días 4/11/2016 8/11/2016
45
Además se cuenta con la colaboración de todo el personal de la clínica, quienes brindan
5.2.4. Requerimientos
5.2.4.1. Requerimientos de instalación
Compatibilidad con Windows
Procesador Intel Core2 Duo CPU 2.XX GHz o AMD. (Se recomiendan 2 GB de RAM)
Será compatible con cualquier distribución de Linux siempre que cumpla los siguientes
requisitos mínimos:
46
Compatibilidad con Android
Acceso a internet
Tabla 10:
Tabla de funcionamiento
Internet 9 SI SI NO
Explorer
Firefox Última NO SI SI
versión
Chrome Última NO SI SI
versión
Opera Última SI SI SI
versión
Maxthon Última SI SI SI
versión
47
5.3.1.1. Requerimientos mínimos de la aplicación web
Tabla 12:
Complementos para la aplicación web
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
software.
48
Ingreso al sistema
49
Figura 14: Principal de la aplicación móvil
Fuente: Autores
Registro de usuarios
En esta ventana tenemos las opciones de usuarios además del registro de los pedidos de
los clientes
5.5.DESARROLLO
5.5.1. 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.
51
this.servidor = servidor;
} public void sgbdset(String sgbd) {
this.sgbd = sgbd;
} public void jdbcset(String jdbc) {
this.jdbc = jdbc;
} public String bddget() {
return this.bdd;
} public String usuariget() {
return this.usuario;
} public String claveget() {
return this.clave;
} public String servidorget() {
return this.servidor;
} public String sgbdget() {
return this.sgbd;
} public String jdbcget() {
return this.jdbc;
}public void conectar() {
try {
Class.forName(this.sgbd);
this.enlace = "jdbc:" + this.jdbc + "://" + this.servidor + "/" + this.bdd;
conecta = DriverManager.getConnection(this.enlace, this.usuario, this.clave);
if (conecta != null) {
System.out.println("exitoso");
}
} catch (SQLException ex) {
System.out.println("error 1:");
} catch (ClassNotFoundException ex) {
System.out.println("error 2:");
}
}
<%
con.consulta("INSERT INTO personas(dni, tdocumento, nombres, apellidos,
correo, telefono, celular,direccion, fnacimiento, sexo, clave, tpersona)VALUES ('"
+ dni + "', 'true', '" + nombre + "', '" + apellido + "', '" + correo + "', '" + telefono +
"', '" + celular + "','" + direccion + "','" + fechas + "', 'true', md5('" + clave + "') , '" +
tpersona + "');");
MailSender ms = new MailSender();
ms.asunto("Bienvenido a " + empresa + " " + nombre);
ms.mensaje("Bienvenido a " + empresa + " \n \n "
+ "Has adquirido una cuenta de usuario en nuestro servicio de " + empresa + " \n \n
"
+ "Activa tu cuenta y empieza a utilzar este Servicio. Haz click en este enlace:
52
\n \n "
+ dominio + "/JuandelaCruz/procesos/final.jsp?id=" + dni + " \n \n "
+ "Tus datos de acceso al servicio son: \n \n "
+ "Link de Acceso: \n \n "
+ dominio + "/ JuandelaCruz /administracion/logina.jsp" + " \n \n "
+ "Usuario: " + correo + " \n \n "
+ "Clave : " + clave);
ms.para(correo);
ms.SendMail();
}%>
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.
<%
rs = con.consulta("select p.*,pe.* from personas p,perfiles pe where
pe.idperfil=p.tpersona and p.dni='" + id + "'");
while (rs.next()) {
out.print("<form id='registro' name='registro' action='' method='POST'>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Número de Identificación</span>
</h5>");
out.print(" <input type='text' disabled class='form-control' id='dni' name='dni'
placeholder='Ingrese su Número de Identificación' value='" + rs.getString("dni") +
"'>");
out.print(" </div>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Nombres </span></h5>");
out.print(" <input type='text' required class='form-control' id='nombres'
name='nombres' placeholder='Ingrese sus nombres' value='" +
rs.getString("nombres") + "'>");
out.print(" </div>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Apellidos </span></h5>");
out.print(" <input type='text' required class='form-control' id='apellidos'
name='apellidos' placeholder='Ingrese sus apellidos' value='" +
rs.getString("apellidos") + "'>");
out.print(" </div>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Correo Electronico </span></h5>");
out.print(" <input type='email' required disabled class='form-control' id='correo'
name='correo' placeholder='Ingrese su correo electronico'
onchange='validare(registro);' value='" + rs.getString("correo") + "'>");
out.print(" </div>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Número de Telefono </span></h5>");
53
out.print(" <input name='telefono' type='text' class='form-control' id='telefono'
placeholder='Ingrese su numero de telefono' onkeydown='return numeros(event)'
maxlength='15' value='" + rs.getString("telefono") + "'>");
out.print(" </div>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Número de Celular </span></h5>");
out.print("<input name='celular' type='text' class='form-control' id='celular'
placeholder='Ingrese su numero de celular' onkeydown='return numeros(event)'
maxlength='15' value='" + rs.getString("celular") + "'>");
out.print("</div>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Dirección </span></h5>");
out.print(" <input type='text' required class='form-control' id='direccion'
name='direccion' placeholder='Ingrese su direccion donde vive actualmente'
value='" + rs.getString("direccion") + "'>");
out.print("</div>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Perfil del Usuario </span></h5>");
out.print(" <select name='perfil' required class='form-control' id='perfil'>");
out.print(" <option value='" + rs.getString("idperfil") + "'>" +
rs.getString("nomperfil") + "</option>");
ResultSet rs1 = con.consulta("select * from perfiles where estado='true'");
while (rs1.next()) {
out.print(" out.print('<option value='" + rs1.getString("idperfil") + "'>" +
rs1.getString("nomperfil") + "</option>');");
} out.print(" </select>");
out.print(" </div>");
out.print("<div class='form-group'>");
out.print(" <h5><span class='help-block'> Sexo </span></h5>");
out.print(" <select name='sexo' required class='form-control' id='sexo'>");
if (rs.getString("sexo").equals("t")) {
out.print(" <option value='true'>Masculino</option>");
} else { out.print(" <option
value='false'>Femenino</option>");
} out.print(" <option value='true'>Masculino</option>");
out.print(" <option value='false'>Femenino</option>");
out.print(" </select>");
out.print(" </div>");
out.print(" <div class='form-group'>");
out.print(" <h5><span class='help-block'> Fecha De Nacimiento </span></h5>");
out.print(" <input type='text' required class='form-control' id='fnacimiento'
name='fnacimiento' placeholder='Fecha de Nacimiento' title='Fecha de Nacimiento'
value='" + rs.getString("fnacimiento") + "'>");
out.print(" </div>");
out.print(" <button type='submit' class='btn btn-default btn-green' id='enviar'
name='enviar'>Guardar Registro</button>");
out.print(" </form>");
} %>
54
5.6.PRUEBAS
Pruebas de la aplicación web.- En esta prueba se realizó los siguientes pasos.
Asegurar la apropiada navegación dentro del sitio, Ingreso de datos, procesamiento y
recuperación.
Ejecutar cada caso de uso, flujo básico o función.
55
Resultados:
En esta prueba se revisó que cada ventana y se determinó si es comprensible para el
usuario, al finalizar esta prueba se demostró que la interfaz de cada ventana del sitio es
muy comprensibles para que el usuario ingrese su información.
Pruebas de la aplicación móvil.- En esta prueba se realizó los siguientes pasos.
Asegurar la apropiada navegación dentro de la aplicación, Ingreso de datos,
procesamiento y corrección de errores.
Resultados:
En esta prueba se revisó que cada ventana y se determinó si es comprensible para el
usuario, al finalizar esta prueba se demostró que la interfaz de cada ventana del sitio es
muy comprensibles para que el usuario ingrese su información.
Pruebas de Compatibilidad y Conversión.- En esta prueba se realizó los siguientes
pasos.
Buscar problemas de compatibilidad y conversión en los navegadores.
Comparar resultados.
56
Figura 19: Pruebas de compatibilidad y conversión
Fuente: Autores
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 en plataformas Firefox y Google
Chrome, Maxthon e Internet Explorer.
Pruebas de Seguridad y Control de Acceso.- En esta prueba se realizó los siguientes
pasos.
Verificar que un usuario solo pueda acceder a las funciones y datos que su cargo tenga
permitido.
Verificar la seguridad del sistema, incluyendo acceso a datos.
Identificar cada tipo de usuario y las funciones que desempeña.
57
Figura 20: Pruebas de seguridad y control de acceso
Fuente: Autores
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.
Pruebas de recuperación de contraseña.- En esta prueba se realizó los siguientes
pasos.
Asegurar que el usuario pueda recuperar su contraseña
58
Figura 21: Pruebas del sistema
Fuente: Autores
Resultados:
En esta prueba se comprobó que usuario puede obtener una nueva contraseña y seguir
teniendo acceso a su cuent
59
Figura 22: Pruebas de configuración
Fuente: Autores
Resultados:
En esta prueba se ejecutó el sistema en diferentes equipos cada uno con diferentes
recursos, al finalizar esta prueba se demostró que el sitio no necesita muchos recursos
para su funcionamiento logrando que es sitio corra en un equipo con las siguientes
características.
60
5.6.1. Requerimientos mínimos
Tabla 13:
Requerimientos mínimos y pruebas en computadoras físicas
Laptop Toshiba
Prueba de navegador El SO de este Excelente resultado,
satellite
Google Chrome y Sistema computador, es el no existieron
operativo windows 10. Con navegador Windows 7. La inconvenientes.
Google Chrome y aplicación no presento
Sistema problemas en cuanto a
Operativo su funcionamiento y
Windows 10 compatibilidad en este
sistema operativo, cabe
recalcar que la
aplicación funciono
correctamente al ser
ejecutada en el
navegador Google
Chrome.
Laptop ASUS
Prueba con navegador Con sistema operativo Error de conexión
Google Chrome y sistema Con navegador Windows 8.1, presentó con la base de datos
Operativo Windows 10 Google Chrome y un error fácil de por falta de una
Sistema corregir con una librería, esto fue
Operativo librería de la conexión solucionado
Windows 10 a la base de datos, sin instalando la misma,
embargo con respecto y en cuanto al
al navegador Google navegador no
Chrome no presento existieron problemas.
error alguno.
61
Computador
Pruebas en navegador Se realizó la prueba en No existieron
Quasad con
Google Chrome y sistema este computador con el inconvenientes de
navegador Google
operativo Windows 8.1 sistema operativo ejecución.
Chrome y
Windows 8.1 y con el
Sistema
navegador Google
Operativo
Chrome en donde la
Windows 8.1
aplicación funcionó
correctamente y sin
ningún tipo de
inconveniente.
Computador Hp
Pruebas con sistema También se realizó No se presentó
Compact 8100
operativo CentOs, y pruebas en el Sistema ningún inconveniente
con navegador
navegador Mozilla Firefox. operativo CentOs 6 con en la ejecución de la
Mozilla Firefox. y
el navegador Mozilla aplicación.
Sistema
Firefox.
Operativo
centOS.
Smartphone
Pruebas con Smartphone .La aplicación no Excelente resultado,
Samsung Ace 4
Samsung Ace 4 duos y Ice presento problemas en no existieron
duos
Cream Sandwich 4.0 cuanto a su inconvenientes.
funcionamiento y
compatibilidad.
Smartphone
Pruebas con Smartphone .La aplicación no Excelente resultado,
Samsung S3 mini
Samsung S3 mini y Jelly presento problemas en no existieron
Bean 4.1 cuanto a su inconvenientes.
funcionamiento y
compatibilidad.
Smartphone
Pruebas con Smartphone .La aplicación no Excelente resultado,
Alcatel Pop3
Alcatel Pop3 y KitKat presento problemas en no existieron
4.4 cuanto a su inconvenientes.
funcionamiento y
compatibilidad.
Smartphone
Pruebas con Smartphone .La aplicación no Excelente resultado,
Samsung S5 mini
Samsung S5 mini y Lollipop presento problemas en no existieron
5.0 cuanto a su inconvenientes.
funcionamiento y
compatibilidad.
Fuente: Autores
62
6. CONCLUSIONES Y RECOMENDACIONES
7.1.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
Para el desarrollo de la aplicación web con módulo móvil se usaron herramientas y
metodologías de investigación con las cuales se logró diagnosticar las necesidades
que tiene la empresa
7.2.RECOMENDACIONES
Durante el funcionamiento de la aplicación web con módulo móvil realizar las
respectivas copias de respaldo de la base de datos
En caso de pérdidas o cualquier percance que pueda ocurrir se lo puede hacer cada 8
días o de acuerdo a la necesidad de la empresa.
Para la utilización de la aplicación web llenar todos los campos obligatorios, para
poder llevar una base de datos con consistencia de la información.
63
Antes de utilizar la aplicación se debe capacitar sobre el uso de la aplicación web a
todas las personas que lo vayan a utilizar ya que el manejo de la aplicación web
podría comprometer toda la información de la empresa.
Se recomienda que se siga desarrollando módulos para una mayor funcionalidad en
la empresa.
7. REFERENCIAS BIBLIOGRÁFICAS
64
%253Bhttp%25253A%25252F%25252Fwww.monografias.com
%25252Ftrabajos72%25252Fbase-datos%25252Fbase-da
Matamoros, W. A. (10 de 02 de 2013). Obtenido de
http://www.portalesmedicos.com/publicaciones/articles/2192/7/Information-
system-for-Health-Care-Management
Microsoft. (10 de 12 de 2014). Obtenido de https://msdn.microsoft.com/es-
es/library/cc786900(v=ws.10).aspx
Microsoft. (12 de 05 de 2014). Obtenido de https://msdn.microsoft.com/es-
es/library/ms152567(v=sql.120).aspx
Miranda, J. (06 de 10 de 2013). Obtenido de
http://www.iuma.ulpgc.es/users/jmiranda/docencia/libro_ada/libro_ada_html/no
de133.htm
Omar. (2010). Base de datos.
Paez, J. (29 de 11 de 2014). Obtenido de
http://www.definicionabc.com/tecnologia/correo-electronico.php
Ramírez, I. (16 de 08 de 2012). Obtenido de http://articulos.softonic.com/aprende-a-
compartir-archivos-entre-tus-pc
Rengel, Y. d. (2013). Sistema para la Gestión de Información del Eje Proyecto. Sucre:
Académica Española.
Tripod. (02 de 12 de 2013). Obtenido de
http://crcalan26.tripod.com/basedistribuida.html
UNED. (15 de 06 de 2014). Obtenido de http://portal.uned.es/portal/page?
_pageid=93,36656481&_dad=portal&_schema=PORTAL
Vasquez, J. (2014). Investigaciones En Tecnologias De Informacion, Informatica Y
Computacion. Guadalajara: Author Solutions.
Velez, A. (13 de 11 de 2013). Obtenido de http://basededatos30.blogspot.com/
Omar. (2010). Base de datos.
Paez, J. (29 de 11 de 2014). Obtenido de
http://www.definicionabc.com/tecnologia/correo-electronico.php
Peterson, J. (16 de 2 de 2012). http://ingenieriasw2.blogspot.com/p/calidad-de-
software.html. Recuperado el 11 de 12 de 2014
PostgreSQL. (20 de 02 de 2014). http://es.wikipedia.org/wiki/PostgreSQL. Recuperado
el 22 de 02 de 2014
Pressman, R. S. (2008). Ingeniería de Software. Mc Graw Hill.
Ramírez, I. (16 de 08 de 2012). Obtenido de http://articulos.softonic.com/aprende-a-
compartir-archivos-entre-tus-pc
65
ROBINZON, R. E. (10 de JUNIO de 2013). Análisis Diseño y Desarrollo de un Sistema
Informático. Recuperado el 21 de 02 de 2014, de pucese:
http://www.pucese.edu.ec/websistemas/index.php/repositorio-de-trabajos-de-
grado/category/62-year-2013#
ROMERO, J. J. (2012). INTELIGENCIA ARTIFICIAL . Santiago: Tórculo, Artes
Gráficas. Santiago .
Ruiz, B. (12 de 12 de 2012).
https://sites.google.com/site/benjaminruiztadeo/home/unidad-1/clasificacion-de-
los-modelos-de-simulacion. Recuperado el 15 de 12 de 2014
Ruiz, M. (2012). Fundamentos teoricos SGBD
66
Anexos
67