Navegación

Búsqueda

Búsqueda avanzada

El autor Inmaculada Medina-Bulo ha publicado 24 artículo(s):

1 - Herramienta para la Prueba de Mutaciones en el Lenguaje C++

La prueba de mutaciones es una técnica basada en fallos en torno a la cual se han elaborado herramientas para un amplio abanico de lenguajes de programación. Sin embargo, el desarrollo de un marco de prueba de mutaciones no comercial para C++ estaba pendiente. En este artículo se presenta una herramienta que permite analizar código C++, generar mutantes y ejecutar un conjunto de casos de prueba para obtener resultados que nos permitan determinar su efectividad en la detección de errores en el código. La herramienta está diseñada para permitir la inclusión de nuevos operadores para cubrir cualquier característica del lenguaje. En este documento, el uso de la herramienta se muestra a través de un operador de mutación al nivel de clase.

Autores: Pedro Delgado-Pérez / Inmaculada Medina-Bulo / Juan José Domínguez-Jiménez / 
Palabras Clave: C++ - prueba de mutaciones - Prueba de software

2 - Análisis y determinación del impacto del operador de mutación en la generación genética de casos de prueba para WS-BPEL

La prueba basada en búsqueda permite generar casos de prueba automáticamente mediante la codificación de un criterio de cobertura como una función de aptitud que guía la búsqueda. Los algoritmos genéticos se han aplicado con éxito a este tipo de prueba utilizando principalmente criterios de cobertura estructural. Este trabajo presenta el análisis realizado para mejorar el comportamiento del generador de casos de prueba Rodan, que emplea un algoritmo genético para generar casos de prueba que matan mutantes producidos a partir de composiciones WS-BPEL. Se presentan los resultados obtenidos sobre un caso de estudio clásico en la literatura de prueba (un clasificador de triángulos) para tres operadores de mutación, con siembra y sin ella, y con distintos tamaños del espacio de búsqueda. Estos resultados se comparan con los obtenidos mediante generación aleatoria de casos de prueba.

Autores: Antonia Estero-Botaro / Álvaro Cortijo-García / Antonio García-Domínguez / Francisco Palomo-Lozano / Juan José Domínguez-Jiménez / Inmaculada Medina-Bulo / 
Palabras Clave:

3 - Generación de Mutantes Válidos en el Lenguaje de Programación C++

La prueba de mutaciones es una técnica basada en fallos que se ha desarrollado alrededor de un amplio rango de lenguajes de programación. Sin embargo, la construcción de un marco de trabajo de prueba de mutaciones no comercial para C++ ha sido pospuesto en favor de otros lenguajes, principalmente por la variedad de alternativas que ofrece C++. Este artículo presenta una solución factible y completa para la implementación de los operadores de mutación en C++, la cual se basa en la búsqueda de patrones en el árbol de sintaxis abstracta (AST) que el compilador Clang genera a partir del código fuente. Estos patrones se construyen según las reglas que determinan los distintos operadores de mutación, permitiendo localizar los puntos del código en los que es posible introducir una mutación. Asimismo, en el artículo se abordan distintas situaciones que han de ser consideradas para la validez de los mutantes creados. Este proceso se ilustra a través de un operador de mutación a nivel de clase, si bien este enfoque sirve para crear operadores a cualquier nivel del lenguaje.

Autores: Pedro Delgado-Pérez / Inmaculada Medina-Bulo / Juan José Domínguez-Jiménez / 
Palabras Clave: árbol de sintaxis abstracta - C++ - operador de mutación - prueba de mutaciones

4 - Una Propuesta Orientada a Servicios para la Prevención de Riesgos Personales Derivados de la Calidad del Aire

La calidad del aire es un factor que ha tomado gran relevancia en los últimos años y que puede afectar seriamente a la salud y a la calidad de vida de los ciudadanos. Actualmente los medios que nos permiten mantenernos informados sobre la calidad del aire en general se caracterizan por no proporcionar la información en tiempo real ni mecanismos de informacíon de fácil acceso para el ciudadano y, sobre todo, no se adaptan a las condiciones específicas de cada ciudadano particular. En este artículo proponemos la implementacíon de una arquitectura orientada a servicios que nos va a permitir detectar cambios en la calidad del aire en tiempo real y poner esta informacíon a disposicíon del usuario en su móvil, notificándole inmediatamente de alertas personalizadas cuando se detecte algún nivel potencialmente peligroso para su salud, procurando así la prevención de riesgos personales.

