EchartsTag para generación de charts usando Taglib

Palabras clave: charts, Java Server Faces, EchartsTag, TagLibs, Webjars, aplicaciones Java, JavaScript

Resumen

Existen muchas herramientas para desarrollar aplicaciones en Java, pero existen pocas alternativas para framework o bibliotecas especializadas para mostrar gráficos (charts) en entornos web. Aunque la mayoría son para entornos de escritorio, las librerías PrimeFaces y ChartistJSF son una alternativa para la web, pero están orientadas a proyectos basados en Java Server Faces. En este sentido, muchos proyectos prefieren utilizar principalmente una biblioteca de gráficos integrada con JavaScript, lo que implica una curva de aprendizaje adicional y requiere más tiempo en el desarrollo de aplicaciones. Por lo tanto, es necesario tener una biblioteca o marco de visualización de gráficos único para aplicaciones Java en el entorno web. Por lo tanto, en este artículo se propone construir una herramienta que ayude a desarrollar visualizaciones gráficas en proyectos web Java utilizando los conceptos de TagLibs y Webjars. La herramienta propuesta se llama EchartsTag y fue construida siguiendo la metodología XP y validada con SonarQube y un grupo de profesionales expertos en desarrollo de proyectos Java. EchartsTag está disponible en GitHub, por lo que puede ser utilizado por cualquier desarrollador de la comunidad de Java u organizaciones que trabajen con
tecnología Java. Finalmente, los resultados de rendimiento de EchartsTag se demuestran al compararlo con otras herramientas alternativas, logrando un tiempo promedio de 14,17 minutos en tiempo de desarrollo y ocupando el tercer lugar en tiempo promedio de visualización que es 3,5 m -después de Chartjs y HighChats. Además, ocupa el primer lugar en la evaluación de otros criterios para el desarrollo web java con herramientas de visualización de gráficos.

Descargas

La descarga de datos todavía no está disponible.

Biografía del autor/a

David Mamani-Pari, Universidad Peruana Unión, Juliaca, Perú

Magíster en Ciencias en Ingeniería de Sistemas con mención en Gerencia en TI por la Universidad Nacional de San Agustín de Arequipa, ingeniero de sistemas por la Universidad Peruana Unión y con estudios doctorales en Ciencias de la Computación por la Universidad Nacional del Altiplano; docente de pregrado e investigador en la línea de Ingeniería de software y procesamiento de imágenes; con experiencia en desarrollo web, móvil, pruebas de software y gestión de procesos.

Richart Smith Escobedo-Quispe, Universidad Nacional San Agustín de Arequipa, Arequipa, Perú

Magíster en Ciencias en Ingeniería de Sistemas con mención en Gerencia en TI por la Universidad Nacional de San Agustín de Arequipa, ingeniero de sistemas por la Universidad Católica de Santa María (Arequipa) y promotor del software libre. Docente de pregrado, postgrado e investigador en ingeniería de software con experiencia en el desarrollo web, comercio electrónico, inteligencia de negocios y gestión de procesos

Citas

Alimam, H. (2017). ChartistJSF: gráficos receptivos altamente personalizables para JavaServer Faces. https://github.com/hatemalimam/ChartistJSF

Burtini, G., Fazackerley, S., y Lawrence, R. (2013). Reducing data transfer for charts on adaptive web sites. Proceedings of the ACM Symposium on Applied Computing (SAC ’13), 865–867. https://doi.org/10.1145/2480362.2480528

Gilbert, D. (2019). JFreeChart. http://www.jfree.org/

Goto, T., Tsuchida, K., y Nishino, T. (2014). EPISODE: An extreme programming method for innovative software based on systems design. Proceedings - 2014 IIAI 3rd International Conference on Advanced Applied Informatics, IIAI-AAI, 780–784. https://doi.org/10.1109/IIAI-AAI.2014.157

Hua, E. C., Nen, V. Y., Tee, F. S., y Ann, O. C. (2018). Pigeon-chart: A customized HTML element for data visualization in data-driven web application using angularjs, highcharts, underscorejs and PHP. IEEE 3rd International Conference on Communication and Information Systems, ICCIS 2018, 247–252. https://doi.org/10.1109/ICOMIS.2018.8644793

Knowm Inc. (2019). XChart - Knowm.org. https://knowm.org/open-source/xchart/xchart-example-code/

