Scielo RSS <![CDATA[Revista Cubana de Ciencias Informáticas]]> http://scielo.sld.cu/rss.php?pid=2227-189920180004&lang=en vol. 12 num. 4 lang. en <![CDATA[SciELO Logo]]> http://scielo.sld.cu/img/en/fbpelogp.gif http://scielo.sld.cu <![CDATA[<strong>Test signal generator for the evaluation of detection algorithms of the number of sources.</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400001&lng=en&nrm=iso&tlng=en The aim of this work is to design and implement a computational tool that allows generating, visualizing and configuring test signals required for the evaluation and comparison of detection algorithms of the number of sources. The software designed was based on a source generation model whose components were grouped into two sets: one dedicated to the waveforms generation and another one dedicated to the propagation channel. The programming of these components was done in MATLAB language. The implemented tool has two configurable modes of operation: the first one generates the test signals as a MATLAB function and the second one allows the user to visualize how the waveform of a test signal is formed, through a graphical interface. The proposed software is easy to use since the user only needs basic knowledge of signals to configure it, in addition, it allows creating the same scenarios to test and compare other detection techniques. The tool obtained is a convenient way to obtain test signals when you do not have the adequate equipment to generate them. The graphic interface implemented can be used as a virtual signaling laboratory for engineering students, since it allows observing the waveform that is modified by the elements present in the generation model.<hr/>El objetivo de este trabajo fue diseñar e implementar una herramienta computacional que permitiera generar, visualizar y configurar las señales de prueba necesarias para la evaluación y comparación de algoritmos detectores del número de fuentes. El software diseñado fue basado en un modelo de generación de fuentes cuyos componentes fueron agrupados en dos conjuntos: uno dedicado a la generación de formas de onda y otro dedicado al canal de propagación. La programación de estos componentes fue realizada en el lenguaje MATLAB. La herramienta implementada posee dos modos configurables de operación: el primero genera las señales de prueba como una función de MATLAB y el segundo permite al usuario visualizar como es conformada la forma de onda de una señal de prueba, mediante una interfaz gráfica. El software propuesto es fácil de usar ya que el usuario solo necesita conocimientos básicos de señales para configurarlo, además, permite crear iguales escenarios para poner a prueba y comparar otras técnicas de detección. La herramienta obtenida constituye una conveniente forma para obtener señales de prueba, cuando no se cuente con el equipamiento adecuado para generarlas. La interfaz gráfica implementada puede ser utilizada como laboratorio virtual de señales para estudiantes de ingeniería, dado que permite observar la forma de onda que es modificada por los elementos presentes en el modelo de generación. <![CDATA[<strong>Unsupervised Segmentation of Agricultural Crops in UAV RGB Images</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400002&lng=en&nrm=iso&tlng=en Crop inventory is a precision agricultural task that allows for the planning and estimation of yields per hectare cultivated. The use of Unmanned Aerial Vehicles (UAV) has gained a great boom in the development of these applications given its low cost and fast possibilities of obtaining quality images. This paper presents a method for unsupervised segmentation of agricultural UAV RGB color images. We propose the combination of a set of texture features under a segmentation framework, based on the active contour without edges model with level set representation and a connected component filtering strategy. The experiments show that it can be applied for the segmentation of agricultural crops, with an average segmentation quality of 90%. It exceeds in efficacy other methods of supervised segmentation of the state of the art. It was demonstrated the robustness of the approach for images taken with UAVs of low performance which makes cheaper its application with low costs by agricultural producers.<hr/>El inventario de cultivos es una tarea agrícola de precisión que permite planificar y estimar los rendimientos por hectárea cultivada. El uso de vehículos aéreos no tripulados ha ganado un gran auge en el desarrollo de estas aplicaciones debido a su bajo costo y rápidas posibilidades de obtener imágenes de calidad. Este artículo presenta un método para la segmentación no supervisada de imágenes a color tomadas por estos vehículos. Proponemos la combinación de un conjunto de características de textura en un marco de segmentación, basado en el contorno activo sin modelo de bordes con representación de nivel y una estrategia de filtrado de componentes conexas. Los experimentos muestran que la propuesta puede ser aplicada para la segmentación de cultivos agrícolas, con una calidad de segmentación media del 90%, la misma supera en eficacia a otros métodos de segmentación supervisada del estado del arte. Se demostró la robustez del enfoque para imágenes tomadas con vehículos aéreos de bajo costo que hace más barata su aplicación por parte de los productores agrícolas. <![CDATA[<strong>Application of algebraic topology to fingerprint recognitiony</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400003&lng=en&nrm=iso&tlng=en In the present work, an algorithm for fingerprints verification based on an application of the algebraic topology is presented.Specifically, we propose a representation of impressions as simplicial complexes and the definition of local structures based on local filtrations ordering from the complexes. These filtrations are determined by neighboring minutiae. It is also proposed the extraction of a set of features based on the analysis of the homology variation in these filtrations. The features combine information about the quantity and connectivity of papillary ridges in the local structures. In addition, a matching method based on the extracted topological information is presented. This paper shows that this information is discriminative and can be used in combination with classic geometric features to improve the description of local structures of the impressions and the accuracy in the comparison.<hr/>En este trabajo se presenta un algoritmo para la verificación de impresiones dactilares basado en una aplicación de la topología algebraica. Específicamente, se propone una representación de las impresiones como complejos simpliciales y la definición de estructuras locales de las impresiones a partir de filtraciones ordenadas locales de los complejos. Estas filtraciones quedan determinadas por minucias vecinas. También se propone la extracción de un conjunto de rasgos basados en el análisis de la variación de la homología en estas filtraciones. Estos rasgos combinan información acerca de la cantidad y la conectividad de las crestas papilares en las estructuras locales definidas. Además, se presenta un método de cotejo de las impresiones basado en la información topológica extraída. En este trabajo se muestra que esta información es discriminativa y puede usarse en combinación con rasgos geométricos clásicos para mejorar la descripción de estructuras locales de las impresiones y la eficacia en la comparación. <![CDATA[<strong>Variables selection for journal bearing fault diagnostic.</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400004&lng=en&nrm=iso&tlng=en En la selección de los rasgos más importantes para el diagnóstico de fallos de chumaceras no se considera el conocimiento experto que se expresa en variables no numéricas, sin embargo, esta información puede ser vital para mejorar la eficiencia del diagnóstico. Este trabajo fue desarrollado con el objetivo identificar los rasgos más relevantes para clasificar un grupo de fallos ocurridos en las chumaceras de una turbina de vapor. Los conjuntos de valores de las variables que soportan el trabajo corresponden a los datos almacenados en reportes de diagnóstico y mantenimiento de una termoeléctrica en explotación. Las técnicas aplicadas para procesar los datos cuantitativos y cualitativos son herramientas del enfoque lógico combinatorio al reconocimiento de patrones. Mediante diferentes criterios de comparación se determinó la confusión de los rasgos del conjunto inicial y posteriormente los testores y testores típicos. Finalmente se calculó el peso informacional de los rasgos. Los resultados alcanzados mostraron, entre otras consideraciones, que la relevancia de los rasgos cualitativos que se incorporaron a la descripción de los fallos es superior a la de los rasgos numéricos.<hr/>Experts in diagnostic can provide essential information, expressed in mixed variables (quantitative and qualitative), about journal bearing faults, nevertheless feature selection researches for fault diagnostic applications forget this important knowhow. This work is focused to identify the most important features for fault identification in a steam turbine journals bearings. The values sets that support this research come from stored diagnostics and maintenance reports of an active thermoelectric power plant. Mixed data processing was accomplished by mean of logical combinatorial pattern recognition tools. Confusion of raw features set was obtained employing different comparison criteria’s. Subsequently was identified the testor and typical testor and compute the informational weight of features that conform typical testor. The values of the mixed features originated by expert knowledge are shown through the obtained results. <![CDATA[<strong>Capabilities of penetration test methodologies to detect frequent vulnerabilities of web applications</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400005&lng=en&nrm=iso&tlng=en En el estudio se analizan las capacidades para la detección de vulnerabilidades en aplicaciones web que proponen las principales metodologías de pruebas de penetración. El objetivo fue determinar hasta qué punto son válidos los procedimientos, herramientas y pruebas de seguridad propuestas en las metodologías ISSAF, OSSTMM, OWASP, PTES y NIST SP 800-115 para abordar los retos actuales de ciberseguridad en el campo del desarrollo y mantenimiento de las aplicaciones web. Se tomaron como base de comparación los informes de vulnerabilidades de OWASP, emitidos entre los años 2003 y 2017 y el análisis de la documentación de cada metodología de pruebas de penetración. Se elaboró una escala de evaluación cualitativa y su aplicación arrojó como resultado que la Guía de Pruebas de OWASP resultó la más completa, seguida de la metodología de ISSAF. No obstante, ninguna metodología demostró ser capaz de brindar métodos, herramientas o pruebas de seguridad para detectar todas las vulnerabilidades actuales. Los resultados alcanzados demuestran la necesidad de un proceso de adaptación y completamiento de las metodologías existentes.<hr/>The study analyzes the capabilities for vulnerability detection in web applications that propose the main methodologies of intrusion tests. The objective was to determine the validity of the procedures, tools and tests proposed in the ISSAF, OSSTMM, OWASP, PTES and NIST SP 800-115 methodologies to address the current challenges of cybersecurity in the development and maintenance of Web applications. The OWASP vulnerability reports issued between 2003 and 2017 and the documentation of each intrusion methodology were taken as a base for comparison. A qualitative comparison scale was developed and its application showed that the most complete is OWASP Test Guide followed by the ISSAF methodology. However, no methodology proved to be able to provide security methods, tools or tests to detect all current vulnerabilities. The results show the need for a process of adaptation and complementation of existing methodologies. <![CDATA[<strong>Ingeniería de Software Médico. Un meta-modelo de validación</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400006&lng=en&nrm=iso&tlng=en El desarrollo de la industria nacional de equipos médicos es una tarea de prioridad debido a la perspectiva económica que posee en cuanto a los fondos exportables y sustitución de importaciones. Entre sus resultados se encuentran los productos de software médico. Dado que se requiere esclarecer a los desarrolladores de estos productos los modelos que establecen y propician el cumplimiento de los requisitos regulatorios, sus pruebas y evaluación, se propone un meta-modelo de ingeniería de software médico, que parte de la aplicación de los métodos o técnicas de la ingeniería de software al software médico, privilegiando las características del riesgo y seguridad de la salud y contribuyendo a aplicar las técnicas de análisis para determinar fallos, aunado a la fiabilidad y la gestión de la confiabilidad. El meta-modelo permitirá que las entidades de la industria de software médico realicen un coherente proceso de desarrollo guiado por la aplicación de la Ingeniería de Software Médico, a diferencia de los pasos aislados que venían ejecutándose en la gestión de requisitos a partir del cuerpo regulatorio, o en la aplicación de los estándares o metodologías, todo lo cual debe garantizar la certificación y la erogación de menos recursos para alcanzar la Evaluación Estatal del MINSAP.<hr/>The development of the national medical equipment industry is a priority task that has the economic perspective it has in terms of exportable funds and import substitution. Among its results are medical software products. Given that it is necessary to clarify the developers of these products, the models that establish and encourage compliance with regulatory requirements, their testing and evaluation are offered in a medical software engineering model, which starts from the application of the methods or techniques from software engineering to medical software, privileging the characteristics of health risk and safety and contributing to the analysis techniques to determine failures, together with reliability and dependability management. The meta-model allows the entities of the medical software industry to carry out a coherent process of software development for the application of Medical Software Engineering, a difference of the steps that are specified in the management of the requirements of the regulatory body, or in the application of standards or methodologies, everything that must guarantee the certification and minimize the resources to achieve MINSAP State Assessment. <![CDATA[<strong>Content-based image retrieval using descriptors generated by Convolutional Neural Networks</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400007&lng=en&nrm=iso&tlng=en Los sistemas para la recuperación de imágenes basada en contenido permiten la búsqueda y recuperación de imágenes que son similares a una imagen de consulta dada, empleando rasgos que representan el contenido visual de dichas imágenes. En el presente trabajo se desarrolló un método para la recuperación de imágenes indexadas en bases de datos a partir de su contenido visual, sin necesidad de realizar anotaciones textuales. Se obtuvieron vectores de rasgos a partir de los contenidos visuales mediante técnicas de redes neuronales artificiales con aprendizaje profundo. Se propuso el empleo de redes neuronales convolucionales pre entrenadas para crear los descriptores globales. Se aplicaron técnicas de reducción de la dimensión para incrementar la eficiencia en el procesamiento. Los resultados obtenidos por el método propuesto, sobre bases de datos disponibles públicamente, fueron superiores a los de los métodos tradicionales y comparables con otros basados en aprendizaje profundo, que constituyen el estado del arte en la recuperación de imágenes por contenido. El método propuesto puede ser extendido mediante la adición de etapas posteriores de integración de rasgos con mayor grado de abstracción.<hr/>Content-Based Image Retrieval systems allow to search and retrieve images that are similar to a given query image using features for representing the visual content of the images. In this work it was developed a method to retrieve digital images indexed in databases using its visual content, without textual annotations. Automatic descriptions of the contents were obtained using deep neural networks. Pre-trained Convolutional Neural Net- works were proposed to create global descriptors. Dimensionality reduction techniques were applied to increase the efficiency in performance. Results obtained by this method, over two publicly available datasets, were better than performance of traditional methods and comparable to other approaches based on deep learning which are the state of the art in Content-Based Image Retrieval. Proposed method could be extended by the addition of stages of feature integration with a greater degree of abstraction. <![CDATA[<strong>Fingerprints recognition on Raspberry Pi platform</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400008&lng=en&nrm=iso&tlng=en El reconocimiento de impresiones dactilares es una técnica ampliamente utilizada para la identificación de individuos, debido a su invarianza en el tiempo y a su singularidad. El presente trabajo se propuso implementar un sistema de reconocimiento de personas por sus impresiones dactilares sobre la plataforma Raspberry Pi. Esta investigación incluye la fundamentación de la selección del hardware, compuesto por la placa de desarrollo Raspberry Pi y el escáner DigitalPersona, así como la implementación del software, mediante la utilización de la biblioteca Libfprint. Como resultado principal se obtuvo un sistema con la capacidad de identificar en tiempo real a un sujeto mediante la adquisición de su impresión dactilar a través de un escáner. Con la materialización de esta investigación se mostró la capacidad que poseen las placas de desarrollo para ser empleadas en sistemas biométricos enfocados al cumplimiento de diversas tareas.<hr/>Fingerprints recognition is a widely used technique for people identification, due to its time invariance and singularity. This work proposed the implementation of a recognition system of subjects by their fingerprints over Raspberry Pi platform. This research highlight the details of hardware selection, which is composed by the Raspberry Pi development board and DigitalPersona scanner, as well as the software implementation, through the Libfrpint library. The main result was a system with the ability to identify in real time a subject by acquiring his fingerprint through a scanner. This work showed the capability of development boards for being used on biometric systems in several tasks. <![CDATA[<strong>Minutiae template fusion and its impact on fingerprint matching</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400009&lng=en&nrm=iso&tlng=en En este trabajo se introduce un nuevo algoritmo de fusión de plantillas de minucias obtenidas de impresiones dactilares, el cual primeramente encuentra correspondencias iniciales entre las minucias con un eficaz algoritmo del estado del arte (MCC). A partir de un novedoso proceso se escogen las correspondencias que dan como resultado la transformación geométrica que mejor alinea las plantillas de minucias. Para esto se introduce una nueva heurística que va refinando el resultado, a partir de encontrar la transformación “factible” que más correspondencias involucre. Así se propone un algoritmo que se basa en medir el efecto provocado, en términos de las distancias entre minucias correspondientes, al incorporar una nueva correspondencia al cálculo de la transformación. La propuesta es de gran utilidad en los casos en los que existen varias tomas con oclusiones de un mismo dedo o cuando las impresiones capturadas tienen áreas disjuntas. El impacto positivo del algoritmo de fusión en la eficacia de la identificación de impresiones, es comprobado utilizando dos algoritmos diferentes de cotejo. Los resultados fueron obtenidos en la base de datos FVC 2004 DB1_A y en dos variaciones de esta.<hr/>In this work, a new minutiae template fusion algorithm, obtained from fingerprints is proposed. This algorithm finds initial correspondences between minutiae, using an accurate state of the art algorithm (MCC). Correspondences that give as result the geometric transformation that best aligns the minutia templates are chosen, using a novel process. For this, a new heuristic that refines the result by finding the “feasible” transformation that involve more correspondences, is introduced. In this way, a new algorithm that is based on measuring the provoked effect in terms of distances between correspondent minutiae when a new correspondence is added to the transformation computation, is proposed. The approach is very useful when there are many occluded impressions of the same finger, or when the captured impressions have disjoint areas. The positive impact of the proposed algorithm in the accuracy of the fingerprint identification is tested by using two different matching algorithms. The results were obtained database FVC 2004 DB1_A and in two variants of this database. <![CDATA[<strong>Prediction of community evolution in social networks</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400010&lng=en&nrm=iso&tlng=en Muchos investigadores se han volcado en la tarea de analizar y modelar el comportamiento de las redes sociales, debido al auge que han tomado. Son varias las tareas llevadas a cabo como parte de su análisis. Dentro de ellas destacan por su importancia, la descripción y predicción de la evolución de las comunidades que conforman la red. Esta última es tratada desde la perspectiva de las distintas formas que tienen las comunidades en la red; analizando su comportamiento en la evolución. En este trabajo se propone un método para la predicción de la evolución de comunidades en redes sociales basado en subgrafos frecuentes. Finalmente, nuestra propuesta es comparada con un enfoque recientemente reportado en la literatura, obteniendo resultados similares.<hr/>Nowadays, the fast growth of Social Networks have caused that many researchers have taken the challenge of analyzing and modelling their behavior. There are many tasks in Social Networks Analysis. One of the most important is the prediction of the behavior of communities that form the network. This last task is now analyzed with a new perspective where the behavior of the community is defined by its shape. We propose a method for predicting the evolution of communities based on frequent subgraphs. Then we compare the new way of describing the communities with a recent approach in the literature, obtaining similar results. <![CDATA[<strong>Saliency detection in images in the quaternion space</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400011&lng=en&nrm=iso&tlng=en En el presente trabajo es desarrollado un algoritmo para detectar las regiones salientes en las imágenes en el espacio de los quaternions. Para obtener mapas de regiones salientes, una pirámide Gaussiana es creada para procesar imágenes a diferentes escalas mediante dos enfoques (local y global) conservando los objetos predominantes. Las imágenes son representadas en el espacio de los quaternions donde se conserva la relación entre los espacios de color RGB y HSV utilizando rasgos. En el enfoque local (dominio espacial), las imágenes son divididas en parches para la comparación entre el módulo y la fase del quaternion y es desarrollada una variante nueva del descriptor Quaternion Local Binary Patterns. En el enfoque global, las imágenes son procesadas en el espacio de la frecuencia de Fourier para quaternions, donde el espectro del módulo es transformado mediante un filtro pasa baja y es reconstruida la información para obtener un mapa global. El mapa final de regiones salientes es logrado mediante una combinación ponderada de los mapas locales y el global, para después aplicar una función de center bia y un refinamiento al mapa final. Para comprobar la eficacia del algoritmo propuesto es validado mediante la métrica error medio absoluto en la base de datos ECSSD-1000 y comparado con otros algoritmos del estado del arte.<hr/>In this paper, we developed an algorithm that allows the saliency detection in images in the quaternion space. To obtain maps of saliency, a Gaussian pyramid is built to process images at different scales through two approaches (local and global) while conserving salient objects. Images are represented in the quaternion space where the relationship between RGB and HSV color spaces is conserved using feature. In the local approach (spatial domain), the images are divided into patches for the comparison between the module and the phase of quaternion and a new variant of Quaternion Local Binary Patterns descriptor is developed. In the global approach, the images are processed in the quaternion Fourier frequency space, where the module spectrum is transformed by a low pass filter and the information is reconstructed to obtain a global map. The final map of saliency is achieved by a weighted combination of local and global maps and after applying a function of center bia more a refinement in the final map. To verify the effectiveness of our proposed algorithm it is validated using the mean absolute error metric in the ECSSD-1000 data set and compared with other state of the art algorithms. <![CDATA[<strong>Project stakeholder classification based on soft computing techniques</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400012&lng=en&nrm=iso&tlng=en El proceso de clasificación de interesados es usualmente llevado a cabo por el director del proyecto utilizando métodos como la entrevista con expertos, la lluvia de ideas y listas de chequeo. Dichos métodos se llevan a cabo de forma manual y con carácter subjetivo por parte de especialistas vinculados a los proyectos. Esto afecta la exactitud de la clasificación y los directivos del proyecto no cuentan con una información más detallada a la hora de tomar decisiones sobre los involucrados. Como objetivo de este trabajo se propone un sistema borroso genético para la clasificación de interesados, que permita mejorar la calidad de la clasificación con respecto a la forma manual realizada en los proyectos. La propuesta realiza el aprendizaje automático y ajuste de sistemas de inferencia borrosos para la clasificación de interesados a partir de la ejecución de seis algoritmos genéticos: GFS.THRIFT, GFS.FR.MOGUL, GFS.GCCL, FH.GBML, GFS.LT.RS y SLAVE. Se examinan los resultados de aplicarlos en 10 iteraciones calculando las medidas: porciento de clasificaciones correctas, falsos positivos, falsos negativos, error cuadrático medio y error porcentual de la media absoluta simétrica. Los mejores resultados los obtiene el algoritmo FH.GBML. El sistema borroso genético desarrollado mejora la clasificación de los interesados mostrándose como una herramienta de apoyo a la toma de decisiones en organizaciones orientadas a la producción por proyectos.<hr/>Stakeholder classification process is usually carried out by project manager using methods such as interviewing experts, brainstorming and checklists. These methods are carried out manually and subjectively by specialists belonging to the project. This affects the classification accuracy and project managers do not have more detailed information when making decisions about stakeholders. The objective of this research is to propose a genetic fuzzy system for classifying stakeholders for improving the classification quality with respect to the manually performed in projects. The proposal realizes the machine learning and adjustment of fuzzy inference systems for the stakeholder’s classification from the execution of six genetic algorithms: GFS.THRIFT, GFS.FR.MOGUL, GFS.GCCL, FH.GBML, GFS.LT.RS and SLAVE. It examines the results of applying them in 10 iterations by calculating the measures: accuracy, false positive, false negative, mean square error and symmetric mean absolute percentage error. The best results are shown by FH.GBML algorithm. The genetic fuzzy system implemented improves the stakeholder’s classification as a tool to support decision making in organizations oriented to production by projects. <![CDATA[<strong>Bad smell code: a systematic mapping</strong>]]> http://scielo.sld.cu/scielo.php?script=sci_arttext&pid=S2227-18992018000400013&lng=en&nrm=iso&tlng=en El concepto de código con mal olor (code smells ) fue introducido a fines de los años 90 y es una manera de referirse a ciertas características subjetivas en el código fuente que podrían repercutir en problemas de operación y mantención. Para corregir estos problemas se ha desarrollado, dentro de la Ingeniería de Software, toda un área de estudio denominada reconstrucción (refactoring), centrada principalmente en estrategias de corrección de código anómalo. El objetivo de este artículo es develar el estado actual de los estudios relacionados con los malos olores en el código fuente, considerando principalmente su detección. Se realizó una revisión basada en el protocolo de mapeo sistemático. Las estrategias de búsqueda recuperaron un conjunto de 215 documentos, de los cuales 30 fueron seleccionados para su análisis. Se definieron cuatro categorías de clasificación: método de detección, tipo de aporte, lenguaje estudiado y tipo de olor. Los resultados de la revisión indican un predominio de estudios que detectaban malos olores sobre código escrito en Java. Se pudo constatar que la literatura analizada carece de estudios que reporten métodos, herramientas y estrategias de detección en las categorías ”abusadores de la orientación a objetos” e ”inhibidores”, mientras que la mayor concentración de artículos están en las categoría de olor denominada ”hipertrofias” y ”prescindibles”, cuyos principales métodos de detección corresponden a métricas y análisis de logs.<hr/>The concept of code smell was introduced in the late 90’s and is a way of referring to certain subjective characteristics in the source code that could have repercussions on operation and maintenance. In order to correct these problems, a whole study area called refactoring has been developed within Software Engineering, which focuses mainly on strategies for correcting this type of anomalous code. The objective of this article is to unveil the current status of studies related to code smells, considering mainly their detection. A review was conducted based on the systematic mapping protocol. The search strategies retrieved a set of 215 documents, of which 30 were selected for analysis. Four categories of classification were defined: detection method, contribution type, programming language and code smell category. The results of the review indicate a predominance of studies that detected code smells in Java. It was found that the literature analyzed lacks studies that report methods, tools and detection strategies in the categories ”object-oriented abusers” and ”change preventers”, while the highest concentration of articles are in the code smells categories called ”bloaters” and ”dispensable”, whose main detection methods correspond to metrics and log analysis.