Integración de componentes Enterprise Java Beans y Front End Angular para analizar el desempeño de acceso a datos
Contenido principal del artículo
Resumen
La plataforma Java EE (Enterprise Edition) permite el desarrollo de software de tipo empresarial, cubriendo todas las capas que una aplicación monolítica requiere, pero carece de funcionalidades reactivas de manera nativa, lo que ocasiona un menor desempeño en la presentación de información al usuario final. Este problema afecta a los usuarios, porque la información que se visualiza en sus pantallas probablemente ya está desactualizada. En esta investigación se plantea comprobar la integración entre Java EE (plataforma backend) y Angular (framework frontend), con el propósito de mejorar el tiempo de respuesta para el usuario. Se utiliza el método Design Science Research como ruta principal de la investigación para determinar el problema, los antecedentes, la situación actual y los objetivos del proyecto propuesto. La parte teórica incluye información sobre plataformas tecnológicas y la metodología para el desarrollo del software propuesto. Se implementa una capa de servicios REST para proporcionar información de un sistema utilizado como caso de estudio en la Universidad Técnica del Norte, que se denomina SIAD (Sistema Integrado de Actividades Docentes), dicho servicio es consumido por la aplicación web Angular. Por otro lado, se ejecutan las pantallas JSF, las cuales consumen la información proporcionada por los componentes EJB. Finalmente, se ejecutan los dos tipos de clientes web (JSF y Angular) y se valida el desempeño utilizando el estándar ISO/IEC 25010. Se puede concluir de manera global que, los componentes reactivos de Angular mejoran el indicador de desempeño del sistema informático en un 21%.
Descargas
Detalles del artículo
Citas
Oracle, The Jakarta® EE Tutorial. Accedido: 1 de agosto de 2023. [En línea]. Disponible en: https://eclipse-ee4j.github.io/jakartaee-tutorial/
A. C. Nieto Lemus, Arquitectura por componentes jee, un caso práctico, Gerencia Tecnológica Informática, vol. 14, n.o 38, p. 1, 2015.
F. Myter, C. Scholliers, y W. De Meuter, Distributed reactive programming for reactive distributed systems, arXiv preprint arXiv:1902.00524, 2019.
A. Quiña-Mera, D. Flores Landeta, X. M. Rea-Peñafiel, y C. Guevara-Vega, Quality Evaluation of a Spring Cloud Microservices Architecture Implementation, en Communication, Smart Technologies and Innovation for Society: Proceedings of CITIS 2021, Springer, 2022, pp. 745-754.
B. Văduva y H. Vălean, Designing a Low-Code CRUD framework, Carpathian Journal of Electronic and Computer Engineering, vol. 14, n.o 1, pp. 11-19, ago. 2021, doi: 10.2478/cjece-2021-0003.
J. Bonér, D. Farley, Kuhn, y M. Thompson, El Manifiesto de Sistemas Reactivos. Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://www.reactivemanifesto.org/es
ISO 25010, ISO 25010. Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://iso25000.com/index.php/normas-iso-25000/iso-25010
E. A. Balseca Chisaguano, Evaluación de calidad de productos de software en empresas de desarrollo de software aplicando la norma ISO/IEC 25000, bachelorThesis, Quito, 2015., 2014. Accedido: 21 de septiembre de 2023. [En línea]. Disponible en: http://bibdigital.epn.edu.ec/handle/15000/9113
O. Díaz, J. P. Contell, y J. R. Venable, Strategic Reading in Design Science: Let Root-Cause Analysis Guide Your Readings, en Designing the Digital Transformation, A. Maedche, J. vom Brocke, y A. Hevner, Eds., en Lecture Notes in Computer Science. Cham: Springer International Publishing, 2017, pp. 231-246. doi: 10.1007/978-3-319-59144-5_14.
N. E. Pilco Guachi, Desarrollo de una aplicación web para el control académico de la Escuela de Educación Básica “Capullitos” aplicando la norma ISO/IEC 9126-2 para determinar el nivel de usabilidad., bachelorThesis, Escuela Superior Politécnica de Chimborazo, 2018. Accedido: 21 de septiembre de 2023. [En línea]. Disponible en: http://dspace.espoch.edu.ec/handle/123456789/9274
L. Saeed, What Is Java EE?, en Introducing Jakarta EE CDI: Contexts and Dependency Injection for Enterprise Java Development, L. Saeed, Ed., Berkeley, CA: Apress, 2020, pp. 1-2. doi: 10.1007/978-1-4842-5642-8_1.
P. Späth, Building Page-Flow Web Applications with JSF, en Beginning Jakarta EE: Enterprise Edition for Java: From Novice to Professional, P. Späth, Ed., Berkeley, CA: Apress, 2019, pp. 53-132. doi: 10.1007/978-1-4842-5079-2_4.
J. Juneau, The Basics of JavaServer Faces, en Java EE 8 Recipes: A Problem-Solution Approach, J. Juneau, Ed., Berkeley, CA: Apress, 2018, pp. 103-189. doi: 10.1007/978-1-4842-3594-2_3.
Oracle Inc., The Lifecycle of a JavaServer Faces Application. Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://javaee.github.io/tutorial/jsf-intro007.html#BNAQQ
F. Tapia, M. Á. Mora, W. Fuertes, H. Aules, E. Flores, y T. Toulkeridis, From Monolithic Systems to Microservices: A Comparative Study of Performance, Applied Sciences, vol. 10, n.o 17, Art. n.o 17, ene. 2020, doi: 10.3390/app10175797.
Google Inc., Angular - What is Angular? Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://angular.io/guide/what-is-angular
Google Inc., Angular lifecycle hook. Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://v2.angular.io/docs/ts/latest/guide/lifecycle-hooks.html
ReactiveXb, ReactiveX - Observable. Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://reactivex.io/documentation/observable.html
ReactiveX, ReactiveX - Intro. Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://reactivex.io/intro.html
T. N. Vaca Sierra, Modelo de calidad de software aplicado al módulo de talento humano del sistema informático integrado universitario – UTN, masterThesis, 2017. Accedido: 20 de septiembre de 2023. [En línea]. Disponible en: http://repositorio.utn.edu.ec/handle/123456789/7457
B. Arias y O. Alvear, Análisis del resultado de la implementación de SCRUM, LEAN Y BSC en el proceso de desarrollo de software en la industria del Retail, Revista Perspectivas, vol. 4, n.o 1, Art. n.o 1, feb. 2022, doi: 10.47187/perspectivas.4.1.116.
K. S. & J. Sutherland, La Guía Definitiva de Scrum: Las Reglas del Juego, nov. 2020, Accedido: 19 de septiembre de 2023. [En línea]. Disponible en: https://repositorio.uvm.edu.ve/handle/123456789/59
Oracle Inc.b, Java EE APIs. Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://javaee.github.io/tutorial/overview008.html#BNACL
E. Vernat, Home · javamelody/javamelody Wiki · GitHub. Accedido: 2 de agosto de 2023. [En línea]. Disponible en: https://github.com/javamelody/javamelody/wiki
A. Quiña-Mera, C. Guevara-Vega, J. Caiza, J. Mise, y P. Landeta, REST, GraphQL, and GraphQL Wrapper APIs Evaluation. A Computational Laboratory Experiment, en Proceedings of International Conference on Information Technology and Applications, S. Anwar, A. Ullah, Á. Rocha, y M. J. Sousa, Eds., en Lecture Notes in Networks and Systems. Singapore: Springer Nature, 2023, pp. 397-407. doi: 10.1007/978-981-19-9331-2_34.
F. Pech-May, M. A. Gomez-Rodriguez, y S. U. Lara-Jeronimo, Desarrollo de Aplicaciones web con JPA, EJB, JSF y PrimeFaces, 2012.
C. Heredia, Integración de Spring, Hibernate y JSF en el desarrollo de aplicaciones web. Accedido: 3 de agosto de 2023. [En línea]. Disponible en: https://oa.upm.es/38692/
S. M. Mafla Flores, Comparativa de los frameworks angular y primefaces para el desarrollo del aplicativo control de materia prima en la empresa Mastercubox S.A., utilizando la metodología Scrum, bachelorThesis, 2019. Accedido: 3 de agosto de 2023. [En línea]. Disponible en: http://repositorio.utn.edu.ec/handle/123456789/9017
M. A. Khan, S. Gairola, B. Jha, y P. Praveen, Smart Computing: Proceedings of the 1st International Conference on Smart Machine Intelligence and Real-Time Computing (SmartCom 2020), 26-27 June 2020, Pauri, Garhwal, Uttarakhand, India. CRC Press, 2021.
J. Cincovic, S. Delcev, y D. Draskovic, Architecture of web applications based on Angular Framework: A Case Study, 2019.
J. Ortega, Extensión de una aplicación web destinada al for- talecimiento de clubes escolares matemáticos integrando JavaFX2 y JavaEE6 con servicios web basados en REST, 2013. Accedido: 3 de agosto de 2023. [En línea]. Disponible en: https://core.ac.uk/download/pdf/71419433.pdf
P. Späth, Building Single-Page Web Applications with REST and JSON, en Beginning Jakarta EE: Enterprise Edition for Java: From Novice to Professional, P. Späth, Ed., Berkeley, CA: Apress, 2019, pp. 133-163. doi: 10.1007/978-1-4842-5079-2_5.