Autores: Juan Boubeta-Puig / Guadalupe Ortiz Bellot / Inmaculada Medina-Bulo / 
Palabras Clave: arquitecturas orientadas a servicios - calidad del aire - procesamiento de eventos complejos

5 - Analysis of the Feasibility to Combine CEP and EDA with Machine Learning using the Example of Network Analysis and Surveillance

Complex Event Processing (CEP) and Event-driven Architectures (EDA) are modern paradigms for processing data in form of events. Machine Learning (ML) methods offer additional sophisticated means for analyzing data. By combining these technologies it is possible to create even more comprehensive and powerful data analysis and processing systems. We analyze the feasibility of combining CEP and EDA with ML using the example of the application domain of computer networks. We present relevant aspects, a sample use case, an sample architecture, and results of performance benchmarks. Our results indicate that the combination of these technologies increases data processing capabilities and that it is feasible from a performance perspective as well.

Autores: Ruediger Gad / Martin Kappes / Inmaculada Medina-Bulo / 
Palabras Clave: Complex Event Processing - Computer Networks - Event-driven Architecture - Machine Learning

6 - Generación Genética de Casos de Prueba para Composiciones WS-BPEL

La generación automática de casos de prueba juega un papel de gran importancia dentro de la prueba de software. En concreto, la prueba basada en búsqueda genera casos de prueba codificando un criterio de cobertura como una función de aptitud que guía la búsqueda. De hecho, los algoritmos genéticos han sido aplicados con éxito a la prueba basada en búsqueda utilizando principalmente criterios de cobertura estructural. Este trabajo presenta un generador de casos de prueba para composiciones WS-BPEL denominado Rodan que está basado en un algoritmo genético. Su objetivo es generar casos de prueba que maten a los mutantes producidos a partir de la composición a probar. El algoritmo genético diseñado adopta algunas de las características de los algoritmos bacteriológicos, también propuestos para la generación de casos de prueba. Hemos aplicado Rodan a una composición WS-BPEL, comparando nuestra técnica con la generación aleatoria de casos de prueba y concluyéndose que con nuestra técnica se obtienen resultados prometedores.

Autores: Antonia Estero-Botaro / Antonio García-Domínguez / Juan José Domínguez-Jiménez / Francisco Palomo-Lozano / Inmaculada Medina-Bulo / 
Palabras Clave:

7 - Leveraging EDA and CEP for Integrating Low-level Network Analysis Methods into

Computer networks are crucial for the operation of Information Technology (IT) infrastructures. For assuring and maintaining the functionality of networks and with this of IT systems in general, accurate and up-to-date information about networks and the incidents in them is of vital importance. To allow a proper, accurate, and timely assessment this information must be efficiently communicated to the relevant analysis applications that rely on it. In this paper we propose an approach on obtaining and efficiently communicating information gathered with means of low-level network analysis methods from spatially distributed and heterogeneous data sources. Thereby, we leverage existing technologies from the fields of network analysis, Event-driven Architecture (EDA), and Complex Event Processing (CEP) and combine these into a novel distributed network analysis system approach that can be integrated into todays, modern, distributed IT architectures.

Autores: Rüdiger Gad / Juan Boubeta-Puig / Martin Kappes / Inmaculada Medina-Bulo / 
Palabras Clave: CEP - EDA - network analysis - network surveillance

9 - Automatización de la etapa de análisis para la aplicación de la técnica de prueba metamórfica a composiciones de servicios WS-BPEL

