Scielo RSS <![CDATA[Revista Cubana de Ciencias Informáticas]]> http://scielo.sld.cu/rss.php?pid=2227-189920220002&lang=pt vol. 16 num. 2 lang. pt <![CDATA[SciELO Logo]]> http://scielo.sld.cu/img/en/fbpelogp.gif http://scielo.sld.cu <![CDATA[Walking speed estimation based on the use of a single inertial measurement unit and an artificial neural network]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200001&lng=pt&nrm=iso&tlng=pt ABSTRACT This work addresses the estimation of the walking speed by using an artificial neural network (ANN) and a single Inertial Measurement Unit (IMU) placed in the lumbar region, at L3 level. In this context, the main contribution resides in the new features proposed for accomplishing the task, which confer simplicity and effectiveness to the procedure. The ANN application was validated through a database comprising IMU signals recorded from the execution of gait tests on 23 subjects with ages between 20 to 50 years old. In this work, eleven different architectures of multilayer feed-forward ANN were studied in order to choose the most effective one. Cross validation procedure was implemented to assess the quality of the estimation through the computation of the root mean square error (RMSE), the absolute error and the relative error. The most effective model (5-5-1) exhibited a RMSE equal to 0.08 m/s, which is in the range of the results presented in similar studies in this field.<hr/>RESUMEN Este trabajo tiene como objetivo la estimación de la velocidad de la marcha usando una red neuronal artificial (ANN) y un único sensor inercial (IMU) localizado en la región lumbar, en el nivel L3. En este contexto, la principal contribución radica en la propuesta de nuevos rasgos característicos que le confieren más simplicidad y efectividad al procedimiento. La aplicación de ANN fue validada usando una base de datos formadas por señales registradas con un IMU durante la marcha de 23 sujetos con edades entre 20 y 50 años. En este trabajo, fueron estudiadas 11 arquitecturas diferentes de redes neuronales multicapas para seleccionar la más efectiva. La validación cruzada fue implementada para evaluar la calidad de la estimación usando los parámetros error cuadrático medio (RMSE), error absoluto y error relativo. El modelo más efectivo (5-5-1) mostró un RMSE igual a 0.08 m/s, el cual está en el rango de los resultados presentados en estudios similares en este campo. <![CDATA[Solving a Vehicle Routing Problem with Fuzzy Constraints]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200015&lng=pt&nrm=iso&tlng=pt RESUMEN El objeto de estudio de la presente investigación es un problema de rutas de vehículos que considera la capacidad de los mismos como un conjunto difuso. En la modelación matemática, planteada desde el enfoque de la teoría de grafos, se conjugan ecuaciones del modelo clásico-determinista con una ecuación que incluye un número difuso. Para resolver el problema se propone un método que combina la técnica heurística del algoritmo de los ahorros o de Clarke &amp; Wright, con el enfoque paramétrico del criterio de Verdegay que soluciona problemas de programación lineal difusa. Tras implementarse como una función en el RStudio, se resuelve un problema real para demostrar que el método obtiene soluciones adecuadas.<hr/>ABSTRACT The goal of this paper is solving a vehicle routing problem with fuzzy constraints, particularly the capacity constraints has been represented with fuzzy number. The mathematical model was made as a network flows model that combines classic equations with fuzzy parameters. It is proposed a method based in Verdegay’s approach for solving fuzzy linear programming problems and Clarke and Wright Savings Algorithm, a classical heuristics. The proposed method is implemented as a function in RStudio software and a real problem is solved with it to show that the obtained method provides a good solution. <![CDATA[Computer tool for water analysis of daily and extreme rainfall in river basins]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200031&lng=pt&nrm=iso&tlng=pt RESUMEN La precipitación es una parte importante del ciclo hidrológico, favorece la vida en el planeta y constituye la principal entrada de agua a una cuenca; por eso, su estudio es esencial para cuantificar los recursos hídricos, la previsión de avenidas, el diseño de obras hidráulicas, estudios de erosión, entre otros. Para su estudio existen disímiles herramientas, cada una con funciones muy específicas, que dificultan realizar un análisis integral, pues obligan al investigador a dominar un sinnúmero de técnicas e instrumentos para llegar a conclusiones, generalmente parciales. Adicionalmente, dado el gran volumen de datos generado por la cantidad real de pluviómetros existentes en cualquier cuenca hídrica y la frecuencia de las observaciones, típicamente solo se escogen los más representativos, y de ellos, promedios con frecuencia semanal, mensual o anual. Por ello el objetivo de la presente investigación fue el diseño y desarrollo de una herramienta informática para el análisis integral de las precipitaciones diarias y extremas en cuencas hidrográficas, con la capacidad de computar la totalidad real de los datos y complementar entre sí, los resultados de las distintas técnicas y estrategias utilizadas en la actualidad. Dicha herramienta tomó la forma de una aplicación web, para permitir a los investigadores su fácil utilización y acceso sin necesidad de instalaciones adicionales. Además, se nutre de las informaciones oficiales del Instituto de Meteorología y su red de pluviómetros. Se prevé su utilización con fines tanto académicos como prácticos por las diferentes entidades que necesitan del análisis descriptivo y predictivo de las precipitaciones.<hr/>ABSTRACT Precipitation is an important part of the hydrological cycle, favors life on the planet and constitutes the main entry of water into a basin; therefore, its study is essential to quantify water resources, flood forecasting, design of hydraulic works, erosion studies, among others. For the study of it there are dissimilar tools, each one with very specific functions, which make it difficult to carry out a comprehensive analysis, since they force the researcher to master a number of techniques and instruments to reach conclusions, generally partial ones. Additionally, given the large volume of data generated by the actual number of existing pluviometers in any water basin and the high frequency of observations, typically only the most representative are chosen, and from them, averages with weekly, monthly or annual frequency. For this reason, the objective of this research was the design and development of a computer tool for the comprehensive analysis of daily and extreme rainfall in hydrographic basins, with the ability to compute all the real data and complement each other, the results of the different techniques and strategies used today. This tool took the form of a web application, to allow researchers easy use and access without the need for additional installations. In addition, it is fed by official information from the National Meteorology Center and its network of rain gauges. It is expected to be used for both academic and practical purposes by the different entities that need descriptive and predictive analysis of rainfall. <![CDATA[Design and implementation of a cryptographic framework]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200051&lng=pt&nrm=iso&tlng=pt RESUMEN La División de Sistemas y Servicios Criptográficos de la empresa DATYS tiene entre sus objetivos el desarrollo de aplicaciones y componentes de seguridad para la propia empresa y para terceros. Con el fin de cumplir este objetivo cuenta con implementaciones de esquemas criptográficos propios y otros que son estándares internacionales, implementados tanto en software como en hardware. Para poder dar mantenimiento eficientemente a las funcionalidades implementadas, facilitar su despliegue, actualización y reutilización, fue desarrollado un framework que exporta funcionalidades criptográficas a través de una interfaz de aplicación única a la que se puede acceder desde varios lenguajes de programación. Los usuarios consumen los algoritmos disponibles en proveedores criptográficos que son cargados por el framework como complementos o plugins. El diseño permitió aislar los algoritmos de las aplicaciones y brindar un único punto de acceso a todos los esquemas criptográficos. También puede servir como referente a otros trabajos en los que se requiera una arquitectura capaz de gestionar dinámicamente un grupo de algoritmos.<hr/>ABSTRACT The Cryptographic Systems and Services Division of the DATYS company has among its objectives the development of applications and security components for the company itself and for third parties. In order to meet this objective, it has implementations of its own cryptographic schemes and others that are international standards, implemented in both software and hardware. In order to efficiently maintain the implemented functionalities, facilitate their deployment, updating and reuse, a framework was developed that exports cryptographic functionalities through a single application interface that can be accessed from various programming languages. Users consume the algorithms available in cryptographic providers that are loaded by the framework as add-ons or plugins. The design allowed to isolate the algorithms of the applications and to provide a single point of access to all the cryptographic schemes. It can also serve as a reference for other jobs that require an architecture capable of dynamically managing a group of algorithms. <![CDATA[Implementation patterns to extend the search-based reduction Model of MTest.search]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200068&lng=pt&nrm=iso&tlng=pt ABSTRACT The process of generating test cases contributes to the quality of software products, detecting as many errors as possible. The design stage of test cases from test values is a challenging task, so its automation is necessary to increase the effectiveness to detect errors and reduce cost. Metaheuristic algorithms such as genetic algorithms, simulated annealing, and tabu search have been successfully applied to solve the combinatorial explosion of automatic test suite generation. The MTest.search model for automatic unit test generation has domain model extension, test, and execution mechanisms defined. In this work, implementation patterns are presented to extend the search-based reduction model. This proposal allows incorporating new configurations of the optimization problem to generate combinations of test values obtaining reduced test suites. To validate the proposed solution, case studies were defined based on the analysis of extensions implemented following the patterns defined in this work and the resulting test cases. In the implemented extensions, the significance criterion of the test values and of the paths/scenarios was introduced to obtain reduced test suites with greater potential to detect errors.<hr/>RESUMEN El proceso de generación de casos de pruebas contribuye a la calidad de los productos de software, detectando la mayor cantidad de errores posibles. La etapa de diseño de los casos de pruebas a partir de valores de prueba, constituye una tarea desafiante, por lo que es necesaria su automatización para elevar la efectividad para detectar errores y disminuir el costo. Algoritmos metaheurísticos como algoritmos genéticos, recocido simulado y búsqueda tabú se han aplicado con éxito para resolver la explosión combinatoria de la generación automática de la suite de prueba. El modelo MTest.search para la generación automática de pruebas unitarias tiene definidos mecanismos de extensión del modelo de dominio, de prueba y de ejecución. En este trabajo se presentan patrones de implementación para extender el modelo de reducción basado en búsquedas. Esta propuesta permite incorporar nuevas configuraciones del problema de optimización para generar combinaciones de valores de pruebas obteniendo suites de pruebas reducidas. Para validar la solución propuesta se definieron casos de estudios a partir del análisis de extensiones implementadas siguiendo los patrones definidos en este trabajo y de los casos de pruebas resultantes. En las extensiones implementadas se introdujo el criterio de significación de los valores de prueba y de los caminos/escenarios para obtener suites de pruebas reducidas con mayor potencialidad para detectar errores. <![CDATA[Impact of the significance of input values and paths on the effectiveness of the automatically generated test suite]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200085&lng=pt&nrm=iso&tlng=pt ABSTRACT Software tests are fundamental in the reliability and quality of systems, contributing to their positioning in the market. Generating test data is a critical task, as extensive testing is costly in time and effort. An adequate design of the test cases, which contemplates a selection of adequate values, can detect a high number of defects. There are proposals for the automatic generation of test suites using metaheuristic algorithms with the fundamental objective of reducing the time associated with this process, facilitating its execution by developers and testers, and achieving high levels of coverage. However, there is no emphasis on effectiveness in detecting errors. This work contemplates an analysis of the impact of the significance in the input values ​​and in the paths or scenarios for the detection of suit errors generated using metaheuristic algorithms. Proposals for the automatic generation of test suits by different authors are addressed and experiments based on two case studies are carried out. The results are compared between including or not in this algorithm the significance in the input values ​​and in the paths or scenarios.<hr/>RESUMEN Las pruebas de software son fundamentales en la confiabilidad y calidad de los sistemas, contribuyendo a su posicionamiento en el mercado. La generación de datos de prueba es una tarea decisiva, puesto que la realización de una prueba exhaustiva es costosa en tiempo y esfuerzo. Un diseño adecuado de los casos de prueba, que contemple una selección de valores adecuados, puede detectar un elevado número de defectos. Existen propuestas para la generación automática de suits de pruebas utilizando algoritmos metaheurísticos con el objetivo fundamental de disminuir los tiempos asociados a este proceso, facilitar su ejecución por parte de desarrolladores y probadores y lograr altos niveles de cobertura. Sin embargo, no se hace énfasis en la efectividad para detectar errores. Este trabajo contempla un análisis del impacto de la significación en los valores de entrada y en los caminos o escenarios para la detección de errores de suit generadas utilizando algoritmos metaheurísticos. Se abordan propuestas para la generación automática de suits de pruebas por diferentes autores y se realizan experimentos basados en dos casos de estudio. Se comparan los resultados entre incluir o no en este algoritmo la significación en los valores de entrada y en los caminos o escenarios. <![CDATA[Good practices for software test automation. Case study in an electronic store]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200101&lng=pt&nrm=iso&tlng=pt RESUMEN Las pruebas representan una actividad fundamental en el ciclo de vida del desarrollo de software y, en muchos casos, suponen prácticamente el único medio empleado en los proyectos para la verificación y validación del software. A pesar de ello, tradicionalmente, esta etapa se ha llevado a cabo al final del proceso, cuando el producto está terminado y está a punto de ser liberado; lo cual trae consigo demoras en las entregas e insatisfacciones en los clientes entre otros aspectos negativos. En el presente trabajo se utiliza un caso de estudio para mostrar la obtención de los Casos de prueba partir de Historias de Usuario, utilizando técnicas de caja negra. Se realiza además un estudio de las distintas herramientas de automatización de prueba y se muestra la utilización de ellas en la implementación de las pruebas diseñadas.<hr/>ABSTRACT Testing represents a fundamental activity in the software development life cycle and, in many cases, it is practically the only means used in projects for software verification and validation. Despite this, traditionally, this stage has been carried out at the end of the process, when the product is finished and is about to be released; which brings with it delays in deliveries and customer dissatisfaction among other negative aspects. In the present work, a case study is used to show the obtaining of Test Cases from User Stories, using black box techniques. A study of the different test automation tools is also carried out and the use of them in the implementation of the designed tests is shown. <![CDATA[Management Guide for Usability Tests in Mobile Applications of the Electronic Government Center]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200118&lng=pt&nrm=iso&tlng=pt ABSTRACT In recent years, mobile applications have penetrated the software industry markets and it has become important for developers and testers to know specific testing techniques and methods for their development. Several researches propose how to evaluate the usability of mobile applications. However, no standards or models have yet been defined in a consistent manner to outline a practical guide on the attributes, metrics and rules needed to adequately measure the usability of mobile applications. This research proposes a guide for the management of usability testing in mobile applications, which allows reducing the number of non-conformities during the testing process. For this purpose, activities related to usability management are conceived from the first disciplines of software development and a checklist containing the guidelines to be measured in order to obtain a correct evaluation of usability. The validation of the results is achieved through the use of scientific methods that corroborate the hypothesis and converge in a high customer satisfaction with the proposal.<hr/>RESUMEN En los últimos años, las aplicaciones móviles han penetrado en los mercados de la industria del software y se ha vuelto importante para desarrolladores y evaluadores conocer técnicas y métodos de prueba específicos para su desarrollo. Diversas investigaciones proponen como evaluar la usabilidad de las aplicaciones móviles. Sin embargo, no están definidos aún, estándares ni modelos de manera consistente que perfilen una guía práctica sobre los atributos, métricas y reglas necesarias para medir de forma adecuada la usabilidad de las aplicaciones móviles. La presente investigación propone una guía para la gestión de pruebas de usabilidad en aplicaciones móviles, que permita disminuir el número de No Conformidades durante el proceso de pruebas. Para ello se conciben actividades relacionadas con la gestión de la usabilidad desde las primeras disciplinas de desarrollo de software y una lista de chequeo que contiene las pautas a medir para obtener una correcta evaluación de la misma. La validación de los resultados se logra, mediante el empleo de métodos científicos que corroboran la hipótesis y convergen en una alta satisfacción de los clientes con la propuesta. <![CDATA[Assessing the impact of an MDA-based approach to support the architecture design]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200137&lng=pt&nrm=iso&tlng=pt ABSTRACT The architecture design phase is crucial to the success of a software project. In this phase, the high-level components that will compose the system, as well as theirs relationships, are defined. Usually, the architecture design is intuitively developed by the architects. Therefore, the quality of the resulting design will depend on the architects’ skills. However, it is common to find errors generated during this phase. The errors that are not detected in this phase are propagated to later phases where their solution demands more time and effort, causing deviations in the project objectives. This article aims to describe the results of an experiment to evaluate the impact of a proposal to support the architecture design. This approach is based on Model-Driven Development (MDD) paradigm. We gathered quantitative evidence showing the favorable impact in reducing errors and the time used for the architectural design.<hr/>RESUMEN La fase de diseño de la arquitectura es crucial para el éxito de un proyecto de software. En esta fase se definen los componentes de alto nivel que compondrán el sistema, así como sus relaciones. Por lo general, el diseño de la arquitectura es desarrollado intuitivamente por los arquitectos. Por lo tanto, la calidad del diseño resultante dependerá de las habilidades de los arquitectos. Sin embargo, es común encontrar errores generados durante esta fase. Los errores que no se detectan en esta fase se propagan a fases posteriores donde su solución demanda más tiempo y esfuerzo, provocando desviaciones en los objetivos del proyecto. Este artículo tiene como objetivo describir los resultados de un experimento para evaluar el impacto de una propuesta de apoyo al diseño de arquitectura. Este enfoque se basa en el paradigma de desarrollo dirigido por modelos (MDD). Reunimos evidencia cuantitativa que muestra el impacto favorable en la reducción de errores y el tiempo utilizado para el diseño arquitectónico. <![CDATA[Review of facial recognition methods in RGB-D images acquired using a Kinect sensor]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992022000200157&lng=pt&nrm=iso&tlng=pt RESUMEN El reconocimiento facial en una imagen o video, es un tema que ha sido investigado y desarrollado en los últimos años. Sin embargo, continúa siendo una tarea abierta con grandes complejidades, desde el punto de vista científico y económico. Se investiga para desarrollar o mejorar técnicas y algoritmos que permitan tener mayor efectividad que las existentes y presentar menores costos computacionales. Se plantean tres enfoques, los que se basan exclusivamente en imágenes RGB, de profundidad, o la fusión de ambas modalidades. El objetivo de este trabajo es ofrecer una panorámica de las propuestas de reconocimiento facial utilizando un sensor Kinect para adquirir las imágenes, realizar un análisis crítico y comparativo de las principales propuestas y analizar los resultados obtenidos. A partir de este análisis veremos los principales aportes y evaluaremos los principales problemas y retos de investigación por resolver. En los artículos revisados en el período 2012-2021 se proponen diversos descriptores para la extracción de características y un conjunto de clasificadores.<hr/>ABSTRACT Facial recognition in an image or video is a topic that has been researched and developed in recent years. However, it continues to be an open task with great complexities, from the scientific and economic point of view. Research is being carried out to develop or improve techniques and algorithms that are more effective than the existing ones and have lower computational costs. Three approaches are proposed, those based exclusively on RGB, depth images, or the fusion of both modalities. The objective of this work is offer a panoramic view of the proposals of face recognition using a Kinect sensor to acquire the images, realize a critical and comparative analysis of the main proposals and analyze the results obtained. From this analysis we will see the main contributions and evaluate the main research problems and challenges to be solved. Several descriptors for feature extraction and a set of classifiers are proposed in the articles reviewed in the period 2012-2021.