Use este identificador para citar ou linkar para este item: https://repositorio.ufba.br/handle/ri/36787
Tipo: Tese
Título: ToffA-DAS: an approach to conduct trade-off analysis for dynamically adaptable software
Título(s) alternativo(s): ToffA-DAS: uma abordagem para conduzir análises de trade-off para software dinamicamente adaptável
Autor(es): Carvalho, Michelle Larissa Luciano
Primeiro Orientador: Almeida, Eduardo Santana de
metadata.dc.contributor.advisor-co1: Masiero, Paulo Cézar
metadata.dc.contributor.referee1: Almeida , Eduardo Santana de
metadata.dc.contributor.referee2: Masiero, Paulo Cesar
metadata.dc.contributor.referee3: Melo, Rafael Augusto de
metadata.dc.contributor.referee4: Maciel, Rita Suzana Pitangueira
metadata.dc.contributor.referee5: Rubira, Cecília Mary Fischer
Resumo: Os processos de engenharia das linhas de produtos de software dinâmico (LPSD) visam projetar software dinamicamente adaptável (SAD), aumentando a flexibilidade para a geração de um grande número de configurações. Isso resulta em uma explosão de espaço de configuração do software, tornando a análise mais difícil e complicando o trabalho do desenvolvedor. Nesse sentido, os engenheiros de software precisam encontrar uma combinação de funcionalidades do sistema que possam satisfazer simultaneamente as restrições especificadas em modelos de funcionalidades e de contexto, requisitos não funcionais (RNFs) e preferências das partes interessadas. Isso significa que eles têm que medir várias configurações até encontrar as viáveis, caracterizando o processo de configuração do produto em um problema de otimização complexo. A maioria dos estudos existentes não focam nas interações entre as informações contextuais e os RNFs ao lidar com a seleção de funcionalidades para atender aos objetivos de qualidade desejados. Além disso, tais estudos não usam nenhuma estratégia de planejamento para apoiar o processo de seleção de configuração. Com base nessas lacunas de pesquisa, propomos uma abordagem que (i) gerencia as funcionalidades e contextos do sistema; (ii) facilita a compreensão de como os produtos de uma LPSD podem se comportar a partir de uma determinada mudança de contexto, e (iii) permite realizar análise trade-off a fim de encontrar configurações válidas e viáveis, que atendam as restrições e as interações entre as informações contextuais e RNFs. Com o objetivo de apoiar a modelagem de variabilidade de contexto, propusemos a técnica estendida de model game de funcionalidade sensível ao contexto (eCFM) para lidar com restrições entre contextos. Em seguida, definimos a abordagem Análise Trade-off para SAD (ToffA-DAS) para lidar com o processo de seleção de configuração que abrange as interações entre as informações contextuais e os RNFs. Também propusemos uma estratégia para analisar as mudanças de contexto, a fim de definir modelos de adaptação para cada priorização das funcionalidades do sistema, contextos e RNFs. Por fim, evoluímos nossa abordagem e chamamos de ToffA-DAS PLUS (ToffA-DAS+). O ToffA-DAS é baseado na técnica de programação linear inteira, enquanto o ToffA-DAS + usa um algoritmo genético. Realizamos um conjunto de estudos empíricos a fim de avaliar a proposta desta tese. Primeiramente, realizamos uma pesquisa para avaliar o eCFM do ponto de vista da expressividade para modelar as restrições de contexto e facilidade de uso. Na verdade, a análise foi focada na compreensibilidade da modelagem de variabilidade contextual. Em seguida, realizamos um estudo baseado em simulações para reunir evidências iniciais sobre a viabilidade do uso do ToffA-DAS. Esse estudo é baseado em como conduzir uma análise de trade-off e definir modelos de adaptação a partir das configurações viáveis encontradas na análise. Também realizamos um estudo exploratório para avaliar como as configurações obtidas pela execução do ToffA-DAS afetam o nível de satisfação geral dos RNFs. Por fim, avaliamos a evolução da nossa abordagem em comparação com a versão anterior. Como resultado do primeiro estudo, o eCFM foi considerado uma técnica com grande expressividade para representar regras de adaptação entre contextos e funcionalidades do sistema, além da facilidade de uso e organização com o agrupamento de contextos. Portanto, concluímos que os engenheiros de software podem levar em consideração o uso da técnica eCFM para modelar SAD. No segundo estudo, ToffA-DAS apresentou resultados consistentes de acordo com os cenários do mundo real, satisfez os valores de utilidade estimados e as restrições do modelo. O terceiro estudo mostrou que o conjunto de configurações gerado pela execução do ToffA-DAS proporciona altos níveis de satisfação dos RNFs. No último estudo, coletamos evidências de que o ToffA-DAS+ sugere mais soluções a partir de possíveis configurações válidas do modelo. Com base nos estudos mencionados acima, evidenciamos que nossa abordagem pode ser útil quando os engenheiros de software precisam de ajuda na compreensão de como projetar uma variedade de opções configuráveis para LPSD. É baseado no princípio de que cada opção de configuração deve ser viável para atender a certas mudanças contextuais sem perder a qualidade do serviço. Com o uso de nossa abordagem, os engenheiros de software podem analisar e simular exaustivamente uma solução antes de implementá-la.
Abstract: The Dynamic Software Product Lines (DSPL) engineering processes aim to design Dynamically Adaptable Software (DAS) by increasing the flexibility for the generation of a huge number of configurations. It results in a software configuration space explosion making the analysis more difficult and complicating the developers work. In this sense, software engineers need to find a combination of systems features that can simultaneously satisfy constraints specified in feature and context models, Non-functional Requirements (NFRs), and stakeholders preferences. It means that they have to measure many configurations until finding the feasible ones, characterizing the product configuration process in a complex optimization problem. Most of the existing studies do not focus on the interactions between contextual information and NFRs when dealing with feature selection to meet the desired quality objectives in DAS. In addition, such studies do not use any planning strategy to support the configuration selection process. Based on these research gaps, we propose an approach that (i) manages the systems features and contexts; (ii) facilitates the understanding of how DSPL applications can behave from a certain context change, and (iii) enables to conduct trade-off analysis in order to find valid and feasible configurations, which meet the constraints and the interactions between contextual information and NFRs. Aiming to support the context variability modeling of DAS, we proposed the Extended Context-aware Feature Modeling (eCFM) technique to deal with constraints among contexts. Next, we defined the DAS Trade-off Analysis (ToffADAS) approach to deal with the configuration selection process embracing interactions between contextual information and NFRs. We also proposed a strategy to analyze context changes in order to define adaptation models for each prioritization of the systems features, contexts, and NFRs. Finally, we evolved our approach and named it as DAS Trade-off Analysis PLUS (ToffA-DAS+). ToffA-DAS is based on the integer linear programming technique, whereas ToffA-DAS+ uses a genetic algorithm. We performed a set of empirical studies in order to evaluate the proposal for this thesis. First, we conducted a survey to evaluate eCFM from the viewpoint of expressiveness to model the context constraints and easiness of use. Indeed, the analysis was focused on the comprehensibility of contextual variability modeling. Next, we performed a study based on simulations to gather initial evidence about the feasibility of using ToffA-DAS. It is based on how to conduct trade-off analysis and define adaptation models from feasible configurations found in the analysis. We also conducted an exploratory study to evaluate how the configurations obtained by the execution of ToffA-DAS affect the overall satisfaction level of NFRs. Finally, we evaluated the evolution of our approach in comparison with the previous release. As a result of the first study, the eCFM was considered a technique with a great expressiveness to represent adaptation rules among contexts and system features, besides the easiness of use and organization with the grouping of contexts. Therefore, we argue that the software engineers may take into account the use of eCFM technique to model DAS. In the second study, ToffA-DAS presented consistent results in accordance with the real-world scenarios and satisfied the estimated utility values and model constraints. The third study showed that the set of configurations generated by ToffA-DAS execution provide high satisfaction levels of NFRs. In the last study, we collected evidence that ToffA-DAS+ suggests more solutions from then possible valid configurations of the model. Based on the aforementioned studies, we evidenced that our approach can be handy when software engineers need assistance in the understanding of how to design a variety of configurable options for DSPL applications. It is based on the principle that each configuration option must be feasible to meet certain contextual changes without losing service quality. With the usage of our approach, software engineers can exhaustively analyze and simulate a solution before implementing it.
Palavras-chave: Software dinamicamente adaptável
Linhas de Produtos de Software Dinâmico (LPSD)
Gerenciamento de variabilidade
Análise de modelo de funcionalidades
Engenharia de requisitos
Otimização
Modelo de adaptação
Engenharia de software
CNPq: CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Idioma: eng
País: Brasil
Editora / Evento / Instituição: Universidade Federal da Bahia
Sigla da Instituição: UFBA
metadata.dc.publisher.department: Instituto de Computação - IC
metadata.dc.publisher.program: Programa de Pós-Graduação em Ciência da Computação (PGCOMP) 
Citação: CARVALHO, Michelle Larissa Luciano. ToffA-DAS: an approach to conduct trade-off analysis for dynamically adaptable software. 2020. 182 f. Tese (Doutorado em Ciência da Computação) Instituto de Computação, Universidade Federal da Bahia, Salvador, BA, 2020.
Tipo de Acesso: CC0 1.0 Universal
metadata.dc.rights.uri: http://creativecommons.org/publicdomain/zero/1.0/
URI: https://repositorio.ufba.br/handle/ri/36787
Data do documento: 24-Set-2020
Aparece nas coleções:Tese (PGCOMP)

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
Tese_Michelle_VersãoFinal.pdfTese de Doutorado de Michelle Larissa Luciano Carvalho15,03 MBAdobe PDFVisualizar/Abrir


Este item está licenciada sob uma Licença Creative Commons Creative Commons