La importancia de los servicios web en el mundo actual está en auge, y el impacto social que están teniendo gracias a las nuevas tecnologías desarrolladas, hace necesario el diseño de mejores técnicas de prueba para el software específico de composición de estos servicios web. Una de las técnicas propuestas para las composiciones WS-BPEL es la técnica de prueba metamórfica. En trabajos anteriores se ha presentado una arquitectura para su aplicación y se han aportado algunas ideas para la automatización de la etapa inicial de la misma, que se corresponde con el análisis y obtención de propiedades, pero no se llegaron a desarrollar ni implementar. En este trabajo se presenta el diseño de una solución para automatizar ciertos aspectos de la etapa de análisis y obtención de propiedades, la cual ha sido probada en diferentes casos de prueba obteniéndose buenos resultados.

Autores: M Carmen de Castro-Cabrera / Kevin J Valle-Gómez / Inmaculada Medina-Bulo / 
Palabras Clave: análisis - composiciones de servicios web - pruebas metamórficas - relaciones metamórficas - solución - WS-BPEL

10 - Analyzer4BPEL: Una herramienta de análisis de composiciones WS-BPEL para su aplicación en la etapa de prueba del software

Toda herramienta de prueba de software requiere en algún momento de su proceso realizar un análisis, o bien como primer paso, para extraer la información necesaria para aplicar una determinada técnica, o bien, una vez procesado el software para estudiar los resultados y evaluarlos. Existen en la actualidad herramientas capaces de analizar la mayoría de los lenguajes de programación. Sin embargo, no abundan los analizadores de lenguajes para composiciones de servicios. En este trabajo se presenta una aplicación que realiza un análisis de composiciones en lenguaje WS-BPEL y de sus casos de prueba para extraer información útil para diversos objetivos. Así mismo, se describe su utilización particular, en una de las etapas de la aplicación de una técnica de prueba de software: la prueba metamórfica.

Autores: Kevin J. Valle-Gómez / M. Carmen de Castro-Cabrera / Inmaculada Medina-Bulo / 
Palabras Clave: análisis - BPTS - casos de prueba - prueba del software - prueba metamórfica - relaciones metamórfircas - servicios web - WS-BPEL

11 - Assessment of class mutation operators for C++ with the MuCPP mutation system

Context: Mutation testing has been mainly analyzed regarding traditional mutation operators involving structured programming constructs common in mainstream languages, but mutations at the class level have not been assessed to the same extent. This fact is noteworthy in the case of C++ , despite being one of the most relevant languages including object-oriented features. Objective: This paper provides a complete evaluation of class operators for the C++ programming language. MuCPP, a new system devoted to the application of mutation testing to this language, was developed to this end. This mutation system implements class mutation operators in a robust way, dealing with the inherent complexity of the language. Method: MuCPP generates the mutants by traversing the abstract syntax tree of each translation unit with the Clang API, and stores mutants as branches in the Git version control system. The tool is able to detect duplicate mutants, avoid system headers, and drive the compilation process. Then, MuCPP is used to conduct experiments with several open-source C++ programs. Results: The improvement rules listed in this paper to reduce unproductive class mutants have a significant impact in the computational cost of the technique. We also calculate the quantity and distribution of mutants generated with class operators, which generate far fewer mutants than their traditional counterparts. Conclusions: We show that the tests accompanying these programs cannot detect faults related to particular object-oriented features of C++ . In order to increase the mutation score, we create new test scenarios to kill the surviving class mutants for all the applications. The results confirm that, while traditional mutation operators are still needed, class operators can complement them and help testers further improve the test suite. Autores: Pedro Delgado-Pérez, Inmaculada Medina-Bulo, Francisco Palomo-Lozano, Antonio García-Domínguez, Juan José Domínguez-Jiménez Revista: Information and Software Technology, Volume 81, January 2017, Pages 169-184, http://dx.doi.org/10.1016/j.infsof.2016.07.002 Factor de impacto: 1.569 – Q1 (listado JCR 2015)

Autores: Pedro Delgado-Pérez / Inmaculada Medina-Bulo / Francisco Palomo-Lozano / Antonio Garcia-Dominguez / Juan José Domínguez-Jiménez / 
Palabras Clave: C++ - Class mutation operators - Mutation system - Mutation testing - Object-oriented programming

12 - Evaluación de la Mejora de Conjuntos de Casos de Prueba mediante la Prueba de Mutación Evolutiva

