Scielo RSS <![CDATA[Revista Ingenierías Universidad de Medellín]]> http://www.scielo.org.co/rss.php?pid=1692-332420240001&lang=en vol. 23 num. 44 lang. en <![CDATA[SciELO Logo]]> http://www.scielo.org.co/img/en/fbpelogp.gif http://www.scielo.org.co <![CDATA[DETECTION OF OPERATIONAL FAILURES WITH ARTIFICIAL NEURAL NETWORKS: APPLICATION TO THE TENNESSEE EASTMAN PROCESS]]> http://www.scielo.org.co/scielo.php?script=sci_arttext&pid=S1692-33242024000100001&lng=en&nrm=iso&tlng=en ABSTRACT The purpose of this article is to compare results of fault detection for the Tennessee Eastman (TE) process with the application of artificial neural networks (ANN). The Neuralnet library of the open-source program R, as well as the Keras library of the open-source program Python were used for the training of ANN. The TE process simulation data were downloaded from Harvard University's server, and subsequently analyzed, defining the trends in the operational variables during the appearance of failures. With the database, the training and validation of different ANN structures were developed, considering the parameters number of hidden neurons, activation function, and number of hidden layers. According to the results, the training and validation of the ANNs with the Neuralnet library yielded a lower performance in fault detection than that obtained with the Keras library. The ANN with the best performance in detecting failures in the TE process was obtained by the application of the Keras library. This ANN considered 52 input variables, 11 neurons in the hidden layer, and one neuron in the output layer, using a logistic function (ANN represented as 52:11:1 logistic) and reporting a prediction efficiency of 92% for the detection of faults with an external test set, which is convenient for future implementation in industrial processes.<hr/>RESUMEN Este artículo tiene como finalidad la comparación de resultados de detección de fallas en el proceso Tennessee Eastman (TE) con redes neuronales artificiales (RNA), utilizando las librerías neuralnet del programa de código abierto R y Keras del programa de código abierto Python. Para esto, los datos de la simulación de proceso TE fueron descargados del servidor de la universidad de Harvard, y posteriormente analizados, definiendo las tendencias en las variables operacionales ante las respectivas fallas. Con la base de datos, el entrenamiento y la validación de diferentes estructuras de RNA fue desarrollado considerando los parámetros: número de neuronas ocultas, función de activación y número de capas ocultas. Según los resultados, el entrenamiento y la validación de las RNA con la librería neuralnet reportó menores desempeños de detección de fallas, que las obtenidas con la librería Keras. La RNA de mejor desempeño en la detección de fallas del proceso TE correspondió a la estructura 52 variables de entrada, 11 neuronas en la capa oculta y una neurona en la capa de salida, con función logística y entrenada con la librería Keras (RNA representada como 52:11:1 logistic). Esta RNA presenta una eficiencia en la predicción del 92% para la detección de fallas en un conjunto externo de prueba, lo que resulta conveniente en una futura implementación en procesos industriales. <![CDATA[REVERSE ENGINEERING FOR SOFTWARE MAINTENANCE: A SYSTEMATIC REVIEW OF LITERATURE]]> http://www.scielo.org.co/scielo.php?script=sci_arttext&pid=S1692-33242024000100002&lng=en&nrm=iso&tlng=en Abstract Reverse engineering covers a wide range of software life cycle activities starting with the existing implementation, recovering, or recreating the design and deciphering the requirements implemented in the system. The objective of this article is to present a state of the art on Reverse Engineering techniques used in the context of software maintenance. For this purpose, a Systematic Literature Review was carried out, in which 47 primary studies from 4 databases, published in this century, were analyzed. Research questions were raised regarding the distribution of publications throughout this century and, about the type of maintenance on which they focus; Likewise, the techniques and metrics reported for reverse engineering processes in maintenance activities were analyzed. A significant increase (just over 200 %) could be observed in the second decade of this century compared to the first. On the other hand, it was observed that perfective maintenance is the one in which the most techniques were identified, although the majority are static. From the analysis of the selected studies, a total of 22 types of reengineering techniques used for software maintenance/evolution tasks were identified, reporting a set of eight types of metrics used to evaluate the quality of reengineering processes in the evolution of the software.<hr/>Resumen La ingeniería inversa cubre una amplia gama de actividades del ciclo de vida del software comenzando con la implementación existente, recuperando o recreando el diseño y descifrando los requisitos implementados en el sistema. El objetivo de este artículo es presentar un estado del arte sobre técnicas de Ingeniería Inversa utilizadas en el contexto del mantenimiento de software. Para ello se realizó una Revisión Sistemática de la Literatura, en la que se analizaron 47 estudios primarios de 4 bases de datos, publicados en este siglo. Se plantearon interrogantes de investigación respecto de la distribución de las publicaciones a lo largo de este siglo y, sobre el tipo de mantenimiento en el que se enfocan; Asimismo, se analizaron las técnicas y métricas reportadas para los procesos de ingeniería inversa en las actividades de mantenimiento. En la segunda década de este siglo se pudo observar un aumento significativo (poco más del 200 %) en comparación con la primera. Por otro lado, se observó que el mantenimiento perfectivo es en el que más técnicas se identificaron, aunque la mayoría son estáticas. Del análisis de los estudios seleccionados se identificaron un total de 22 tipos de técnicas de reingeniería utilizadas para tareas de mantenimiento/evolución del software, reportando un conjunto de ocho tipos de métricas utilizadas para evaluar la calidad de los procesos de reingeniería en la evolución del software. <![CDATA[RECOGNITION OF OFFENSIVE TECHNIQUES IN MARTIAL ARTS: A SYSTEMATIC MAPPING STUDY]]> http://www.scielo.org.co/scielo.php?script=sci_arttext&pid=S1692-33242024000100003&lng=en&nrm=iso&tlng=en Resumen Motivación: la identificación precisa de golpes y patadas en competencias deportivas de artes marciales es un asunto crítico, a menudo complicado y, en ocasiones, sujeto a controversias debido a la apreciación subjetiva de los árbitros. Problema: la subjetividad en la evaluación de golpes y patadas durante las competencias deportivas de artes marciales plantea un desafío significativo en términos de imparcialidad y precisión en el arbitraje. Enfoque de solución: este estudio se centra en el análisis de las contribuciones más recientes en el campo del reconocimiento de golpes y patadas en competencias de artes marciales. Se revisan técnicas de clasificación y sensores comúnmente utilizados. Resultados: el análisis proporciona una visión general de las técnicas de clasificación implementadas en el reconocimiento de golpes y patadas. Esto contribuye a la comprensión de los avances recientes en este campo y cómo pueden mejorar la objetividad y precisión en el arbitraje de las competencias de artes marciales. Conclusiones: este estudio destaca el creciente interés en técnicas de aprendizaje automático para clasificar golpes y patadas en artes marciales, abarcando una amplia gama de clasificadores, desde métodos tradicionales hasta modelos de aprendizaje profundo. La combinación de sensores inerciales y cámaras profundas se presenta como una vía prometedora. Se anticipa que futuras investigaciones compararán y caracterizarán exhaustivamente estos enfoques, allanando el camino para la implementación de sistemas de inteligencia artificial en competencias de artes marciales, lo que podría revolucionar la objetividad en la evaluación de movimientos en este deporte.<hr/>Abstract Motivation: The precise identification of punches and kicks in martial arts sporting competitions is a critical issue, often complex, and at times subject to controversies due to the subjective judgment of referees. Problem: The subjectivity in assessing punches and kicks during martial arts sporting competitions poses a significant challenge regarding impartiality and accuracy in refereeing. Solution Approach: This study analyzes the most recent contributions to punch and kick recognition in martial arts competitions. It reviews classification techniques, commonly used sensors, and the performance achieved in identifying these movements. Results: The analysis provides a general overview of implemented punch and kick classification techniques. This contributes to understanding recent advancements in this field and how they can enhance objectivity and precision in refereeing martial arts competitions. Conclusions: This study underscores the growing interest in machine learning techniques for classifying punches and kicks in martial arts, encompassing a wide range of classifiers, from traditional methods to deep learning models. The combination of inertial sensors and depth cameras emerges as a promising avenue. Future research is expected to thoroughly compare and characterize these approaches, paving the way for implementing artificial intelligence systems in martial arts competitions and potentially revolutionizing the objectivity in assessing movements in this sport. <![CDATA[ACCESSIBILITY PRACTICES IN SOFTWARE DEVELOPMENT: SYSTEMATIC LITERATURE MAPPING]]> http://www.scielo.org.co/scielo.php?script=sci_arttext&pid=S1692-33242024000100004&lng=en&nrm=iso&tlng=en Resumen Incorporar la accesibilidad en el desarrollo de .software conlleva beneficios significativos como la inclusión de personas con discapacidad. Reconocer la diversidad de usuarios con diferentes requisitos y necesidades dentro de la creación de software facilita su utilización por la mayor cantidad de usuarios sin importar sus condiciones individuales. El objetivo de esta investigación es obtener una base de conocimientos que permita identificar aquellas prácticas de las que se tenga evidencia de su uso en el desarrollo de software accesible. Se llevó a cabo un Mapeo Sistemático de la Literatura (MSL) enfocado en identificar prácticas que incorporan actividades de accesibilidad en el ciclo de vida del software, resultando en 29 estudios que se ajustaron a los criterios de selección. Los resultados muestran que la fase con más evidencia de incorporación de actividades de accesibilidad en el desarrollo de software es la fase de pruebas, donde se utilizan evaluadores para verificar la accesibilidad dentro de páginas web, seguido de la fase de construcción, donde se utilizan metodologías que incluyen la accesibilidad dentro del proceso de desarrollo de software; en la fase de diseño es común que se incorporen artefactos que guíen el desarrollo de accesible y, por último, en la fase de requisitos es usual emplear la descripción de requisitos para obtener y documentar requisitos de accesibilidad.<hr/>Abstract Incorporating accessibility in software development brings significant benefits such as the inclusion of people with disabilities. Recognizing the diversity of users with different requirements and needs within software development facilitates its use by the greatest number of users regardless of their individual conditions. The objective of this research is to obtain a knowledge base to identify those practices for which there is evidence of their use in the development of accessible software. A Systematic Literature Mapping (SLM) focused on identifying practices that incorporate accessibility activities in the software life cycle was conducted, resulting in 29 studies that met the selection criteria. The results show that the phase with more evidence of incorporation of accessibility activities in software development is the testing phase, when testers are used to verify accessibility within web pages, followed by the construction phase, when methodologies that include accessibility within the software development process are used; in the design phase it is common to incorporate artifacts that guide the development of accessible software and, finally, in the requirements phase it is common to use the requirements description to obtain and document accessibility requirements. <![CDATA[IDENTIFICATION OF A UNIVERSITY COMMUNITY ON FACEBOOK FOR THE DISSEMINATION OF SCIENCE AND CULTURE]]> http://www.scielo.org.co/scielo.php?script=sci_arttext&pid=S1692-33242024000100005&lng=en&nrm=iso&tlng=en Resumen El análisis de red social es un método que permite identificar y examinar estructuras de diversos tipos de datos, objetos o grupos de usuarios, así como las interacciones creadas por una comunidad y las relaciones que existen entre ellas. Con el objetivo de caracterizar la comunidad virtual de una institución de educación superior, se aplicaron los algoritmos Fruchterman-Reingold, Yifan Hu y Noverlap, por medio de la herramienta Gephi, para el análisis y modelado de 30 fan pages de Facebook dedicadas a la promoción de la cultura y divulgación de la ciencia. Los resultados presentan una relación con la dirección y cantidad de aristas por cada uno de los 30 nodos para cada algoritmo aplicado. El enfoque del análisis proporcionó información acerca de la dinámica de la comunidad virtual universitaria, permitiendo una comprensión visual de cómo se conectan y comunican los miembros dentro de la red social Facebook.<hr/>Abstract Social network analysis is a method that allows the identification and examination of structures of various types of data, objects, or user groups, as well as the interactions created by a community and the relationships that exist between them. To characterize the virtual community of a higher education institution, the Fruchterman-Reingold, Yifan Hu, and Noverlap algorithms were applied using the Gephi tool for the analysis and modeling of 30 Facebook fan pages dedicated to the promotion of culture and the dissemination of science. The results show a relationship with the direction and number of edges for each of the 30 nodes for each algorithm applied. The focus of the analysis provided information about the dynamics of the virtual university community, allowing a visual understanding of how members connect and communicate within the Facebook social network. <![CDATA[TOOL FOR ESTIMATING USER STORIES ASSOCIATED WITH NON-FUNCTIONAL REQUIREMENTS]]> http://www.scielo.org.co/scielo.php?script=sci_arttext&pid=S1692-33242024000100006&lng=en&nrm=iso&tlng=en Resumen Uno de los primeros pasos para el desarrollo de cualquier producto de software es la definición de sus requisitos funcionales y no funcionales, estos últimos también denominados requisitos de calidad. En este proceso participan varias partes interesadas. Sin embargo, estimar el esfuerzo necesario para implantar estos requisitos, y en particular los de calidad, es una tarea compleja. Para superar este reto, presentamos Story Points Predictor (SPP), una herramienta para predecir el esfuerzo necesario en la implementación de los requisitos de calidad mediante técnicas de inteligencia artificial. Basándose en datos históricos, SPP estima el tamaño de los requisitos y los clasifica en tres grupos: pequeños, medianos y grandes. Los equipos de desarrollo pueden utilizar SPP para complementar su proceso de estimación del esfuerzo de los requisitos. Los resultados experimentales muestran que SPP tiene una precisión del 72 %.<hr/>Abstract One of the initial steps in developing any software product is defining its functional and non-functional requirements, the latter also known as quality requirements. Several stakeholders are involved in this process. However, estimating the effort needed to implement these requirements, particularly the quality ones, is a complex task. To overcome this challenge, we present Story Points Predictor (SPP), a tool for predicting the effort required to implement quality requirements using artificial intelligence techniques. Based on historical data, SPP estimates the size of the requirements and classifies them into three groups: small, medium, and large. Development teams can use SPP to complement their effort estimation process for requirements. Experimental results show that SPP has a 72% accuracy. <![CDATA[PROPOSAL OF A TIME SERIES-BASED MODEL FOR THE CHARACTERIZATION AND PREDICTION OF DROPOUT RATES AT THE NATIONAL OPEN AND DISTANCE UNIVERSITY]]> http://www.scielo.org.co/scielo.php?script=sci_arttext&pid=S1692-33242024000100007&lng=en&nrm=iso&tlng=en ABSTRACT Dropout rates are a key indicator of educational quality, making it imperative for educational institutions to design strategies to reduce them, thereby contributing to improved student retention and the achievement of academic objectives. While dropout research has primarily focused on machine learning methods applied to in-person education datasets, this article introduces a novel approach based on time series models for dropout rates analysis at the National Open and Distance University (UNAD). Methodologically, an adaptation of the CRISP-DM methodology was undertaken in four phases, namely: F1. Business and data understanding, F2. Data preparation, F3. Model building and evaluation, and F4. Model deployment. In terms of results, an open dataset on UNAD dropout, obtained from the SPADIES system between 1999 and 2021, was employed. Using Python libraries statsmodels and pandas, an ARIMA model was implemented, displaying optimal error metrics. This ARIMA model was utilized to forecast future dropout rates at UNAD, projecting a future dropout rate fluctuating around 23%. In conclusion, the ARIMA model developed for UNAD stands as an innovative and essential tool in the educational realm, capable of accurately anticipating dropout rates for upcoming semesters. This provides UNAD with a unique advantage in strategic decision-making.<hr/>RESUMEN La tasa de deserción es un indicador clave de la calidad educativa, por lo que es imperativo que las instituciones educativas diseñen estrategias para reducirla y así aumentar la retención estudiantil y alcanzar los logros académicos. Mientras que la investigación sobre la deserción se ha concentrado principalmente en métodos de aprendizaje automático aplicados a conjuntos de datos sobre educación presencial, este artículo introduce un enfoque novedoso al utilizar modelos de series temporales para analizar la tasa de deserción de la Universidad Nacional Abierta y a Distancia (UNAD). En cuanto a la metodología, se adaptó el proceso CRISP-DM en cuatro fases, a saber: F1. Comprensión del negocio y de los datos, F2. Preparación de los datos. F3. Modelado y evaluación y F4. Despliegue del modelo. Respecto a los resultados, se empleó un conjunto de datos abiertos sobre la deserción en la UNAD que abarca desde 1999 hasta 2021, el cual se obtuvo del sistema SPADIES. Mediante el uso de las bibliotecas de Python statsmodels y pandas, se implementó un modelo ARIMA, el cual arrojó excelentes resultados en las medidas de error. Este modelo ARIMA se utilizó para predecir la tasa de deserción futura de la UNAD, la cual se proyecta que oscilará alrededor del 23 %. En conclusión, el modelo ARIMA desarrollado para la UNAD se destaca como una herramienta innovadora y fundamental en el ámbito educativo, capaz de predecir de forma precisa la tasa de deserción de semestres futuros, lo cual le otorga a la UNAD una ventaja única en la toma decisiones estratégicas.