UNIVERSIDAD TECNOLÓGICA EQUINOCCIAL
FACULTAD DE CIENCIAS DE LA INGENIERÍA
CARRERA DE INGENIERÍA EN INFORMÁTICA Y
CIENCIAS DE LA COMPUTACIÓN
ANÁLISIS DE TECNOLOGÍAS DE ESCANEO Y RECONOCIMIENTO DE CÓDIGOS QR Y SU APLICABILIDAD EN
TELÉFONOS MÓVILES SMARTPHONE MEDIANTE UNA CÁMARA FOTOGRÁFICA.
TRABAJO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO EN INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓN
SANTIAGO PACÍFICO ÁVILA MOLINA.
DIRECTOR: Ing. Rodrigo Proaño
Quito, Julio 2016
DEDICATORIA
Quiero dedicar este esfuerzo tan grande a Dios que con su guía he podido
sobrellevar muchos temas y ha permitido que culmine una etapa tan importante
en mi vida, así como a mi madre María Elena Molina que con sus consejos de
vida ha forjado en mi muchos objetivos claros que ahora se ven reflejados con mi
título profesional, a mis hermanas que me han apoyado directa o indirectamente
en mis estudios, así como a como a mi tía y mi padre que en un determinado
tiempo me supieron apoyar.
AGRADECIMIENTOS
Quiero agradecer a Dios por darme tantas bendiciones en mi vida y que
permita que uno de mis objetivos que los tenía pendientes se cristalice y sea una
realidad, a mi familia que me han apoyado a lo largo de estos años y me han
impulsado cada día a ser más exigente conmigo tanto en el ámbito profesional
como personal, a mi novia Marisol que con su constante apoyo ha hecho que mi
proceso de culminación de esta maravillosa etapa sea llevadera y mucho más
rápida.
i
ÍNDICE DE CONTENIDOS
PÁGINA
RESUMEN ................................................................................................ viii
ABSTRACT ................................................................................................ ix
INTRODUCCION………………………………………………………………… 2
MARCO TEÓRICO ...................................................................................... 7
2.1 SISTEMAS DE ESCANEO ÓPTICO ................................................ 7
2.1.1 LECTOR DE MARCAS ÓPTICAS (OMR).................................. 7
2.2 SISTEMAS DE ESCANEO CARACTERES ÓPTICOS (OCR) ......... 8
2.2.1 SISTEMA DE ESCANEO Y RECONOCIMIENTO INTELIGENTE
DE CARACTERES (ICR) ......................................................... 10
2.2.2 TECNOLOGÍA DE IMAGEN .................................................... 11
2.3 CÓDIGOS QR ................................................................................ 12
2.3.1 APLICACIÓN Y USO DE CÓDIGOS QR. ................................ 15
2.4 LECTOR CÓDIGO QR EN SMARTPHONES ................................ 16
2.5 CREACIÓN DE CODIGO QR......................................................... 17
2.5.1 OPCIONES AUTOMÁTICAS CÓDIGO QR. ............................ 19
2.5.2 DISEÑO Y PERSONALIZACIÓN ............................................. 24
2.6 ANALISIS APLICACIONES QR ..................................................... 27
2.6.1 QR. DROID .............................................................................. 27
2.6.2 SCAN ....................................................................................... 28
2.6.3 BARCODE SCANNER ............................................................ 30
2.7 ANÁLISIS LECTORES QR ............................................................ 30
2.8 INGENIERÍA DE SOFTWARE ....................................................... 32
ii
2.9 METODOLOGÍA DE DESARROLLO DEL SOFTWARE ................ 34
2.9.1 METODOLOGÍA RUP ............................................................ 34
2.10 PROCESOS DEL DESARROLLO.................................................. 34
2.10.1 CARACTERÍSTICAS DEL RUP ............................................... 35
2.10.2 FASES DEL RUP .................................................................... 36
2.11 CICLOS DE VIDA DE DESARROLLO ........................................... 37
METODOLOGÍA ........................................................................................ 40
3.1 METODOLOGÍA DE INVESTIGACIÓN .......................................... 40
3.1.1 MÉTODO INDUCTIVO ............................................................ 40
3.1.2 MÉTODO DEDUCTIVO ........................................................... 40
3.1.3 MÉTODO DE ANÁLISIS .......................................................... 41
3.1.4 MÉTODO SISTEMÁTICO ........................................................ 41
3.2 FASES DEL RUP ........................................................................... 41
3.2.1 FASE 1: INICIO ....................................................................... 41
3.2.2 FASE 2: ELABORACIÓN ........................................................ 43
3.2.3 FASE 3: CONSTRUCCIÓN DEL PROTOTIPO ....................... 43
3.2.4 FASE 4: TRANSICIÓN ............................................................ 44
ANÁLISIS Y DISCUSIÓN DE RESULTADOS ........................................... 47
4.1 FASE DE INICIO ............................................................................ 49
4.1.1 ALCANSE DEL PROYECTO ................................................... 49
4.1.2 REQUISITOS FUNCIONALES ................................................ 50
4.1.3 REQUISITOS NO FUNCIONALES .......................................... 51
4.2 FASE DE ELABORACIÓN ............................................................. 51
4.2.1 ARQUITECTURA DEL SISTEMA ............................................ 52
iii
4.3 FASE DE CONSTRUCCIÓN .......................................................... 53
4.3.1 MAQUETACIÓN ...................................................................... 53
4.3.2 DIAGRAMA DE CASOS DE USO ........................................... 55
4.3.3 DIAGRAMA DE BASE DE DATOS .......................................... 64
4.3.4 CÓDIGO FUENTE ................................................................... 64
4.4 TRANSICIÓN ................................................................................. 65
4.4.1 PROBLEAMAS DE IMPLEMENTACIÓNEN EL SISTEMA. ..... 67
4.4.2 PRUEBAS DE FUNCIONALIDAD. .......................................... 68
4.4.3 PRUEBA INTEGRAL ............................................................... 70
CONCLUSIONES Y RECOMENDACIONES ............................................. 74
5.1 CONCLUSIONES ........................................................................... 74
5.2 RECOMENDACIONES .................................................................. 76
BIBLIOGRAFÍA ......................................................................................... 78
iv
ÍNDICE DE TABLAS
PÁGINA
Tabla 1: Análisis códigos Bidimensionales ................................................ 48
Tabla 2: Caso de uso ingresar sistema ...................................................... 56
Tabla 3: Caso de uso Cargar Libro ............................................................ 57
Tabla 4: Caso de uso Descargar Libro ....................................................... 60
Tabla 5: Caso de uso leer código QR ........................................................ 62
Tabla 6: Características dispositivos móviles ............................................. 69
v
ÍNDICE DE FIGURAS
PÁGINA
Figura 1: Función QR. ............................................................................... 14
Figura 2: Decodificación QR. .................................................................... 14
Figura 3: Scanner Pro ............................................................................... 16
Figura 4: Generador QR............................................................................ 19
Figura 5: Qr de Teléfono ........................................................................... 21
Figura 6: Qr de Correo electrónico ............................................................ 21
Figura 7: Qr de SMS ................................................................................. 22
Figura 8: Qr de Coordenadas .................................................................... 23
Figura 9: Red Wi-fi .................................................................................... 24
Figura 10: Partes código QR ..................................................................... 27
Figura 11: Flujos de procesos ................................................................... 37
Figura 12: Ciclo de vida del software ........................................................ 38
Figura 13: Arquitectura del software ......................................................... 42
Figura 14: Maquetación inicial ................................................................... 44
Figura 16: Esquema inicial ........................................................................ 53
Figura 17: Esquema página principal ........................................................ 54
Figura 18: Esquema ingreso libros ............................................................ 54
Figura 19: Listado de libros ....................................................................... 55
Figura 22: Generar libro ............................................................................ 57
Figura 22: Generar libro ............................................................................ 59
Figura 23: Caso de uso descargar libro .................................................... 59
Figura 24: Diagrama de secuencia descargar libro ................................... 61
Figura 25: Caso de uso Leer codigo QR ................................................... 61
Figura 27: Diagrama Base De Datos ........................................................ 64
Figura 30: Etapas de implementación ....................................................... 66
Figura 31: Test appthwack ........................................................................ 70
vi
Figura 32: Dispositivos testeados ............................................................. 71
Figura 33: Resultado en pruebas .............................................................. 72
vii
ANEXOS
PÁGINA
ANEXOS .......................................................................................................... 82
6.1 MANUAL DE USUARIO DE LA APP DE CÓDIGO QR .............................. 82
6.1.1 REVISAR LIBROS. .............................................................................. 82
6.1.2 NOMBRE. ............................................................................................ 86
6.1.3 DETALLE. ............................................................................................ 86
6.1.4 IMÁGENES. ......................................................................................... 86
6.2 CREAR CÓDIGO QR ................................................................................. 82
6.3 SCANNER GLOBAL ................................................................................... 82
6.4 INFORMACIÓN ......................................................................................... 90
6.5 SERVICIOS………………………………………………………………………91
viii
RESUMEN
El presente proyecto se encuentra desarrollado bajo los parámetros de las
diferentes tecnologías existentes en el marco de la digitalización de códigos QR.
para la obtención de información almacenada en los lineamientos que ofrece esta
tecnología.
Se analiza varios contextos de las aplicaciones y se realiza diferentes
pruebas que en base al funcionamiento de las mismas se obtienen datos que
ayudan a contextualizar información referente a las funcionalidades y que
ayudará dentro del marco del desarrollo de la aplicación que va a ser la parte
práctica del presente proyecto.
Los Smartphones son elementos importantes y se realiza un análisis del
comportamiento de las aplicaciones en diferentes dispositivos, que entre
celulares y tablets ofrecen una gama de opciones para poder recolectar
información y realizar las pruebas pertinentes enfocadas a la funcionalidad de la
aplicación desarrollada y su interacción con aquellas herramientas tecnológicas.
La aplicación usará la tecnología de detección de códigos QR para el
escaneo de imágenes que estén anexadas a cada uno de los libros o datos
digitalizados, con lo cual se procederá a enviar la información del código al
servidor y su respuesta será los datos del libro o datos digitalizados en cuestión
para su posterior descarga y visualización.
ix
ABSTRACT
This project is developed within the parameters of the different technologies
existing under for scanning to QR codes, to obtain information stored within the
parameters offered by this technology.
It analyzed several contexts of applications and different tests based on the
operation of applications, data that help contextualize information regarding the
functionality and will be fundamental base within the framework of the
development of the application is obtained realizes it will be the practical part of
this project.
Smartphones are an important part and an analysis of the behavior of
different applications between mobile devices and tablets we offer a range of
options to collect information and conduct appropriate tests focused on the
functionality of the application developed and their interaction it is made with those
devices.
The application will have a dynamic and user-friendly approach that is who is
going to handle and therefore will be the judge in the handling of it. The data
obtained after implementing the features found in the application, will have a focus
of analysis because it can see if there is optimal utilization and factors are coming
into play at the time of scanning an image and get results.
2
INTRODUCCIÓN
El presente trabajo de tesis se encuentra estructurado con el fin de analizar
los diferentes aspectos que involucran la digitalización de códigos QR. y que
modelos de estructuras se manejan, para enfocarlos en el desarrollo de la
aplicación y poder realizar un análisis de las tecnologías que se usan para ese
fin, las que serán el cimiento de estudio para la investigación y modelos en el
desarrollo de la aplicación de códigos QR.; de las miles de aplicaciones
existentes se busca la que ayude con las diferentes funcionalidades que
involucran la utilización de esta tecnología y cuáles son los caminos más óptimos
para realizar un escaneo de un código en particular y mostrar la información
pertinente en un teléfono inteligente o más conocido en el mundo actual como
Smartphone.
Los Smartphone han entrado a formar parte importante de nuestras vidas y
con eso la lluvia de funcionalidades, que gracias a la tecnología con la que se
manejan estos dispositivos se la puede obtener.
El registro e identificación de cosas ha sido materia de mucha investigación
y un avance de aquello son los códigos QR. que a diferencia de los códigos de
barras, tienen mucha más prestabilidad para el almacenamiento de registros de
información, y con la utilización de dispositivos inteligentes se han llegado a
popularizar, logrando que la mayor parte de las marcas y empresas de marketing
los utilicen como una poderosa herramienta de publicidad.
Existen muchas aplicaciones que son creadas con el fin de leer códigos QR,
no todas tienen las mismas características, ya que dependen del dispositivo, en
especial la cámara, que es el medio por el cual ingresa la información al
Smartphone para ser digitalizada y posteriormente mostrar los datos al usuario
que está utilizando la aplicación.
3
La tecnología utilizada en el desarrollo de esta aplicación consta de varios
antecedentes que se plantearon en aplicaciones investigadas por lo cual se
busca enfocarse a la optimización de resultados de una manera adecuada, para
obtener los beneficios deseados y hacer que la aplicación cumpla con los fines
que fue creada.
Los códigos QR. son el presente de las empresas de marketing, las mismas
que incluso utilizan diseños novedosos para hacerlos más atractivos al usuario y
captar clientes, por lo cual su utilización es muy amplia dentro del comercio
mundial.
Existe gran cantidad de aplicaciones que son creadas con el fin de escanear
códigos QR. y presentar la información que las compañías almacenan como
herramienta de marketing, pero lamentablemente no todas son adaptables a las
necesidades del usuario al momento de utilizarlas.
Hay muchos antecedentes que se involucran dentro de los parámetros de los
códigos QR., por los cuales se considera óptimo realizar un proceso de
digitalización, ya que en este contexto se tiene el tipo de dispositivo que se utiliza
con sus respectivas características, especialmente se enfocan en la cámara, con
la que la mayor parte los dispositivos cuentan; sin embargo, no todas son de la
misma calidad.
Además, existen aplicaciones que no realizan el proceso en un tiempo
adecuado, por lo cual su utilización es tediosa y no involucra de ningún modo un
uso óptimo de esta tecnología; como consecuencia, no todas las aplicaciones
existentes ayudan de manera adecuada a la digitalización de un código y
posterior extracción de la información contenida en él.
4
El objetivo es realizar el análisis de las tecnologías de escaneo y
reconocimiento con códigos QR en aplicaciones de dispositivos móviles
Smartphone y tabletas, con la capacidad de soportar aplicaciones open source,
recopilando la información necesaria para entender el manejo global y técnico
de una manera ágil y poder realizar el desarrollo de una aplicación con los
diferentes tipos de tecnologías de escaneo y códigos QR más utilizados así como
también el analizar el uso de cubos bidimensionales utilizados en códigos QR
para poder llegar a desarrollar una aplicación móvil que permita la digitalización
de imágenes y sea de ayuda para el manejo y utilización de códigos QR.
Se debe tener en cuenta que los avances tecnológicos en la actualidad
presentan muchas novedades que abren las puertas a la creación de nuevas
herramientas, como son los Smartphone y su infinidad de aplicabilidades, que de
uno u otro modo mejoran la calidad de vida.
Las aplicaciones que se ofertan en el mercado son variadas y muchas de
ellas gratuitas, lo que representa una gran factibilidad para acceder a ellas y
usarlas en diferentes tareas importantes, ya sean de trabajo o estudio.
Una aplicación fundamental es el uso de los denominados códigos QR. que
representan el avance en el registro de información, este recurso se lo considera
como una herramienta de trabajo para diversos usos.
Hay un variado número de aplicaciones que cumplen con este fin, y realizan
los procesos de digitalización de códigos QR. de diversas formas a través de los
dispositivos móviles, los mismos que envían información al usuario, pero no
siempre de una manera adecuada, ni óptima; debido a ello se plantea una base
en estos casos y se ve la factibilidad de realizar estos procesos a través del
desarrollo de una aplicación que supere los inconvenientes registrados con la
utilización de todas sus funcionalidades.
5
Las diferentes formas con las que las aplicaciones funcionan, han hecho que
sea adecuado realizar un análisis de las mismas e involucrar de mejor manera el
uso de ellas por parte del usuario, quien al realizar el desarrollo de la aplicación
antes mencionada, realice un esquema que sea muy fácil de comprender y por
medio del cual se pueda lograr un mejor manejo de esta tecnología con la
obtención de datos de una manera fácil y adecuada a sus necesidades.
7
MARCO TEÓRICO
2.1 SISTEMAS DE ESCANEO ÓPTICO
Ciertos equipos y programas de escaneo óptico, se pueden combinar con
otros dispositivos. La computadora decodifica el código para poder leer la imagen
capturada por el escaneo óptico y posteriormente convertirla en información.
Existen cuatro tipos de tecnologías de escaneo óptico:
Lector de marcas ópticas (OMR por sus siglas en inglés)
Reconocimiento de caracteres ópticos (OCR)
Reconocimiento inteligente de caracteres (ICR)
Tecnología de imagen
LECTOR DE MARCAS ÓPTICAS (OMR)
El Lector de Marcas Ópticas tiene diferentes clases de marcas que son leídas
en conjunto por un escáner para establecer la posición de una página. Los
programas de cómputo utilizados por el escáner OMR se pueden programar para
que reconozcan el significado de distintas marcas. Se realiza el cambio de las
imágenes que están escaneadas, para obtener información clara que la
computadora pueda reconocer, pero esto depende de su ubicación.
La mayoría de las máquinas de votación basadas en lectores (escaneo óptico)
utilizan tecnología de OMR.
En la época de los 70’s la tecnología OMR fue utilizada para diferentes
propósitos, en lo que también se incluían: pruebas escolares y universitarias,
censos, encuestas y sorteos; de igual manera para votar, pero además se podía
hacer uso en lectores de barras que son utilizados en bibliotecas, escuelas y en
el comercio.
8
Existen otras aplicaciones de la tecnología OMR a parte de los sistemas de
votación, con esas formas se pueden escanear las listas electorales, ese es el
caso de Australia donde son marcados los sitios de votación porque señalan los
nombres de electores que han sufragado. Y así las autoridades australianas
acceden a computarizar la aplicación de la ley para el voto obligatorio, pero
también se puede identificar cualquier caso de votación múltiple.
Los sistemas de código de barras OMR también se utilizan ampliamente en
servicios postales. En el caso de los celulares la gran mayoría de autoridades
postales instalan códigos de barras para el proceso de entrega. En ciertos países
tienen sistemas postales que permiten al usuario imprimir códigos de barras con
sus direcciones en la correspondencia, de esta forma facilita a las autoridades
procesarlos sin tener que imprimir ese tipo de códigos en sus instalaciones,
generándole por lo tanto un descuento al usuario ( Jesús Tejerina R., 2011).
2.2 SISTEMAS DE ESCANEO CARACTERES ÓPTICOS (OCR)
Estos sistemas toman imágenes escaneadas, que reconocen sus caracteres
impresos o escritos a mano, como números o letras, y los almacenan como
información que puede ser leída por la computadora. Los sistemas OCR son
utilizados para convertir una imagen en un texto impreso claro para la
computadora.
Las aplicaciones que se obtienen mediante el escaneo de caracteres ópticos
se permiten utilizar en el campo electoral. En la década de los 80’s, la Comisión
Electoral de Australia había producido un gran número de manuales de
procedimientos. Hace unos años atrás los archivos originales que los contenían
no se podían utilizar a causa de los programas mejorados que dispuso la
Comisión. Estos programas de OCR se utilizaron para convertir los manuales
9
impresos en archivos apropiados para su edición y revisión por computadora, en
lugar de recapturar los manuales originales (scribd, 2011).
Otro de los usos importantes del OCR es la captura de información impresa
en formato legible para la computadora; en lugar de leer manualmente los datos,
el OCR puede ser utilizado para convertir automáticamente los formatos de papel
en imágenes y almacenarlos en formato electrónico.
El OCR actúa como una guía en los programas de escaneo porque les
permite reconocer formas específicas como letras y números. Los tipos de letras
se diferencian por sus formas porque son de diferentes maneras. Pero también
los sistemas OCR deben ser configurados para que se reconozcan un número o
letra particular. De esta manera los sistemas OCR también pueden ser
programados para reconocer la letra manuscrita, sin embargo esta llega a ser
más compleja por la infinidad de estilos que contiene.
Los sistemas OCR iniciales tenían un índice relativamente alto de error
cuando convertían el texto impreso en información legible para la computadora,
específicamente el texto manuscrito, por lo que era necesario un control
minucioso para revisar y corregir toda la información que ha sido convertida. En
la década de los 90’s se van mejorando los equipos y programas de escaneo
óptico y registraban menos índices de error. Pero con los sistemas ICR han
incrementado su mejoría en los niveles de precisión en la siguiente generación.
(Aceproject, 2015).
10
SISTEMAS DE ESCANEO Y RECONOCIMIENTO INTELIGENTE
DE CARACTERES (ICR)
Los sistemas ICR y OCR son aplicados para la realización de pruebas de
inteligencia, al ser escaneados y convertidos de manera más confiable en
información legible para la computadora.
En los sistemas de ICR se utilizan reglas de ortografía, gramática y contexto
para escanear los textos y así efectuar evaluaciones "inteligentes", de tal manera
que la interpretación de la información sea correcta. Con ello aporta a una
conversión mucho más precisa, que aquella obtenida en los sistemas OCR, que
son más simples, especialmente con el texto manuscrito.
Este tipo de programas ICR necesitan computadoras con gran rapidez y que
sean eficaces para puedan utilizarse sin ninguna dificultad. Los sistemas ICR
que son de alta confiabilidad estuvieron disponibles a mediados de la década
de 1990, con el desarrollo de equipos de computación económicos y poderosos.
Con el tiempo, estos sistemas ICR se vuelven más confiables, se
incrementan sus aplicaciones electorales y son apropiados para capturar
información de formatos. También son utilizados para capturar números
manuscritos en los sistemas electorales más complejos, como el de voto. Sin
embargo, los sistemas automatizados de captura de información no se han
utilizado para los sistemas electorales, por la complejidad que existe. (Aceproject,
2013)
11
TECNOLOGÍA DE IMAGEN
El escáner captura imágenes para convertirlas en información, pero también
puede capturarlas para almacenarlas como imágenes legibles en la
computadora. Además, éstas pueden ser almacenadas y reutilizables en
formatos fáciles para computadoras como fotografías, dibujos o imágenes de
texto.
Las imágenes computarizadas tienen muchas aplicaciones electorales, que
se pueden utilizar en sitios de la red y en la impresión de publicaciones. En los
sitios de internet también se pueden poner las fotografías del personal y su
reporte anual, que incluyen direcciones webs de las imágenes de los sitios de
votación y los manuales de instrucciones. Cuando los formatos son llenados
correctamente se pueden escanear como imágenes o manuales de capacitación.
Las imágenes que se obtienen de los formatos de papel se pueden
almacenar en formatos electrónicos, sin la necesidad de acceder a las copias
originales. En la actualidad la Comisión Electoral de Australia se ha involucrado
en convertir en imágenes los millones de formatos de registro de electores para
que sean colocados en una red de cómputo que acceda en cualquier oficina del
país. En los formatos de imagen se puede acceder a verificar firmas o datos,
siempre y cuando sean accesibles. (Escanéo óptico, 2009).
Los logotipos corporativos pueden almacenarse electrónicamente como
imágenes e impresos en diversas publicaciones. Una organización que utilizó un
promocional pre impreso y costoso que contenía su logotipo, puede actualmente
imprimirlo desde la computadora que este en uso, digitalizando la imagen de su
logotipo.
La tecnología de imagen permite verificar la identidad de las personas. Así
también las fotografías pueden ser digitalizadas y colocadas en tarjetas de
12
identidad. Las huellas digitales o de rasgos faciales pueden también ser
digitalizados y almacenados en tarjetas inteligentes, para determinar si la
identificación pertenece al mismo usuario. (Aceproject, 2013)
2.3 CÓDIGOS QR
Un código QR. (Abreviatura de código Quick Response) es un código de
barras bidimensional inventado por el japonés Denso Wave. La información se
codifica tanto en la dirección vertical como horizontal, manteniendo así hasta
varios cientos de veces más datos que un código de barras tradicional. A los
datos se accede mediante la captura de una fotografía del código con el uso de
una cámara (por ejemplo, la incorporada en un teléfono inteligente) y se procesa
la imagen con un lector de QR. Estos códigos han tenido popularidad
internacional sobre todo en Japón, donde su capacidad para codificar símbolos
hace que sea el más adecuado. Sus usos populares incluyen el almacenamiento
de direcciones y diversas formas de datos, en los carteles, letreros, tarjetas de
visita y los vehículos de transporte público. En efecto, este mecanismo tiene un
gran número de aplicaciones potenciales.
Aunque tradicionalmente estos códigos debían ser interpretados con un
lector especial, la irrupción de los teléfonos móviles inteligentes ha permitido su
lectura a través de la cámara del dispositivo. Se toma una fotografía del código
QR con la cámara del teléfono para obtener la información que contiene y un
programa, que debemos instalar previamente, se encarga de leerlo.
Los códigos QR. Se están utilizando cada vez más en la publicidad gráfica,
como un nexo de unión entre los medios offline y online. Es una práctica habitual
ubicar códigos QR. En anuncios, que al leerlos con el teléfono llevan a webs
personalizadas para móviles, vídeos, texto, mapas interactivos de ubicación, etc.
13
La barra de códigos que contiene información está escrita en inglés, código QR,
Y posee puntos bidimensionales tanto horizontales como verticales.
La diferencia con los códigos de barra tradicionales, es que estos solo almacenan
información en la dimensión horizontal.
Pueden contener más información que los antiguos códigos de barras, que
están dentro de las técnicas de los mismos, (Wikipedia, 2014). En estos se
obtiene hasta:
• 4.296 caracteres alfanuméricos
• 7.089 caracteres numéricos
• 2.953 caracteres codificados como byte
• 1.817 caracteres japoneses denominados Kanji/Kana (silabario japonés),
(Wikipedia, 2014)
Actualmente este tipo de códigos se han convertido en una herramienta
necesaria.
¿Cómo funcionan los códigos QR?
Se los identifica por varias regiones adicionales, por lo que está conformado por
un cuadrado con tres cuadros pequeños en tres esquinas.
A este tipo de codificación se la conoce como un cubo de datos bidimensionales,
ya que su estructura se percibe por dos dimensiones (alto y ancho) y por sus
cubos en sus extremos.
14
Figura 1: Función QR. (tribunaabierta, 2012)
Para codificar se necesita el uso de un teléfono móvil con cámara que pueda
traducir este tipo de lenguaje.
Los códigos se los puede visualizar en cualquier ángulo para no perder el
contenido original.
Figura 2: Decodificación QR. (seniortablets, 2013)
Dependiendo del sistema operativo el lector de código QR. Se verifica cual es el
más apropiado, pero siempre teniendo en cuenta la diversidad de marcas de
celular existentes en el mercado.
15
• BLACKBERRY
• IPHONE
• ANDROID
• SYMBIAN
Se recomienda dentro del “Marquet place” obtener un código QR. Con la palabra
en ingles “Reader QR” para tener distintas posibilidades de descarga de lectores
de códigos.
APLICACIÓN Y USO DE LOS CÓDIGOS QR.
Los códigos QR. conectan el mundo real con el mundo digital, estos pueden
contener información básica desde un texto, número telefónico, mensaje de texto
- SMS, una tarjeta de presentación - Vcard, hasta contenidos más complejos
como direcciones URL.
Algunas de las aplicaciones prácticas que se le pueden dar a este tipo de códigos
son:
• Educación
• Artículos en revistas.
• Vallas.
• Publicidad.
• Ventas de productos.
• Libros o enciclopedias.
• Manuales de instrucciones.
• Cupones virtuales.
• Geo posicionamiento.
• Escarapelas en eventos.
16
2.4 LECTOR CÓDIGO QR. EN SMARTPHONE
Un código QR. es diseñado a base de pixeles blancos y negros parecidos a
un código de barras y tienen funciones muy similares: Al momento que se
escanea este código le brinda información adicional de la que aparece en la
publicidad donde se encuentra dicho código.
Los primero códigos QR. fueron utilizados originalmente por la industria
automotriz, pero hoy en día se pueden encontrar en casi todas las revistas,
periódicos y anuncios; dando por entendido que los smartphones ahora son
utilizados para expandir aún más las posibilidades de la publicidad.
Existen algunos consejos sobre cómo utilizar una aplicación de QR.
Primero, se necesita una aplicación de código QR. y un smartphone o una tablet
equipada con una cámara. A los usuarios de iOS se les recomienda RedLaser,
los fans de Android pueden utilizar RedLaser o QR. Droid, y los propietarios de
una BlackBerry pueden probar QR. Code Scanner Pro. Todas son gratuitas y
ofrecen un servicio muy aceptable.
Figura 3: Scanner Pro (pcworld, 2013)
17
Al iniciar cualquiera de estas aplicaciones la cámara del teléfono se activará,
acto seguido encuadra con ella el Código QR que deseas escanear.
Para obtener mejores resultados se requiere apuntar en el dispositivo al
frente del código, y no de lado. Se debe minimizar el reflejo de la luz; porque
esta es la principal razón por las que muchas veces los códigos de cualquier tipo
no son escaneados al primer intento.
Cuando la aplicación reconozca el código QR emitirá un sonido y mostrará
la información que el código contiene o en su caso le llevará al URL establecido.
La mayoría de aplicaciones de lectores QR-Code también pueden leer
códigos de barras, algo conveniente para encontrar precios de productos en las
tiendas. RedLaser que poseen información de algunos artículos.
Por su parte, QR. Droid permite crear códigos propios. Esta característica
hace que sea fácil realizar un código QR con la información de cada contacto.
Por ejemplo, si se desarrolla un Código QR se puede hacer una tarjeta de
presentación virtual con el dato obtenido. (Codigos-qr, 2013)
2.5 CREACIÓN DE CÓDIGO QR.
Se puede crear un QR.- code para una página de Facebook, Twitter, la
dirección de un blog, sitio web de internet, un número telefónico o cualquier dato
personal. Genera y codifica cualquier texto en una imagen, que se la puede
escanear y extraer la información que contiene, con la cámara de un teléfono
celular o de una tableta.
18
Escanear un código QR. con un celular
Al crea el códigos QR. la información codifica la imagen y se puede leer o
interpretar con la cámara incluida en cualquier teléfono celular o tableta.
Además se ha creado para una gran cantidad de propósitos diferentes, que
se explican en los siguientes puntos.
¿Qué información se incluye en un código QR?
Además de una dirección web URL, se puede crear un código QR. para
almacenar y compartir cualquiera de los datos siguientes:
En la información de contacto o los de otra persona, se puede incluir el
nombre, dirección física, correo, etc.
Un número de teléfono.
Una dirección de correo electrónico.
Un mensaje de correo (por ejemplo una promoción o aviso comercial)
Un mensaje SMS.
Cualquier texto.
Coordenadas de su ubicación geográfica
Datos de una red Wi-Fi (SSID y contraseña)
Un enlace de una aplicación en Google Play que se recomienda para
instalarla automáticamente.
En cualquiera de los casos al escanear el código QR con un
dispositivo que tenga la aplicación necesaria (enviar un correo,
realizar una llamada, enviar un SMS, conectarse a una red Wi-Fi,
instalar una aplicación, etc.) (NorfiPC)
19
OPCIONES AUTOMÁTICAS CÓDIGOS QR.
Se puede lograr que el lector del celular o Tablet al leerlo pueda iniciar o
abrir la aplicación que quiera con los comandos para hacer los códigos QR. Por
ejemplo, enviar un correo, mensaje SMS, hacer una llamada, abrir una ubicación
en el mapa, etc. Y así obtienen maneras fáciles para agregar e incluir en los
códigos información específica.
Figura 4: Generador QR (Norfipc, 2014)
Esto es considerablemente utilizado en la vida actual ya que se puede codificar
o incluir la gran mayoría de información y después leerla usando la cámara
incluida en la mayor parte de los dispositivos portables como teléfonos celulares
o tabletas.
Las páginas de perfil más usadas son el Facebook, Twitter y otras redes
sociales.
Sin embargo, no siempre se le puede dar varios usos y las aplicaciones que son
usadas identifican el tipo de todo el contenido que incluyen.
20
2.5.1.1 Información que pueden incluir los códigos QR.
Los códigos QR. incluyen información codificada de distinto tipo.
Por ejemplo, texto plano, direcciones web URL, números telefónicos, direcciones
de correo electrónico, mensajes SMS, mensajes de email, ubicación geográfica,
etc.
Los códigos QR modernos utilizan ciertos comandos para poder identificar el tipo
de información que contienen los códigos y poder ejecutar la acción relacionada.
Por ejemplo, al escanear un código con la app QRDroid que contiene una
dirección de email, la aplicación automáticamente ofrece la opción de iniciar la
aplicación Correo.
Se puede anteponer manualmente la creación de los códigos en cualquier
generador.
Dirección web
http://xxxxxx
Cualquier texto con el formato de una dirección URL que comience con "http://"
se abrirá de forma automática con el navegador web.
Número de teléfono
Tel: 5258167348
Anteponiendo "tel:" a cualquier número, se interpretará como un número
telefónico.
21
Figura 5: Qr de Teléfono
(Norfipc, 2014)
Dirección de correo electrónico
mailto:[email protected]
Anteponiendo "mailto:" al texto, este se tratará como una dirección de email.
Figura 6: Qr de Correo electrónico
(Norfipc, 2014)
Mensaje de correo electrónico
MATMSG:TO:[email protected];SUB:Test;BODY:Probando código QR;
22
Se hace uso del comando "MATMSG:" con el formato anterior y se puede enviar
un mensaje de correo de manera automática.
Usa:
TO: - Dirección email
SUB: - Asunto
BODY: - Mensaje
Mensaje SMS
Smsto: 58167347: te quiero
Anteponiendo "smsto:" a un número y a continuación un texto, se podrá enviar
de forma automática un mensaje SMS a un número telefónico.
Se requiere que se separe el número y el mensaje con un punto y coma.
También se puede usar un código QR con objetivos de divulgación y promoción
así como en el comando anterior.
Figura 7: Qr de SMS
(Norfipc, 2014)
Información de contacto
MECARD: N: Norfi
Carrodeguas;TEL:5358167785;EMAIL:[email protected];URL:http://norfipc.com;
23
Usando el formato anterior se puede crear un código que será interpretado como
Información de contacto.
Toda persona puede agregar la información que desee de manera fácil a su lista
de contacto.
Coordenadas geográficas
Geo: 23.2536, 82.8563
Anteponiendo "geo:" a dos números separados por una coma, se puede crear un
código con el que el lector podrá abrir un mapa exactamente en la ubicación
especificada.
Para eso el primer número debe corresponder a una latitud geográfica y el
segundo a la longitud, todo expresado en grados decimales.
Figura 8: Qr de Coordenadas
(Norfipc, 2014)
Datos de red Wi-Fi
WIFI: S: red1; T: WPA;
Se puede crear un código para conectarse a una red Wi-Fi haciendo uso del
formato anterior.
Es necesario anteponer "WIFI:"
24
Si no es una red abierta a continuación se agrega "S:" y el nombre de la red
(SSID).
En esta imagen "T: WPA" indica el modo de seguridad.
"P: qwerty" especifica la contraseña qwerty.
Se debe cerrar con tres puntos y comas. (Norfipc, 2014)
Figura 9: Red Wi-fi (Norfipc, 2013)
DISEÑO Y PERSONALIZACIÓN
Los códigos QR. se crean de acuerdo a la necesidad de cada persona y pueden
ser utilizados como una herramienta de comunicación para tener más
información adicional y realizar cualquier actividad como participar en alguna
campaña o solo para obtener el menú del día. Estos se ha hecho tan vistoso en
todas partes que los consumidores los pueden reconocer y usar.
Storelabs.com: códigos QR. personalizados: Help Japan son marcas que eligen
personalizar y diseñar los códigos QR para dar una mayor identidad y refuerzo
de marca que los diferencie de los demás.
25
Estos códigos dan la oportunidad de personalizarlos y crear diseños gracias a la
tolerancia y el ruido que contienen y puede llegar hasta el 30%. Con esto se crea,
se incluye imágenes, logos y se los puede personalizar con colores tanto en su
interior como exterior.
Los códigos QR. de diseño hacen que llegue a ser el propio centro donde gira la
comunicación al integrarse con la creatividad. Dejando de ser un simple añadido
que incorpora mayor información, porque al ser más sugerentes y atractivos,
consiguen mayor número de escaneos y recordatorios de marca.
¿Cómo crear un Código QR. de diseño personalizado?
A pesar de que sea un buen diseñador para introducir modificaciones en la
manera de los cuadrados y diferentes islas que disponen el código, no hay
necesidad de que sea un profesional de las artes gráficas para hacer dos
sencillos pasos:
Incorporar color a los códigos. Constituye una manera fácil creando
un código QR. personalizado y que pueda integrarse a la creatividad,
como también reforzar la marca uniendo los colores corporativos. El
código TraQR-Lite hace que los colores que desean añadir, también
como el código en su fondo, tengan inclusive gradientes de color. De
esta manera se puede personalizar el código QR.
Introducir imágenes. Dentro o fuera del código puede incorporarse
cualquier imagen que se desee. No se requiere tener extensos
conocimientos sobre códigos QR, para que se respete la zona de
silencio de los elementos externos, se puede obtener un código con
acceso a la lectura.
Tras la creación del código de diseño al igual que con otros códigos, se puede
probar que se lea correctamente con cualquier dispositivo. No obstante, se
26
enumeran a continuación algunas reglas básicas para conseguir la legibilidad del
código QR.
Cinco Reglas básicas para crear un código QR. Personalizado
Las imágenes y distorsiones del código no pueden superar el
porcentaje de corrección de error (30% como máximo). Los códigos
QR. contienen una redundancia de información basada en la
corrección de errores Reed–Solomon a pesar de que la información
sea incorrecta el código sigue siendo legible.
Sin embargo, hay que tomar en cuenta que toda alteración gráfica que se inserte
para la personalización (imágenes y textos incrustados), serán errores añadidos
en el código. La cantidad de contenido personalizado que se puede añadir a un
código dependerá del nivel de redundancia escogido en su generación, por lo
que es recomendable usar porcentajes de redundancia elevados para una mejor
lectura.
Las modificaciones en el color y fondo no suponen ruido en el código, pero hay
que tener en cuenta cómo funcionan los algoritmos de detección para evitar
problemas, a continuación.
Los ojos del código QR. son lectores muy sensibles que permiten la
medida de tamaño y orientación, también deben alterarse muy
levemente, a ninguno se los debe cubrir. Estos algoritmos buscan una
masa de color dentro de un cerco, de esta manera se le da una
distancia entre la isla central y el contorno así se evita romper la unión
de éste último.
27
Figura 10: Partes código QR (Norfipc, 2014)
A este código se lo reconoce cuando comienza con una
umbralización, para mantener una diferencia entre el claro y el oscuro
relevante. Se puede ocasionar una anulación en su legibilidad si no
se tiene cuidado con los fondos muy oscuros o los colores muy claros.
Los códigos en negativo toman el riesgo de no ser leídos, ya que
muchos programas fuerzan que el fondo del código sea blanco.
Se debe respetar el borde externo en blanco llamado zona de silencio,
esto facilita el reconocimiento de los ojos del QR. y la mayoría de los
algoritmos anulan la lectura si éste no existe. Tiene un mínimo de
cuatro módulos la zona de silencio, así lo muestra Denso, la empresa
creadora del código QR. Es decir, si el módulo tiene 2 mm., el área de
silencio debe ser de 8mm. (Jordi Sanchez, 2014)
2.6 ANÁLISIS APLICACIONES QR
QR. DROID
QR. Droid es el lector de códigos más popular desarrollado por Android para
la tecnología QR. Esta herramienta es uno de los lectores de códigos más
completos que existe, ya que ofrece múltiples opciones para crear, escanear y
compartir códigos QR.
28
La ventaja y la desventaja es que el desarrollador del código QR. Droid
hiciera de todo.
Esta es una aplicación que no ha tenido problemas en su uso, pero con las
funcionalidades repartidas hace que sea incómodo usar. Eso sí, es uno de los
pocos lectores gratuitos que permiten crear códigos QR.
QR Zapper es la versión para iOS, sus funciones son las mismas, la
diferencia es que su diseño es más limpio y así se hace más fácil usar.
Ventajas
Tiene muchas funciones.
Escanea códigos en las imágenes del álbum de fotos del móvil.
Lee todos los tipos de contenido de códigos QR. (incluido email con
mailto, MATMSG y SMTP), excepto las credenciales de red wifi.
Entiende códigos de barras EAN13 y ofrece buscar el producto con
Google Shopper.
Desventajas
Al tener muchas funciones no se especializa en una sola.
Tiene publicidad.
Aunque está basado en ZXing, es muy lento reconociendo códigos.
El flash no funciona (Samsung Galaxy ACE con android 2.3.7)
SCAN
Scan es otro lector especializado en la búsqueda de productos, pero no
permite que eso perjudique la experiencia del usuario. Tiene un diseño limpio y
cuidado, funciona con una suavidad increíble y ofrece funciones únicas, como
mostrar el historial en un mapa con un marcador en la posición de cada escaneo.
29
Además sus desarrolladores han sabido aprovechar las diferencias de los
sistemas operativos, en lugar de limitarse a clonar la aplicación de una a otra
plataforma; por ejemplo aprovecha que Android tiene botones físicos para ocultar
casi todos los elementos de la interfaz.
Puestos a encontrarle algún fallo, hay veces que la integración con scan.me
(su plataforma de landing pages) puede llegar a estorbar, aunque basta con
ignorar los mensajes de petición de registro. (Nicolas Velez, 2014)
Ventajas
Abre las URLs directamente, se puede configurar para que pida
confirmación. En iPhone mantiene una cabecera para poder volver
atrás a la aplicación.
Escanea imágenes en las imágenes del álbum de fotos del móvil, pero
hay que activarlo en la configuración.
Si no entiende el contenido de un código hace una llamada a casa
para intentar decodificarlo
Desventajas
Tiene una propia plataforma de búsqueda de productos que falla
bastante.
En iPhone a veces se queda colgado con el texto “starting camera”
No entiende códigos de tipo marcador, correo con SMTP: ni evento.
En iPhone no es capaz de mostrar las credenciales de un código tipo
wifi.
30
BARCODE SCANNER
Es el padre de todos los lectores de QR. para Android, es parte de ZXing
(Zebra Crossing), una librería open source para el escaneo de códigos de barras
desarrolladas en conjunto con Google. Como en realidad es un ejemplo para
demostrar la tecnología, su diseño no cumple con todas las funcionalidades, pero
tiene una utilidad básica, la que soporta todos los tipos de códigos QR.
Es el motor que utilizan muchos otros lectores, ya que la librería está
disponible para Android y hay proyectos paralelos para portarla a C++, Objective-
C y .NET
Ventajas
Lee todos los tipos de códigos QR.
Ligero y rápido
Desventajas
El diseño de los resultados deja bastante que desear y es confuso
para usuarios novatos.
2.7 ANÁLISIS LECTORES QR
Los códigos de encriptamiento de información entre los más usados
encontramos los sistema para almacenar información parecido a los códigos de
barras habituales con la diferencia que un código QR almacena datos en dos
dimensiones y puede ser escaneado vertical u horizontalmente para ser
decodificado.
31
Los códigos bidimensionales se inventaron pocos años después de los
famosos códigos de barras o unidimensionales, y como referencia podemos
tomar el popularizado QR que todo el mundo identifica como algo novedoso y
reciente que data de mediados del año 1990.
Otros códigos bidimensionales, tales como DataMatrix y Microsoft tag a los
que tenemos que hacer una mención especial a los códigos por ser un estándar
de uso muy generalizado en diversos sectores industriales y procesos
productivos como el de automoción, microelectrónica y el farmacéutico.
Los códigos Microsoft Tag fueron inventados en 2007 para incrementar la
densidad de información añadiendo colores a los códigos bidimensionales.
Los códigos bidimensionales, principalmente el QR, están en pleno auge
debido a la popularización de los Smartphone.
La potencia de cálculo de estos dispositivos móviles, unida a una cámara de
alta calidad y acceso a Internet de banda ancha ha hecho que estos códigos
representen una herramienta ideal y para unir el mundo físico con Internet y el
mundo digital, abriendo un abanico de posibilidades inimaginables hasta día de
hoy sobre todo en el sector del marketing. Es por esta razón que usaremos la
tecnología de códigos QR para el desarrollo de nuestra tesis, a continuación
listamos los aplicativos más comunes para escaneo de códigos QR con su
respectivo análisis de funcionamiento.
El código barcode scanner tiene un análisis que ha pasado por una
variedad de pruebas en las que se ha encontrado códigos de todos
los tipos: artísticos, deteriorados y las versiones de los formatos
contemplados en el estándar QR. 2005.
32
Ninguno lee coherentemente los códigos en espejo, códigos
fraccionados, ni microQR, aunque hubo unos pocos progresos con
QR DROID que sí que leyeron códigos invertidos.
La cámara del iPhone tiene problemas para escanear códigos
pequeños, por debajo de 1.5mm. por módulo empieza a pasarlo mal.
El formato de contenido es el que representa más dificultad de lectura.
Ninguno de los tres formatos típicos funciona en todos los lectores.
Los códigos con credenciales WIFI sólo funcionan en Android; en iOS,
cada lector actúa de forma diferente y errada: unos muestran las
credenciales como texto, pero la mayoría los ignora y BARCODE
SCANER se vuelve inestable y los intenta abrir como si fuera una
URL.
No existe el lector perfecto, sólo el mejor lector para un en usos
concretos.
Se recomienda el uso del desarrollador para el QR. DROID.
Si quien lo va a usar es un usuario normal, es preferible que opte por
el BARCODE SCANER, debido a las funciones que tiene y su baja
tasa de retraso. (Nicolas Velez, 2014)
2.8 INGENIERÍA DE SOFTWARE
Esta parte del desarrollo de una aplicación comprende prácticamente la vida
de un sistema informático ya que se encuentra constituida por etapas que
comprenden desde la estructuración de la aplicación así como su respectivo
mantenimiento ya cuando esta se encuentra en funcionamiento. La ingeniería de
software para aplicar su metodología requiere atravesar por 7 etapas descritas a
continuación:
a) Análisis de requerimientos: Se extraen los requisitos del producto de
software. En esta etapa la habilidad y experiencia en la ingeniería del
33
software es crítica para reconocer requisitos incompletos, ambiguos o
contradictorios. Usualmente el cliente/usuario tiene una visión
incompleta/inexacta de lo que necesita y es necesario ayudarle para
obtener la visión completa de los requerimientos. El contenido de
comunicación en esta etapa es muy intenso ya que el objetivo es eliminar
la ambigüedad en la medida de lo posible.
b) Especificación: Es la tarea de describir detalladamente el software a ser
escrito, de una forma rigurosa. Se describe el comportamiento esperado
del software y su interacción con los usuarios y/o otros sistemas.
c) Diseño y arquitectura: Determinar cómo funcionará de forma general sin
entrar en detalles incorporando consideraciones de la implementación
tecnológica, como el hardware, la red, etc. Consiste en el diseño de los
componentes del sistema que dan respuesta a las funcionalidades
descritas en la segunda etapa también conocidas como las entidades de
negocio. Generalmente se realiza en base a diagramas que permitan
describir las interacciones entre las entidades y su secuenciado.
d) Programación: Se traduce el diseño a código. Es la parte más obvia del
trabajo de ingeniería de software y la primera en que se obtienen
resultados “tangibles”. No necesariamente es la etapa más larga ni la más
compleja aunque una especificación o diseño incompletos/ambiguos
pueden exigir que, tareas propias de las etapas anteriores se tengan que
realizarse en esta.
e) Prueba: Consiste en comprobar que el software responda/realice
correctamente las tareas indicadas en la especificación. Es una buena
praxis realizar pruebas a distintos niveles (por ejemplo primero a nivel
unitario y después de forma integrada de cada componente) y por equipos
diferenciados del de desarrollo (pruebas cruzadas entre los
programadores o realizadas por un área de test independiente).
f) Documentación: Realización del manual de usuario, y posiblemente un
manual técnico con el propósito de mantenimiento futuro y ampliaciones
34
al sistema. Las tareas de esta etapa se inician ya en el primera fase pero
sólo finalizan una vez terminadas las pruebas.
g) Mantenimiento: En esta etapa se realizan un mantenimiento correctivo
(resolver errores) y un mantenimiento evolutivo (mejorar la funcionalidades
y/o dar respuesta a nuevos requisitos).
2.9 METODOLOGÍA DE DESARROLLO DEL SOFTWARE
METODOLOGÍA RUP
De las siglas en ingles significa Rational Unified Process (Proceso Unificado
de Racional) es un producto del desarrollo de software y junto con el lenguaje
unificado de modelado (UML) que proporciona un enfoque disciplinado para
asignar tareas y responsabilidades, que constituye la metodología estándar más
utilizada dentro de una organización del desarrollo. Es un sistema con pasos
establecidos donde su meta es asegurar la producción del software de alta
calidad que ayuda a la resolución de necesidades de los usuarios dentro de un
tiempo establecidos.
2.10 PROCESOS DEL DESARROLLO
Adaptar el proceso: Se debe adaptar a las necesidades del usuario o
cliente, ya que es el actor más importante y el que interactuara
directamente con el sistema.
Equilibrar prioridades: Se debe encontrar un equilibrio entre los procesos
prioritarios y los secundarios, sin descuidar ninguno y dando la
importancia del caso a cada uno.
Demostrar valor iterativamente: Los proyectos se entregan en etapas, en
cada una de las mismas se debe analizar y estabilizar para tener una alta
calidad del producto final
35
Colaboración entre equipos: Se debe tener una comunicación fluida entre
todos los departamentos, sectores o personas que están involucradas en
el desarrollo del sistema.
Elaborar el nivel de abstracción: El principio es usar métodos reutilizables
como frameworks o clases basadas en objetos. Esto da una mayor
fluidez al sistema, haciendo que las personas encargadas del desarrollo
no vayan directamente a los requisitos o a la codificación del sistema
Enfocarse en la calidad: El control se realiza al final de cada etapa, para
pulir y evitar los errores en el producto final.
CARACTERÍSTICAS DEL RUP
Casos de Uso en los procesos: nos referimos a la utilización de los Casos
de Uso para el análisis y desarrollo de los procesos necesarios.
Los casos de uso representan la forma en como el cliente maneja el sistema
en desarrollo, además de la forma y el orden de los distintos elementos.
Un diagrama de casos de uso consta de los siguientes elementos:
Actor: Una definición previa, es que un Actor es un rol que un usuario juega
con respecto al sistema. Es importante destacar el uso de la palabra rol, pues
con esto se especifica que un Actor no necesariamente representa a una persona
en particular, sino más bien la labor que realiza frente al sistema.
Casos de Uso: Es una operación/tarea específica que se realiza tras una
orden de algún agente externo, sea desde una petición de un actor o bien desde
la invocación desde otro caso de uso.
Relaciones: son los tipos de invocaciones o llamadas que hacen de un actor
a un caso de uso.
36
FASES DEL RUP
RUP divide el proceso en 4 fases, dentro de las cuales se realizan varias
iteraciones en número variable según el proyecto y en las que se hace un mayor
o menor hincapié en los distintas actividades.
Inicio
Esta fase tiene como propósito definir y acordar el alcance del proyecto,
identificar los riesgos asociados al proyecto, proponer una visión muy general de
la arquitectura de software.
Elaboración
En la fase de elaboración se seleccionan y definen la arquitectura base del
sistema y se desarrollaran en esta fase, se realiza la especificación de los casos
y el primer análisis del dominio del problema, se diseña la solución preliminar.
Construcción
El propósito de esta fase es completar la funcionalidad del sistema, para ello
se debe clarificar los requisitos pendientes y detallaron en los casos de uso con
sus diagramas respectivos, administrar el diseño de la aplicación y se realizan
las mejoras para el proyecto.
Transición
El propósito de esta fase es asegurar que el software esté disponible para
los usuarios finales, ajustar los errores y defectos encontrados en las pruebas de
37
aceptación, capacitar a los usuarios y proveer el soporte técnico necesario. Se
debe verificar que el producto cumpla con las especificaciones entregadas por
las personas involucradas en el proyecto.
Figura 11: Flujos de procesos
2.11 CICLOS DE VIDA DE DESARROLLO
Los ciclos de vida del desarrollo de un sistema informático son todas y cada
una de las etapas por las cuales pasa la estructuración de una aplicación,
iniciando desde el planteamiento de la idea y el análisis de los diferentes
requerimientos para su ejecución, hasta su etapa terminal de uso donde es
remplazado por otra aplicación.
38
Figura 12: Ciclo de vida del software
Análisis: Construye un modelo de los requisitos
Diseño: A partir del modelo de análisis se deducen las estructuras de
datos, la estructura en la que descompone el sistema y la interfaz de
usuario.
Codificación: Construye el sistema. La salida de esta fase es código
ejecutable.
Pruebas: Se comprueba que se cumplen criterios de corrección y calidad.
Validación: es el proceso de comprobar que lo que se ha especificado es
lo que el usuario realmente quería.
Mantenimiento: En esta fase, que tiene lugar después de la entrega se
asegura que el sistema siga funcionando y adaptándose a nuevos
requisitos.
(Mary Tenelema, 2014)
40
METODOLOGÍA
3.1 METODOLOGÍA DE INVESTIGACIÓN
El tipo de investigación se encuentra establecido por la profundidad del
estudio y la fuente de consulta que se plantea para el desarrollo de la tesis, los
métodos utilizados son los siguientes:
MÉTODO INDUCTIVO
Se realizó el estudio dentro de la biblioteca de la universidad tecnológica
equinoccial (UTE) a varios estudiantes los cuales realizan la consulta de libros
dentro de la institución, se observó que el principal problema radica en la
disponibilidad de títulos físicos, ya que solo se disponen de pocas unidades y
están pasan a estar inaccesibles a los estudiantes si alguien más los toma
prestado antes; para ello se toma como solución una incursión de tecnología de
escaneo con códigos QR para que los libros se almacenen en un servidor y sean
descargados por los estudiantes cuando ellos los requieran.
MÉTODO DEDUCTIVO
La popularidad de los códigos QR a la hora de descarga de información y
acceso rápido hacia temas de interés de usuarios en forma general, lo hace ideal
para la implementación dentro de la biblioteca de la universidad y que los
estudiantes puedan acceder a la descarga de títulos sin tener que llevarlos de
forma física o esperar que tengan disponibilidad del libro físico.
Partiendo del punto global que la tecnología de códigos ha sido de gran
ayuda a industrias nacionales e internacionales, lo tomamos como referencia
41
para implementar su uso en un problema local dentro de la biblioteca de la
universidad.
MÉTODO DE ANÁLISIS
En la presente tesis se toma como fuente principal el análisis de métodos y
circunstancias que lleven desde el punto de referencia hasta la parte de
investigación general donde poder decir que la población de estudio necesita una
nueva manera de ver información de libros, con lo que podemos llegar a la
utilización de códigos QR para la mejor adaptación de carga y descarga de libros.
MÉTODO SISTEMÁTICO
Se pretende que la propuesta de esta tesis dé como resultado una ayuda
significativa a la población que se encuentra dentro de la universidad, la cual
consume información mediante libros y no tiene la disponibilidad física de llevarlo;
la implementación de una aplicación que facilite la consulta de libros mediante
una carga y su posterior descarga a partir de códigos QR, hará que se da una
apertura a una mayor recepción de información.
3.2 FASES DEL RUP
FASE 1: INICIO
La Arquitectura del software que se tiene planteada se describe a
continuación con su respectivo diagrama:
42
3.2.1.1 Levantamiento de Información.
Se estableció como herramienta para la tesis a la observación, dirigida
especialmente a las personas que eran actores directos en cada uno de los
procesos del sistema a desarrollar, teniendo como principal frente para sacar
conclusiones, a los diferentes estudiantes, quienes con sus experiencias dan un
punto de vista sobre la detección de códigos QR, sus respectivos beneficios, sus
alcances y riesgos.
Interfaz Android Conectividad
Servidor
Azure
Internet
Dispositivo
Android
Usuario
Navegador
Figura 13: arquitectura del software
43
FASE 2: ELABORACIÓN
El primer análisis del aplicación se realiza a través del problema donde
intervienen los estudiantes de la universidad, más específicamente aquellas
personas o actores que están interesados en la adquisición de información de la
biblioteca del plantel educativo, para lo cual se da como solución el desarrollo e
implementación de un sistema que gestione libros digitalmente y se puedan
descargar mediante la tecnología de códigos QR
3.2.1.2 Arquitectura del sistema
En el desarrollo de la tesis se planteó la arquitectura normal orientada a
dispositivos con sistema operativo para móviles, es especifico los sistemas que
llevan instalados cualquier versión de Android, en el caso de los servicios de
alojamiento web donde la aplicación guardara y consultara datos, se la realizo en
un hosting pagado con la tecnología Microsoft Azure.
FASE 3: CONSTRUCCIÓN DEL PROTOTIPO
En la etapa de construcción se ejecutó sobre los diversos procesos que
intervienen en la ejecución de los módulos de carga y descarga de libros,
interpretados a través del Lenguaje Unificado de Modelamiento “UML”, en el cual
con la utilización de diagramas donde se interpreta a los elementos de los
procesos de la aplicación, se puede detallar en gran medida toda la estructura
del sistema enfocado a la investigación de lectura de códigos QR y la
funcionalidad de cada uno de los procesos con los cuales cuenta.
44
3.2.1.3 Maquetación
FASE 4: TRANSICIÓN
Esta fase consiste en involucrar a los diferentes modelos y marcas de
celulares que necesitan de un sistema que ayude a mejorar su uso y de
comodidad al usuario.
3.2.1.4 Análisis de pruebas de transición:
Se han evaluado las dificultades que se obtienen realizando pruebas
diarias a toda hora, con diferentes marcas de celulares, según la
Imagen de fondo
Menú de
Opciones
Cuerpo del
formulario
Titulo
Subtitulo
Figura 14: Maquetación inicial
45
necesidad de los diversos usuarios directos e indirectos. De esta
manera se facilita su velocidad a cualquier día o en cualquier horario
y así se identificará y se dará solución al problema.
3.2.1.5 Implementación:
Para esto se ha registrado el problema que la mayoría obtiene al hacer
uso del celular y verificar cada instante las fallas que se presentaron
y por consiguiente dar con una solución para este tipo de dificultad.
3.2.1.6 Puesta en marcha:
Se instala el software en los dispositivos, haciendo las pruebas
respectivas en cada uno de sus entornos para verificar el correcto
funcionamiento del software. En caso de que el software se encuentra
defectuoso, en este punto aún se pueden realizar modificaciones al
mismo.
3.2.1.7 Gestión de la transición:
Una vez efectuada la implementación, debe realizarse un seguimiento
de la adopción de la herramienta, dar soporte a los usuarios y
gestionar el mantenimiento de forma correctiva y evolutiva de la
aplicación.
47
ANÁLISIS Y DISCUSIÓN DE RESULTADOS
La metodología que se usó para este desarrollo fue la denominada RUP, que
ha proporcionado una mayor estructura en la estabilidad del proyecto, cuyo fin es
el de entregar un producto de software que mide la eficiencia en procesos y
organización.
Además se usó la propuesta de diseño MVC (Model – View - Controller) para
implementar sistemas donde se requiere el uso de interfaces de usuario.
También surgió la necesidad de crear un software más robusto con un mejor ciclo
de vida, donde se potencie la facilidad de mantenimiento, reutilización del código
y la separación de conceptos. Con el lenguaje de modelamiento unificado
conocido como UML, que se usa para el análisis de diseños orientados a objetos.
El análisis dio como resultado que los códigos QR tienen mayor capacidad
de información y son más sencillos de reconocer en cualquier posición, aunque
la característica más importante del QR es que es de código abierto y que sus
derechos de patente (propiedad de Denso Wave) no son ejercidos, por lo que su
uso es gratuito.
Por otro lado, los BIDI (códigos bidimensionales) con menor capacidad de
almacenamiento y más complejos de reconocer, pero lo más característico es
que su uso no es gratuito y han de usarse herramientas específicas para su
generación y lectura. Aunque existen varios lectores que permiten la lectura de
BIDI con dispositivos móviles, no todos los lectores soportan este formato debido
a su coste y menor difusión.
Otro de los códigos populares en las industrias de las tecnologías de
imágenes, son los de barras, los mismos que tuvieron un auge en la década de
la industrialización digital (1990) y como repercusión se posicionó por varios años
por su fácil acceso y escaneo.
48
Se realizó la comparación de las tres tecnologías de escaneo más
importantes y dio como resultado la siguiente tabla:
Tabla 1: Análisis códigos Bidimensionales
Códigos
Bidimensionales
Característica Capacidad Beneficios
Códigos QR Módulo para
almacenar
información en
una matriz de
puntos
Gran capacidad
de
almacenamiento
hasta 4296
caracteres
Código que
contiene ambas
tecnologías(barras
y BIDI) además de
ser más comercial
y su uso es de
liberación gratuita
Códigos de
Barras
Conjunto de
líneas paralelas
de distinto grosor
y espaciado
Menor
capacidad de
almacenamiento
hasta 925
caracteres
Comercialmente
más global en
industrias
internacionales
Códigos BIDI Su patente es de
la compañía de
Movistar
Capacidad de
almacenamiento
hasta 2025
caracteres
Rango de lectura
extenso
Es por este motivo que se los toma como punto de observación a los códigos
QR en el transcurso de la tesis, ya que existen multitud de herramientas para
generarlos y para leerlos.
49
4.1 FASE DE INICIO
Teniendo en cuenta que anteriormente la investigación bibliográfica se
practicaba de manera rutinaria dentro de una biblioteca, en la cual los estudiantes
se dirigían a un entorno físico; la actual propuesta promueve la participación
activa de los estudiantes, así como un crecimiento de las interacciones dentro de
la investigación en libros que definitivamente optimicen el proceso de
aprendizaje.
La idea principal con la creación de este software es la facilidad para la
descarga de libros dentro de la biblioteca de la universidad, lo que ayudará al
estudiante a aumentar sus conocimientos en las diferentes asignaturas teniendo
en cuenta los siguientes requerimientos:
Carga de libros digitales
o Generador de código QR
Lector de código QR
o Descarga de libro digital
ALCANCE Y RIESGOS DEL PROYECTO
Se desea automatizar, fundamentalmente, la carga de libros al servidor y
generar el código QR para la posterior descarga del mismo. En cuanto a la
descarga debe facilitarse su gestión integral, desde el momento en que un
usuario consigue uno de los códigos para descarga, pasando por la instalación
de nuestra aplicación y la posterior descarga del libro dentro del sistema. Se
contempla la posibilidad de utilizar la aplicación en dispositivos móviles android
únicamente o mediante un navegador web.
Nótese que el sistema debe utilizarse exclusivamente para la gestión de
carga y descarga de libros, y no para la creación de usuarios, carga de archivos
distintos, auditoria o administración de ningún tipo. Así como tampoco la incursión
50
automática de la cámara web en dispositivos móviles y queda abierta la
posibilidad de la utilización mediante un navegador web en distintos dispositivos.
El sistema funciona únicamente con una conexión a internet y es requisito
fundamental tener una cámara para la captura de códigos QR.
4.1.1.1 Restricciones
El alcance del sistema de escaneo de códigos QR para la descarga de libros
digitales de la biblioteca será únicamente a nivel local, que estará limitado a las
instalaciones de la universidad y el servicio se verá estipulado solo para los libros
que en ella contengan.
El servicio web donde se realiza la carga y almacenamiento de libros tendrá
que estar siempre en línea y habilitado con un espacio de almacenamiento de
plan medio con el costo estipulado hasta la fecha de treinta dólares americanos
según la página de almacenamiento Microsoft Azure que es la actualmente
usada, y con un espacio de 2GB al mes.
El listado de libros y su respectiva carga solo se lo puede realizar con
extensión .pdf y esto le corresponde únicamente a la universidad. Para el
completo funcionamiento se debe tener un listado de libros con el número mínimo
que según se establezca en las políticas internas de la institución.
REQUISITOS FUNCIONALES
El usuario deberá tener la posibilidad de buscar escanear un código
QR y descargar el libro al que esta anexado dicho código.
51
El sistema deberá proporcionar visores adecuados para que el usuario
pueda acceder al sistema mediante un dispositivo android o un
navegador web.
A cada libro se le debe anexar un código único de identificación y un
código QR el cual servirá para buscarlo y descargarlo.
Los libros se podrán subir a la aplicación únicamente si se encuentran
en una extensión .pdf.
REQUISITOS NO FUNCIONALES
El sistema será desarrollado para las plataformas que cuenten con un
navegador web o que tengan sistema operativo android.
La aplicación debe ser compatible con todos los navegadores web.
La aplicación deberá consumir menos de 500 Mb de memoria RAM.
La aplicación no podrá ocupar más de 10 MB de espacio en disco.
La nueva aplicación debe manejar fuentes del alfabeto en inglés,
Idiomas latinos (español, francés, Portugués, Italiano), Arábico y
Chino.
La interfaz de usuario será implementada para navegadores web
únicamente con HTML5.
4.2 FASE DE ELABORACIÓN
Tomando en cuenta al análisis que se realizó al observar a un grupo de
estudiantes que frecuentan la biblioteca de la universidad, se puedo llegar al
análisis a definir el problema que lleva la búsqueda de libros en su manera física
y la demora que esto conlleva. Por esa razón se dará la construcción a una
52
aplicación móvil que constituya una estrategia para la investigación de forma
digital de libros que se encuentren dentro de la institución.
ARQUITECTURA DEL SISTEMA
La arquitectura del sistema referente a la detección de códigos QR se la
realiza con las 3 capas del sistema de información. Por la parte de vista de
usuario se la dividió en 2 partes que son:
Subida de información (Libros digitales)
Investigación de libros en el servidor mediante códigos QR.
Dentro de la capa de negocios visualizamos la creación y puesta en marcha
de clases, las cuales aparte de restringir el uso de códigos infiltrados, nos ayudan
a la organización y rápida codificación de los algoritmos utilizados.
Y al final la parte de base de datos que es donde se guardara la información
de los libros digitales a ser investigados y descargados.
Para toda esta puesta en marcha del sistema, se utilizó un IDE de trabajo
específico, el cual nos ayuda con librerías ya definidas, lo que hace el trabajo
mucho más rápido y sin aditamentos externos que lleguen a confundir a la
estructura de la programación, dicho IDE es Visual Studio 2013 con el lenguaje
de programación ASP Visual Basic, el cual está orientado a ser visualizado en un
entorno móvil para sistemas operativos android.
53
4.3 FASE DE CONSTRUCCIÓN
Para el caso de esta tesis se ha tratado de encontrar una solución al
problema generado por la falta de interés de los estudiantes para acudir a una
biblioteca.
Tomando en cuenta lo citado anteriormente, la idea principal con la creación
de este sistema es la carga de libros de forma digital y su descarga mediante
códigos QR, lo que ayudará al estudiante a disponer del material en todos sus
dispositivos que contengan la aplicación. Así, se llevara a cabo la investigación
de una manera mucho más fácil y dinámica, haciendo que el no acceso a material
bibliográfico de calidad por el poco interés en visitar una biblioteca sea
solucionado.
MAQUETACIÓN
Se presentará el desarrollo de un esquema básico, el cual se conoce como
maquetación, en el que detallaremos los diferentes módulos que tendrá nuestro
sistema y se visualiza en forma general para el usuario.
Imagen de fondo
Figura 15: Esquema inicial
Menú de
Opciones
Titulo
Subtitulo Cuerpo del
formulario
54
Imagen de fondo
Imagen de fondo
Figura 16: Esquema página principal
Figura 17: Esquema ingreso libros
Menú de
Opciones
Titulo
Pie de página
Campo de
texto
Titulo
Campo de
respuesta
Botón
Examinar
55
DIAGRAMA DE CASOS DE USO
Figura 20: caso de uso general usuario
Descargar Libro
Usuario
Ingresar Sistema
Leer Codigo
Listado
registros
Titulo
Esquema de
datos
Figura 18: listado de libros
56
Figura 21: caso de uso general administrador
El usuario puede acceder a los servicios del sistema como páginas de inicio
libros, carga de libros y lector de códigos QR.
Tabla 2: Caso de uso ingresar sistema
Especificación del caso de uso
Nombre del
caso de uso:
Ingresar Sistema Versión No: 1.0
Descripción: Posibilita al actor para que acceda al sistema
Autor: Santiago Pacífico Avila Fecha: 13/12/2015
Usuario/Actor:
Usuario/Administrador
Flujo Básico
Paso Actor Sistema
Descargar Libro
Administrador
Cargar Libro
Ingresar Sistema
Leer Codigo
57
1 El usuario ingresará al sistema a través
de una aplicación Android.
El sistema muestra en pantalla las
opciones disponibles para ingresar
Especificación de Caso de Uso: Cargar Libro
Figura 192: generar libro
Tabla 3: Caso de uso Cargar Libro
Especificación del caso de uso
Nombre del
caso de uso:
Cargar Libro Versión No: 1.0
Descripción: Posibilita al actor para que realice el registro de un nuevo libro.
Autor: Santiago Pacifico Ávila Fecha: 13/12/2014
Usuario/Actor:
Administrador
Flujo Básico
Paso Actor Sistema
AdministradorValidar Informacion
Ingresar Libro
58
1 El administrador ingresará al
sistema escogiendo la opción de
“generar libro”.
El sistema despliega en pantalla
todas las opciones disponibles para su
manipulación.
2 El administrador realiza el registro
de un nuevo libro.
En pantalla se despliega un
formulario con diferentes campos para el
ingreso de la información de los libros.
3 El administrador escoge el libro que
se desea cargar.
El sistema copia en el servidor
predefinido el libro seleccionado.
4 El administrador llena los campos El sistema valida campo por campo
para controlar las restricciones internas,
(números, no se permiten caracteres
especiales, cedula, correo, solo letras y
campos requeridos).
5 El administrador presiona en el
botón ingresar.
El sistema envía toda la información
de los campos a la base de datos y se
presenta un mensaje en pantalla
notificando el ingreso y el código QR. que
se generó automáticamente.
Flujo Alternativo
Paso Actor Sistema
1 El administrador ingresa datos de
libro de manera errónea.
El sistema a través sus restricciones
inhabilita el botón de ingresar, hasta que
el administrador digite los datos
correctos.
2 El administrador no ingresa registro
alguno.
El sistema a través sus restricciones
inhabilita el botón de ingresar, hasta que
el administrador digite los datos
correctos.
59
Figura 202: Diagrama de secuencia generar libro.
Especificación de Caso de Uso: Descargar Libro
Figura 213: Caso de uso descargar libro
Ver datos
Llenar informacion
Preparar informacion
Validar Informacion
Presentar informacion
Devolver Respuesta
Ingresar Informacion
:BDDLibros:Sistema :Estilos :Clase_Libros
Administrador
Ver datos
Llenar informacion
Preparar informacion
Validar Informacion
Presentar informacion
Devolver Respuesta
Ingresar Informacion
UsuarioValidar en el sistema
Escanear QR
60
Tabla 4: Caso de uso Descargar Libro
Especificación del caso de uso
Nombre del
caso de uso:
Descargar Libro Versión No: 1.0
Descripción: Posibilita al actor leer un código.
Autor: Santiago Pacifico Ávila Fecha: 13/12/2014
Usuario/Actor:
Usuario/Administrador
Flujo Básico
Paso Actor Sistema
1 El Usuario realiza la consulta de las
solicitudes de proformas.
El sistema muestra en pantalla las
opciones disponibles.
2 El Usuario Administrador escanea
la imagen de código QR.
El sistema muestra en pantalla la
información del libro y la opción para su
descarga.
3 El Usuario selecciona la opción de
descargar.
El sistema verifica el archivo en el
servidor y lo descarga.
Flujo Alternativo
Paso Actor Sistema
1 El Usuario no llena todos los
campos de la proforma de trabajo para el
envío.
El sistema muestra en pantalla un
mensaje notificándole el error cometido
para que complete la información
61
Figura 224: Diagrama de secuencia descargar libro
Especificación de Caso de Uso: Leer código QR
Figura 235: Caso de uso Leer código QR
Descarga_libros
devolver l ibro
buscar libro
preparar presentacion
validar qr
presentar informacion
descargar libro
Escanear_QR
Usuario
:BDDLibros:Sistema :Clase_libros:Estilos
devolver l ibro
buscar libro
preparar presentacion
validar qr
presentar informacion
descargar libro
Escanear_QR
Usuario
Escanear QR
Validar en el sistema
Verificar l ibro
62
Tabla 5: Caso de uso leer código QR
Especificación del caso de uso
Nombre del
caso de uso:
Leer código QR. Versión No: 1.0
Descripción: Posibilita al actor leer un código QR.
Autor: Santiago Pacífico Avila Fecha: 13/12/2014
Usuario/Actor:
Usuario
Flujo Básico
Paso Actor Sistema
1 El Usuario escanea la imagen de
código QR.
El sistema muestra en pantalla la
información del código.
Flujo Alternativo
Paso Actor Sistema
1 El Usuario no llena todos los
campos de la proforma de trabajo para él
envió.
El sistema muestra en pantalla un
mensaje notificándole el error cometido
para que complete la información.
63
Figura 26: Clases lector QR
Lector_Qr
preparar presentacion
validar qr
presentar informacion
presentar informacion
Escanear_QR
Usuario
:Sistema :Clase_libros:Estilos
preparar presentacion
validar qr
presentar informacion
presentar informacion
Escanear_QR
64
DIAGRAMA DE BASE DE DATOS
Figura 224: Diagrama Base De Datos
CÓDIGO FUENTE
Está en el sistema y es el código principal que nos permite generar códigos QR.,
se guarda el en registro y se sube el libro al servidor
Me.TxtMensaje.Text = "" If Me.FileUpEx.FileName = "" Then Me.TxtMensaje.Text = "Escoja un archivo para cargar" Else Dim filepath As String = FileUpEx.PostedFile.FileName Dim pat As String = "\\(?:.+)\\(.+)\.(.+)" Dim r As Regex = New Regex(pat) Dim m As Match = r.Match(filepath) Dim file_ext As String = Path.GetExtension(filepath) Dim filename As String = Path.GetFileName(filepath) Dim tam As Integer = Me.FileUpEx.FileBytes.Length If file_ext = ".pdf" Then If (tam / 1024) < 8000 Then objeto_libros.Libro_Nombre = Me.txtNombre.Text objeto_libros.Libro_Detalle = Me.txtDetalle.Text
65
objeto_libros.Libro_Estado = "activo" objeto_conexion.Sentencia_SQL = "select * from TblQr" objeto_conexion.ejecturar_sentencia() Dim dir2, cod As String If Not objeto_conexion.registro.EOF Then objeto_conexion.registro.MoveLast() cod = CStr(CSng(objeto_conexion.registro.Fields(0).Value) Else cod = 1 End If dir2 = "esp" + cod + ".pdf" objeto_conexion.conexion.Close() objeto_libros.Libro_Descarga = dir2 code_qr = "images/qr/esp" + cod + ".jpg" objeto_libros.Libro_Qr = code_qr objeto_libros.Libro_id = cod Me.TxtMensaje.Text = objeto_libros.insertar() 'sec para predeterminar las especies + el código de la misma Img = encoder.Encode("esp" + cod) Dim dir2_qr As String = "images/qr/esp" + cod + ".jpg" Dim dir_qr As String = Server.MapPath("\") + dir2_qr Img.Save(dir_qr, ImageFormat.Jpeg) dir = Server.MapPath("doc\") FileUpEx.PostedFile.SaveAs(dir & dir2) Image1.ImageUrl = dir2_qr Me.btnPopup.Visible = True Else Me.TxtMensaje.Text = "La imagen debe pesar menos de 8 MG" End If Else Me.TxtMensaje.Text = "Solo se permiten archivos PDF" End If
End If
4.4 TRANSICIÓN
En el presente capítulo se explicarán, describirán y mostrarán las
complicaciones que se tuvieron para el desarrollo de los módulos del sistema.
Dentro de la fase de implementación se simularon pruebas de concurrencia y
pruebas de funcionalidad. Las pruebas de concurrencia fueron simuladas desde
diferentes dispositivos apuntando al mismo sitio, ya que no se cuenta con un
software especial para realizar este tipo de pruebas.
66
Etapas de Implementación
Se ha realizado un esquema sencillo que plantea las siguientes etapas
generales:
Figura 25: Etapas de implementación
Preparación:
Esta fase consiste en involucrar a los diferentes modelos y marcas de
celulares que necesitan de un sistema que ayude a mejorar su uso y
de comodidad al usuario.
Análisis:
Se han evaluado las dificultades que se obtienen realizando pruebas
diarias a toda hora, con diferentes marcas de celulares, según la
necesidad de los diversos usuarios directos e indirectos. De esta
manera se facilita su velocidad a cualquier día o en cualquier horario
y así se identificará y se dará solución al problema.
67
Implementación:
Para esto se ha registrado el problema que la mayoría obtiene al hacer
uso del celular y verificar cada instante las fallas que se presentaron
y por consiguiente dar con una solución para este tipo de dificultad.
Puesta en marcha:
Se instala el software en los dispositivos, haciendo las pruebas
respectivas en cada uno de sus entornos para verificar el correcto
funcionamiento del software. En caso de que el software se encuentra
defectuoso, en este punto aún se pueden realizar modificaciones al
mismo.
Gestión de la transición:
Una vez efectuada la implementación, debe realizarse un seguimiento
de la adopción de la herramienta, dar soporte a los usuarios y
gestionar el mantenimiento de forma correctiva y evolutiva de la
aplicación.
PROBLEMAS DE IMPLEMENTACIÓN EN EL SISTEMA.
Las pruebas que se realizaron en una primera etapa, fueron del sistema con
diferentes tipos de bases de datos. Se realizó la conectividad con el servidor y se
hizo una conexión a una página local, la cual usaba como herramienta
SQLServer, las pruebas fueron potenciadas a las versiones desde la 2008 hasta
la más actual en el mercado que es la 2014. Cabe mencionar que las pruebas
que se realizaron fueron sencillas, ya que únicamente se desarrolló una conexión
68
con la base de datos y se insertó información en algunos registros, es decir, no
se construyó un sitio con cada manejador de base de datos.
Un problema que se presenta al utilizar una base de datos diferente es el
conseguir el driver adecuado para cada base y su versión. Como ya se mencionó
la tesis fue desarrollada MSSQLServer 2014 a una base en un servidor remoto
que se nos facilitó, por lo cual quien utilice este software y requiera utilizar otro
tipo de base de datos necesitara conseguir el driver adecuado y configurar el
sistema.
Una vez corregidos y probados los problemas o errores que se presentaron
en la etapa beta del sistema, se desarrolló un escenario virtual que sea lo más
cercano a uno real, sitio con cuatro secciones de tiempo a ser evaluadas:
Mañana (entre 6:00 y 12:00)
Tarde (entre 12:00 y 18:00)
Noche (entre 18:00 y 0:00)
Madrugada (entre 0:00 y 6:00)
Cada una de estas secciones fue probada con 10 dispositivos diferentes, los
cuales fueron seleccionados de forma aleatoria y puestos en marcha a diferentes
horas en varias secciones y lugares, dentro del perímetro de la ciudad de Quito,
también fue una prueba realizada durante dos semanas completas. A esta
comprobación de la aplicación se realizaron varios tipos de pruebas, como son
las de velocidad, de disponibilidad y de estabilidad.
Pruebas de Funcionalidad.
Las pruebas de funcionalidad fueron importantes, ya que por medio de ellas
se verificó que el sistema desarrollado contara con la funcionalidad que desea,
es decir, al iniciar cada uno de los procesos para abrir los formularios pertinentes
69
y ejecutar las acciones correspondientes a los botones y sentencias que cada
uno de los mismos conlleva.
Se presenta en el siguiente cuadro los dispositivos con los cuales se ha
realizado las pruebas de funcionalidad y sus respectivas observaciones.
Tabla 6: Características dispositivos móviles
CARACTERISTICAS DE LOS CELULARES
CELULAR VELOCIDAD OBSERVACIONES
MI 3 6 Tiende a colgarse por el uso de multimedia e internet.
Hognmi Red
rice
7 Presenta dificultad de velocidad por el uso de
multimedia.
Samsung
Galaxy S4
8 Poca velocidad por el uso de internet.
Nokia Lumia 7 El uso de internet y multimedia tiende a colgarse.
Vaio 8 Presenta poca velocidad pero en pocos momentos.
Motorola Droid
RAZR HD
8 Se observa lentitud cuando existe una descarga.
Samsung
Galaxy S3
7 Demora en su velocidad por el uso de varios archivos.
Sony Xperia Z 7 Es lenta su velocidad por el uso de descarga, multimedia
e internet.
Samsung
Galaxy Note II
9 Su estabilidad de velocidad varía en momentos de
descarga pero no presentaría un mayor problema.
70
PRUEBA INTEGRAL
Este tipo de pruebas verifican que los componentes de la aplicación
funcionan correctamente actuando en conjunto.
Las pruebas de integración son las que comprobarían que se ha mandado
un email, la conexión real con la base de datos, etc.
Este tipo de pruebas son dependientes del entorno en el que se ejecutan. Si
fallan, puede ser porque el código esté bien, pero haya un cambio en el entorno.
En la realización del test se hizo atreves de la página “appthwack” previo
registro y subida de datos, así como la creación de un proyecto de prueba en la
cual se anexara la aplicación a ser puesta en marcha.
Figura 26: Test appthwack
Durante el test de integración, se prueban de manera combinada los módulos
que componen el software. Dichos módulos se van acoplando progresivamente
en conjuntos. Luego de cada acoplamiento, se prueba la correcta interacción
71
entre los módulos. Una vez que se haya verificado que el conjunto funciona de
acuerdo con lo previsto, se suma un nuevo módulo y se vuelven a realizar
pruebas. Así, el conjunto va creciendo y probándose con cada agregado hasta
completar la aplicación. Cada conjunto, parcial o total, debe verificar los
requerimientos funcionales, de rendimiento y de seguridad definidos en las
primeras etapas del ciclo de vida del software.
Figura 27: Dispositivos testeados
Los dispositivos que se pusieron en marcha en la prueba están detallados
en el cuadro de características anteriormente explicado, los resultados
estuvieron con estándares bastante óptimos y sus principales problemas fueron
el resultado de una mala conexión a internet.
72
Figura 28: Resultado en pruebas
El valor de 24 establecido en la figura anterior es correspondiente a la gestión
de 24 pruebas unitarias las mismas que fueron ejecutadas sobre 10 dispositivos
y evaluaron 4 tipos de prueba en la aplicación las cuales pasaron sin novedades:
Instalación
Ejecución y exploración
Ejercicio aleatorio
Desinstalación
74
CONCLUSIONES Y RECOMENDACIONES
5.1 CONCLUSIONES
Los diferentes tipos de aplicaciones que existen en el mercado
marcan un inicio en la investigación, porque en el desarrollo de esta
tesis se adquirieron algunos aplicativos de detección de códigos QR y
para su posterior análisis; donde se puntualiza que la mayoría cumple
con el mismo estándar de calidad y sus diferencias son más de diseño
antes que de funciones internas.
Los cubos bidimensionales que comúnmente se conocen como
códigos QR que son una tecnología útil y muy sencilla para incorporar
a los smartphones (teléfonos inteligentes con conexión a Internet). Las
ideas para aplicarlos son infinitas, ya que toman las dos dimensiones
del cubo para el análisis de un patrón único, haciendo que siempre se
torne a la posibilidad de enriquecer los contenidos multimedia y
complementar la información del entorno físico mediante códigos que
se enlazan con contenidos online (realidad aumentada).
Para la utilización e implementación de esta tecnología se llevaron a
cabo algunos procesos que debieron ser dominados antes de poder
aplicarlos en el programa desarrollado; aunque bien se expone que la
tecnología se la usa cada vez más. Los métodos y funciones en la
mayor parte de los casos se encuentran desarrollados, pero para
nuestro estudio se crearon algoritmos propios, los que se pusieron en
marcha en la aplicación con la tecnología de códigos QR.
La facilidad que tienen los teléfonos inteligentes para incorporar una
cámara de alta resolución, hizo que sea de gran ayuda al realizar las
diferentes pruebas del sistema, las mismas que se extendieron a
varios dispositivos, estas lanzaron como respuesta que los procesos
75
que hemos aplicado están acorde a los estándares normales de
aplicaciones similares, las cuales hemos estudiado con anterioridad.
Por los puntos antes mencionados y con un análisis más profundo en
los diferentes tipos y modelos de códigos QR., así como sus
aplicaciones, tomando en cuenta tanto sus ventajas como desventajas
y falencias que aún existen, podemos decir que el desarrollo de una
tecnología similar es bastante útil, ya que da la apertura a poder
mejorar los algoritmos ya definidos en las aplicaciones que están ya
creadas.
Para llegar a esta conclusión se han estudiado los diferentes procesos
que se encargan de la detección y lectura de los códigos QR. Para lo
cual se usó las metodologías activas que se tiene a disposición como
inductiva, descriptiva, experimental, estadística, analítica, entre otras
expuestas con más detalle en el proyecto. Con la información
proporcionada de estas metodologías se ha ampliado el panorama y
se ha hecho un análisis completo de los códigos QR. y su respectivo
funcionamiento, el cual se ha considerado y puesto a prueba en un
entorno más real, dando óptimos resultados y cumpliendo con los
objetivos planteados.
76
5.2 RECOMENDACIONES
Se deben implementar nuevas tecnologías que ayuden a acelerar
procesos y a obtener información de manera más rápida y eficiente, tales
como los códigos QR., con especial énfasis en lugares donde los procesos
y procedimientos estén estancados, (bibliotecas de la Universidad).
Se recomienda implementar la tecnología de códigos QR. para las
instalaciones de la institución, previamente realizando una explicación que
informe a los estudiantes los beneficios de esta tecnología y su correcta
utilización.
Se requiere para la creación de cualquier sistema para teléfonos móviles,
tener o preestablecer estándares de acuerdo a los diseños y las
dimensiones físicas de los mismos.
Es necesario una amplia dedicación e investigación profunda para dar con
los algoritmos correctos a la hora de desarrollar una aplicación que tiene
como base la lectura de cubos bidimensionales, o como se los conoce
comúnmente, códigos QR. Estas investigaciones se las debe realizar con
procesos y códigos actuales, ya que muchas de las funciones que se
pueden encontrar, se tratan de estructuras un tanto antiguas. Debido a que
la tecnología de lectura siempre está a la par con la evolución de los
teléfonos inteligentes, al trabajar con una estructura antigua no se podría
contar con todas las funcionalidades necesarias, por lo que dichos
procesos no serán de utilidad para los nuevos sistemas operativos que
llevan el hardware actual.
78
BIBLIOGRAFÍA
Jesús Tejerina R. (18 de 07 de 2011). myslide. Recuperado el 04 de 05 de 2015,
de http://myslide.es/documents/02-ocr-omr-icr.html
scribd. (17 de 07 de 2011). Recuperado el 30 de 05 de 2015, de
http://es.scribd.com/doc/134686797/02-OCR-OMR-ICR#scribd
Codigos-qr. (2013). Obtenido de http://www.codigos-qr.com/
http://es.wikipedia.org/wiki/Interactividad. (2013).
Wikipedia. (2014). Recuperado el 10 de 04 de 2015, de
https://es.wikipedia.org/wiki/Silabario_%28sistema_de_escritura%29
aceproject. (2013). Aceproject. Obtenido de
http://aceproject.org/main/espanol/et/et72.htm
Aceproject. (2013). Aceproject. Recuperado el 22 de 01 de 2015, de
http://aceproject.org/main/espanol/et/et72.htm
Aceproject. (2015). Recuperado el 22 de 01 de 2015, de
http://aceproject.org/main/espanol/et/et72.htm
Adda Chile Ltda. (2013). Todo lo que necesitas saber sobre codigos qr. Santiago.
Code-Recognition. (2014). Code-Recognition. Obtenido de
http://descargar.cnet.com/QR-Code-Recognition-System/3000-2053_4-
75811359.html
desarrollo de la creatividad. (27 de 11 de 2005). monografias. Recuperado el 01
de 06 de 2015, de http://www.monografias.com/trabajos-pdf2/desarrollo-
creatividad/desarrollo-creatividad.pdf
Diputación de Cádiz. (2014). Códigos QR.
Dr. Jorge Villarroel Idrovo. (20 de 11 de 2012). repositorio. Recuperado el 01 de
06 de 2015, de
http://repositorio.utn.edu.ec/bitstream/123456789/1435/3/05%20FECYT%20149
0%20PRELIMINARES.pdf
Escanéo óptico. (04 de 07 de 2009). slideshare. Recuperado el 28 de 05 de 2015,
de http://es.slideshare.net/vero.chepa/escano-ptico
79
Fidias G. Arias. (17 de 07 de 2006). ebevidencia. Recuperado el 16 de 06 de
2015, de http://ebevidencia.com/wp-content/uploads/2014/12/EL-PROYECTO-
DE-INVESTIGACI%C3%93N-6ta-Ed.-FIDIAS-G.-ARIAS.pdf
Fundacion Orange. (2014). Herramienta de autor.
http://definicion.de/guia/. (s.f.).
Icart, M. T. (2006). Elaboración y presentación de un proyecto de investigación y
una tesina. Barcelona: Edicions de la Universitat de Barcelona.
ingeniería del software. (02 de 10 de 2013). proyectosguerrilla. Recuperado el 17
de 06 de 2015, de http://proyectosguerrilla.com/blog/2013/02/las-cinco-etapas-
en-la-ingenieria-del-software/
Jordi Sanchez. (2014). codigos-qr. Recuperado el 02 de 02 de 2015, de
http://www.codigos-qr.com/preguntas-frecuentes-codigos-qr/
MARIO RUBEN VILLARRUEL. (22 de 05 de 2014). issuu. Recuperado el 10 de
06 de 2015, de
http://issuu.com/marvillvillarrealbriones/docs/ingieneria_de_software_
MarkQual.COM. (2013). MarkQual. Recuperado el 20 de 01 de 2015, de
http://www.markqual.com/index.php?option=com_content&view=article&id=69&I
temid=91&lang=es
Mary Tenelema. (02 de 02 de 2014). Calameo. Obtenido de
http://es.calameo.com/read/003285581c078a5847539
METODOLOGÍAS . (2009). Users. españa.
Nicolas Velez. (10 de 10 de 2014). nilovelez. Recuperado el 10 de 09 de 2015,
de http://www.nilovelez.com/2012/08/top-10-lectores-gratuitos-de-codigos-qr/
Norfipc. (11 de 10 de 2013). hacer-codigo-qr. Recuperado el 10 de 05 de 2015,
de http://norfipc.com/web/hacer-codigo-qr-leer-camara-telefono-celular.php
Norfipc. (11 de 10 de 2014). norfipc.com. Recuperado el 10 de 9 de 2015, de
https://norfipc.com/codigos/como-crear-codigos-qr-se-ejecuten-forma-
automatica.php
NorfiPC. (s.f.). NorfiPC. Recuperado el 20 de 01 de 2015, de
http://norfipc.com/web/hacer-codigo-qr-leer-camara-telefono-celular.php
80
pcworld. (20 de 10 de 2013). pcworld. Recuperado el 10 de 04 de 2015, de
http://www.pcworld.com.mx/Articulos/22332.htm
procesosdesoftwar. (20 de 10 de 2011). Proceso de Software. Recuperado el 10
de 09 de 2015, de
http://procesosdesoftware.wikispaces.com/METODOLOGIA+RUP
Said Holguín. (14 de 07 de 2014). monografias. Recuperado el 02 de 06 de 2015,
de http://www.monografias.com/trabajos82/metodos-de-investigacion-
cientifica/metodos-de-investigacion-cientifica2.shtml
Sardá, C. A. (2013). Multimedia. Obtenido de
http://clasedigital.com.ar/imagenes_sitio/manual2013/Libro%2011%20Multimedi
a.pdf
ScanBuy. (2014). Guía de Escaneo móvil.
seniortablets. (20 de 05 de 2013). seniortablets. Recuperado el 10 de 04 de 2015,
de http://seniortablets.blogs.upv.es/files/2013/11/esquema_QR.png
SOFTWARE. (25 de 12 de 2014). academica. Recuperado el 03 de 06 de 2015,
de http://www.academica.mx/blogs/las-5-etapas-la-ingenier%C3%ADa-software
SOFTWARE. (10 de 12 de 2014). wikipedia. Recuperado el 10 de 06 de 2015,
de https://es.wikipedia.org/wiki/Software
software. (s.f.). cerubiano. Recuperado el 03 de 06 de 2015, de
http://cerubiano.blogspot.com/
Storelabs. (2013). codigos Qr. Obtenido de http://www.storelabs.com/codigos-qr-
creativos-de-diseno/
Tamayo, M. (2004). El proceso de la investigación científica. México: LIMUSA.
tribunaabierta. (10 de 10 de 2012). tribunaabierta. Recuperado el 10 de 04 de
2015, de http://www.tribunaabierta.com/blog/wp-
content/uploads/2011/01/qr_partes.jpg
Vidal Moruno. (2004). "Investigación". bolivia.
82
ANEXOS
6.1 MANUAL DE USUARIO DE LA APP DE CÓDIGOS QR
Este Manual de Usuario está dirigido a los estudiantes y docentes
universitarios para que conozcan sobre el uso y funcionalidad de la aplicación.
El documento será una guía dinámica y detallada de todas las ventajas que
ofrece. Una de ellas es el acceso a la Biblioteca Virtual a través los códigos QR,
los mismos que se han generado a partir de la digitalización de todos los libros.
El usuario solo con capturar con su celular la imagen del código QR, del
archivo de su interés, automáticamente la aplicación le permitirá descargar todo
su contenido y visualizarlo en su móvil. Esto facilitará el acceso a los libros
digitalizados a todos los estudiantes de la modalidad presencial, semipresencial
y sobre todo de la modalidad a distancia; ahorrándoles tiempo y dinero.
Existen cinco tipos de accesos a la aplicación:
Revisar libros
Crear libros
Scanner global
Información
Servicios
6.1.1 REVISAR LIBROS.
El usuario debe ingresar a la aplicación mediante su celular, donde seleccionará
el ícono que lleva de nombre QR_UTE.
83
Figura 33: Ícono de acceso a la aplicación.
Cuando ya se ingresa a la aplicación se visualizará la pantalla principal donde
existen varias opciones para su acceso y seleccionaremos la primera que es
Revisar Libro.
Figura 34: Pantalla Inicial de aplicación.
En esta opción se desplegarán cuatro opciones:
Nombre del libro
Detalle
Imagen
84
Mostrar Código
6.1.2 NOMBRE.
Aquí se busca el nombre del libro indicado y se desplegará un listado de
coincidencias, de la cuales seleccionaremos la que se requiera.
Figura 35: Pantalla de ingreso de nuevo libro.
6.1.3 Detalle.
Se ingresará el nombre del libro para que posteriormente se pueda visualizar en
el listado y se pulsa el botón Insertar.
El botón Limpiar reinicia todos las opciones de los botones para comenzar
nuevamente.
85
Figura 36: Pantalla de botón insertar.
6.1.4 Imágenes.
Se inserta o selecciona el libro digitalizado en extensión Pdf. para ingresarlo en
la biblioteca de libros virtuales de la aplicación.
Figura 37: Pantalla de despliegue de lista de libros.
86
6.2 CREAR CÓDIGO QR.
En la opción seleccionada se generará el código QR. para que el usuario lo
pueda descargar a su dispositivo móvil.
Figura 38: Generación de código QR.
6.3 SCANNER GLOBAL.
Cuando el Código es descargado se ingresará a la opción Lector Código
QR. y se podrá visualizar el contenido libro. La opción Leer permitirá realizar la
función anteriormente descrita.
87
Figura 39: Pantalla lector de Código QR.
6.4 INFORMACIÓN.
Aquí se describe de forma concisa y clara la funcionalidad de la aplicación y
cómo se almacena toda la información.
Figura 40: Información de la aplicación.