Scielo RSS <![CDATA[RISTI - Revista Ibérica de Sistemas e Tecnologias de Informação]]> http://scielo.pt/rss.php?pid=1646-989520230001&lang=pt vol. num. 49 lang. pt <![CDATA[SciELO Logo]]> http://scielo.pt/img/en/fbpelogp.gif http://scielo.pt <![CDATA[New challenges in Information and Communication Technologies]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100001&lng=pt&nrm=iso&tlng=pt <![CDATA[Gamification for addressing the challenges of teaching international Software Engineering standards in higher education institutions]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100005&lng=pt&nrm=iso&tlng=pt Resumen El desarrollo profesional de los ingenieros de software es uno de los intereses de la industria, ya que las habilidades profesionales contribuyen al desarrollo de software de calidad. Por lo tanto, los procesos de enseñanza aprendizaje requieren transformaciones importantes que fortalezcan la educación en estándares de Ingeniería de Software, ya que estos estándares son utilizados para el desarrollo de software de calidad. Con su implementación se logra resolver los retos de la industria del software en cuanto a la producción de software de calidad que satisfaga sus necesidades. El desarrollo de estas habilidades se hace más crítico en muy pequeñas organizaciones, siendo la principal fuente de trabajo de recién egresados. En este contexto, la gamificación está siendo utilizada como estrategia útil en la academia para aumentar las capacidades de los futuros profesionales con altos índices de éxito. Tomando como base los desafíos para la enseñanza de estándares en instituciones de educación superior obtenido de una muestra de 36 profesores en este artículo se sugiere un conjunto de elementos de gamificación para diseñar estrategias que contribuyan a la educación en estándares de Ingeniería de Software, relacionados con los desafíos identificados.<hr/>Abstract The professional development of software engineers is one of the industry's interests since professional skills contribute to developing quality software. Therefore, the teaching-learning processes require significant transformations that strengthen education in Software Engineering standards used to create quality software. Its implementation helps solve the software industry's challenges regarding the quality of its processes. The development of these skills becomes more critical in very small entities. In this context, gamification is being used as a helpful strategy in academia to increase the skills of future professionals with high success rates. Based on the challenges that arise in the process of teaching standards in higher education institutions from a sample of 36 teachers, this article suggests a set of gamification elements to design strategies that contribute to education in Software Engineering standards, specifically related to the identified challenges. <![CDATA[Video game design for personal skills analysis]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100022&lng=pt&nrm=iso&tlng=pt Resumen El estudio de las habilidades personales ha ido tomando mayor relevancia en los últimos años en todos los ámbitos; probablemente debido a que son fundamentales para el trabajo en equipo, además de ser clave para el éxito en la vida profesional a nivel individual. Sin embargo, a diferencia de las habilidades técnicas, determinar si una persona posee o domina habilidades personales no es una tarea trivial. Actualmente los mecanismos más comunes de valoración son la entrevista y los instrumentos psicométricos, a los que se ha unido como alternativa el uso de videojuegos. Los videojuegos presentan la ventaja de abstraer al participante, haciéndolo olvidar que está siendo observado, generando un ambiente en el que se espera un desempeño más natural. En este contexto, existen diversas propuestas que se han tomado como base para generar un proceso para analizar habilidades personales mediante videojuegos.<hr/>Abstract In recent years, the study of personal skills has become relevant in all domains; probably because they are essential for teamwork, as well as key for individual success in professional life. However, unlike technical skills, determining whether a person dominates certain soft skill is not a trivial task. Currently the most common mechanisms to assess them are the interview and psychometric instruments, to them the use of video games has been added as an alternative. Videogames present the advantage of abstracting the participants, making them to forget they are being observed, producing an environment in which a more natural performance is expected. In this context, various existing proposals have been used to generate a process for analyzing soft skills selecting video games. <![CDATA[Automating ISO/IEC 29110 processes through DevOps Adoption]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100037&lng=pt&nrm=iso&tlng=pt Resumen Uno de los principales problemas a los que se enfrentan los centros de desarrollo de software certificados en el estándar ISO/IEC 29110 es como automatizar sus procesos para incrementar su productividad. DevOps aparece como una solución para este problema a través de su cultura, prácticas y herramientas con el objetivo de ayudar a las empresas a desarrollar productos y servicios de software a través de la automatización de tareas lo que permite mejorar el tiempo de entrega incrementando la competitividad de las empresas de software. El objetivo de este artículo es demostrar cómo la adopción de DevOps permite la automatización de los procesos del estándar ISO/IEC 29110 del perfil básico a través de un caso de estudio en el Centro de Desarrollo de Software del Instituto Tecnológico Superior de Nochistlán. Los resultados obtenidos muestran el 78% de los productos de trabajo de los procesos del estándar automatizados incrementando la productividad del equipo y reduciendo el tiempo de entrega del software.<hr/>Abstract One of the main problems software development centers certified in the ISO/IEC 20110 standard face is how to automate their processes to increase their productivity. DevOps appears as a solution to this issue through its culture, practices and tools with the aim of helping companies to develop software products and services through the automation of tasks, improving software delivery time and increasing the competitiveness of software development companies. The objective of this article is to demonstrate how the adoption of DevOps allows the automation of the processes of the ISO/IEC 29110 standard of the basic profile through a case study at the Software Development Center of the Higher Technological Institute of Nochistlán. The results obtained show 78% of the work products of the standard processes automated, increasing team productivity and reducing software delivery time. <![CDATA[Improvement proposal for the implementation of ISO/IEC 29110 standard through mathematical logic]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100052&lng=pt&nrm=iso&tlng=pt Resumen El estándar ISO/IEC 29110 está específicamente orientado a muy pequeñas organizaciones ya que se adapta al contexto y necesidades de este tipo de organizaciones. Tras haber analizado las estructuras de los procesos: actividades, roles, tareas, y productos de trabajo considerados dentro del estándar ISO/IEC 29110 en su perfil básico se identificó falta de información acerca de los estados de los productos de trabajo que son necesarios para desarrollar las tareas, lo que dificulta su correcta implementación. Para ayudar a resolver esta problemática este artículo presenta propuestas de tautologías de lógica matemática. Como resultado se presentan propuestas de mejora en el establecimiento de estados a productos de trabajo que ayudarán en el control de la versión de los productos de trabajo y su documentación asociada.<hr/>Abstract The ISO/IEC 29110 standard is aimed explicitly at very small organizations as it adapts to the context and needs of this type of organization. After analyzing the structures of processes: activities, roles, tasks, and work products considered within the profile basic of the ISO/IEC 29110 standard, a lack of information was identified regarding the states of the work products that are necessary to carry out the tasks, which makes their proper implementation difficult. Therefore, this article presents proposals for tautologies of mathematical logic. As a result, proposals are presented to improve the establishment of states for work products that will aid in controlling the version of the work products and their associated documentation. <![CDATA[Mobile application for monitoring dry matter intake in ruminants using Bluetooth technology]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100067&lng=pt&nrm=iso&tlng=pt Resumen La automatización de sistemas inteligentes controlados remotamente para recolectar, analizar y procesar datos es una de las aplicaciones más comunes en diferentes campos de aplicación. Usualmente, para analizar la dieta del animal se requiere mucho tiempo y capital humano; los experimentos consisten en colocar al animal en una jaula para recolectar datos de consumo. En este sentido, incorporar tecnología para analizar el consumo de materia seca en rumiantes es fundamental para incrementar el desempeño productivo del animal. Este documento se enfoca en desarrollar un sistema de monitoreo para la recolección de datos, tales como la temperatura y la humedad, así como el peso de los alimentos a lo largo del experimento nutricional, utilizando una aplicación móvil desarrollada en Android Studio que envía y recibe la información vía tecnología Bluetooth a un dispositivo electrónico basado en el microcontrolador Arduino Nano.<hr/>Abstract Automating remotely controlled intelligent systems to collect, analyze, and process data is one of the most common applications in different fields of application. Usually, analyzing the animal's diet requires much time and human capital; the experiments consist of placing the animal in a cage to collect consumption data. In this sense, incorporating technology to analyze the consumption of dry matter in ruminants is essential to increase the productive performance of the animal. This document focuses on developing a monitoring system for data collection, such as temperature and humidity, as well as the weight of food throughout the nutritional experiment, using a mobile application developed in Android Studio that sends and receives the information via Bluetooth technology to an electronic device based on the Arduino Nano microcontroller. <![CDATA[Determination of the best license plate detection algorithm in controlled and uncontrolled environments.]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100083&lng=pt&nrm=iso&tlng=pt Resumen La seguridad es una prioridad en la gestión y parte de esto es el control y monitoreo para detectar situaciones que agredan el bien público o privado. En este sentido el reconocimiento de matrículas de auto se suma a estos sistemas de monitoreo y control. Este trabajo de investigación aplicó una serie de algoritmos de inteligencia artificial para automatizar dicha detección. En este sentido se utilizó funciones de procesamiento de imágenes con el framework OpenCV considerando que las fuentes de información pudieron tener distitnos escenarios, siendo que el ambiente de detección es abierto y expuesto a las condiciones meteorológicas de la zona. Las tomas de fotos se realizaron en un ambiente ubicado al sur peruano, cuyas condiciones fueron de lluvia, día soleado, día que cayó el granizo. La base de datos de las imágenes entonces se dividió en dos categorías; ambientes controlados donde se consideró una misma distancia, un solo ángulo, pero no necesariamente un mismo clima; y los ambientes no controlados con diferentes ángulos, diferentes distancias y climas. Al procesamiento de imágenes también se utilizó la transformación morfológica, suavizado gaussiano y umbral gaussiano. Con las imágenes segmentadas y extraídos los dígitos de la matrícula; se comparó 3 algoritmos K-NN, SVM y Tesseract. en cada algoritmo se utilizó sus hiperparámetros para el respectivo reconocimiento de caracteres en las imágenes, se obtuvo los siguientes resultados con imágenes tomadas con distintos ángulos y en distintas luminosidades (ambiente no controlado) donde el mejor Overall accuracy con 86 % y el segundo grupo fueron imágenes tomadas con un ángulo similar y distancias similares (ambiente controlado), obtuvo un Overall accuracy de 95.5 %.<hr/>Abstract Security is a priority in management and part of this is control and monitoring to detect situations that attack the public or private good. In this sense, the recognition of car license plates is added to these monitoring and control systems. This research work applied a series of artificial intelligence algorithms to automate such detection. In this sense, image processing functions were used with the OpenCV framework, considering that the information sources could have different scenarios, since the detection environment is open and exposed to the weather conditions of the area. The photos were taken in an environment located in southern Peru, whose conditions were rainy, sunny, and the day the hail fell. The image database was then divided into two categories; controlled environments where the same distance, a single angle, but not necessarily the same climate was considered; and uncontrolled environments with different angles, different distances and climates. Morphological transformation, Gaussian smoothing and Gaussian thresholding were also used for image processing. With the segmented images and the number plate digits extracted; 3 algorithms K-NN, SVM and Tesseract were compared. In each algorithm, its hyperparameters were used for the respective recognition of characters in the images, the following results were obtained with images taken with different angles and in different luminosities (uncontrolled environment) where the best Overall accuracy with 86% and the second group were images taken with a similar angle and similar distances (controlled environment), obtained an Overall accuracy of 95.5%. <![CDATA[Automated analysis of SEM micrographs using deep learning]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100100&lng=pt&nrm=iso&tlng=pt Resumen El microscopio electrónico de barrido (SEM) es comúnmente utilizado para analizar nanopartículas de distintos materiales y mejorar métodos de fabricación, sistemas de purificación, mejoras en la industria médica, entre otras. En este artículo, se presenta un mapeo sistemático de la literatura referente al uso de técnicas de aprendizaje profundo (AP) para la detección y clasificación de nanopartículas contenidas en micrografías SEM. Los resultados reflejan que las redes neuronales convolucionales (CNN) son las técnicas más utilizadas para analizar micrografías, obteniendo una alta precisión en los proyectos realizados en las publicaciones revisadas. Como prueba de concepto, se presentan ejemplos del uso de los enfoques más comunes en micrografías SEM de CaCO3, incluyendo el uso de herramientas como OpenAI. Los resultados revelan ventajas y retos que se presentan al utilizar técnicas de aprendizaje profundo en el análisis de micrografías SEM.<hr/>Abstract The scanning electron microscope (SEM) is commonly used to analyze nanoparticles of different materials and improve manufacturing methods, purification systems, and improve the medical industry, among others. In this article, a systematic mapping of the literature regarding the use of deep learning (AP) techniques for the detection and classification of nanoparticles contained in SEM micrographs is presented. The results reflect those variants of convolutional neural networks (CNN) that are the most widely used techniques to analyze micrographs, obtaining high precision in the projects carried out in the reviewed publications. As proof of concept, examples of the use of the most common approaches in SEM micrographs of CaCO3, including tools like OpenAI, are presented. The results reveal advantages and challenges that arise when using deep learning techniques in the analysis of SEM micrographs. <![CDATA[Characteristics of Databases for Cloud Computing: A Secondary Study]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100115&lng=pt&nrm=iso&tlng=pt Resumen El crecimiento exponencial de las Bases de Datos a principios del presente siglo generó la necesidad de mecanismos innovadores para almacenamiento y gestión de información. Uno de estos paradigmas emergentes es el cómputo en la nube, un modelo que brinda acceso a un conjunto de recursos informáticos a través de la red de una manera sencilla. El presente estudio tiene como objetivo elaborar un estado del arte sobre aspectos vinculados con los esquemas de persistencia utilizados para el cómputo en la nube. Para ello se especificaron 5 preguntas de investigación que sirvieron para guiar una Revisión Sistemática de Literatura con la que se analizaron 72 Estudios Primarios. Entre los hallazgos se encontraron ocho técnicas específicas para el modelado de Bases de Datos, siendo la más citada el cifrado de datos; así mismo, se pudo identificar que Amazon es el proveedor corporativo más popular para dicho tipo de sistemas de gestión.<hr/>Abstract The exponential growth of Databases at the beginning of this century generated the need for innovative mechanisms for information storage and management. One of these emerging paradigms is cloud computing, a model that provides access to a group of computing resources through the network in a simple way. The aim of this study is to elaborate a state of the art on aspects related to Databases used for cloud computing. For this, 5 research questions were specified that served to guide a systematic review of the literature with which 72 Primary Studies were analyzed; among the findings, eight specific techniques for Database modeling were found, the most cited being data encryption; likewise, it was possible to identify that Amazon is the most popular corporate provider for this type of management systems. <![CDATA[Trends and Challenges of HPC in the Cloud]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100131&lng=pt&nrm=iso&tlng=pt Resumen En los últimos años, la demanda de aplicaciones que requieren Computación de Alto Rendimiento (HPC) ha aumentado considerablemente. Aunque tradicionalmente se ejecutan en infraestructuras privadas, cada vez es más común usar la nube como alternativa, gracias a su flexibilidad. Sin embargo, la computación en la nube también enfrenta desafíos como la gestión de recursos y virtualización, lo que afecta su desempeño. Para abordar estos desafíos, en este artículo se revisan trabajos relacionados con HPC en la nube y se analizan las principales tendencias y desafíos. Finalmente, presentamos una categorización de las tendencias identificadas.<hr/>Abstract In recent years, the demand for applications that require High-Performance Computing (HPC) has grown rapidly. These types of applications are traditionally executed on a company's or research center's private infrastructure; however, a different approach can also be used: the cloud. It is important to take advantage of the flexibility that decentralized computing power provides. However, like any other approach, cloud computing faces challenges such as resource management, virtualization, performance issues, etc. In this article, we review related works on HPC in the cloud to identify the main trends and challenges in this area. Finally, we propose a categorization of the identified main trends. <![CDATA[Smart Contract for Requirements Management in Software Development]]> http://scielo.pt/scielo.php?script=sci_arttext&pid=S1646-98952023000100147&lng=pt&nrm=iso&tlng=pt Resumen Uno de los procesos esenciales en la industria de software, es la negociación de los términos de contratación para la construcción de un software. El contrato de construcción de software es un contrato entre un cliente y un desarrollador, donde el desarrollador crea y entrega una pieza especifica y personalizada de software al cliente. El contrato de construcción de software es un acuerdo legal vinculante que contiene roles y responsabilidades, tiempos de entrega y pagos, criterios de aceptación, eventualidades en casos de fallas o retrasos y procedimientos para ajustes. En adición, en el contrato son especificados los requerimientos para la construcción del software. Este artículo propone el diseño y construcción de un contrato inteligente desplegado en una red blockchain para la gestión de los requerimientos dentro de una metodología ágil de construcción de software. Incluso el contrato inteligente propuesto puede ser usado para los pagos contractuales de cada requerimiento aceptado por el cliente.<hr/>Abstract One of the essential processes in the software industry is the negotiation of contract terms for the development of software. The software development contract is a contract between a customer and a developer, whereby the developer creates and delivers a specific, custom piece of software to the customer. The software development contract is a binding legal agreement that contains roles and responsibilities, delivery and payment times, acceptance criteria, eventualities in cases of failure or delay, and procedures for adjustments. In addition, the contract specifies the requirements for software development. This article proposes the design and implementation of a smart contract deployed in a blockchain network for requirement management within an agile software development methodology. Even the proposed smart contract is used for the contractual payments of each requirement accepted by the client.