Financiación: Ministerio de Economía y Competitividad, Programa Estatal de Investigación, Desarrollo e Innovación Orientada a los Retos de la Sociedad, Convocatoria 2015, Modalidad 1: «Proyectos De I+D+I» (Convocatoria cofinanciada con fondos FEDER)

Expediente:  TIN2015-64397-R

Duración:   01/01/2016 AL 31/12/2018

Presupuesto: 41.624 €

Resumen del proyecto:

En los últimos años la forma de hacer negocios, los productos y los servicios disponibles de las empresas se han transformado. Las empresas se enfrentan a una demanda global de productos cada vez más personalizados y de mayor calidad, que ha disparado una necesaria transición a empresas dirigidas por la demanda con un mejor uso de sus recursos. Un cada vez mayor protagonismo del software en productos tan heterogéneos como electrodomésticos, vehículos o dispositivos móviles ha permitido a las empresas abordar esta demanda de personalización en sus productos. Tal es el impacto del software en estos productos que influencia su diseño, construcción y evolución como conjunto dando lugar a lo que se conoce como Sistemas Intensivos en Software (SIS). El Estado del Arte para abordar el desafío de la personalización en masa para los SIS son las Líneas de Producto Software (LPS). Una LPS consiste en la ingeniería de un conjunto de productos con elementos comunes y variables mediante un proceso que maximiza la reutilización entre las diferentes variantes. Central a este proceso es la construcción de un modelo de variabilidad que explicita las características comunes y variables entre los productos. A partir de este modelo, las diferentes variantes de la LPS pueden ser configuradas y producidas mediante el ensamblado de activos reutilizables reduciendo el coste de los productos personalizados. Según un informe de 2015 del Software Engineering Institute de la Universidad Carnegie Mellon la reducción de costes es de hasta un 60%. A pesar de esta significativa reducción de costes, la adopción de una LPS por parte de una empresa es un proceso manual con unos costes prohibitivos únicamente al alcance de grandes empresas consolidadas en el mercado. La hipótesis de partida de este proyecto es que mediante el uso de técnicas de Extracción de Variabilidad Dirigidas por Modelos (aplicadas tanto en tiempo de diseño como en tiempo de ejecución) será posible automatizar en gran parte la adopción de LPS a partir de los activos ya existentes en las empresas. Este nivel de automatización contribuirá directamente a disminuir el coste de adopción de las LPS, facilitando a las empresas beneficiarse de las ventajas de las LPS para abordar la demanda de productos cada vez más personalizados y de mayor calidad. Por lo tanto, el objetivo general del proyecto es definir nuevas técnicas dirigidas por modelos para la identificación y localización de características que permitan construir un motor de adopción de LPS a partir de los activos ya existentes en las empresas. Este motor se complementará con un entorno de gestión de la variabilidad que se alimenta de los resultados del motor de adopción. Tanto la frecuente participación en la conferencia principal de líneas de producto Software (SPLC) como la experiencia durante los últimos cinco años desarrollando LPS en dominios como los electrodomésticos y los vehículos para empresas líderes a nivel europeo, avalan la capacidad del grupo para llevar cabo este proyecto. Además, esta experiencia pone al grupo en una situación privilegiada desde el punto de vista de la validación al contar con LPS reales de dimensiones industriales que puede utilizar como oráculos para comprobar que los resultados extraídos por el motor de adopción de LPS son correctos y completos.

Summary:

In the past few years, the way of conducting business, products, and available services has changed for most companies as they confront a global demand for highly customizable products which also account for over-the-top quality. This fact has triggered a necessary transition for demand-driven companies, which also must improve the usage of their resources. An increase on the role carried out by software in products as heterogeneous as household appliances, vehicles, or mobile devices, has allowed companies to tackle this product-customization demand. Such is the impact of software on these products that it influences their design, construction, and evolution as a whole, resulting in what is known as Software-Intensive Systems (SIS). The Software Product Lines (SPL) technique is the State of the Art approach to the SIS mass customization challenge. An SPL consists of engineering a set of products with common and variable elements through a process that maximizes re-usage between the different product variants. The core of this process is the construction of a variability model that makes the products common and variable features explicit. From this model, distinct variants of the SPL can be configured and produced  by assembling re-usable assets, thus reducing the cost of customized products. According to a 2015 report from the Software Engineering Institute at the Carnegie Mellon University, cost reduction brought by SPL is up to a 60%. In spite of this significant cost reduction, SPL adoption by a company is a manual process with prohibitive costs, affordable only by large corporations well consolidated in the market. The starting hypothesis of this project is that, through the usage of Model-Driven Variability Extraction techniques (applied both in design and run time), it will be possible to automate to a great extent SPL adoption from a companys already existing assets. This automation level will directly contribute to diminish SPL adoption costs, therefore making it easy for companies to benefit from SPL advantages when engaging the previously mentioned product high-level customization and over-the-top quality demand. Hence, the general aim of the project is to define new model-driven techniques to identify and locate features that allow the building of an SPL adoption engine from companies already existing assets. This engine will be complemented by a variability management environment, powered by the adoption engine results. Both the frequent participation in the main Software Product Line Conference (SPLC) and the experience acquired over the five last years developing SPLs for European-level leader companies in domains such as household appliances and vehicles, endorse the capability of the group to carry out this project. Moreover, this experience seats the group in a privileged position from the validation point of view, being that it is made possible to rely on industrially-sized, real-world SPLs which can be used as oracles to verify that the results extracted by the SPL adoption engine are both correct and complete.

Grupo de investigación Software Variability for Internet of Things (SVIT)