Optimización de modelos de características con aplicaciones para la adaptación de composiciones de servicios

Los modelos de características, o feature models (FM), son un formalismo aceptado para capturar la variabilidad y reglas de configuración de sistemas de software complejos. Estos modelos son una representación compacta de las posibles configuraciones o estados de un sistema, en términos de feature...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autor principal: Sánchez, Luis Emiliano
Formato: Artículo revista
Lenguaje:Español
Publicado: Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas 2019
Materias:
FM
QoS
Acceso en línea:https://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/2100
Aporte de:
id I21-R190-123456789-2100
record_format ojs
institution Universidad Nacional del Centro
institution_str I-21
repository_str R-190
container_title_str Repositorio Institucional de Acceso Abierto (RIDAA)
language Español
format Artículo revista
topic Ciencias de la computación
Feature models
FM
Modelos de características
Sistemas de software
Quality of Service
QoS
Ingeniería del software
Algoritmos
spellingShingle Ciencias de la computación
Feature models
FM
Modelos de características
Sistemas de software
Quality of Service
QoS
Ingeniería del software
Algoritmos
Sánchez, Luis Emiliano
Optimización de modelos de características con aplicaciones para la adaptación de composiciones de servicios
topic_facet Ciencias de la computación
Feature models
FM
Modelos de características
Sistemas de software
Quality of Service
QoS
Ingeniería del software
Algoritmos
author Sánchez, Luis Emiliano
author_facet Sánchez, Luis Emiliano
author_sort Sánchez, Luis Emiliano
title Optimización de modelos de características con aplicaciones para la adaptación de composiciones de servicios
title_short Optimización de modelos de características con aplicaciones para la adaptación de composiciones de servicios
title_full Optimización de modelos de características con aplicaciones para la adaptación de composiciones de servicios
title_fullStr Optimización de modelos de características con aplicaciones para la adaptación de composiciones de servicios
title_full_unstemmed Optimización de modelos de características con aplicaciones para la adaptación de composiciones de servicios
title_sort optimización de modelos de características con aplicaciones para la adaptación de composiciones de servicios
publisher Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas
publishDate 2019
url https://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/2100
work_keys_str_mv AT sanchezluisemiliano optimizaciondemodelosdecaracteristicasconaplicacionesparalaadaptaciondecomposicionesdeservicios
first_indexed 2022-07-04T14:33:18Z
last_indexed 2022-07-04T14:33:18Z
bdutipo_str Revistas
_version_ 1764819786863214593
description Los modelos de características, o feature models (FM), son un formalismo aceptado para capturar la variabilidad y reglas de configuración de sistemas de software complejos. Estos modelos son una representación compacta de las posibles configuraciones o estados de un sistema, en términos de features (características) y relaciones lógicas entre estas. Las configuraciones de un sistema pueden diferenciarse por las propiedades no funcionales que definen su calidad de servicio o QoS (del inglés Quality of Service), como el tiempo de respuesta, disponibilidad, costo, entre otros atributos. Por lo tanto, surge el problema de seleccionar una configuración válida de características que optimice una función objetivo asociada a preferencias de calidad de servicio. Mediante este problema, denominado selección de configuraciones u optimización de FMs, se pueden abordar aplicaciones de Ingeniería de Software que involucran seleccionar una de entre varias configuraciones posibles de un sistema o artefacto. Algunos ejemplos son: derivar un producto de una línea de productos de software, adaptar la configuración de un sistema, o seleccionar una composición de servicios entre múltiples servicios candidatos. El problema se torna complejo si se considera que el número de posibles configuraciones puede crecer exponencialmente debido a la variabilidad del sistema, es decir, la cantidad de características y parámetros alternativos que pueden combinarse. Este es un problema de optimización combinatoria NP-Hard, y ha sido abordado en diferentes trabajos con distintos algoritmos. Sin embargo, estos algoritmos presentan limitaciones y a menudo apelan a simplificaciones del problema que acotan su aplicación, particularmente en escenarios en tiempo de ejecución donde la decisión debe tomarse en tiempo acotado. Además, las propiedades de QoS a optimizar suelen entrar en conflicto y son difíciles de estimar porque emergen de la interacción entre las partes que forman el sistema. Por lo tanto, es importante que el algoritmo soporte funciones de QoS adecuadas como criterios de optimización del problema. Es este contexto, esta tesis propone un enfoque basado en FMs para gestionar la adaptación de sistemas basados en composiciones de servicios. La composición de servicios es un problema particular de selección de configuraciones que consiste en seleccionar servicios individuales para construir un nuevo servicio compuesto con funcionalidad más compleja. El enfoque, denominado FMPlanning (del inglés Feature Model-based adaptation Planning approach), se basa en un algoritmo flexible para resolver el problema de selección de configuraciones en FMs, y se materializa en un planificador de adaptación que provee de capacidad auto-adaptativa a sistemas de software. Por un lado, el algoritmo, denominado CSA (por Configuration Selection Algorithm), utiliza técnicas de búsqueda heurística y aborda limitaciones presentes en otros trabajos de la literatura. CSA puede parametrizarse para encontrar soluciones exactas y aproximadas del problema, y presenta una serie de propiedades que lo hacen adecuado para su aplicación tanto en decisiones en tiempo de desarrollo como en tiempo de ejecución. Para evaluar CSA, se realizó una serie de experimentos con modelos sintéticos y reales para compararlo empíricamente con alternativas de terceros, mostrando mejoras significativas de su desempeño. Por otro lado, el planificador se encarga de seleccionar las acciones con las que se adapta la configuración del sistema, e internamente utiliza el algoritmo CSA para llevar a cabo esta tarea. Para aplicar FMPlanning se debe seguir un proceso de desarrollo en el que se representa la variabilidad del sistema mediante FMs y se definen objetivos de adaptación en base a propiedades de QoS. Para validar el enfoque, se utilizaron 4 casos de estudio sobre sistemas basados en servicios donde se ejercitó la selección de configuraciones en distintos contextos de ejecución y con distintas propiedades de QoS a optimizar, mostrando así la aplicabilidad y beneficios del enfoque.