ESTUDIO DE LA EFICIENCIA DE LOS FRAMEWORKS HIBRIDOS
ESTUDIO DE LA EFICIENCIA DE LOS FRAMEWORKS HIBRIDOS Y NATIVOS EN EL DESARROLLO DE APLICACIONES MÓVILES, BASADO EN BENCHMARK PARA EL CONSORCIO INFORMEGA AUTOR: DIRECTOR: SALGADO ESCOBAR STALIN SEBASTIAN ING. JOSE SANCHO
ANTECEDENTES Proliferación Dispositivos Móviles Adaptación Dinámica Internet Heterogeneidad
PROBLEMÁTICA Fragmentación entre Plataformas Aplicaciones Móviles Multiplataforma Especialistas Reutilización Código Costo Tiempo
JUSTIFICACIÓN Aplicaciones Hibridas Nativo Eficiente Hibrido Sincronización de Datos
OBJETIVO GENERAL Realizar el estudio de la eficiencia de aplicaciones móviles con un framework híbrido y un nativo basado en Benchmarking OBJETIVO ESPECÍFICOS Analizar herramientas de software que permitan evaluar la eficiencia de las aplicaciones móviles específicamente en tiempos de respuesta, basado en el caso de estudio propuesto. Implementar un caso de estudio específico en las dos tecnologías de desarrollo. Realizar un análisis comparativo de las dos implementaciones de desarrollo móvil, enfocado en el caso de estudio usando Benchmarking
ALCANCE Caso de Estudio Planteado • Módulo de Acceso y Seguridad • Módulo de Automatización de Logística ¿Cuál de las dos aplicaciones es más eficiente, basándose en la norma ISO 25000, con un enfoque específico al uso de recursos como también en relación al comportamiento temporal de la aplicación?
APLICACIONES NATIVAS E HIBRIDAS Android • Interacción directa con el SO • Gps , Base de datos, Internet • Java como Lenguaje de Programación • Experiencia de Usuario Fluida Ionic Framework • Interacción con el SO mediante un web view • Gps , Base de datos, Internet • HTML 5 + JAVASCRIPT +CSS • Reutilización de Código • Experiencia de Usuario Similar al nativo
ISO 25000 EFICIENCIA DE DESEMPEÑO Eficiencia de desempeño � Desempeño relativo a la cantidad de recursos utilizados bajo determinadas condiciones Comportamiento temporal. Utilización de recursos. Capacidad.
MODELO DE CALIDAD IQMC
MODELO DE CALIDAD IQMC Modelo Obtenido
RESULTADOS DE IMPLEMENTACIÓN Modulo de Seguridad o Autentificación Android Ionic Framework
RESULTADOS DE IMPLEMENTACIÓN Modulo de Seguridad o Autentificación Android Ionic Framework
RESULTADOS DE IMPLEMENTACIÓN Modulo de Seguridad o Autentificación Android Ionic Framework
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Herramienta para Monitorizar Componentes de la Aplicación
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Evaluación de Componentes Para la recopilación de datos se planteó tres escenarios de evaluación, basados en los indicadores obtenidos en el Capítulo III, los siguientes son: Tiempos de Respuestas Recursos de Software Recursos de la Aplicación
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Tiempos de Respuestas � Apertura e Inicio de la Aplicación Apertura de la Aplicación 10 Tiempo (s) 8 6 4 2 0 Nativo Hibrido 1 1. 22 9. 32 2 1. 07 8. 5 3 1. 22 8. 43 4 1. 17 8. 97 5 1. 2 8. 57
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Recursos de Software Tipo JDK Lenguajes de IDE o Editor de Programación Código SDK SERVIDOR DE COMPILADOR BASE DE APLICACIONES EXTERNO DATOS GPS ECLIPSE Nativo 1, 8 JAVA LUNA GPS TARGET 24 NA NA SQLITE NATIVO VISUAL STUDIO Hibrido 1, 8 JAVASCRIPT CODE GPS TARGET 26 NODE JS CORDOVA SQLITE NATIVO Recursos de Software 2. 5 # Recursos 2 1. 5 1 0. 5 0 JDK Nativo Hibrido 1 1 Lenguajes de IDE o Editor Pro. . . de C. . . 1 1 SDK 1 1 SERVIDOR COMPILADO DE A. . . R E. . . 0 0 1 1 BASE DE DATOS 1 1 GPS 1 1
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Recursos de la Aplicación � Tamaño de la Aplicación en Memoria 30 25 20 Mbps 15 10 5 0 Almacenamiento Cache Nativo 3. 63 Hibrido 26. 3 0. 1 0. 24
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Recursos de la Aplicación � Consumo de Batería 7. 00 6. 00 5. 00 4. 00 % 3. 00 2. 00 1. 00 0. 00 1 Nativo 4. 57 Hibrido 4. 65 2 3. 63 4. 05 3 4. 12 4. 19 4 4. 02 4. 98 5 3. 49 5. 54 6 4. 31 5. 75 7 3. 80 4. 87 8 3. 18 4. 93 9 4. 10 4. 15 10 4. 18 4. 28 11 4. 05 4. 72 12 4. 03 4. 25 13 3. 81 4. 94 14 4. 97 5. 33 15 3. 85 5. 69 16 4. 41 4. 94
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Recursos de la Aplicación � Cpu-Funcionamiento General Consumo de Componentes (CPU) Funcionamiento General 40 39 38 82. 49 41 42 43 120 1 2 3 100 4 89. 12 77. 32 77. 89 63. 78 60. 75 55. 4180 65. 8 5 6 7 8 51. 29 38. 52 40. 68 59. 14 94. 75 65. 57 60 55. 41 25. 1432. 26 36 9 65. 29 31. 46 63. 99 20. 69 19. 29 19. 99 16. 64 73. 99 40 12. 81 45. 1 24. 39 35 10 17. 31 53. 12 12. 17 6. 87 64. 05 20 12. 1 33. 26 29. 47 8. 48 34 80. 89 11 60. 6 11. 55 43. 98 72. 48 0 11. 56 48. 33 24. 88 49. 02 33 12 10. 54 35. 74 56. 57 22. 1 14. 06 19. 35 86. 5 13 12. 68 32 15. 71 58. 76 69. 06 20. 63 12. 23 75. 03 9. 71 11. 25 15. 73 31 14 66. 35 18. 27 33. 98 65. 17 68. 01 94. 13 30 15 57. 07 39. 53 66. 22 50. 26 63. 78 29 16 50. 16 68. 06 56. 05 72. 0680. 33 66. 4 28 17 75. 79 64. 78 75. 89 27 18 82. 39 26 19 25 90. 45 20 24 23 97. 29 22 21 37 Nativo Hibrido
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Recursos de la Aplicación � Consumo de Componentes (WIFI) Funcionamiento General Bytes x (s) Uso de Internet Wifi Carga 1000 800 600 400 200 0 1 Nativo 0 Hibrido 1. 42 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 800. 92 65. 28 42. 08 0 173. 31 200. 13 240. 33 65. 82 0 343. 67 206. 92 205. 06 0 0 0. 65 804. 36 1. 11 0 0 0 739. 06 0 0 6. 66 1. 08 5. 6 0 41. 65 64. 22 0 0 19 0 0 Bytes x (s) Uso de Internet Wify Descarga 900 800 700 600 500 400 300 200 100 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Nativo 0 0 119. 24164. 4782. 09 28. 06164. 54426. 3 0 213. 37183. 4851. 85 0 0 797. 8417. 83261. 82 0 0 1. 25 552 Hibrido 2. 28 5. 42 0 0 577. 55 0 0 0 161. 64 0 0 0 8. 38 241. 67 1. 97 5. 68 0 27. 77 50. 6 0 0 22 0 0
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Recursos de la Aplicación � Consumo de Componentes (Internet Móvil) Consumo de Megas 300 250 Mb/s 200 150 100 50 0 1 2 Nativo 112. 71 41. 39 Hibrido 18. 09 14. 25 3 3. 37 11. 81 4 9. 66 14. 02 5 15. 09 13. 84 6 7 8 3. 6 227. 62 85. 56 10. 71 11. 88 18. 26 9 18. 07 10. 14 10 57. 03 12. 58 11 12 13 14 15 16 117. 9 281. 56 100. 78 145. 83 15. 81 27. 88 79. 45 7. 38 7. 03 11. 35 14. 99 102. 43
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Recursos de la Aplicación � Consumo de Componentes (RAM) Funcionamiento General Uso de Memoria RAM 32 33 31 30 29 28 27 26 34 80 70 60 50 40 30 20 10 0 1 2 3 4 5 6 7 8 25 9 Nativo 10 Hibrido 11 24 12 23 13 22 14 21 20 19 18 17 16 15
BENCHMARKING DE APLICACIONES NATIVAS VS HIBRIDAS Capacidad � Capacidad de Almacenamiento � Funcionamiento Offline Capacidad de la Aplicación 101% 100% 99% 98% 97% % nativo 96% hibrido 95% 94% 93% 92% almacenamiento offline Capacidad
RESULTADOS OBTENIDOS Acumulación de Puntos de Eficiencia Puntos Eficiencia 20 18 16 14 12 Puntos 10 8 6 4 2 0 Nativo Hibrido Tipos de Aplicación
CONCLUSIONES La aplicación nativa es más eficiente que la aplicación hibrida En el análisis de herramientas que se realizó, se pudo identificar que no existe una herramienta especializada para medir indicadores de eficiencia en dispositivos móviles. � Consumo de internet y la capacidad de almacenamiento � El algoritmo GPS Ionic Framework nos permite desarrollar aplicaciones móviles, mas sin embargo Al entregar las dos aplicaciones desarrolladas a Consorcio Informega
RECOMENDACIÓN Elaborar un prototipo ya sea de metodología o una herramienta que permita evaluar no solo la eficiencia de aplicaciones. Análisis previo de componentes que va utilizar, verificando que dichos componentes estén habilitados en este caso en Ionic Framework. Analizar la complejidad que pueda existir en la implementación de determinada funcionalidades. Ahondar en el estudio de los plugins o componentes que ofrecen los frameworks híbridos.
PREGUNTAS
GRACIAS POR SU ATENCIÓN
- Slides: 29