Li, D., Mei, H., Shen, Y., Su, S., Zhang, W., Wang, J., Zu, M., y Chen, W. (2018). ECharts: A declarative framework for rapid construction of web-based visualization. Visual Informatics, 2(2), 136–146. https://doi.org/10.1016/j.visinf.2018.04.011

Marashdih, A. W., Zaaba, Z. F., Suwais, K., y Mohd, N. A. (2019). Web application security: An investigation on static analysis with other algorithms to detect cross site scripting. Procedia Computer Science, 161, 1173–1181. https://doi.org/10.1016/j.procs.2019.11.230

Martínez, R. A., Turró, M. R., y Saltiveri, T. G. (2019). Accessible statistical charts for people with low vision and colour vision deficiency. Proceedings of the XX International Conference on Human Computer Interaction (Interacción ’19), 1–2. https://doi.org/https://doi.org/10.1145/3335595.3335618

Molina-Ríos, J., y Pedreira-Souto, N. (2020). Comparison of development methodologies in web applications. Information and Software Technology, 119, 106238. https://doi.org/10.1016/j.infsof.2019.106238

Nielsen, J. (2000). Why You Only Need to Test with 5 Users. Nielsen Norman Group. https://www.nngroup.com/articles/why-you-only-need-to-test-with-5-users/

Oracle. (2019). JavaServer Pages Standard Tag Library. Oracle. https://www.oracle.com/technetwork/java/jstl-137486.html

Oracle. (2021). Fusion Middleware Programming JSP Tag Extensions for Oracle WebLogic Server. Oracle; Oracle. https://docs.oracle.com/cd/E12839_01/web.1111/e13722/tld.htm#TAGLB120

Ostruszka, M., Sakowicz, B., y Napieralski, A. (2007). Universal Web-Based Charts Generator Based on J2EE Platform. The Experience of Designing and Application of CAD Systems in Microelectronics - Proceedings of the 9th International Conference, CADSM 2007, 524–528. https://doi.org/10.1109/CADSM.2007.4297638

PrimeTek. (2019). PrimeFaces Ultimate UI Framework for Java EE. https://www.primefaces.org/

Redko, A. (2014). Using JavaFX Charts. Oracle. https://docs.oracle.com/javafx/2/charts/jfxpub-charts.pdf

Robiolo, G., y Santos, S. (2016). Estimación de proyectos de software pequeños basada en el juicio de expertos: un caso de estudio. ASSE 2016, 17o Simposio Argentino de Ingeniería. Software, 39–50. http://sedici.unlp.edu.ar/handle/10915/57160

Rodriguez, P. A. (2007). Rediseño del modelo de negocios del Datacenter de telefónica empresas en función de prácticas ITIL [Proyecto de Grado de Magister],

Universidad De Chile. Repositorio Académico de la Universidad de Chile]. http://www.tesis.uchile.cl/tesis/uchile/2007/rodriguez_pr/pdf/rodriguez_pr.pdf

Shen, H., Bednarz, T., Nguyen, H., Feng, F., Wyeld, T., Hoek, P. J., y Lo, E. H. S. (2019). Information visualisation methods and techniques: State-of-the-art and future directions. Journal of Industrial Information Integration, 16, 100102. https://doi.org/10.1016/j.jii.2019.07.003

Sorapure, M. (2019). Text, Image, Data, Interaction: Understanding Information Visualization. Computers and Composition, 54, 102519. https://doi.org/10.1016/j.compcom.2019.102519

Stack-Overflow, I. (2020). Stack Overflow Developer Survey 2020. https://insights.stackoverflow.com/survey/2020#technology-programming-scripting-and markup-languages-professional-developers

Sulova, S. (2019). Models for web applications data analysis. Proceedings of the 20th International Conference on Computer Systems and Technologies (CompSysTech ’19), 246–250. https://doi.org/10.1145/3345252.3345262

Wells, D. (2013). Extreme Programming: A Gentle Introduction. http://www.extremeprogramming.org/

Yadav, D., Gupta, D., Singh, D., Kumar, D., y Sharma, U. (2018). Vulnerabilities and security of web applications. 2018 4th International Conference on Computing Communication and Automation, ICCCA, 1–5. https://doi.org/10.1109/CCAA.2018.8777558

Publicado
2021-12-21
Cómo citar
Mamani-Pari, D., & Escobedo-Quispe, R. S. (2021). EchartsTag para generación de charts usando Taglib. Interfases, (014), 89-117. https://doi.org/10.26439/interfases2021.n014.5394
Sección
Artículos de investigación