CMSA para el problema de la generaci´ on de casos de prueba priorizados en l´ıneas de productos software Jos´e Antonio Ortega Toro 1 , Javier Ferrer 2 , and Francisco Chicano 2 1 CERN, Suiza joseaortegatoro@gmail.com 2 Universidad de M´alaga, Espa˜ na {ferrer, chicano}@lcc.uma.es Resumen En las l´ıneas de producto software puede ser dif´ıcil o incluso imposible probar todos los productos de la familia debido al gran n´ umero de combinaciones de caracter´ısticas que puede existir [1]. Esto conlleva la necesidad de buscar un subconjunto de productos de la familia que nos permita probar todas las posibles combinaciones. Los algoritmos del estado del arte basados en heur´ısticos junto con programaci´ on lineal en- tera (ILP) son lo bastante r´ apidos para instancias de tama˜ no peque˜ no o mediano. Sin embargo, existen algunas instancias del mundo real que son demasiado grandes para obtener una respuesta en un tiempo razona- ble, debido al crecimiento exponencial del espacio de b´ usqueda. Por otro lado, estos heur´ısticos no siempre conducen a las mejores soluciones. En este trabajo proponemos un nuevo enfoque basado en un algoritmo me- taheur´ıstico h´ıbrido llamado Construct, Merge, Solve & Adapt (CMSA). Comparamos este enfoque con un algoritmo del estado del arte basado en programaci´ on entera y en algoritmos h´ıbridos. El an´ alisis muestra que el algoritmo propuesto conduce a soluciones de mayor calidad. Keywords: ıbridos exactos/heur´ısticos, Aleatorizaci´on, L´ıneas de Productos Software, Optimizaci´on Combinatoria, Modelos de caracter´ısticas, Testeo por pares. 1. Introducci´ on Las l´ıneas de productos software, conocidas en ingl´es como Software Product Lines (SPLs) son usadas para conseguir un desarrollo software y un manejo de los productos software eficiente, reduciendo los costes y el tiempo de desarrollo, as´ı como los gastos de mantenimiento [2]. Las l´ıneas de productos se componen de productos con muchas caracter´ısticas en com´ un. Pero adem´as de esto, poseen una gran variabilidad entre los productos de la misma familia. Esta variabilidad se debe a la personalizaci´on de los pro- ductos e implica un gran desaf´ıo cuando nos enfrentamos a la fase de pruebas de una l´ınea de productos. Esta variabilidad implica una explosi´on combinatoria