Mostrar el registro sencillo del ítem

Tesis Doctoral

dc.contributor.advisorBenavides Cuevas, David Felipees
dc.contributor.advisorGalindo Duarte, José Ángeles
dc.creatorRodas Silva, Jorge Luises
dc.date.accessioned2020-01-10T11:18:17Z
dc.date.available2020-01-10T11:18:17Z
dc.date.issued2019-12-04
dc.identifier.citationRodas Silva, J.L. (2019). On the selection and analysis of software product line implementation components using intelligent techniques. (Tesis Doctoral Inédita). Universidad de Sevilla, Sevilla.
dc.identifier.urihttps://hdl.handle.net/11441/91434
dc.description.abstractEn los últimos años y con el creciente avance tecnológico, las empresas ya no se centran exclusivamente en diseñar un producto para un cliente (por ejemplo, el diseño de un sitio web para el Hotel Decameron), sino en producir para un dominio (por ejemplo, el diseño de sitios web para hoteles); es decir, el diseño de un producto que pueda adaptarse fácilmente a las diferentes variaciones que puedan existir para un mismo producto y que se adapte a los gustos individuales de los clientes. En la ingeniería de software, esto puede lograrse a través de la gestión de líneas de productos de software (SPL). Una SPL se define como un conjunto de sistemas que comparten un conjunto común de características que satisfacen la demanda de un mercado específico. Una SPL intenta reducir el esfuerzo y el costo de implementar y mantener en el tiempo un conjunto de productos de software similares; sin embargo, manejar la variabilidad en estos sistemas es una tarea dif´ıcil, a mayor n´umero de productos m´as complejo se hace manejarlos. Los modelos de caracter´ısticas (FMs) se emplean para representar gr´aficamente las partes comunes y variables de una SPL. Dada la gran cantidad de caracter´ısticas que se pueden derivar de un modelo de caracter´ıstica (FM), resulta dif´ıcil de gestionarlos. Para hacer frente a estos problemas se ha propuesto el An´alisis Autom´atico de Modelos de Caracter´ısticas (AAFM) que mediante el uso de herramientas asistidas por ordenador, se ocupa de la extracci ´on de información de los modelos de características. No obstante, existen ciertos escenarios en los que la configuración de un producto se convierte en una actividad compleja dado el número de componentes que existen para implementar una determinada característica. En esta tesis, exploramos técnicas inteligentes para resolver dos problemas que surgen al manejar una SPL: i. Por un lado, hemos identificado los problemas que surgen cuando un desarrollador desea mantener sus aplicaciones al d´ıa con los últimos avances tecnol´ogicos. La estrecha relaci ´on entre las caracter´ısticas de aplicaci ´on y los componentes de plataforma es dif´ıcil de rastrear. Los desarrolladores deben ser conscientes de las consecuencias que podr´ıan traer a las aplicaciones existentes cuando cambia el hardware donde se va a ejecutar; por ejemplo, cuando una aplicaci ´on se traslada de un smartphone a una computadora/tablet, o cuando una plataforma se actualiza a una nueva versi´on. Los diferentes tama˜nos y resoluciones de pantalla, la posible ausencia de un radio celular o el aumento de la cantidad de memoria pueden tener impactos positivos o negativos en una aplicaci ón. En este contexto, dado que las caracter´ısticas de aplicaci ´on y de plataforma están conceptualmente separadas, sus caracter´ısticas pueden modelarse en dos modelos distintos. Por consiguiente, manejar la trazabilidad entre estas dos capas y c´omo los posibles cambios en ciertas caracter´ısticas puedan afectar a la otra capa, es un problema que est´a por resolver. ii. Por otro lado, hemos encontrado lo complicado que es para el desarrollador de aplicaciones configurar un producto cuando hay una variedad de componentes de implementación para cada característica. Por ejemplo, un desarrollador web en WordPress busca manualmente aquellos componentes (plugins) que son factibles y más óptimos para cada sitio web. Esta tarea lleva tiempo y no siempre garantiza que los componentes seleccionados sean los m´as adecuados (en términos de calidad) para la aplicación requerida. Dos escenarios podrían surgir durante esta configuraci´on: primero, la selecci ´on emp´ırica de un componente, en la pr´actica, puede no proporcionar los resultados esperados; adem´as, no tener criterios basados en la experiencia de otros usuarios con respecto a estos componentes, podr´ıa inducir una mala selecci ´on y lograr una mala experiencia para el usuario final. En este contexto, el manejo de la relaci ´on entre los componentes de implementaci´on y sus caracter´ısticas es otro problema a resolver. Concretamente, las contribuciones de esta tesis se detallan a continuaci´on; Modelos de caracter´ısticas en m´ ultiples capas: En esta ´area introducimos un framework para el an´alisis de modelos de caracter´ısticas de m´ ultiples capas, llamado MAYA. Los objetivos que perseguimos con esta soluci´on son: i) modelar la variabilidad de los sistemas software en dos capas, incluyendo sus respectivas interdependencias; ii) definir un conjunto de operaciones que puedan imponerse a dichos modelos; iii) una implementaci ´on de referencia para el an´alisis de m´ ultiples capas basado en un caso de estudio en Android, y finalmente; iv) dos evaluaciones emp´ıricas que demuestran la viabilidad de nuestra propuesta en la pr´actica. Componentes de implementaci´on: La configuraci´on de un producto es una de las actividades m´as propensas a errores, m´as a ´un cuando para cada caracter´ıstica hay m´as de un componente que la implemente. Para gestionar estas configuraciones, introducimos un sistema de recomendaci ´on basado en componentes llamado RESDEC que facilita la selecci ´on de componentes de implementaci´on al crear productos en una SPL. Concretamente las contribuciones que se presentan con esta propuesta son: i) modelado del problema de selecci ´on de componentes de implementaci ´on como una tarea de recomendaci´on utilizando algoritmos de filtrado colaborativo y por contenido; ii) dise ˜no de un prototipo de herramienta de sistema de recomendaci´on basada en componentes lista para ser utilizada y extendida a otros entornos a partir de la selecci ´on de componentes de implementaci´on y, finalmente; iii) una evaluaci´on emp´ırica basado en sitios web de comercio electr ´onico enWordPress.es
dc.formatapplication/pdfes
dc.language.isoenges
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 Internacional*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/*
dc.titleOn the selection and analysis of software product line implementation components using intelligent techniqueses
dc.typeinfo:eu-repo/semantics/doctoralThesises
dcterms.identifierhttps://ror.org/03yxnpp24
dc.type.versioninfo:eu-repo/semantics/publishedVersiones
dc.rights.accessRightsinfo:eu-repo/semantics/openAccesses
dc.contributor.affiliationUniversidad de Sevilla. Departamento de Lenguajes y Sistemas Informáticoses
idus.format.extent131 p.es

FicherosTamañoFormatoVerDescripción
Copia_digital_no_afectada_por_ ...8.222MbIcon   [PDF] Ver/Abrir  

Este registro aparece en las siguientes colecciones

Mostrar el registro sencillo del ítem

Attribution-NonCommercial-NoDerivatives 4.0 Internacional
Excepto si se señala otra cosa, la licencia del ítem se describe como: Attribution-NonCommercial-NoDerivatives 4.0 Internacional