Análisis Automático de Modelos de Variabilidad : el Proceso SeVaTax
Authors: Matias Esteban Pol’la, 
Published: September 2021

Una línea de productos software provee de una plataforma común flexible, de manera que permita adaptarse a las diferentes necesidades de productos dentro de un rango de requerimientos establecido. Dicha flexibilidad se logra mediante la identificación, definición y posterior configuración de lo que se conoce como Variabilidad. Los modelos de variabilidad, como cualquier otro artefacto software, están sujetos a un proceso de análisis para detectar y (posiblemente) resolver errores e incompatibilidades. Esto lleva a la existencia de un proceso de análisis de variabilidad, que presta especial atención al momento de definición y uso de la variabilidad. Existen hoy día, propuestas que presentan diferentes métodos y/o herramientas para realizar un análisis automatizado de la variabilidad. Sin embargo, muchas de ellas se enfocan en sólo un tipo de modelo como entrada y/o sólo disponen de algunos escenarios de validación para controlar. A su vez, muy pocas proponen correcciones o identifican exactamente dónde se encuentran las anomalías o inconsistencias en los modelos. Entonces, se hace necesario mejorar este proceso de validación y su soporte, evaluando el rendimiento durante esa validación. En este sentido, esta Tesis propone el proceso llamado SeVaTax, que toma como entrada modelos de variabilidad (uno o más), generando una representación formal que permite analizar un conjunto de escenarios de validación mayor y proporciona un nivel diferente de respuestas, incluso proponiendo algunas acciones específicas para corregir los modelos. Se proponen dieciocho escenarios de validación, que son experimentalmente validados desde dos puntos de vista: (1) la exactitud de los resultados en términos de los errores que SeVaTax permite identificar; y (2) el cubrimiento, que muestra el grado en que el conjunto de escenarios está cubierto por otros enfoques con herramientas similares.

A software product line supplies a common and flexible platform, which allows to adaptto different needs of products from a range of established requirements. Such a flexibility is achieved through the identification, definition and configuration of what is called Variability. Variability models, like any other software artifact, are subjected to an analysis process to detect and (possibly) solve errors and incompatibilities. This fact leads to the existence of a process called variability analysis, which pays special attention to the variability definition and use. Nowadays, several approaches propose different methods and/or tools to automatically analyzing variability. However, many of these approaches only focus on one type of model as input, and/or only show some validation scenarios to control. In addition, few approaches propose corrections, or identify where the anomalies or inconsistencies are. Therefore, there is a need of improving the analysis process as well as its support, assessing their performance during validation. In this sense, this Thesis proposes the SeVaTax process, which takes variability models (one or more) as inputs, generates a formal representation that allows to analyze a larger set of validation scenarios, and gives a different level of responses to validation – including corrections in some cases. Eighteen validation scenarios are proposed, which are experimentally validated form two viewpoints: (1) accuracy, in terms of errors that SeVaTax identifies; and (2) covering, that shows the degree in which the set of scenarios is covered by similar proposals in the literature.