EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry

Bibliographic Details
Main Author: Ignaim, Karam
Publication Date: 2021
Language: eng
Source: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Download full: http://hdl.handle.net/1822/77295
Summary: Tese de Doutoramento em Informática
id RCAP_0ce1e4631f131f3966649e35713e13e9
oai_identifier_str oai:repositorium.sdum.uminho.pt:1822/77295
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling EvoSPL: An evolutionary approach for adopting software product lines in the automotive industryEvoSPL: Uma abordagem evolutiva para a adoção de linhas de produtos de software na indústria automotivamodelos de recursosre-engenharialinhas de produtos de softwarefeature mappingfeature modelsre-engineeringsoftware product linesEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaTese de Doutoramento em InformáticaAlgumas empresas desenvolvem uma família de produtos, criando a oportunidade de reutilizar e diferenciar os produtos da família. Na prática, o desenvolvimento e a evolução de tais produtos são normalmente realizados de maneira ad-hoc e as mudanças estão espalhadas por todos os artefactos de uma família. Porém, no longo prazo, tais abordagens ad-hoc apresentam grandes desvantagens para a manutenção e a evolução. Assim, é necessária uma reutilização sistemática. As linhas de produtos de software (SPLs) são amplamente adotadas pela indústria como uma ideia chave para reutilização sistemática. Para migrar os produtos existentes para uma SPL, especialmente na indústria automóvel, os profissionais precisam de uma abordagem completa. Nesta tese, apresentamos uma abordagem evolutiva, denominada EvoSPL, para gerir a evolução de SPLs. Além disso, a abordagem EvoSPL adota um processo sistemático de reengenharia que é composto por três fases principais: engenharia reversa, engenharia direta e mapeamento. A fase de engenharia reversa captura as partes comuns e variáveis dos produtos existentes no Feature Model (FM), que representa uma SPL no domínio automóvel. A fase de engenharia direta inicia os produtos restantes de uma família (que não foram usados na fase de engenharia reversa) na SPL e, em seguida, trata da sua evolução sempre que um cliente solicita um novo produto individual. A fase de mapeamento específica que fragmentos de código implementam cada feature do FM atual, usando a arquitetura de referência como um artefacto intermediário. A abordagem EvoSPL é suportada por alguns níveis de automação. Especificamente, a fase de mapeamento é suportada por uma ferramenta chamada friendlyMapper. A avaliação da abordagem EvoSPL é realizada no domínio automóvel, usando um estudo de caso de tamanho industrial na Bosch Company. Uma avaliação quantitativa e qualitativa foi usada para avaliar a abordagem num contexto industrial real. Além disso, a avaliação demonstra as capacidades da ferramenta friendlyMapper para realizar o mapeamento com sucesso. Os resultados revelam que a abordagem EvoSPL é útil para apoiar de forma eficaz e eficiente uma adoção e evolução de uma SPL num exemplo real da área automóvel.Companies often develop and evolve a products family, which creates the opportunity to reuse and differentiate the products in the family. In practice, the development and evolution of such products are typically performed in an ad-hoc manner. Thus, a systematic reuse is required. Software Product Lines (SPLs) have largely been adopted by industry as a key idea for systematic reuse. To migrate the existing products of a family into an SPL, especially in the automotive industry, practitioners still lack an end-to-end approach. In this thesis, we present an evolutionary approach, named EvoSPL, for managing consistently the evolution of SPLs in the automotive domain. The EvoSPL approach adopts a systematic re- engineering process that is composed of three main phases: reverse engineering, forward engineering, and mapping. The reverse engineering phase captures the commonality and variability of existing products in the (current) Feature Model (FM). In addition, this phase contributes with a feature identification method and feature model derivation method. The forward engineering phase bootstraps the remaining products of a family into the SPL, and then handles its evolution whenever a new individual product is requested. The mapping phase relates each feature of the current FM to its locations in the implementation code, using the reference architecture as an intermediate artifact, which helps to propagate the changes from the higher levels of abstraction (FM) to the lower ones (code), while preserving the consistency between them. The thesis is an industrial research describing an approach that handles the evolution of SPLs in a setting where the domain architecture is common within a products family. However, we believe that the EvoSPL approach could be applicable and useful in other industrial domains that fulfil the conditions of our approach. The mapping phase is supported by a tool called friendlyMapper. The evaluation of the EvoSPL approach is performed in the automotive domain using an industrial- sized case study at Bosch Car Multimedia company. A quantitative and qualitative evaluation was used to evaluate the approach within a real industrial context. Moreover, the evaluation demonstrates the friendlyMapper tool capabilities to perform the feature mapping successfully. The results reveal that the EvoSPL approach is useful for software engineers to effectively and efficiently support an SPL adoption and evolution in the automotive domain.Fernandes, João M.Ferreira, AndréUniversidade do MinhoIgnaim, Karam2021-02-052021-02-05T00:00:00Zdoctoral thesisinfo:eu-repo/semantics/publishedVersionapplication/pdfhttp://hdl.handle.net/1822/77295eng101618875info:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-05-11T04:35:49Zoai:repositorium.sdum.uminho.pt:1822/77295Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T14:52:40.251538Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry
EvoSPL: Uma abordagem evolutiva para a adoção de linhas de produtos de software na indústria automotiva
title EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry
spellingShingle EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry
Ignaim, Karam
modelos de recursos
re-engenharia
linhas de produtos de software
feature mapping
feature models
re-engineering
software product lines
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry
title_full EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry
title_fullStr EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry
title_full_unstemmed EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry
title_sort EvoSPL: An evolutionary approach for adopting software product lines in the automotive industry
author Ignaim, Karam
author_facet Ignaim, Karam
author_role author
dc.contributor.none.fl_str_mv Fernandes, João M.
Ferreira, André
Universidade do Minho
dc.contributor.author.fl_str_mv Ignaim, Karam
dc.subject.por.fl_str_mv modelos de recursos
re-engenharia
linhas de produtos de software
feature mapping
feature models
re-engineering
software product lines
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic modelos de recursos
re-engenharia
linhas de produtos de software
feature mapping
feature models
re-engineering
software product lines
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description Tese de Doutoramento em Informática
publishDate 2021
dc.date.none.fl_str_mv 2021-02-05
2021-02-05T00:00:00Z
dc.type.driver.fl_str_mv doctoral thesis
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/1822/77295
url http://hdl.handle.net/1822/77295
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv 101618875
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833594950648856576