generaciÓn y puesta en marcha de un modelo...
TRANSCRIPT
GENERACIÓN Y PUESTA EN MARCHA DE UN MODELO PARA LA
HOMOLOGACIÓN DE TERMINALES MÓVILES A TRAVÉS DEL DESARROLLO
DE UNA APLICACIÓN SOBRE EL SISTEMA OPERATIVO ANDROID
WBEYMAR CARVAJAL PINZÓN
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
MAESTRIA EN TELECOMUNICACIONES MÓVILES
FACULTAD DE INGENIERIA, PROGRAMA DE ELECTRÓNICA
BOGOTÁ
2018
GENERACIÓN Y PUESTA EN MARCHA DE UN MODELO PARA LA
HOMOLOGACIÓN DE TERMINALES MÓVILES A TRAVÉS DEL DESARROLLO
DE UNA APLICACIÓN SOBRE EL SISTEMA OPERATIVO ANDROID
WBEYMAR CARVAJAL PINZÓN
COD: 20161027005
TESIS DE GRADO
DIRECTOR
PhD, JUAN CARLOS GÓMEZ PAREDES
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
MAESTRIA EN TELECOMUNICACIONES MÓVILES
FACULTAD DE INGENIERIA, PROGRAMA DE ELECTRÓNICA
BOGOTÁ
2018
Nota de Aceptación: ______________________________
______________________________
______________________________
______________________________
______________________________
______________________________
______________________________
Firma del presidente del jurado
______________________________
Firma del jurado
______________________________
Firma del jurado
Bogotá (19, 02, 2018)
AGRADECIMIENTOS
Agradezco principalmente a mi familia, quienes me han apoyado en todo el
proceso de consecución de esta maestría. Al profesor Juan Carlos Gómez
Paredes, quien me ha prestado su ayuda y compromiso en el desarrollo de este
trabajo de investigación, y en general a todos los docentes de la Universidad
quienes entregaron un poco de su conocimiento para permitirnos avanzar en
nuestros propósitos profesionales.
CONTENIDOS
INTRODUCCIÓN ............................................................................................................................ 11
1. PLANTEAMIENTO DEL PROBLEMA .................................................................................... 12
2. JUSTIFICACIÓN ........................................................................................................................ 15
3. OBJETIVOS ................................................................................................................................ 17
3.1 Objetivo general ................................................................................................................... 17
3.2 Objetivos específicos .......................................................................................................... 17
4. MARCO TEORICO .................................................................................................................... 18
4.1 HOMOLOGACIÓN EN COLOMBIA .................................................................................. 18
4.1.1 RESOLUCIÓN CRT 087 DE 1997 ................................................................... 18
4.1.2 EJEMPLO DE APLICACIÓN DE SW, PARA EL DISEÑO DE UN ESQUEMA DE
HOMOLOGACIÓN EN UNA LINEA DE PRODUCIÓN. ............................................. 21
4.2 SISTEMA OPERATIVO ANDROID ................................................................................... 21
4.2.1 Versiones de Android ....................................................................................... 23
4.2.2 GOOGLE MAPS .............................................................................................. 25
4.2.3 EJEMPLOS DE APLICACIÓN ......................................................................... 26
5. METODOLOGIA ......................................................................................................................... 28
5.1 DISEÑO DEL SET DE PRUEBAS COMUNES QUE CONFORMARAN LA
APLICACIÓN MOVIL, TENIENDO EN CUENTA LA FRECUENCIA DE USO Y LAS
HERRAMIENTAS DISPONIBLES. .......................................................................................... 28
5.2 DISEÑO DE LA INTERFAZ GRAFICA Y FUNCIONAL DEL APLICATIVO. .............. 33
5.2.1 GENERAR LLAMADAS ................................................................................... 34
5.2.2 GENERAR SMS .............................................................................................. 37
5.2.3 INFORMACION DE MMS ................................................................................ 40
5.2.4 MENU DE THROUGHPUT .............................................................................. 42
5.2.5 MENÚ BATERIA .............................................................................................. 45
5.2.6 MENU DE DRIVE TEST .................................................................................. 49
5.2.7 MENÚ HARDWARE ........................................................................................ 53
5.2.8 INFORMACIÓN GENERAL ............................................................................. 56
5.3 EJECUCIÓN DE PRUEBAS CON LA APLICACIÓN ..................................................... 59
5.3.1 Generación de llamadas. ................................................................................. 59
5.3.2 Generación de SMS. ........................................................................................ 63
5.3.3 Información MMS ............................................................................................. 64
5.3.4 Prueba de throughput ...................................................................................... 66
5.3.5 Prueba de batería ............................................................................................ 66
5.3.6 Drive test ......................................................................................................... 68
5.3.7 Elementos de hardware ................................................................................... 71
5.3.8 Información general ......................................................................................... 74
5.4 ANALISIS DE RESULTADOS ........................................................................................... 75
6. APORTES DE LA INVESTIGACIÓN ...................................................................................... 76
TRABAJOS FUTUROS ................................................................................................................. 81
CONCLUSIONES ........................................................................................................................... 82
REFERENCIAS. ............................................................................................................................. 83
ANEXOS .......................................................................................................................................... 84
LISTA DE FIGURAS
Figura 1. Ventas teléfonos inteligentes segundo trimestre de 2017 ...................................... 13
Figura 2. Normas técnicas ............................................................................................................ 20
Figura 3. Versiones de Android .................................................................................................... 24
Figura 4. Diseño preliminar generación de llamadas ............................................................... 29
Figura 5. Diseño preliminar menú Throughput .......................................................................... 30
Figura 6. Diseño preliminar menú Drive test .............................................................................. 31
Figura 7. Diseño preliminar menú elementos de HW ............................................................... 32
Figura 8. Diseño preliminar menú General ................................................................................ 33
Figura 9. Configuración inicialización del administrador de llamadas ................................... 34
Figura 10. Diseño layouts menú llamadas ................................................................................. 35
Figura 11. Diagrama de flujo menú de llamada ......................................................................... 36
Figura 12. Configuración de inicialización del administrador de mensajes cortos ............... 37
Figura 13. Diseño layout menú SMS ........................................................................................... 38
Figura 14. Diagrama de flujo menú de SMS .............................................................................. 39
Figura 15. Configuración SmsManager menú información MMS ........................................... 40
Figura 16. Comparación servicio MMS activo ........................................................................... 40
Figura 17. Diseño layout menú información MMS .................................................................... 41
Figura 18. Diagrama de flujo menú de información MMS ........................................................ 42
Figura 19. Configuración PhoneStateListener menú throughput ............................................ 43
Figura 20. Velocidades y conversión a Mbps ............................................................................ 43
Figura 21. Diseño layout menú throughput ................................................................................ 44
Figura 22. Diagrama de flujo menú trhoughput ......................................................................... 45
Figura 23. Configuración inicial estado de la batería ................................................................ 46
Figura 24. Obtención y publicación nivel de batería ................................................................. 46
Figura 25. Configuración objeto de video ................................................................................... 47
Figura 26. Diseño layout menú batería ....................................................................................... 47
Figura 27. Diagrama de flujo menú batería ................................................................................ 48
Figura 28. Configuración PhoneStateListener menú drive test ............................................... 49
Figura 29. Llave de autenticación servicio Google Maps......................................................... 49
Figura 30. Configuración de maps en el view ............................................................................ 50
Figura 31. Configuración cliente API de localización ................................................................ 50
Figura 32. Diseño layout menú drive test ................................................................................... 51
Figura 33. Diagrama de flujo menú drive test ............................................................................ 52
Figura 34. Código lista de sensores soportados ....................................................................... 53
Figura 35. Obtención y publicación de información del acelerómetro ................................... 54
Figura 36. Búsqueda y publicación dispositivos cercanos WIFI ............................................. 54
Figura 37. Búsqueda y publicación dispositivos cercanos Bluetooth ..................................... 55
Figura 38. Método reproducción prueba de parlante ................................................................ 55
Figura 39. Diseño layouts menú HW ........................................................................................... 55
Figura 40. Diagrama de flujo menú elementos de HW............................................................. 56
Figura 41. Obtención IMEI y TAC ................................................................................................ 57
Figura 42. Código versión de android y zona horaria ............................................................... 58
Figura 43. Layout menú general .................................................................................................. 58
Figura 44. Diagrama de flujo menú general ............................................................................... 58
Figura 45. Ejecución set de llamadas Blade A602 .................................................................... 59
Figura 46. Ejecución set de llamadas Blade A320 .................................................................... 61
Figura 47. Ejecución set de SMS Blade A602 ........................................................................... 63
Figura 48. Ejecución set de SMS Blade A320 ........................................................................... 64
Figura 49. Información de MMS Blade A602 ............................................................................. 65
Figura 50. Información de MMS Blade A320 ............................................................................. 65
Figura 51. Ejecución prueba throughput Blade A602 ............................................................... 66
Figura 52. Ejecución prueba batería Blade A602 ...................................................................... 67
Figura 53. Ejecución prueba batería Blade A320 ...................................................................... 67
Figura 54. Drive test Blade A602 ................................................................................................. 68
Figura 55. Elementos de hardware soportados Blade A602 ................................................... 72
Figura 56. Funcionamiento elementos de hardware soportados Blade A602 ...................... 72
Figura 57. Elementos de hardware soportados Blade A320 ................................................... 73
Figura 58. Funcionamiento elementos de hardware soportados Blade A320 ...................... 73
Figura 59. Información general Blade A602 ............................................................................... 74
Figura 60. Información general Blade A320 ............................................................................... 74
LISTA DE TABLAS
Tabla 1. Lista de elementos menú MMS .................................................................................... 40
Tabla 2. Lista de sensores menú de elementos de HW ........................................................... 53
Tabla 3. Lista de elementos menú general ................................................................................ 57
Tabla 4. Resultados set de llamadas Blade A602 .................................................................... 60
Tabla 5. Resultados set de llamadas Blade A320 .................................................................... 61
Tabla 6. Análisis drive test Blade A602 ...................................................................................... 69
Tabla 7. Beneficios utilización de la aplicación HomologationTrial ........................................ 76
INTRODUCCIÓN
En el siguiente documento se plantea el diseño de un aplicativo Android, que
permite facilitar el proceso de homologación, que se realiza para todos los
terminales móviles que pretenden ingresar en funcionamiento en las redes
celulares de los diferentes operadores (Claro, Tigo, Movistar, etc.). Dentro del
proceso de homologación existen muchos procesos que se pueden automatizar, y
que con esta aplicación se optimizan y además ven una mejora en el tiempo de
ejecución. La reducción de tiempo es de suma importancia debido a factores
económicos de los diferentes actores que participan en este proceso.
En el desarrollo de la investigación, se realizó primero un estudio para encontrar
los menús de pruebas más adecuadas, de tal manera que puedan ser ejecutadas
automáticamente y así incluirlas en la aplicación que se propone. La aplicación se
desarrolló con la herramienta de programación libre “Android studio”, que entrega
todas las librerías necesarias para el diseño de aplicaciones en el sistema
operativo Android. Finalmente, se realizó una prueba de funcionamiento con una
versión de software de mantenimiento de los equipos ZTE Blade A602 y ZTE
Blade A320, con el fin de evaluar la efectividad de la herramienta en un proceso
de homologación de terminales móviles.
El presente documento, entrega el planteamiento del problema de la investigación,
los objetivos que se deben cumplir al final de esta, un marco teórico con los temas
más relevantes relacionados con el proyecto, y finalmente la metodología con la
que se abordó la investigación, en donde se incluye los resultados de la misma y
los beneficios que trajo la utilización de esta herramienta en la ejecución de las
pruebas.
1. PLANTEAMIENTO DEL PROBLEMA
Los dispositivos que se conectan a las redes de telefonía celular como muchos
otros deben someterse a un proceso conocido como homologación, en el cual se
valida el correcto funcionamiento de ciertas características y el cumplimiento de
estándares nacionales e internacionales. En el caso de los dispositivos celulares,
los equipos deben aprobar un proceso de homologación para que se les permita
funcionar de forma legal en las diferentes redes móviles.
En Colombia por ejemplo, los equipos deben pasar por dos tipos de
homologación. La primera relacionada con el gobierno colombiano y con la entidad
encargada de regular el funcionamiento de las telecomunicaciones, la CRC
(Comisión de regulación de comunicaciones), esta entidad certifica que los
equipos cumplen con los mínimos requisitos técnicos establecidos por las leyes
nacionales, de tal forma que solo se permite la comercialización y distribución de
aquellos dispositivos que pasan las pruebas y tienen la aprobación por parte de la
entidad. [1] La segunda homologación se desarrolla entre fabricante (Samsung,
Iphone, Huawei, ZTE, etc.) y operadores, con este proceso se busca que los
terminales funcionen de la mejor manera en la red de cada operador, ya que cada
una tiene sus características específicas de cobertura, bandas de frecuencia
utilizadas, funciones de red (MIMO, VoLTE, etc.) y prioridades de acuerdo al
usuario, todo esto con el fin de optimizar el funcionamiento de sus propias redes.
Cuando hablamos de tecnologías que han revolucionado al mundo en los últimos
años, una de las más importantes es la de los teléfonos inteligentes, que a día de
hoy son sino indispensables, una herramienta que todos debemos tener, ya que
nos proveen un sin número de posibilidades, desde momentos de ocio, una fuente
de investigación y lo más importante un medio de comunicación con todo el
mundo sin importar el lugar en el que nos encontremos. Todos estos desarrollos
en los teléfonos inteligentes se llevan a cabo por medio de aplicaciones que hacen
uso de los diferentes elementos de hardware que lo componen, y que en su
mayoría en el mercado de hoy utilizan el sistema operativo Android. De acuerdo a
las estadísticas publicadas por la firma estadounidense Gartner para el segundo
trimestre de 2017, Android lideraba el mercado con una cuota de 87,7%
aproximadamente 366,2 millones de unidades vendidas. [2] La figura 1 muestra
las ventas de los diferentes fabricantes durante este segundo trimestre.
Figura 1. Ventas teléfonos inteligentes segundo trimestre de 2017
Fuente: Gartner (Agosto de 2017) [2]
Es por esto que el desarrollo de aplicaciones Android ha venido en auge durante
los últimos años, además de que las plataformas de desarrollo son de uso libre lo
cual hace que sean las preferidas por los desarrolladores.
En muchos casos los procesos de homologación se ven retrasados por la cantidad
de pruebas que se deben realizar con el fin de obtener las aprobaciones
necesarias antes de alcanzar la certificación. Razón por la cual en este documento
se muestra el desarrollo de una aplicación móvil, que permite optimizar los
procesos de homologación en teléfonos inteligentes, por medio de la
automatización de una serie de pruebas comunes a todos los procesos. Estas
pruebas son ejecutadas por la aplicación, después de ser configuradas por el
usuario, permitiéndole mantener un control del funcionamiento del equipo y tomar
decisiones de manera más rápida cuando se detecta una anomalía. Se pretende
con este proyecto además de ayudar al ingeniero homologador en la ejecución de
un set de pruebas, el disminuir los tiempos de obtención de las aprobaciones por
parte de los operadores, que son un punto crítico durante los procesos, ya que
una mínima demora puede retrasar las líneas de producción de las fábricas y
provocar que los productos no se encuentren en el mercado en las fechas
requeridas para obtener una mayor demanda de ventas. ¿Qué beneficios
representar el diseño de un aplicativo Android, para el proceso de homologación
realizado entre fabricante y operador?
2. JUSTIFICACIÓN
La tecnología es hoy en día una parte fundamental de la vida de las personas, la
podemos encontrar en una gran cantidad de actividades cotidianas, desde hacer
una compra en un supermercado hasta tomar un transporte. Es así como día a día
se generan nuevos conocimientos que permiten la actualización de las tecnologías
y procesos ya existentes, para hacerlos más eficientes o reemplazarlos por
nuevos y mejores.
Desde hace unos años se está viviendo una gran revolución de las
comunicaciones inalámbricas, y todos estos avances se los debemos a grandes
inventores como Marconi, Bell y Tesla entre otros que gracias a sus
investigaciones y desarrollos permitieron que las comunicaciones inalámbricas
llegaran hasta donde se encuentran [3].
Las redes de telefonía celular han transformado el acceso de las personas a los
servicios de telefonía, ya que les permiten estar en contacto el 100% del tiempo y
además desde la tercera generación les ofrecen otro tipo de servicios que les
dejan realizar un gran número de actividades a través del internet o de un sinfín de
aplicaciones que facilitan la ejecución de tareas.
Con la aparición de sistemas operativos como Android en los dispositivos
inteligentes, el uso de estos terminales se ha vuelta casi indispensable para
cualquier persona que esté en contacto con la tecnología. Android es un sistema
operativo para dispositivos móviles inteligentes propietario de Google, que se
encuentra en la gran mayoría de equipos del mercado, gracias a su versatilidad,
gran cantidad de funciones, facilidades para el desarrollo y economía. Porque es
claro que la utilización en masa de dispositivos con sistema operativo Android, es
porque a los fabricantes se les facilita su utilización, y en ningún caso significa que
sea de mala calidad, sino simplemente que se puede adaptar al hardware
presente en cualquier Smartphone.
Dados estos acontecimientos y la necesidad que ha tomado la humanidad por
recibir un crecimiento tecnológico rápido y constante, obliga a los investigadores a
presentar propuestas innovadoras y de gran alcance para suplir las necesidades
de las personas.
El proceso de homologación es un ámbito muy importante que se debe realizar en
todos los sectores tecnológicos para validar el correcto funcionamiento de los
dispositivos en los diferentes ambientes a los que se encontraran expuestos
durante su ciclo de vida. En el caso de las telecomunicaciones, los dispositivos
móviles (Smartphone, Smartwatch, módems, etc.), deben someterse a este
proceso para garantizar un nivel de calidad adecuado a los usuarios finales. Es
importante además, porque el funcionamiento en líneas generales de un
dispositivo lleva consigo la reputación de los diferentes fabricantes, y al mismo
tiempo del operador que presta el servicio sobre dicho terminal, lo que significa
que una homologación bien llevada, desembarque en el éxito comercial de un
producto o a una percepción de mala calidad.
Para la homologación de un dispositivo, es necesaria la ejecución de un gran set
de pruebas (Llamadas, SMS, MMS, drive test, calidad de servicio, etc.) que
garantizaran un correcto funcionamiento. Muchas de estas pruebas conllevan un
gran tiempo en su ejecución y análisis, por lo cual muchas veces los procesos se
ven retrasados, lo que puede generar un gran impacto, ya que en la mayoría de
ocasiones, los productos se requieren en el mercado con prioridad, y al no
completar la homologación en los tiempos estipulados en un principio, se demora
su lanzamiento en el mercado.
Con el desarrollo de este aplicativo, se pretende como objetivo fundamental
facilitar la ejecución de algunas de las pruebas necesarias durante el proceso de
homologación de un terminal móvil, entregándole al ingeniero homologador una
herramienta que le permita optimizar los procesos y con esto disminuir los
tiempos de aprobación.
3. OBJETIVOS
La necesidad de desarrollar un aplicativo móvil que permita optimizar los procesos
de homologación existentes entre fabricantes y operadores, plantea a la presente
propuesta de investigación, los siguientes objetivos a desarrollar.
3.1 Objetivo general
Generar y poner en marcha un modelo que permita optimizar los
procesos de homologación para teléfonos inteligentes, a través del
desarrollo de un aplicativo sobre el sistema operativo Android.
3.2 Objetivos específicos
Analizar los procesos de homologación existentes en los operadores
móviles colombianos, para el diseño de un set de pruebas comunes que
conformaran la aplicación móvil.
Desarrollar la interfaz gráfica y funcional del aplicativo, utilizando la
herramienta libre de programación “Android studio”
Validar el funcionamiento de la aplicación en un entorno de pruebas real,
para conocer su impacto definitivo.
4. MARCO TEORICO
4.1 HOMOLOGACIÓN EN COLOMBIA
De acuerdo a lo señalado en el Articulo 22, numeral 8, de la ley 1341 de 2009,
corresponde a la Comisión de regulación de comunicaciones determinar los
estándares y certificados de homologación internacional de equipos, terminales y
otros elementos técnicos indispensables para el establecimiento de redes y la
prestación de servicios de telecomunicaciones aceptables en el país, así como
señalar las entidades o laboratorios nacionales autorizados para homologar bienes
de esta naturaleza.
Durante los últimos años, se han realizado muchos ajustes a la regulación
referente al campo de las homologaciones en telecomunicaciones, con el fin de
que se mantengan actualizadas de acuerdo a los mercados internacionales y a los
nuevas tecnologías en las redes, como la adjudicación de espectro que se realizó
en 2013 para las bandas AWS (1700-2100 MHz) y banda 7 (2500-2690 MHz), por
tanto era necesario que dentro del proceso de homologación establecido, se
verificara el cumplimiento de las normas y estándares aplicable a estas nuevas
bandas . En 2014 se expidió la resolución CRC 4507, en la cual se modificaron y
adicionaron los numerales 13.1.2.6 y 13.1.2.7 al capítulo I del título XIII, y se
adiciono el Anexo 013 a la resolución CRC 087 de 1997, finalmente con la
resolución 5031 de 2016, se modifica el artículo 13.1.2 de la resolución CRT 087
de 1997 y la Tabla 1, referente a normas técnicas, contenidas en el artículo
13.1.2.6 del Capítulo I del título XIII de la misma resolución [4].
4.1.1 RESOLUCIÓN CRT 087 DE 1997
En el título XIII, capítulo I, se establecen todas las disposiciones para la
homologación de equipos terminales de telecomunicaciones en Colombia.
El interesado en homologar un equipo terminal, debe presentar ante la CRC con el
lleno de requisitos por cada modelo de terminal, presentados en esta resolución o
cualquier otra norma que entre a modificarlos. En el caso de que un modelo ya
homologado, sea objeto de una modificación estructural técnica, que no afecte su
funcionamiento o interacción con la red o el espectro radioeléctrico, y siga
cumpliendo las normas bajo las cuales fue homologado originalmente, se debe
obtener una ampliación de la homologación por parte de la comisión de regulación
de comunicaciones. En caso de que se altere su funcionamiento, interacción con
la red o el espectro radioeléctrico que utiliza, debe realizarse un nuevo proceso de
homologación[5].
Los requerimientos establecidos por la CRC para la homologación de terminales
inalámbricos, es decir para equipos que radian ondas electromagnéticas en la
gama de frecuencias de 300 Hz a 3GHz, además de las normas técnicas que
fueron actualizadas en la resolución 5031 de 2016 y que se muestran en la figura
2, se debe certificar el cumplimiento de los límites de exposición establecidos en el
estándar IEEE Std C.95.1 o por el ICNIRP para los niveles de seguridad con
respecto a la exposición humana a los campos electromagnéticos (CEM) de
radiofrecuencia. Esta certificación puede obtenerse mediante la aplicación de los
procedimientos de medición de la tasa especifica de absorción (SAR) según lo
dispuesto por la UIT en la recomendación K.52, numeral 7 [5].
Figura 2. Normas técnicas
Fuente: Resolución 5031 de 2016 [4].
Después del cumplimiento de los requerimientos establecidos, la CRC procederá a
efectuar la verificación del cumplimiento a partir de los certificados de conformidad
recibidos, y en caso de que estos se ajustes a lo requerido, efectuara el registro en
la base de datos habilitada para tal fin, después procederá a informar al solicitante
y finalmente a publicar en la página WEB, la comunicación oficial de la
homologación del equipo incluyendo el número de registro asignado. Este registro
tiene una vigencia indefinida[6].
En caso de que algún equipo cause daño a la red de telecomunicaciones del
estado, interfiera en la prestación de algún servicio de telecomunicaciones,
incumpla los límites de radiación o la información suministrada para la
homologación del equipo sea inconsistente, la CRC ordenara la cancelación del
registro y la persona natural o jurídica, que incurra en esta acción estará sujeta a
las sanciones previstas en el artículo 53 del decreto ley 1900 de 1990.
4.1.2 EJEMPLO DE APLICACIÓN DE SW, PARA EL DISEÑO DE UN ESQUEMA
DE HOMOLOGACIÓN EN UNA LINEA DE PRODUCIÓN.
Un equipo de estudiantes del instituto de tecnología de aeronáutica brasileño,
desarrollaron un software embebido en tiempo real, con el fin de general una
inspección final y el análisis de causas para resolución de problemas. Todo esto a
través de la generación de un reporte de no conformidad durante la inspección
final.
La creación de esta herramienta permitió a la organización encargada, a través de
los reportes de no conformidad, generar correcciones encontradas en
componentes específicos, en camino de diseñar un esquema de homologación, a
través de la reparación de todos los registros de no conformidad. El sistema fue
diseñado para verificar, validar y homologar el desarrollo de sistemas de software
para computadoras, con la capacidad de complementar la información reportada
en el informe de no conformidad en la inspección final, con el objetivo de prevenir
la propagación errores en operación.
Por medio de la utilización de una inspección final y el análisis de causas para la
resolución de problemas, se ha mejorado significativamente la calidad y
productividad, previniendo la introducción de defectos en nuevos productos, por
ejemplo[7].
4.2 SISTEMA OPERATIVO ANDROID
A mediados de junio del 2005 Google compró una pequeña compañía llamada
AndroidInc, la cual se dedicaba al desarrollo de aplicaciones para dispositivos
móviles, en aquellos tiempos dicha compañía era desconocida para el mundo de
las tecnologías, pero el grupo de fundadores entre ellos Andy Rubín quien tenía
gran experiencia en telecomunicaciones, en plataformas web y aplicaciones
móviles y luego sería el director de división de plataformas móviles de Google,
desarrollaron las primeras muestras de Android que no eran muy atractivas, pero
que pasado el tiempo fueron evolucionando y empezaron a aparecer los primeros
demos no oficiales e información del prototipo con un nivel importante de
fiabilidad. Toda información fue guardada en reserva hasta que en noviembre del
2007 se anunciara la creación de la Open Handset Alliance, una organización
cuyo objetivo fue la difusión de la plataforma móvil Android. Con esfuerzos de
fabricantes de equipos y prestadores de servicio tecnológico lograron lanzar el
primer sistema operativo abierto para móviles, que no estaría atado a una marca o
equipo, sino que gracias a su kernel de Linux, podría ser adaptado a casi cualquier
dispositivo.
La primera versión de un Teléfono móvil con Android fue el G1 T-Mobile G1/HTC
Dream anunciado el 23 de septiembre del 2008 que se lanzó en el mercado
estadounidense y cuyas características se pueden observar en la página oficial de
HTC. Así mismo se lanzó una versión DevPhone 1 con una serie de
características adicionales que les permiten a los desarrolladores tener privilegios
(root) en la administración de móvil y sus productos. Otro modelo es el HTC
Magic ,fue una versión sin teclado anunciado el 18 de febrero de 2009 la cual
estaría disponible en España y Francia a partir de Abril de 2009 y se estimuló así
que se lanzaran al mercado seis nuevos teléfonos con sistema operativo Android,
además de HTC otras marcas como Lenovo, Sony Ericsson, Motorola, LG, y
Samsung [8].
Android es un sistema operativo inicialmente pensado para teléfonos móviles, al
igual que iOS, Symbian y Blackberry OS. Su gran diferencia es que está basado
en Linux, un núcleo de sistema operativo libre, gratuito y multiplataforma.
El sistema permite programar aplicaciones en una variación de Java llamada
Dalvik. El sistema operativo proporciona todas las interfaces necesarias para
desarrollar aplicaciones que accedan a las funciones del teléfono (como el GPS,
las llamadas, la agenda, etc.)
Existe además un entorno de desarrollo SDK, que proporciona un plugin para el
IDE de Eclipse y APIs necesarias para empezar a desarrollar aplicaciones en la
plataforma Android usando un lenguaje de programación java el cual incluye un
emulador de dispositivo, herramientas para la depuración, memoria y rendimiento
de perfiles.
Entre sus principales características encontramos una máquina virtual que es
optimizada para dispositivos móviles, SqLite para almacenamiento de datos
estructurados, soporte para medios con formato común de audio, videocode,
imágenes planas, Bluetooth, EDGE, 3G y Wifi (dependiente del hardware),
Cámara, GPS, brújula, y acelerómetro. Posee un ambiente rico de desarrollo
incluyendo un emulador de dispositivo, herramientas para depurar, perfiles de
memoria y rendimiento, y un plugin para el IDE Eclipse. Todas estas herramientas
han sido incluidas en los diferentes SW desarrollados para la programación de
aplicaciones en el sistema operativo Android, lo que permite que exista una gran
variedad de opciones a la hora de diseñar nuevas aplicaciones. Entre estas
encontramos Eclipse, Androidstudio o Xamarinstudio[9].
Entre otras opciones que encontramos en Android, el Play store permite que las
aplicaciones sean, gratuitas o de pago, todas se encuentran almacenadas en el
servidor de Google, y solo hace falta pagar una pequeña cuota de acceso para
poder publicar todas las aplicaciones que se quiera.
4.2.1 Versiones de Android
El sistema operativo Android se inició con el lanzamiento de Android beta en
noviembre de 2007. Su primera versión comercial, Android 1.0 fue lanzada en
septiembre de 2008. Este sistema operativo móvil desarrollado por Google y la
Open Handset Alliance ha lanzado diversas versiones desde su origen. Estas
actualizaciones típicamente corrigen fallos de programa y agregan nuevas
funcionalidades. Desde abril de 2009, Las versiones de Android han sido
desarrolladas bajo un nombre en clave y lanzamiento en orden alfabético:
Cupcake, Donut, Éclair, Froyo, Gingerbread, Honeycomb, Ice CreamSandwich,
JellyBean, Kitkat, lollipop, Marshmallow, Nougat y la más reciente versión que
saldrá al mercado en 2018 “Oreo”. Como se puede ver, los nombres de todas las
versiones de Android, están relacionadas con postres[8]. La figura 3, muestra
todas las versiones de Android existentes hasta el día de hoy.
Figura 3. Versiones de Android
Android posee una amplia comunidad de desarrolladores y usuarios los cuales se
reúnen en foros y grupos para intercambiar información, así como en salas de IRC
como en el servidor freenode en el canal Android.
Además de estas herramientas de comunicación los desarrolladores anualmente
pueden participar en eventos organizados por Google como lo es el Google IO y la
competencia de desarrollo de aplicaciones AndroidDeveloperChallenge, por ser un
sistema operativo de código abierto, se pueden producir desarrollos con
requerimientos específicos de empresas o instituciones, generando de esta
manera empleos con excelente calidad y evitando monopolios. Todas las
aplicaciones que se crean con Android se pueden compartir con otros usuarios de
forma libre o vender para poder financiar dichos desarrollos.
4.2.2 GOOGLE MAPS
Google Maps es un servidor de aplicaciones de mapas en la Web. En la que se
ofrecen imágenes de mapas desplazables, fotos satelitales del mundo, como
también la ruta entre diferentes ubicaciones o imágenes con sus calles (Google
Street View). Tiene gran parecido a Google Earth, una aplicación
Windows/Mac/Linux que ofrece vistas del globo terráqueo, sea de día o de noche,
pero que no es fácil de integrar a páginas Web. Está disponible para Android y
Java ME.
Dentro de sus características básicas google maps ofrece la capacidad de
acercamientos o alejamientos para mostrar un mapa por medio de una barra
deslizante ya sea en la pantalla o con el mouse. Los usuarios pueden ingresar una
dirección, una intersección o un área en general para buscar en el mapa.
Los resultados de la búsqueda pueden ser restringidos a una zona, gracias a
Google Local. Las coordenadas de Google maps están en el sistema WGS84 y
se nos mostrará la latitud y la longitud, positiva para Norte y Este, negativa para
Sur y Oeste.
En abril de 2005, Google añadió un RideFinder (en español, indicador de
vehículo), en el cual una persona puede ubicar un taxi o un transporte público en
una gran ciudad en tiempo real. En junio de 2005, los mapas de carreteras de los
Estados Unidos, Puerto Rico, Canadá y el Reino Unido fueron integrados a
Google Maps.
A mediados de julio de 2005, Google comienza la versión japonesa de Google
Maps y Google Local.
El 22 de julio de 2005, Google lanza una vista dual de su Google Maps. Esta vista
combina el par y la vista satelital con mapas ilustrados y los nombres de calles en
las imágenes del mundo real. Esto hace más fácil encontrar rutas entre dos puntos
[10].
La API de google maps ha sido implantada en localización de rutas y medida de
distancias, esta interfaz ha sido utilizada en un amplio rango de proyectos que se
encuentran disponibles en el mercado. Uno de los más populares ha sido un
sistema administrador móvil de desastres, utilizando Android, para tratar con los
desastres naturales muy recurrentes en filipinas. Existen muchas aplicaciones
similares y han cambiado el camino investigativo de muchos proyectos[10].
4.2.3 EJEMPLOS DE APLICACIÓN
El desarrollo de aplicativos en el sistema operativo Android es sumamente popular
hoy en día, por las facilidades que se tienen para su desarrollo, a continuación se
enumeraran algunas aplicaciones que realizan mediciones técnicas a los
terminales móviles:
a. SIM card: Esta aplicación muestra información relacionada con la SIM card.
b. G net track: Entrega información relacionada con los niveles de señal
presentes en diversas tecnologías, los handover que ocurren, información
de celdas vecinas, también permite la configuración de pruebas de
establecimiento de llamada y sesiones de datos en su versión pro, además
traza un mapa de los niveles de señal presentes en la zona que nos
encontremos. Es una aplicación muy utilizada por los ingenieros de RF,
quienes deben evaluar la locación de nuevas estaciones base.
c. Speed test velocidad: Aplicación utilizada para medir la velocidad de
conexión de los dispositivos, ya sean móviles o Wi-Fi.
d. Antutu: Es una aplicación mundialmente conocida para evaluar el
desempeño de hardware de los terminales móviles, entregando un puntaje
para cada uno dependiendo del comportamiento. Usualmente es utilizado
para hacer comparaciones, mostrando información relacionada con el
hardware de cada uno de los dispositivos involucrados en la comparación.
e. Calidad celular 2.0: Es una APP perteneciente al ministerio de
telecomunicaciones colombiano, que evalúa y compara la calidad de
servicio de voz y datos de los operadores. La aplicación tiene como
objetivos mostrar las ubicaciones más frecuentes donde se presentan
caídas de llamada, degradación de datos y puntos de cogestión. Todo esto
a nivel general, es decir realiza las mediciones con equipos de diferentes
fabricantes, para encontrar y reportar a los operadores las zonas de mala
calidad de servicio.
Con Android se pueden realizar una infinidad de aplicaciones, como el control de
un robot a través de una interfaz virtual utilizando comunicación Wi-Fi, 4G o
incluso bluetooth [11], la detección de humedad y temperatura para la
automatización de irrigación y el control de un cultivo remotamente [12], o incluso
para monitorear la frecuencia respiratoria basado en la información proveniente de
sensores externos [13]. Todo esto demuestra que Android como herramienta
tecnológica se ha convertido en una revolución que se implementa en todos los
campos para ayudar en su desarrollo.
5. METODOLOGIA
En este capítulo se hará la descripción del desarrollo de cada uno de los objetivos
que se debieron cumplir para la presente investigación. Se desglosara objetivo por
objetivo mostrando como fueron cumplidos cada uno.
5.1 DISEÑO DEL SET DE PRUEBAS COMUNES QUE CONFORMARAN LA
APLICACIÓN MOVIL, TENIENDO EN CUENTA LA FRECUENCIA DE USO Y LAS
HERRAMIENTAS DISPONIBLES.
Para la selección del set de pruebas comunes necesario para el desarrollo del
aplicativo Android, se debió realizar un estudio de los diferentes procesos de
homologación presentes en el mercado colombiano, para establecer cuáles eran
las pruebas e información que eran requeridas en todos los procesos y que
podrían ayudar de manera consistente en la ejecución del proceso.
Se encontró que todos los operadores que prestan servicios de telefonía móvil,
tienen un proceso de homologación propio, que difiere en mayor o en menor
medida uno de otro, dependiendo de las características propias de cada red y de
los servicios que presten. Por ejemplo para operadores como ETB o Avantel, que
prestan servicios sobre redes de telefonía móvil propias solamente en LTE, el
proceso de homologación es menos extenso. En cambio para operadores como
Movistar, TIGO o Claro que prestan servicios sobre todas las tecnologías (2G, 3G
y 4G), la homologación es más extensa, debido a que se debe validar que los
terminales soporten una gran cantidad de características propias de cada red.
Dentro de los set de pruebas presentes en cada uno de los procesos de
homologación, se pudo encontrar algunas similitudes en cuanto a las pruebas
realizadas, hay que aclarar que los set de pruebas específicos de cada operador
no se presentan en este documento ya que son información confidencial.
Finalmente, se determinó diseñar el aplicativo con las siguientes pruebas e
información que son comunes a todos los set de pruebas de los operadores, y que
se podían realizar u obtener con un terminal con sistema operativo Android:
I. Generación de llamadas: Generar un menú que permita establecer
llamadas automáticamente a los números de servicio de los diversos
operadores, con el objetivo de evaluar el comportamiento de las llamadas
en el terminal, los cambios de tecnología que se pueden producir, si se
pierde conexión de datos y los niveles de señal. La figura 4 muestra el
diseño preliminar de este menú.
Figura 4. Diseño preliminar generación de llamadas
II. Generación SMS: Generar un menú que permita generar SMS (Short
Message Service). Con el objetivo de validar el correcto envió y recepción
de los mismos, en escenarios como llamada activa o codificación de 7 bits
(necesaria para utilizar solamente los 128 primeros caracteres de ASCCI).
III. Información MMS: Generar un menú que despliegue información relevante
relacionada con los MMS (Multimedia Message Service). Esta información
es importante para conocer cómo están funcionando este tipo de mensajes
en los terminales. Por ejemplo, el tamaño máximo que pueden enviar, que
siempre es un requisito por parte de los operadores, con el objetivo de no
saturar la plataforma, y de igual forma la altura y el ancho máximo de una
imagen que se puede enviar por este medio.
IV. Menú Throughput: Una de las pruebas más comunes e importantes que se
ejecutan durante un proceso de homologación, es la validación de la
calidad de servicio, en cuanto a velocidad de tráfico tanto en subida
(uplink), como en bajada (downlink). Esto es de suma importancia ya que
permite conocer si el terminal está cumpliendo con los estándares
internacionales (3GPP) relacionados con cada tecnología. Para el caso
particular de Colombia se evalúa este ítem en HSPA+ y LTE, que son las
tecnologías que se utilizan para descarga de contenido en la red móvil.
Este menú deberá permitir monitorear la velocidad de subida y bajada en
tiempo real, junto con una gráfica que permitirá evaluar el desempeño de
toda la prueba al terminarla. Igualmente se incluirá una opción para
controlar el tiempo y así tener diferentes posibilidades. La figura 5 muestra
el diseño preliminar de este menú:
Figura 5. Diseño preliminar menú Throughput
V. Menú Drive test: Otra de las pruebas importantes para el desarrollo de un
proceso de homologación, es el drive test. Este es un recorrido en carro por
un área de cobertura diseñada específicamente con este objetivo, en la cual
se presentan una gran cantidad de eventos relacionados con la cobertura,
como cambios de tecnología (handover), perdidas de servicio, zonas de
bajos niveles de señal pero con un piso de ruido muy bajo (campo lejano),
zonas de caídas de llamada, etc. Todo esto con el objetivo de evaluar el
comportamiento de un terminal ante todos estos posibles escenarios.
Este menú permitirá monitorear los diferentes eventos que ocurran durante
el recorrido, poniendo un marcador sobre el mapa para saber dónde
ocurrieron y así determinar si fueron normales al finalizar la prueba.
Igualmente permitirá generar llamadas y mostrara los niveles de señal y la
tecnología en tiempo real para tener un control más fácil. La figura 6
muestra el diseño preliminar de este menú:
Figura 6. Diseño preliminar menú Drive test
VI. Menú batería: Para evaluar la duración real de la batería en los terminales.
Es necesario ejecutar ciertas pruebas, que permiten dar una idea de la
duración de la batería en dos diferentes escenarios. Uno de esto escenarios
es con llamada activa en tecnología 3G y 2G, el otro es con un streaming
activo, es decir un tráfico de downlink constante y un video
reproduciéndose. Esto es necesario conocerlo, ya que es un aspecto que
se tiene muy en cuenta por los usuarios en el momento de escoger un
equipo, igualmente al hacer una comparación con equipos de
características similares, se puede deducir si el gasto de batería es el
correcto.
VII. Menú elementos de HW: Todo terminal móvil, tiene ciertos elementos de
hardware incluidos en su construcción, como lo son el WIFI el Bluetooth o el
sensor de luz. La calidad y la cantidad de estos elementos depende de la
gama del terminal. Es necesario por tanto conocer cuáles son los
elementos de hardware que son incluidos dentro de un terminal y si estos
están funcionando de manera correcta. Con este menú se pretende
conocer los sensores y dispositivos provistos en cada terminal y de qué
manera funcionan. La figura 7 muestra el diseño preliminar de este menú:
Figura 7. Diseño preliminar menú elementos de HW
VIII. Menú general: Dentro de las muchas pruebas que se deben realizar en un
proceso de homologación, existe cierta información del terminal, que es
necesario tener presente. Dentro de esta información se puede destacar, el
IMEI del equipo, el TAC, el PLMN o el serial de la SIM card. La figura 8
muestra el diseño preliminar de este menú:
Figura 8. Diseño preliminar menú General
5.2 DISEÑO DE LA INTERFAZ GRAFICA Y FUNCIONAL DEL APLICATIVO.
Después de concluido el diseño preliminar del menú de la aplicación, se pasó al
diseño de la interfaz gráfica y funcional de la aplicación utilizando la herramienta
de programación "Android studio". En los siguientes apartes, se hará una
explicación más detallada del diseño y programación de cada uno de los menús.
Incluyendo las clases y bibliotecas que se utilizaron en cada uno:
5.2.1 GENERAR LLAMADAS
Para acceder a los servicios relacionados con telefonía en los terminales que
utilizan el sistema operativo Android, es necesario incluir la biblioteca
"android.telephony.TelephonyManager", que permite el acceso a todos los
servicios como llamadas, SMS, MMS, etc. Para tal fin se debe inicializar un objeto
de tipo "TelephonyManager" y el servicio "TELEPHONY_MANAGER". Con esta
configuración el terminal ya estará habilitado para monitorear los diferentes
estados del teléfono, ahora es necesario generar un "PhoneStateListener"
indicando cuales son los estados del teléfono, de los cuales se recibirá
información cada vez que se produzca un cambio en ellos. La figura 9, muestra la
configuración del "TelephonyManager" de este menú:
Figura 9. Configuración inicialización del administrador de llamadas
Los dos estados del teléfono que se monitorean en el menú de teléfono son
“LISTEN_CALL_STATE”, que entrega tres estados diferentes cuando el teléfono
inicia una llamada.
A. IDLE: Entrega este estado cuando el terminal no tiene ninguna
llamada activa
B. RINGING: Entrega este estado cuando está recibiendo una llamada
C. OFFHOCK: Entrega este estado cuando se activa una llamada
El otro estado que se monitorea es el “LISTEN_SIGNAL_STRENGTHS”, que
captura información cada vez que ocurre un cambio en los niveles de señal, no
importa la tecnología.
Con la lectura de estos estados se diseñó un algoritmo que permite generar un set
de llamadas continuamente, es decir se termina una llamada y automáticamente
se inicia una nueva, hasta completar el número de llamadas establecidas por el
usuario.
Las líneas a las cuales se generan las llamadas de prueba, son usualmente las
líneas de servicio de los diferentes operadores, por tanto se generó un spinner que
despliega varias opciones de llamada dependiendo del operador en el cual se
realice el test.
Se encontró además que por políticas de seguridad de Android no es posible
finalizar una llamada manualmente, por lo cual para determinar si una llamada ha
sido exitosa o fallida se implementó un temporizador de acuerdo a la duración de
la llamada en cada una de las líneas de servicio.
Finalmente, al finalizar el set de llamadas se genera un informe donde se muestra
si las llamadas fueron ejecutadas exitosamente, la tecnología en la cual se
encontraba cuando la llamada termino, si la conexión a datos estaba activa y el
nivel de señal. Toda esta información es importante ya que permite deducir las
razones de las caídas de llamadas y conocer cómo se está comportando el
terminal durante el establecimiento de llamadas. La figura 11, corresponde al
diagrama de flujo de este menú y la figura 10, muestra el diseño final, de los 2
layouts correspondientes a este menú.
Figura 10. Diseño layouts menú llamadas
5.2.2 GENERAR SMS
Al igual que en el menú de generar llamadas, para el envío de mensajes cortos en
el sistema operativo Android, es necesario incluir la biblioteca
“android.telephony.TelephonyManager”. Igualmente se inicializa un objeto de tipo
“TelephonyManager” y el servicio "TELEPHONY_MANAGER". Con esta
configuración el terminal ya estará habilitado para monitorear los diferentes
estados del teléfono. Para este caso en lugar de inicializar un
“PhoneStateListener”, se utiliza un objeto de tipo “BroadcastReceiver”, este
permite mantener un monitoreo de los estados del teléfono, aun cuando la
aplicación este en segundo plano. Para el caso de este menú se generaron 2
“BroadcastReceiver”, uno para monitorear los SMS salientes y otro para los
entrantes. La figura 12, muestra la configuración del “TelephonyManager” de este
menú.
Figura 12. Configuración de inicialización del administrador de mensajes cortos
Los estados que nos provee Android y se pueden producir cuando se envía un
mensaje de texto se enumeran a continuación:
A. RESULT_OK: El terminal ha enviado el mensaje de texto correctamente.
B. RESULT_ERROR_GENERIC_FAILURE: Se genera cuando se produce un
error en él envió del mensaje, usualmente por que no se tiene saldo para
realizar él envió.
C. RESULT_ERROR_NO_SERVICE: Se produce cuando el terminal esta
fuera de servicio, para enviar el mensaje.
D. RESULT_ERROR_NULL_PDU: Error genérico de envió de mensaje.
E. RESUL_ERROR_RADIO_OFF: Se produce cuando el terminal se
encuentra en modo avión.
Para conocer si se ha recibido un mensaje y la información que este contiene, se
utiliza un objeto de tipo “Bundle”, contenido en un “Extra”. Se utiliza además, la
clase “SmsMessage” para decodificar el contenido del mensaje y poderlo
comparar y publicar.
El menú de mensajes cortos, se diseñó para realizar tres diferentes pruebas
durante la ejecución del test. Primero, se debe ingresar el número de línea del
terminal, de esta manera se puede monitorear tanto los mensajes salientes, como
los entrantes, el terminal enviara 10 mensajes, los primeros tres con el terminal en
idle, los siguientes tres generara llamadas a los números de servicio, con la
llamada activa envía el mensaje, esto con el objetivo de validar los SMS con
llamada activa, después envía 2 mensajes con codificación de 7 bits, para validar
que el terminal solo este enviando los 128 primeros caracteres del alfabeto
ASCCI, esto evita un mayor tráfico en la red, los 2 últimos mensajes se envían
nuevamente con el terminal en idle.
El algoritmo está configurado para mantener constante lectura de los mensajes
recibidos y hacer una comparación de la información que llega con la que se
envió. De esta manera reporta cuando el mensaje ha sido recibido y si ha llegado
correctamente. La figura 14, corresponde al diagrama de flujo de este menú y la
figura 13, muestra el diseño final, del layout correspondiente a este menú.
Figura 13. Diseño layout menú SMS
5.2.3 INFORMACION DE MMS
Para obtener la información relacionada con los MMS y SMS que contiene el
terminal es necesario hacer un llamado al objeto “SmsManager” a través de la
clase “getCarrierConfigValues”, que entrega una lista con valores configurados
por defecto en el terminal. La figura 15 muestra la configuración del “SmsManager”
en este menú.
Figura 15. Configuración SmsManager menú información MMS
Como algunos de los parámetros contenidos dentro de esta clase, no son
desplegados por todos los dispositivos, es necesario hacer una comparación uno
a uno de los elementos para conocer cuáles son los valores que tiene, por ejemplo
en el caso de si el terminal tiene activo los servicios de MMS, se utiliza la etiqueta
“enabledMMS”. La figura 16, muestra cómo se realizó la comparación de este
elemento.
Figura 16. Comparación servicio MMS activo
En total se obtiene información de 18 características que son útiles durante un
proceso de homologación. La tabla 1 muestra cada una de estas características.
Tabla 1. Lista de elementos menú MMS
MMS habilitado Máximo tamaño de
mensaje
Ancho máximo de la
imagen
Altura máxima de la
imagen
Soporte de envió de
audio
User Agent Profile TAG
nombre
Soporta contenido MMS Reporte de entrega de Reporte lectura de MMS
MMS
Longitud máxima del
asunto
Reporte de entrega de
SMS
Soporta encabezado
HTTP
Tiempo de espera
socket HTTP
Cierre de conexión de
MMS
Configuración de
CellBroadcast
Habilitado grupo de
MMS
Envió de múltiples SMS
separados
Envió de múltiples SMS
Finalmente, toda esta información es desplegada en la actividad principal del
menú, con su correspondiente estado en el teléfono. La figura 18 corresponde al
diagrama de flujo de este menú y la figura 17, muestra el diseño final del layout
correspondiente a este menú.
Figura 17. Diseño layout menú información MMS
Figura 18. Diagrama de flujo menú de información MMS
5.2.4 MENU DE THROUGHPUT
Al igual que en los menús anteriores relacionados con servicios de telefonía. Fue
necesario incluir la biblioteca “TelephonyManager” y hacer un llamado al servicio
“TELEPHONY_SERVICE”. Se generó un “PhoneStateListener” para monitorear el
estado de conexión de datos. La figura 19, muestra la configuración del
“PhoneStateListener” en este menú.
Figura 19. Configuración PhoneStateListener menú throughput
La información que nos proporciona el “PhoneStateListener” con el servicio
“LISTEN_DATA_CONNECTION_STATE”, son el estado de conexión y el tipo de
red al cual está conectado. Los estados de conexión de datos que entrega el
sistema operativo Android para este caso son:
A. DATA_DISCONNECTED: No hay conexión a datos
B. DATA_CONNECTING: Se encuentra en proceso de conexión a la red de
datos
C. DATA_CONNECTED: Conexión a datos establecida correctamente
D. DATA_SUSPENDED: Conexión a datos suspendida
Para obtener la información de velocidad cuando se está realizando una descarga
o carga de contenido se utiliza la librería “android.net.TrafficStats” y las clases
“getTotalRxBytes” y “getMobileTxBytes”. Que entregan la velocidad de subida y
bajada en Bytes por segundo respectivamente. Como normalmente esta
información es desplegada en megabits por segundo fue necesario hacer la
conversión a estas unidades. La figura 20 muestra el código utilizado para la
obtención de la información y la conversión de unidades.
Figura 20. Velocidades y conversión a Mbps
Para graficar la información de uplink y downlink, se hizo uso de la clase canvas a
través de la librería “android.graphics.Canvas”. Esta permite dibujar diferentes
elementos en pantalla como líneas y polígonos por medio de la clase “pincel”. En
el layout que se diseñó para este menú, se incluyó el canvas en un menú que
ocupa solo una porción de la pantalla, de tal manera que se pueda desplegar la
información relevante en tiempo real, sin que afecte el funcionamiento del canvas.
Además, fue necesario incluir un elemento de tipo “Runnable”, este funciona como
un hilo secundario, que se ejecuta cada segundo para obtener los valores de
uplink, downlink, tipo de tecnología, estado de la conexión a datos y redibujar el
canvas.
El menú de throughput se diseñó para ejecutar la prueba en tres periodos
diferentes 1 minuto, 5 minutos y 10 minutos, estos son los tiempos más comunes
en los que se realiza la validación de calidad de servicio en los procesos de
homologación, permitiendo conocer el comportamiento del terminal en este
escenario. Cabe aclarar que es necesario ejecutar la descarga o carga de
contenido previo a la ejecución de la prueba, este menú solamente cumple la
función de monitorear el estado de la conexión, las velocidades de tráfico y
graficar el comportamiento durante el tiempo seleccionado. Al finalizar mostrara un
mensaje de prueba terminada junto con los promedios de velocidad tanto en
subida como en bajada. La figura 22, corresponde al diagrama de flujo de este
menú y la figura 21, muestra el diseño final, de los layouts correspondientes a este
menú.
Figura 21. Diseño layout menú throughput
Figura 22. Diagrama de flujo menú trhoughput
5.2.5 MENÚ BATERIA
Para el menú de batería, las librerías más importantes que se utilizaron, fueron
“android.content.IntentFilter” y “android.os.BatteryManager”, que permiten conocer
el nivel de energía actual de la batería, a través del servicio
“ACTION_BATTERY_CHANGED”. Igualmente se incluyó la librería
“android.telephony.TelephonyManager”, para el control de los estados de llamada,
ya que una de las pruebas que se puede ejecutar en este menú es con una
llamada activa conocer el comportamiento de la batería, finalmente las librerías
“android.net.Uri” y “android.widget.VideoView”, para la inclusión de un elemento de
video en uno de los layouts secundarios. La figura 23, muestra la configuración
inicial para conocer el estado de la batería.
Figura 23. Configuración inicial estado de la batería
Se generó un algoritmo que solicita el nivel de la batería cada 5 minutos durante
30 minutos, es decir a los 5, 10, 15, 20 y 25 minutos, para al final realizar un
promedio de la energía consumida por la batería y entregar un estimado del
tiempo total que duraría utilizando datos constantemente o en una llamada
continúa. Al igual que en el menú anterior para obtener la información sin afectar
los procesos principales de la aplicación, se hizo uso de un objeto “Runnable”, que
permite ejecutar un hilo secundario. La figura 24 muestra el código de cómo se
obtiene el nivel de la batería, se hace la conversión a las unidades
correspondientes y se publica en una caja de texto.
Figura 24. Obtención y publicación nivel de batería
Se diseñaron 2 tipos de prueba para este menú, una relacionada con el
comportamiento de la batería durante una llamada activa y el segundo durante un
streaming de datos. Para la ejecución del streaming de datos fue necesario
configurar una dirección URL de un video que no tuviera derechos de autor y así
poderlo utilizar sin ningún tipo de repercusión legal. La figura 25 muestra la
inclusión de la dirección URL, dentro del objeto de video del layout.
Figura 25. Configuración objeto de video
La figura 27, corresponde al diagrama de flujo de este menú y la figura 26,
muestra el diseño final, de los layouts correspondiente a este menú.
Figura 26. Diseño layout menú batería
5.2.6 MENU DE DRIVE TEST
Para el diseño del menú de drive test, se hizo uso de muchas de las librerías que
se utilizaron en menús previos para el monitoreo de las llamadas, estado de datos,
y estado de tráfico de datos. Estas librerías son
“android.telephony.TelephonyManager”, “android.Telephony.SignalStrength” y
“android.telephony.PhoneStateListener”. Además de estas funciones en este
menú se hizo la inclusión del servicio maps de Google para lo cual se utilizó la
librería “com.google.android.gms.maps.GoogleMap”. La figura 28 muestra la
configuración de todos los estados del “PhoneStateListener” para este menú.
Figura 28. Configuración PhoneStateListener menú drive test
La lectura de los parámetros se realiza de la misma manera que se describió para
los anteriores menús, el cambio radica en la publicación de la información en el
servicio de maps. Para configurar este en cualquier aplicación es necesario
obtener una llave asociada a la cuenta de gmail del desarrollador, que permitirá
autentificar el servicio. Esta llave se incluye dentro del archivo android manifest. La
figura 29, muestra la inclusión de la llave en el aplicativo.
Figura 29. Llave de autenticación servicio Google Maps
La inclusión del mapa en el aplicativo se realiza a través de la clase
“MapFragment”. La figura 30 muestra la configuración del maps en el view del
aplicativo.
Figura 30. Configuración de maps en el view
Para poder obtener la ubicación del terminal, es necesario implementar el método
“LocationListener” a través del “GoogleApiClient”, indicándole que tipo de servicios
y el modo de localización que se realizara. La figura 31, muestra la configuración
realizada para el cliente API en este menú.
Figura 31. Configuración cliente API de localización
Después de obtener la posición y tener en constante monitoreo los estados del
teléfono, se publica la información en el mapa por medio de marcadores. A cada
cambio en el estado se le asignó un marcador, a continuación se presenta cada
uno.
1. Buen nivel de señal ( ): Cuando el indicador de señal del terminal del
teléfono se encuentra en la línea 5 o 4. La aplicación mostrara un rastro
verde en el mapa.
2. Nivel de señal medio ( ): Cuando el indicador de señal del terminal
del teléfono se encuentra en la línea 3. La aplicación mostrara un rastro
amarillo en el mapa.
3. Nivel de señal bajo ( ): Cuando el indicador de señal del terminal del
teléfono se encuentra por debajo de la línea 3. La aplicación mostrara un
rastro rojo en el mapa.
4. Inicio de recorrido ( ): Se dibuja en el mapa al iniciar el recorrido.
5. Desconexión de datos ( ): Cuando ocurre una desconexión de datos.
6. Conexión de datos ( ): Cuando se conecta a datos.
7. Cambio de tecnología ( ): Cuando ocurre un cambio de tecnología.
8. En servicio ( ): Cuando retoma servicio, después de venir de un estado de
sin servicio o estado de solo llamadas de emergencia.
9. Sin servicio ( ): Cuando ocurre una pérdida de servicio.
10. Solo emergencias ( ): Cuando ocurre una desconexión total de la red
móvil.
11. Inicio de llamada ( ): Cuando se inicia una llamada.
12. Finalización de llamada ( ): Cuando finaliza una llamada.
13. Finalización de recorrido ( ): Cuando se da por terminado el drive test.
Cuando la prueba se ejecuta, comienza a monitorear todos los estados del
teléfono y la posición. En el mapa cada vez que ocurre un cambio en la posición,
la cámara se reubica para mantener la posición centrada, después cada vez que
ocurra uno de los eventos anteriormente descritos se generara un marcador en el
mapa. Para terminar la prueba, se debe seleccionar el botón de finalizar, el cual
termina la actualización de posición, el monitoreo de los estados y envía el
marcador de finalización. Al terminar, la información contenida en el mapa permite
conocer el comportamiento del terminal durante el recorrido realizado y establecer
si hubo algún evento que pueda ser considerado para estudio o si por el contrario
todos los eventos ocurridos se encontraron dentro de lo esperado. La figura 33,
corresponde al diagrama de flujo de este menú y la figura 32, muestra el diseño
final, de los layouts correspondiente a este menú.
Figura 32. Diseño layout menú drive test
5.2.7 MENÚ HARDWARE
Para acceder a la información provista por los diferentes sensores que tienen los
terminales se utiliza la librería “android.hardware.SensorManager”, con esta se
podrá conocer todos los sensores que tiene provistos el terminal. Además de
estos dispositivos todos los teléfonos inteligentes tienen WIFI, bluetooth y
micrófono por lo cual se diseñaron pruebas específicas para cada uno, las librerías
que se utilizaron para esto fueron “android.net.wifi.WifiManager”,
“android.bluetooth.BluetoothDevice” y “android.media.MediaPlayer”.
Como primer paso, se ejecuta la clase “SensorManager”, para conocer cuáles son
los sensores soportados por el terminal. La tabla 2, muestra una lista con todos los
posibles sensores que se pueden encontrar en un terminal.
Tabla 2. Lista de sensores menú de elementos de HW
Acelerómetro Magnetómetro Sensor de orientación
Giroscopio Sensor de luz Sensor de proximidad
Sensor de gravedad Sensor lineal Sensor de rotación
La figura 34 muestra el código para obtener la lista de sensores soportada por un
terminal.
Figura 34. Código lista de sensores soportados
Después de conocer los sensores soportados, se ejecuta una prueba obteniendo
la información provista por cada uno y publicándola en pantalla, de esta manera se
determina si está funcionando correctamente. Para este caso se ponen las
opciones de “prueba exitosa” y “prueba fallida”, para que sea el usuario quien
determine si están funcionando correctamente. La figura 35, muestra cómo se
obtiene y publica la información para el acelerómetro. El procedimiento es muy
similar para los demás sensores.
Figura 35. Obtención y publicación de información del acelerómetro
Para la prueba del WIFI, se realiza una búsqueda de los dispositivos disponibles y
se publica. Con esto se puede corroborar que el elemento está correctamente
instalado y configurado. Para este fin se utiliza un “BroadcastReceiver” que
mantiene la búsqueda de los dispositivos cercanos hasta que completa 3, en ese
momento lanza un mensaje de prueba satisfactoria. La figura 36 muestra el código
utilizado para esto.
Figura 36. Búsqueda y publicación dispositivos cercanos WIFI
La prueba de Bluetooth es muy similar en su funcionamiento con la de WIFI, ya
que igualmente se realiza una búsqueda de los dispositivos cercanos y cuando se
completan 3, se muestra un mensaje de prueba exitosa. Lo que cambio es la
estructura del código, ya que a diferencia del WIFI, la biblioteca de bluetooth
entrega unos estados en el “BroadcastReceiver” que permiten conocer si está
apagado, encendido, buscando dispositivos y cuando ha terminado de buscarlos.
La figura 37, muestra el estado cuando encuentra un dispositivo, allí se toma la
información del dispositivo y se publica. Al completar 3 elementos la búsqueda se
da por terminada con el método “cancelDiscovery”.
Figura 37. Búsqueda y publicación dispositivos cercanos Bluetooth
Como última prueba se ejecuta la grabación y reproducción de un mensaje. Con
esto se puede validar tanto el funcionamiento del micrófono, como de los
parlantes. Para esto se utiliza la clase “MediaRecorder”, que permite almacenar la
información parcialmente del audio en la memoria RAM, para luego ser
reproducido. La figura 38, muestra el método de reproducción de esta prueba.
Figura 38. Método reproducción prueba de parlante
Finalmente, La figura 40, corresponde al diagrama de flujo de este menú y la
figura 39, muestra el diseño final de los layouts correspondiente a este menú.
Figura 39. Diseño layouts menú HW
Figura 40. Diagrama de flujo menú elementos de HW
5.2.8 INFORMACIÓN GENERAL
Para obtener la información del terminal, se utilizó la librería
“android.telephony.TelephonyManager” y el servicio “TELEPHONY_SERVICE”. A
través de diferentes métodos contenidos en esta clase, se obtiene la información.
La tabla 3, muestra cada uno de los métodos utilizados, junto con la información
extraída de cada uno.
Tabla 3. Lista de elementos menú general
getDeviceId = IMEI getDeviceId = TAC
getLine1Number = línea de la SIM getMmsUAProfUrl = USER AGENT
PROFILE
getMmsUserAgent = MMS USER
AGENT
getNetworkCountryIso = Indicador
de país en la SIM card
getNetworkOperatorName = nombre
del operador contenido en la SIM
getSimSerialNumber = Serial de la
SIM card
getSubscriberId = IMSI de la SIM
card
getVoiceMailNumber = número de
buzón de voz almacenado en la SIM
getVoiceMailAlphaTag = Nombre de
buzón de voz almacenado en la SIM
La figura 41, muestra un ejemplo de cómo se extrae la información desde la clase
“TelephonyManager”.
Figura 41. Obtención IMEI y TAC
Además de la información contenida en esta clase, se publica también la versión
de Android que utiliza el terminal y la zona horaria que trae configurada por
defecto. La figura 42 muestra el código de cómo se obtiene esta información del
terminal.
Figura 42. Código versión de android y zona horaria
Finalmente, La figura 44, corresponde al diagrama de flujo de este menú y la
figura 43, muestra el diseño final del layout correspondiente a este menú.
Figura 43. Layout menú general
Figura 44. Diagrama de flujo menú general
5.3 EJECUCIÓN DE PRUEBAS CON LA APLICACIÓN
Para la validación del comportamiento de la aplicación, se utilizaron dos terminales
con chipsets de diferentes fabricantes (Mediatek y Qualcomm) el ZTE Blade A602
y el ZTE Blade A320 y una nueva versión de software de mantenimiento que se
requiere validar cada 3 meses. A continuación se mostrara los resultados
obtenidos con cada menú.
5.3.1 Generación de llamadas.
Para el terminal 1, ZTE Blade A602, se ejecutó un set de 30 llamadas a la línea de
servicio de Claro. La figura 45, muestra el paso a paso de ejecución de la prueba:
Figura 45. Ejecución set de llamadas Blade A602
La tabla 4 muestra los resultados obtenidos en cada una de las llamadas
ejecutadas.
Tabla 4. Resultados set de llamadas Blade A602
Llamada Nivel de señal Cambio de tecnología
Tecnología Llamada
completada Estado datos
1 -78 Hubo HSPA+ Exitosa Conectado
2 -75 Hubo HSPA+ Exitosa Conectado
3 -65 Hubo HSPA+ Exitosa Conectado
4 -72 Hubo HSPA+ Exitosa Conectado
5 -79 Hubo UMTS Exitosa Conectado
6 -79 Hubo UMTS Exitosa Conectado
7 -79 Hubo UMTS Exitosa Conectado
8 -76 Hubo HSPA Exitosa Conectado
9 -74 Hubo HSPA Exitosa Conectado
10 -74 Hubo HSPA Exitosa Conectado
11 -77 Hubo UMTS Exitosa Conectado
12 -66 Hubo HSPA Exitosa Conectado
13 -71 Hubo HSPA+ Exitosa Conectado
14 -69 Hubo HSPA Exitosa Conectado
15 -67 Hubo HSPA Exitosa Conectado
16 -72 Hubo HSPA Exitosa Conectado
17 -70 Hubo HSPA Exitosa Conectado
18 -67 Hubo HSPA Exitosa Conectado
19 -73 Hubo HSPA Exitosa Conectado
20 -73 Hubo UMTS Exitosa Conectado
21 -70 Hubo HSPA Exitosa Conectado
22 -71 Hubo HSPA Exitosa Conectado
23 -65 Hubo HSPA Exitosa Conectado
24 -76 Hubo HSPA Exitosa Conectado
25 -72 Hubo HSPA+ Exitosa Conectado
26 -71 Hubo HSPA Exitosa Conectado
27 -70 Hubo HSPA Exitosa Conectado
28 -75 Hubo HSPA Exitosa Conectado
29 -72 Hubo HSPA+ Exitosa Conectado
30 -76 Hubo HSPA+ Exitosa Conectado
Como se puede ver en los resultados entregados por la aplicación, el
establecimiento de llamadas está funcionando correctamente, al igual que los
cambios de tecnología y la conexión a datos no se pierde en ningún momento. Por
tanto, la prueba fue exitosa.
Para el terminal 2, ZTE Blade A320, se ejecutó un set de 40 llamadas a la línea de
servicio de Claro. La figura 46, muestra el paso a paso de ejecución de la prueba:
Figura 46. Ejecución set de llamadas Blade A320
La tabla 5 muestra los resultados obtenidos en cada una de las llamadas
ejecutadas.
Tabla 5. Resultados set de llamadas Blade A320
Llamada Nivel de
señal Cambio de tecnología
Tecnología Llamada
completada Estado datos
1 -65 Hubo HSPA+ Exitosa Conectado
2 -65 No hubo HSPA+ Exitosa Conectado
3 -57 No hubo HSPA+ Exitosa Conectado
4 -59 No hubo HSPA+ Exitosa Conectado
5 -73 No hubo HSPA+ Exitosa Conectado
6 -63 No hubo HSPA+ Exitosa Conectado
7 -65 No hubo HSPA+ Exitosa Conectado
8 -67 No hubo HSPA+ Exitosa Conectado
9 -69 No hubo HSPA+ Exitosa Conectado
10 -71 No hubo HSPA+ Exitosa Conectado
11 -69 No hubo HSPA+ Exitosa Conectado
12 -63 No hubo HSPA+ Exitosa Conectado
13 -63 No hubo HSPA+ Exitosa Conectado
14 -63 No hubo HSPA+ Exitosa Conectado
15 -57 No hubo HSPA+ Exitosa Conectado
16 -57 No hubo HSPA+ Exitosa Conectado
17 -63 No hubo HSPA+ Exitosa Conectado
18 -63 No hubo HSPA+ Exitosa Conectado
19 -57 No hubo HSPA+ Exitosa Conectado
20 -63 No hubo HSPA+ Exitosa Conectado
21 -57 No hubo HSPA+ Exitosa Conectado
22 -63 No hubo HSPA+ Exitosa Conectado
23 -61 No hubo HSPA+ Exitosa Conectado
24 -61 No hubo HSPA+ Exitosa Conectado
25 -61 No hubo HSPA+ Exitosa Conectado
26 -73 No hubo HSPA+ Exitosa Conectado
27 -61 No hubo HSPA+ Exitosa Conectado
28 -59 No hubo HSPA+ Exitosa Conectado
29 -75 No hubo HSPA+ Exitosa Conectado
30 -67 No hubo HSPA+ Exitosa Conectado
31 -65 No hubo HSPA+ Exitosa Conectado
32 -65 No hubo HSPA+ Exitosa Conectado
33 -65 No hubo HSPA+ Exitosa Conectado
34 -65 No hubo HSPA+ Exitosa Conectado
35 -73 No hubo HSPA+ Exitosa Conectado
36 -59 No hubo HSPA+ Exitosa Conectado
37 -61 No hubo HSPA+ Exitosa Conectado
38 -65 No hubo HSPA+ Exitosa Conectado
39 -69 No hubo HSPA+ Exitosa Conectado
40 -59 No hubo HSPA+ Exitosa Conectado
Como se puede ver en los resultados entregados por la aplicación, el
establecimiento de llamadas está funcionando correctamente, a pesar de que no
hubo cambios de tecnología constantes, esto también es un comportamiento
dentro de lo esperado, ya que se puede ver los buenos niveles de señal en los que
se mantuvo el terminal durante la ejecución de la prueba, además la conexión a
datos no se pierde en ningún momento. Por tanto, la prueba fue exitosa.
5.3.2 Generación de SMS.
Para el terminal 1, ZTE Blade A602 se ejecutó la prueba de SMS, con una SIM
card pospago que permite él envió de mensajes cortos, recordando que la prueba
se ejecuta enviando los mensajes al mismo terminal desde donde se corre la
prueba. La figura 47, muestra los resultados de la prueba.
Figura 47. Ejecución set de SMS Blade A602
Como se observa, la prueba fue ejecutada exitosamente a pesar de haber tenido
un problema en él envió del mensaje 6 (“ERROR GENERICO DE ENVIO”), los
demás mensajes fueron enviados y recibidos correctamente. Lo que representa un
correcto funcionamiento en el terminal.
Para el terminal 2, ZTE Blade A320 se utilizó tanto una SIM pospago como una
SIM card prepago, de tal manera que se pueda mostrar los mensajes entregados
por el terminal, cuando la SIM card no soporta el envío de mensajes cortos. La
figura 48, muestra la ejecución de ambas pruebas.
Figura 48. Ejecución set de SMS Blade A320
Cuando se ejecuta la prueba con una SIM card que no está habilitada para el
envío de SMS, se generan errores al intentar el envío, o se queda realizando el
envío un largo tiempo. Al realizar la prueba con la SIM card aprovisionada, se
puede observar como el terminal realizo el envío y la recepción de los mensajes
sin inconvenientes. Con lo cual, la prueba fue exitosa.
5.3.3 Información MMS
La figura 49, muestra la información de mensajes multimedia extraída del terminal
ZTE Blade A602.
Figura 49. Información de MMS Blade A602
Con esta información, se pudo conocer que los mensajes multimedia están
habilitados en el terminal, y que están correctamente configurados, de acuerdo a
los parámetros exigidos por el operador. Para el terminal Blade A320, la figura 50
muestra la información de MMS.
Figura 50. Información de MMS Blade A320
Al igual que con el Blade A602, la información provista por el menú del Blade A320
cumple con los parámetros exigidos por el operador, y por tanto funciona
correctamente.
5.3.4 Prueba de throughput
Para el terminal 1, ZTE Blade A602 se conectó a un PC compartiendo servicio de
internet por medio de un cable USB, se ejecutó la descarga de un archivo pesado
desde un servidor, después se estableció la prueba en la aplicación con una
duración de 10 minutos. Las condiciones de tráfico y nivel de señal, fueron
estándar para una red LTE. La figura 51 muestra el paso a paso de la ejecución de
la prueba en este terminal.
Figura 51. Ejecución prueba throughput Blade A602
La prueba entrega como resultado final, un promedio en descarga de 13,770666
Mbps tras una descarga de 8262,399 Mb en 10 minutos. Lo que es un
comportamiento normal, para unas condiciones de red como en las que se
ejecutaron la prueba.
5.3.5 Prueba de batería
Se realizó la prueba de batería en el terminal 1, ZTE Blade A602 en ambos
escenarios, es decir tanto en llamada constante como en streaming. Los
resultados se muestran en la figura 52.
Figura 52. Ejecución prueba batería Blade A602
Al terminar la prueba, la aplicación entrego como resultado que el terminal tendrá
una duración promedio de 500 minutos con llamada constante en 3G, y de 600
minutos con reproducción de streaming constante, lo cual está dentro de lo
esperado para un terminal con una pantalla de 5.5 pulgadas y una batería de 3000
mAh.
Para el terminal 2, ZTE Blade A320 en ambos escenarios, es decir tanto en
llamada constante como en streaming. Los resultados se muestran en la figura 53.
Figura 53. Ejecución prueba batería Blade A320
Al terminar la prueba, la aplicación entrego como resultado que el terminal tendrá
una duración promedio de 375 minutos con llamada constante en 3G, y de 375
minutos con reproducción de streaming constante, lo cual está dentro de lo
esperado para un terminal con un pantalla de 5 pulgadas y una batería de 2200
mAh.
5.3.6 Drive test
Para este caso, se realizara un análisis del drive test realizado con el terminal ZTE
Blade A602, para conocer cada uno de los eventos que se reportaron en el mapa,
y si estos fueron normales o no, teniendo en cuenta los niveles de señal y las
características de la zona. La figura 54, evidencia el recorrido realizado con el
terminal.
Figura 54. Drive test Blade A602
El recorrido se realizó por la avenida circunvalar, desde la calle 94 hasta la calle 6,
una zona con diferentes niveles de señal, cambios de tecnología y sectores con
comportamientos anormales en ocasiones. En la tabla 6 se muestran los eventos
más destacados y un análisis de los mismos.
Tabla 6. Análisis drive test Blade A602
EVENTO EVIDENCIA ANALISIS
Inicio recorrido
El inicio de la prueba se
realiza en una zona de
cobertura 4G, con buenos
niveles de señal y
conexión a datos.
Llamada iniciada
Se inicia una llamada,
partiendo de 4G, en
niveles medio bajos de
señal y conexión a datos
correcta.
Cambio de tecnología
Inmediatamente después
de iniciar la llamada, se
produce un cambio de
tecnología de LTE a
HSPA. Esto es normal,
debido a que Claro aún
no tiene implementado el
servicio de voz en 4G.
Cambio de tecnología
Durante el recorrido
ocurren múltiples eventos
de cambio de tecnología
entre HSPA y HSPA+ y
viceversa. Lo cual es
normal.
Zona de baja cobertura
Se encuentra una zona
de baja cobertura en 3G,
sin que se produzca la
caída de la llamada ni
perdida de servicio.
Caída de llamada
Se produce una caída de
llamada estando
conectado en HSPA, con
buenos niveles de señal.
Fuera de servicio
Inmediatamente después
de la caída de llamada se
produce un fuera de
servicio en una zona de
mediana cobertura.
En servicio
Al instante se produce la
reconexión a la red en
UMTS con niveles
medios de señal. Este
evento se debe analizar
por medio de tráfico de
red.
Llamada iniciada
Se genera una nueva
llamada, estando en
HSPA+, con buenos
niveles de señal.
Finaliza la prueba
Finaliza el recorrido sin
ningún otro evento a
tener en cuenta.
Al finalizar el recorrido, se pudo observar un comportamiento normal del terminal.
A tener en cuenta la perdida de servicio producida después de la caída de
llamada, pero como ocurrió una reconexión inmediata y además es una zona
donde generalmente se producen caídas de llamada, no se considera un
problema.
5.3.7 Elementos de hardware
Al ejecutar el menú de elementos de HW, se conocen cuáles son los dispositivos
soportados por el terminal, la figura 55 muestra que el equipo Blade A602, soporta
acelerómetro, sensor de luz, proximidad, micrófono, bluetooth y wifi.
Figura 55. Elementos de hardware soportados Blade A602
Después de conocer los elementos de hardware soportados por el terminal, se
realizó la prueba específica para cada uno de estos. Los resultados se muestran
en la figura 56.
Figura 56. Funcionamiento elementos de hardware soportados Blade A602
Todos los elementos de hardware funcionaron correctamente, por tanto la prueba
fue exitosa. Para el terminal Blade A320, los elementos soportados se muestran
en la figura 57.
Figura 57. Elementos de hardware soportados Blade A320
Después de conocer los elementos de hardware soportados por el terminal, se
realizó la prueba específica para cada uno de estos. Los resultados se muestran
en la figura 58.
Figura 58. Funcionamiento elementos de hardware soportados Blade A320
Todos los elementos de hardware funcionaron correctamente, por tanto la prueba
fue exitosa.
5.3.8 Información general
La figura 59, muestra la información general extraída del terminal ZTE Blade A602.
Figura 59. Información general Blade A602
Para el terminal Blade A320, la figura 60 muestra la información general.
Figura 60. Información general Blade A320
Toda la información extraída de este menú, es necesaria en el proceso de
homologación.
5.4 ANALISIS DE RESULTADOS
Durante el desarrollo de la investigación, se cumplieron la totalidad de los
objetivos propuestos para la misma. Se evidencio el buen desempeño de la
aplicación en un proceso de homologación real (Validación de versión de
mantenimiento para un terminal que se encuentra a la venta), facilitando y
optimizando los procesos requeridos para la realización de algunas de las pruebas
que se requieren, y entregando información que se debe conocer y validar en
todos los terminales que pasan por una homologación.
La reducción de los tiempos de ejecución de las pruebas se evidencio, ya que se
pudieron probar dos terminales al mismo tiempo, debido a que era la aplicación
quien realizaba el monitoreo constante de cada equipo y al final entregaba el
reporte que podía ser evaluado.
En este caso se puede decir que la reducción de tiempo fue del 50%, pero esto
puede ser mayor o menor, dependiendo de los recursos que se tengan para la
realización de las pruebas.
6. APORTES DE LA INVESTIGACIÓN
La tabla 7, muestra los beneficios que se encontraron con la utilización de cada
uno de los menús de la aplicación.
Tabla 7. Beneficios utilización de la aplicación HomologationTrial
MENÚ BENEFICIOS
Generar llamadas 1. La prueba se ejecuta
automáticamente sin ningún tipo
de supervisión, después de dar
el inicio por parte del usuario.
2. Entrega información importante
que puede ser utilizada para
determinar comportamientos
anormales del establecimiento
de llamadas.
3. Es posible configurar un número
de llamadas entre 1 y 100. De tal
manera que se pueden generar
informes estadísticos más
detallados del comportamiento
de los terminales.
4. Se pueden generar test en
todas las tecnologías existentes
en el mercado actual, sin ningún
fallo.
Generar SMS 1. La prueba se ejecuta
automáticamente sin ningún tipo
de supervisión, después de dar
el inicio por parte del usuario.
2. Realiza diferentes pruebas,
dentro del mismo test, lo que
permite ahorrar tiempo.
3. Permite generar pruebas de
envío de mensajes cortos en
todas las tecnologías 2G, 3G y
4G.
Información MMS 1. Suministra algunos de los datos
que se requieren durante el
proceso de homologación,
anteriormente era necesario
solicitarlos a las casas matrices
de los fabricantes, ya que no
existía ningún otro medio para
obtenerlos.
2. Reúne información en un solo
menú, que para conocer
anteriormente era necesario
desplazarse entre varias
opciones y aplicaciones del
terminal.
Throughput 1. Permite establecer la prueba en
diferentes tiempos, sin
necesidad de una supervisión
constante.
2. Muestra gráficamente el
desarrollo de la prueba.
Permitiendo tener un control de
la misma.
3. Entrega información en tiempo
real.
4. Las estadísticas obtenidas al
final de la prueba son totalmente
fiables, ya que las velocidades
de subida y bajada son extraídas
directamente del sistema
operativo Android.
5. Facilita le ejecución de la prueba
Batería 1. La prueba se ejecuta
automáticamente sin ningún tipo
de supervisión, después de dar
el inicio por parte del usuario.
2. Se pueden ejecutar dos tipos de
prueba. Una en llamada
constante y la otra con tráfico
constante.
3. Al finalizar la prueba entrega un
informe con la información de
promedio de duración de la
batería en los diferentes
escenarios.
Drive test 1. Realiza el monitoreo de los
eventos que ocurren durante un
drive test de manera automática.
2. Muestra de manera gráfica y
amigable para el usuario los
eventos que ocurren durante el
recorrido.
3. Entrega datos importantes, que
sirven para evaluar los eventos
que ocurran y al final el
comportamiento que tuvo el
terminal durante el drive test.
4. Muestra en tiempo real, el
estado de conexión de red, de
datos y permite establecer una
llamada, sin necesidad de acudir
a otras aplicaciones del sistema
operativo.
Elementos de hardware 1. Permite conocer los elementos
de hardware soportados por
cada terminal, además de
evaluar el funcionamiento
correcto de cada uno de estos.
No existe ninguna aplicación
dentro del sistema operativo que
cumpla esta función.
2. Reúne toda la información de los
elementos de hardware en una
sola interfaz amigable para el
usuario.
Información general 1. Suministra algunos de los datos
que se requieren durante el
proceso de homologación,
anteriormente era necesario
solicitarlos a las casas matrices
de los fabricantes, ya que no
existía ningún otro medio para
obtenerlos.
2. Reúne información en un solo
menú, que para conocer
anteriormente era necesario
desplazarse entre varias
opciones y aplicaciones del
terminal, o la descarga de otras
herramientas no propietarias
desde el play store.
Como se puede ver en la tabla anterior, todos los menús representaron beneficios
en el desarrollo de las pruebas requeridas durante un proceso de homologación.
Se puede concluir entonces, que la aplicación es funcional y de utilidad durante el
proceso, permitiendo reducir en pequeña escala los tiempos de ejecución, y
entregando información más precisa para generar estadísticas y conclusiones del
funcionamiento de los terminales en los redes móviles de los diferentes
operadores Colombianos.
TRABAJOS FUTUROS
En el campo de la homologación y las telecomunicaciones, este caso de estudio
puede ser utilizado para otros desarrollos como:
- Diseño de una versión para computadora en dispositivos que no utilicen el
sistema operativo Android, como los Routers, módems y trackers.
- Adaptar la aplicación a los próximos cambios que sucederán en la red
móvil, como la inclusión de VoLTE, VoWIFI y en un futuro más lejano 5G.
- Extender el alcance de la aplicación a dispositivos con otros sistemas
operativos como IOS y Windows Phone, o cualquier otro que surja en los
siguientes años.
CONCLUSIONES
1. Existen muchos factores de seguridad que se deben tener en cuenta al
momento de diseñar y desarrollar una aplicación móvil en Android. Ya que
algunas de las funciones tienen como prioridad proteger la integridad de la
información de los usuarios.
2. La automatización de algunos de los procesos ejecutados durante una
homologación por medio de aplicaciones del sistema operativo Android,
facilita y optimiza el proceso que se lleva a cabo entre los operadores y
fabricantes.
3. La posibilidad de obtener información, como los niveles de señal, el estado
de conexión, el estado de llamada y todos los diferentes eventos que
pueden ocurrir a un terminal móvil durante su funcionamiento cotidiano,
además de la localización donde ocurren. Permiten tener un concepto más
claro del funcionamiento del terminal, generar estadísticas y reportes más
exactos, y generar soluciones más rápidas y eficientes.
4. La posibilidad de extraer la información directamente del terminal. Hace que
sea mucho más fiable el resultado de las pruebas.
5. La reducción en los tiempos de homologación no es tan evidente con la
utilización de la aplicación, ya que la mayoría de las pruebas tienen un
tiempo establecido para su ejecución (1 hora, 30 minutos, etc.). La
reducción se hace evidente cuando se trabaja más de un proceso al mismo
tiempo y cuando se realiza el análisis de los resultados con la información
provista por la aplicación.
REFERENCIAS.
[1] “Mercado EE.UU. y FCC Certificación,” 2017. [Online]. Available: http://www.sicomtesting.com/blog/es/certificazione-fcc-come-e-perche-certificare-la-conformita-agli-standard-usa/ .
[2] J. Rachal, “Android arrasa en el mercado del móvil con el 87% de cuota,” 2017. [Online]. Available: https://www.muycanal.com/2017/08/28/mercado-del-movil.
[3] G. I. Zysman, J. A. Tarallo, R. E. Howard, J. Freidenfelds, R. A. Valenzuela, and P. M. Mankiewich, “Technology Evolution for Mobile and Personal Communications,” Wiley Online Libr., no. March, pp. 107–129, 2000.
[4] “Resolucion 5031 de 2016.pdf.” .
[5] “Reolucion 087 de 1997,” no. 087, 1997.
[6] A. Cliente, “Respuesta a Comentarios Homologación de Equipos Terminales – Actualización de Normas Técnicas – Documento Amarillo,” 2016.
[7] D. D. Fernandes, D. Á. Montini, G. De Souza, P. Moreira, F. Rafael, and M. Cardoso, “Final Inspection for Design Pattern Homologation using a Real Time Embedded Software in a Production Line,” 2009.
[8] Google, “The Android Story,” 2017. [Online]. Available: https://www.android.com/history/#/marshmallow.
[9] A. Khatoon, G. S. Member, and P. Corcoran, “Android permission system and user privacy- A review of concept and approaches,” pp. 153–158, 2017.
[10] P. Bhatt, S. Gupta, P. Singh, and P. Dhiman, “Accident and Road Quality Assessment using Android Google Maps API,” pp. 1061–1064, 2017.
[11] C. T. Nugroho, R. Nugraha, and A. Rusdinar, “Robot Control Design Using Virtual Path from Android Smartphone,” pp. 0–3, 2017.
[12] B. T. Scholar, E. Knowledge, and C. Technical, “Cloud Based Automated Irrigation And Plant Leaf Disease Detection System Using An Android Application,” pp. 211–214, 2017.
[13] R. Bhattacharya, N. Bandyopadhyay, and S. Kalaivani, “Real time Android App Based Respiration Rate Monitor,” pp. 709–712, 2017.