La Prueba de Mutación Evolutiva (PME) es una técnica surgida recientemente para reducir el número de mutantes a generar en la prueba de mutaciones y, por consiguiente, su alto coste computacional. Esto se logra a través de un algoritmo genético, el cual trata de localizar la mayor cantidad posible de los mutantes con potencial para guiar a la mejora del conjunto de casos de prueba (denominados mutantes fuertes) en ese subconjunto de mutantes generado. La técnica ha sido evaluada precisamente respecto a esa capacidad de encontrar mutantes fuertes, pero tal análisis omite el hecho de que parte de esos mutantes fuertes puede no aportar a la mejora de las pruebas ya que son mutantes equivalentes. Por esa razón, en este artículo se propone una nueva metodología para la evaluación de la PME. Esta realiza una estimación del refinamiento conseguido del conjunto de pruebas a través de los mutantes seleccionados por el algoritmo genético. Esta metodología se emplea sobre cuatro programas en C++ que aplican orientación a objetos, mostrando que la PME es capaz de aumentar el conjunto de pruebas generando un porcentaje menor de mutantes que la selección aleatoria.

Autores: Pedro Delgado-Pérez / Inmaculada Medina-Bulo / 
Palabras Clave: Algoritmos genéticos - prueba de mutaciones - Prueba de software

13 - Mejora del Rendimiento de la Prueba de Mutación Evolutiva mediante la Reducción de Mutantes Equivalentes

La Prueba de Mutación Evolutiva (PME) busca la generación de un subconjunto de mutantes mediante un algoritmo genético con el objetivo de mejorar el conjunto de casos de prueba a un menor coste. A pesar de los resultados positivos obtenidos hasta el momento empleando esta técnica, otros avances paralelos en la prueba de mutaciones pueden aumentar la eficiencia de la PME. En este artículo se propone la incorporación en herramientas que aplican la PME de nuevas técnicas para ayudar a detectar mutantes que son equivalentes al programa original, exponiendo los beneficios de esta fusión.

Autores: Pedro Delgado-Pérez / Inmaculada Medina-Bulo / 
Palabras Clave: Algoritmos genéticos - prueba de mutaciones - Prueba de software

14 - ARTICULO RELEVANTE:IoT–TEG: Test event generator system

Internet of Things (IoT) has been paid increasingly attention by the government, academe and industry all over the world. One of the main drawbacks of the IoT systems is the amount of information they have to handle. This information arrives as events that need to be processed in real time in order to make correct decisions. Given that processing the data is crucial, testing the IoT systems that will manage that information is required. In order to test IoT systems, it is necessary to generate a huge number of events with specific structures and values to test the functionalities required by these systems. As this task is very hard and very prone to error if done by hand, this paper addresses the automated generation of appropriate events for testing. For this purpose, a general specification to define event types and its representation are proposed and an event generator is developed based on this definition. Thanks to the adaptability of the proposed specification, the event generator can generate events of an event type, or events which combine the relevant attributes of several event types. Results from experiments and real-world tests show that the developed system meets the demanded requirements.Journal of Systems and Software, JSS Special Issue on Software Reliability EngineeringImpact factor: 2,444 (Q1)Available online 20 June 2017DOI: https://doi.org/10.1016/j.jss.2017.06.037

Autores: Lorena Gutiérrez-Madroñal / Inmaculada Medina-Bulo / Juan José Domínguez-Jiménez / 
Palabras Clave: Complex Event Processing - Event generator - Event type definition - Internet of Things - Testing

15 - Generación de eventos de prueba para un sistema IoT de detección de caídas

El Internet de las Cosas (IoT) se ha ido aplicando en diferentes áreas; como smartcyties , medicina, procesos de negocio, etc, convirtiéndolo en un paradigma muy popular. Uno de los inconvenientes de los sistemas IoT es la toma de decisiones en tiempo real según la gran cantidad de información, eventos, que manejan. Realizar pruebas en estos sistemas es crucial para la toma de decisiones, ya que si no se filtra la información correcta no se llevarán a cabo las acciones esperadas. En diversas ocasiones es difícil obtener los eventos con valores específicos para realizar pruebas: condiciones ambientales adversas, subida o bajada de la tensión arterial, paro cardíaco, caídas… Este trabajo está enfocado en analizar caídas y en generar los eventos de prueba que las simulen utilizando la herramienta IoT-TEG. Este análisis ha permitido detectar el comportamiento de los eventos durante las mismas y ampliar las funcionalidades de IoT-TEG: los eventos de prueba a generar siguen las reglas de comportamiento que el usuario defina.

Autores: Lorena Gutiérrez-Madroñal / Luigi La Blunda / Matthias F. Wagner / Inmaculada Medina-Bulo / 
Palabras Clave: Detección de caídas - Eventos de prueba - IoT-TEG - Pruebas en sistemas IoT

16 - ARTICULO RELEVANTE:Assessment of C++ object-oriented mutation operators: A selective mutation approach

La prueba de mutaciones está considerada como una técnicaefectiva, pero que es costosa en contrapartida. Varios estudios han pues-to de manifiesto que pueden existir mutantes redundantes y que, unavez eliminados, no suponen pérdida de la efectividad de la técnica. De lamisma manera, algunos mutantes pueden ser más efectivos que otros ala hora de guiarnos en la generación de nuevos casos de pruebas de altacalidad. En base a estos dos hallazgos, en este artículo presentamos unaevaluación de los operadores de mutación definidos para C++ en la queclasificamos dichos operadores en dos rankings diferentes tras estudiar losmutantes que cada uno de los operadores genera. La primera clasificaciónordena los operadores según el grado de redundancia de sus mutantes yla segunda en base a la calidad de las pruebas que ayudan a diseñar. Unavez establecidos ambos rankings, llevamos a cabo un proceso de mutaciónselectiva en el que seleccionamos subconjuntos de operadores desechandolos menos valorados. El objetivo es determinar qué relación existe entrela reducción que se obtendría al eliminar estos operadores y la pérdidade efectividad. Los resultados experimentales muestran de una maneraconsistente que al seleccionar los operadores que están en la parte altadel ranking podemos obtener una reducción significativa en el númerode mutantes con una mínima pérdida de efectividad. Esto se produce enambas clasificaciones a pesar de que los operadores se ordenan de for-ma distinta, lo cual valida el planteamiento de valorar los operadores demutación de una manera diferente según nuestro objetivo sea evaluar orefinar el conjunto de pruebas.P. Delgado-Pérez, S. Segura and I. Medina-Bulo, “Assessment of C++ object-oriented mutation operators: A selective mutation approach,” Software Testing,Verification and Reliability, vol. 27, num. 4–5, pp. e1630, 2017. http://dx.doi.org/10.1002/stvr.1630Factor de impacto revista: 1.588

Autores: Pedro Delgado-Pérez / Sergio Segura / Inmaculada Medina-Bulo / 
Palabras Clave: C++ - calidad de operadores de mutación - mutación selectiva - operadores de mutación de clase - prueba de mutaciones

17 - Evaluación y mejora de pruebas de rendimiento utilizando mutación del software: Un enfoque evolutivo

Los errores de rendimiento del software pueden causar una importante degradación en la experiencia de usuario y dar lugar a problemas muy costosos de detectar y resolver. Las pruebas de rendimiento persiguen detectar y reducir el impacto de estos errores. Sin embargo, no existen mecanismos para evaluar la calidad de las pruebas de rendimiento, causando en muchos casos, que estos errores pasen desapercibidos. La prueba de mutación es una técnica para evaluar y mejorar las pruebas funcionales a través de la introducción de errores artificiales en el programa bajo prueba. En este artículo, exploramos la aplicabilidad de la prueba de mutación junto con el empleo de un algoritmo evolutivo para buscar mutantes que simulen errores de rendimiento. Esta propuesta noPrueba de mutación, errores de rendimiento, pruebas de rendimiento, algoritmos evolutivos.vedosa contribuye a mejorar la confianza en las pruebas de rendimiento al mismo tiempo que reduce el coste de la prueba de mutación.

Autores: Ana B. Sánchez / Pedro Delgado-Pérez / Inmaculada Medina-Bulo / Sergio Segura / 
Palabras Clave: algoritmos evolutivos - errores de rendimiento - prueba de mutación - Pruebas de Rendimiento

18 - MRG4BPEL: herramienta para generar relaciones metamórficas candidatas en composiciones WS-BPEL

En el contexto de la prueba de software, existen diversas técnicas que permiten probar las composiciones de servicios web. Una de ellas, que va adquiriendo importancia y visibilidad en este campo es la Prueba Metamórfica (PM).Dentro los aspectos que esta técnica requiere considerar, está la obtención y generación de Relaciones Metamórficas (RM), parte esencial y la más compleja de automatizar. En este trabajo se abordan las mejoras tanto en la arquitectura inicialmente propuesta (que representa un framework para probar composiciones de servicios web en el lenguaje WS-BPEL), como en los módulos que la componen. Es decir, se describen los avances en la herramienta de análisis (Analyzer4BPEL) y se presenta una nueva aplicación para generar RM candidatas, MRG4BPEL. Se muestra un caso de uso, donde, a partir de una composición, se obtienen y aplican RM utilizando estas herramientas, así como las conclusiones obtenidas.

Autores: M.Carmen De Castro-Cabrera / Kevin J. Valle-Gómez / Inmaculada Medina-Bulo / Pablo Tena-Sánchez / 
Palabras Clave: casos de prueba siguientes - prueba metamórfica - relaciones metamórficas - WS-BPEL

19 -

20 - Hacia una arquitectura para el procesamiento y análisis en tiempo real de datos heterogéneos en IoT

Uno de los grandes retos del Internet de las Cosas es la falta de un formato de datos común o una estructura homogénea que facilite el procesamiento y análisis de estos datos. Ser capaces de recibir información heterogénea de múltiples fuentes y, a continuación, poder procesarla para su análisis en tiempo real ofrece la posibilidad de reaccionar a situaciones críticas detectadas de forma inmediata. En este artículo se propone una arquitectura para inferir situaciones críticas en tiempo real que permita dar una respuesta adecuada lo más rápidamente posible.

Autores: David Corral-Plaza / Inmaculada Medina-Bulo / Guadalupe Ortiz / Juan Boubeta-Puig / 
Palabras Clave: Análisis en Tiempo Real - Internet de las Cosas - procesamiento de eventos complejos

21 - Performance mutation testing: hypothesis and open questions

Performance bugs are common, costly, and elusive. Performance tests aim to detect performance bugs by running the program with specific inputs and determining whether the observed behaviour is acceptable. There not exist mechanisms, however, to assess the effectiveness of performance tests. Mutation testing is a technique to evaluate and enhance functional test suites by seeding artificial faults in the program under test. In this new idea paper, we explore the applicability of mutation testing to assess and improve performance tests. This novel approach is motivated with examples and open questions.Ana B. Sánchez, Pedro Delgado-Pérez, Sergio Segura, Inmaculada Medina-Bulo. Performance Mutation Testing: Hypothesis and open questions. Information and Software Technology Journal, 103, 159-161, November 2018. Disponible online: https://doi.org/10.1016/j.infsof.2018.06.015ÍNDICES DE CALIDADFactor de impacto: 2,694Categoría de la revista: Q1Posición en su categoría: 16Número de autores: 4

Autores: Ana B. Sánchez / Pedro Delgado-Pérez / Sergio Segura / Inmaculada Medina-Bulo / 
Palabras Clave: Mutation testing - performance bugs - performance testing

22 - Search-based mutant selection for efficient test suite improvement: Evaluation and results

Las técnicas basadas en búsqueda se han aplicado a casi todas las áreas de la Ingeniería del Software, especialmente a la prueba de software, con el fin de abordar problemas de difícil resolución. Sin embargo, el problema de la selección de mutantes con el objetivo de mejorar el conjunto de pruebas no ha sido explorado tanto como otros problemas del mismo área, como puede ser la generación de datos de prueba. En este artículo aplicamos selección de mutantes basada en búsqueda para la mejora eficiente de la calidad de las pruebas. Concretamente, usamos la técnica conocida como prueba de mutación evolutiva (PME), la cual permite reducir el número de mutantes pero sin pérdida significativa de efectividad. A pesar de los beneficios que su aplicación ha reportado, los resultados empíricos hasta el momento han sido derivados de un número limitado de casos de estudio, un único conjunto de operadores de mutación así como una métrica poco representativa del rendimiento real de la técnica. Este artículo trata de aliviar estos defectos definiendo una nueva metodología para la evaluación de PME basada en la mejora real que se logra en el conjunto de pruebas al usar la estrategia evolutiva. Después, aplicamos esta metodología en nuevos experimentos con un conjunto de programas en C++ reales. Los resultados muestran que PME proporciona un buen rendimiento para la mayoría de casos y niveles de exigencia de mejora de las pruebas (en torno al 45% mejor que la selección aleatoria en el mejor caso). Los resultados revelan que incluso un conjunto reducido de mutantes seleccionado con PME es útil para incrementar la calidad de las pruebas, especialmente en los programas con un número mayor de mutantes. En definitiva, estos resultados apoyan el uso de técnicas basadas en búsqueda para resolver el problema de la selección de mutantes para la mejora eficiente de las pruebas. Adicionalmente, identificamos ciertos aspectos que previsiblemente podrían ayudar a mejorar la técnica PME.

Autores: Pedro Delgado-Pérez / Inmaculada Medina-Bulo / 
Palabras Clave: Algoritmo evolutivo - algoritmo genético - ingeniería del software basada en búsqueda - prueba de mutaciones

23 - Reducción de costes en la Industria 4.0 a través de la prueba del software

La Industria 4.0 está cambiando todos los aspectos de la producción. Este cambio requiere la evolución de los sistemas con una gran rapidez. En este contexto, la validación y verificación de los proyectos software cobra especial importancia. Un defecto en el software podría tener consecuencias catastróficas, por lo que es fundamental que los sistemas funcionen correctamente en producción. En este trabajo se presenta una solución para aliviar el coste de proyectos industriales mediante la automatización de la fase de pruebas del software. Esto se enmarca dentro de una colaboración entre la Universidad de Cádiz y Navantia, una empresa española líder en construcción naval que desarrolla grandes proyectos de software.

Autores: Kevin J. Valle-Gómez / Pedro Delgado-Pérez / Inmaculada Medina-Bulo / José Magallanes Fernández / 
Palabras Clave: automatización - Clang - Industria 4.0 - prueba del software

24 - Estado y evolución de la comunidad SBSE en España: un análisis bibliométrico

Dada la creciente complejidad de los sistemas software, disponer de métodos y técnicas eficientes para apoyar la realización de las diferentes actividades que se llevan a cabo en el ciclo de vida de un proyecto software ha despertado un gran interés. Así, el concepto de Ingeniería del Software basada en búsqueda (SBSE, search-based software engineering) ha permitido a ingenieros del software la aplicación de técnicas de optimización para automatizar tareas relativas a la gestión e implementación de un proyecto software. La comunidad científica en España no ha sido ajena a estos avances, contribuyendo desde la aparición de la disciplina en 2001. Este trabajo representa el primer estudio bibliométrico que resume y analiza el esfuerzo investigador realizado por la comunidad SBSE en España, así como su evolución en los últimos 18 años. Tras efectuar un riguroso proceso de búsqueda donde se han considerado más de 3700 artículos, se han identificado 232 publicaciones relevantes, donde participan hasta 145 autores de 19 instituciones diferentes. Entre los resultados más relevantes cabe destacar que casi la mitad de publicaciones se han llevado a cabo entre investigadores de distintas instituciones, la mayoría de ellas internacionales. No obstante, el nacimiento en 2015 del track sobre ingeniería del software guiada por búsqueda en las jornadas SISTEDES ha fomentado el contacto entre investigadores de instituciones españolas, mejorando el ratio de colaboraciones nacionales, así como la financiación dedicada a este campo en España.

Autores: Aurora Ramírez / Pedro Delgado-Pérez / Javier Ferrer / José Raúl Romero / Inmaculada Medina-Bulo / Francisco Chicano / 
Palabras Clave: Análisis bibliométrico - Comunidad española - ingeniería del software basada en búsqueda