REMEDY: architectural conformance checking for adaptive systems

Detalhes bibliográficos
Autor(a) principal: Santibánez, Daniel Gustavo San Martín
Data de Publicação: 2021
Tipo de documento: Tese
Idioma: eng
Título da fonte: Repositório Institucional da UFSCAR
Texto Completo: https://repositorio.ufscar.br/handle/ufscar/15421
Resumo: Adaptive Systems (ASs) evaluate their own behavior and change it when the evaluation indicates it is not accomplishing the established goals, or when better functionality or performance is possible. Nowadays these kind of systems actuate in several domains due to the capability to deal with uncertainties that came from dynamic contexts. Despite the relevance they are acquiring and according to our findings, the quality of the adaptive architecture have not been properly taken into account by software engineers and consequently this lack of attention may affect quality attributes such as maintenance and evolution. A possible explanation is that software engineers are not aware of reference models to design ASs or they do not implement them completely which makes arise a type of architectural anomaly called architectural drift that occurs when the Current Architecture (CA) deviates from the Planned Architecture (PA). Although there are several approaches to identify architectural drifts they use a generic vocabulary to specify structural and communication rules that do not reflect the semantics of a particular domain. In more specialized domains, specific abstractions become important and strongly influence how systems are designed. In these cases, systems involve components with very specific and specialized roles that end up guiding how the the architecture must be designed. Therefore to support the Architecture Conformance Checking (ACC) process in ASs we propose REMEDY, a domain-specific approach that allows the specifica- tion of the planned adaptive architecture based on the Monitor, Analyzer, Planner, Executor, Knowledge (MAPE-K) reference model, the recovery of the current adaptive architecture, the conformance checking process and architecture visualizations. To achieve our goals, we investigate the occurrences of architectural drifts in representative ASs. Based on our findings we propose a Domain Specific Language (DSL) that implements the canonical abstractions prescribed by the MAPE-K and others that are not evident in the reference model. Also, our approach provides pre- configured domain rules ready to be checked by software engineers without specifying them from the scratch. We perform two types of evaluation: a controlled experiment to evaluate our DSL and a quality validation of our conformance checking process. In the first one we evaluate productivity in terms of time and errors by using our DSL against to DCL-KDM which is a generic ACC approach. In the second one we evaluate the accuracy of our checking process in two subject systems. The results show that when software engineers design the adaptive part of an AS with our DSL the productivity increased over a generic approach. Also, our approach reached above of 90% of accuracy in terms of precision and recall at time to identify the architectural drifts.
id SCAR_e51dc3beb449d1d6163d0721e7d24d44
oai_identifier_str oai:repositorio.ufscar.br:ufscar/15421
network_acronym_str SCAR
network_name_str Repositório Institucional da UFSCAR
repository_id_str
spelling Santibánez, Daniel Gustavo San MartínCamargo, Valter Vieira dehttp://lattes.cnpq.br/6809743774407662http://lattes.cnpq.br/00931220995597092022-01-01T13:28:20Z2022-01-01T13:28:20Z2021-11-12SANTIBÁNEZ, Daniel Gustavo San Martín. REMEDY: architectural conformance checking for adaptive systems. 2021. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2021. Disponível em: https://repositorio.ufscar.br/handle/ufscar/15421.https://repositorio.ufscar.br/handle/ufscar/15421Adaptive Systems (ASs) evaluate their own behavior and change it when the evaluation indicates it is not accomplishing the established goals, or when better functionality or performance is possible. Nowadays these kind of systems actuate in several domains due to the capability to deal with uncertainties that came from dynamic contexts. Despite the relevance they are acquiring and according to our findings, the quality of the adaptive architecture have not been properly taken into account by software engineers and consequently this lack of attention may affect quality attributes such as maintenance and evolution. A possible explanation is that software engineers are not aware of reference models to design ASs or they do not implement them completely which makes arise a type of architectural anomaly called architectural drift that occurs when the Current Architecture (CA) deviates from the Planned Architecture (PA). Although there are several approaches to identify architectural drifts they use a generic vocabulary to specify structural and communication rules that do not reflect the semantics of a particular domain. In more specialized domains, specific abstractions become important and strongly influence how systems are designed. In these cases, systems involve components with very specific and specialized roles that end up guiding how the the architecture must be designed. Therefore to support the Architecture Conformance Checking (ACC) process in ASs we propose REMEDY, a domain-specific approach that allows the specifica- tion of the planned adaptive architecture based on the Monitor, Analyzer, Planner, Executor, Knowledge (MAPE-K) reference model, the recovery of the current adaptive architecture, the conformance checking process and architecture visualizations. To achieve our goals, we investigate the occurrences of architectural drifts in representative ASs. Based on our findings we propose a Domain Specific Language (DSL) that implements the canonical abstractions prescribed by the MAPE-K and others that are not evident in the reference model. Also, our approach provides pre- configured domain rules ready to be checked by software engineers without specifying them from the scratch. We perform two types of evaluation: a controlled experiment to evaluate our DSL and a quality validation of our conformance checking process. In the first one we evaluate productivity in terms of time and errors by using our DSL against to DCL-KDM which is a generic ACC approach. In the second one we evaluate the accuracy of our checking process in two subject systems. The results show that when software engineers design the adaptive part of an AS with our DSL the productivity increased over a generic approach. Also, our approach reached above of 90% of accuracy in terms of precision and recall at time to identify the architectural drifts.Sistemas Adaptativos (SAs) avaliam seu próprio comportamento e são capazes de modificá-lo quando a avaliação indica que ele não está mais atingindo seus objetivos ou quando uma nova funcionalidade e desempenho estão disponíveis. Atualmente esse tipo de sistemas atuam em vários domínios devido à capacidade de lidar com as incertezas de contextos dinâmicos. Apesar de sua relevância, a qualidade da arquitetura encarregada da adaptação não tem sido levada em conta apropriadamente pelos engenheiros de software e em consequência essa falta de atenção pode afetar atributos de qualidade tais como a manutibilidade e evolução. Uma possível explicação desse problema é que os engenheiros de software não são conscientes de modelos de referências para projetar sistemas adaptativos ou seguem parcialmente e isto faz com que surjam desvios arquiteturais, que ocorrem quando a Arquitetura Atual (CA) do sistema desvia-se da Arquitetura Planejada (PA). Apesar que existem muitas abordagens para identificar desvios arquiteturais, eles utilizam um vocabulário genérico para especificar as regras estruturais e de comunicação que não refletem a semântica de um domínio em particular. Em domínios especializados, abstrações específicas são muito importantes e influenciam fortemente como os sistemas devem ser projetados. Portanto, para apoiar as tarefas de Checagem de Conformidade Arquitetural (CCA) em (SAs) propõe-se REMEDY, uma abordagem específica de domínio que permite a especificação da arquitetura adaptativa planejada baseada no modelo de referência MAPE-K, a recuperação da arquitetura adaptativa atual, um processo de checagem de conformidade e a visualização das arquiteturas. Para atingir os objetivos, foram investigadas as ocorrências dos desvios arquiteturais em ASs representativos. Baseados nas descobertas, propõe-se uma Linguagem Específica de Domínio (DSL) que implementa as abstrações canônicas prescritas pelo MAPE-K e outras que não são evidentes no modelo de referência. Além disso, a abordagem fornece regras de domínio pré-configuradas prontas para ser checadas pelos engenheiros de software sem ter que especificá-las manualmente. Foram realizadas duas avaliações: um experimento controlado para avaliar a DSL e uma avaliação qualitativa para avaliar a atividade de checagem arquitetu- ral. A primeira avaliou a produtividade em termos de tempo e erros comparando a DSL com a DCL-KDM, uma CCA genérica. A segunda avaliou a acurácia do processo de checagem de conformidade em dois sistemas. Os resultados mostram que quando os engenheiros de software projetam a parte adaptativa de um SA com a DSL, a produtividade aumenta por sobre o uso de um enfoque genérico. Além disso, a abordagem proposta atingiu 90% de acurácia em termos de precisão e cobertura na hora de identificar os desvios arquiteturais.OutraANID - PFCHA/DOCTORADO BECAS CHILE 2016-72170024engUniversidade Federal de São CarlosCâmpus São CarlosPrograma de Pós-Graduação em Ciência da Computação - PPGCCUFSCarAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessArchitectural conformance checkingAdaptive systemArchitectural driftSistema adaptativoChecagem de conformidade arquiteturalDesvío arquiteturalCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOREMEDY: architectural conformance checking for adaptive systemsREMEDY: checagem de conformidade arquitetural para sistemas adaptativosinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisreponame:Repositório Institucional da UFSCARinstname:Universidade Federal de São Carlos (UFSCAR)instacron:UFSCARORIGINALTeseDanielSantibanez.pdfTeseDanielSantibanez.pdfTeseapplication/pdf3702947https://repositorio.ufscar.br/bitstream/ufscar/15421/2/TeseDanielSantibanez.pdf1b1a929ddec82a384397d6a6d7e41206MD52Carta Autorizacao.pdfCarta Autorizacao.pdfCarta de Autorizaçãoapplication/pdf169589https://repositorio.ufscar.br/bitstream/ufscar/15421/4/Carta%20Autorizacao.pdfdf9fc5fce4381f561274116f1031f7bfMD54CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufscar.br/bitstream/ufscar/15421/5/license_rdfe39d27027a6cc9cb039ad269a5db8e34MD55TEXTTeseDanielSantibanez.pdf.txtTeseDanielSantibanez.pdf.txtExtracted texttext/plain388610https://repositorio.ufscar.br/bitstream/ufscar/15421/6/TeseDanielSantibanez.pdf.txtfd669473f828dbf8198fe15cffa28394MD56Carta Autorizacao.pdf.txtCarta Autorizacao.pdf.txtExtracted texttext/plain1732https://repositorio.ufscar.br/bitstream/ufscar/15421/8/Carta%20Autorizacao.pdf.txt701b2c8b2356a0812d8bd8c53b32f987MD58THUMBNAILTeseDanielSantibanez.pdf.jpgTeseDanielSantibanez.pdf.jpgIM Thumbnailimage/jpeg7959https://repositorio.ufscar.br/bitstream/ufscar/15421/7/TeseDanielSantibanez.pdf.jpgf86261d36dac5ea1729337bc61aac170MD57Carta Autorizacao.pdf.jpgCarta Autorizacao.pdf.jpgIM Thumbnailimage/jpeg13590https://repositorio.ufscar.br/bitstream/ufscar/15421/9/Carta%20Autorizacao.pdf.jpg512131d03e10d679a08586da4411c180MD59ufscar/154212022-01-02 03:31:13.533oai:repositorio.ufscar.br:ufscar/15421Repositório InstitucionalPUBhttps://repositorio.ufscar.br/oai/requestopendoar:43222022-01-02T03:31:13Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)false
dc.title.eng.fl_str_mv REMEDY: architectural conformance checking for adaptive systems
dc.title.alternative.por.fl_str_mv REMEDY: checagem de conformidade arquitetural para sistemas adaptativos
title REMEDY: architectural conformance checking for adaptive systems
spellingShingle REMEDY: architectural conformance checking for adaptive systems
Santibánez, Daniel Gustavo San Martín
Architectural conformance checking
Adaptive system
Architectural drift
Sistema adaptativo
Checagem de conformidade arquitetural
Desvío arquitetural
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
title_short REMEDY: architectural conformance checking for adaptive systems
title_full REMEDY: architectural conformance checking for adaptive systems
title_fullStr REMEDY: architectural conformance checking for adaptive systems
title_full_unstemmed REMEDY: architectural conformance checking for adaptive systems
title_sort REMEDY: architectural conformance checking for adaptive systems
author Santibánez, Daniel Gustavo San Martín
author_facet Santibánez, Daniel Gustavo San Martín
author_role author
dc.contributor.authorlattes.por.fl_str_mv http://lattes.cnpq.br/0093122099559709
dc.contributor.author.fl_str_mv Santibánez, Daniel Gustavo San Martín
dc.contributor.advisor1.fl_str_mv Camargo, Valter Vieira de
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/6809743774407662
contributor_str_mv Camargo, Valter Vieira de
dc.subject.eng.fl_str_mv Architectural conformance checking
Adaptive system
Architectural drift
topic Architectural conformance checking
Adaptive system
Architectural drift
Sistema adaptativo
Checagem de conformidade arquitetural
Desvío arquitetural
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
dc.subject.por.fl_str_mv Sistema adaptativo
Checagem de conformidade arquitetural
Desvío arquitetural
dc.subject.cnpq.fl_str_mv CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
description Adaptive Systems (ASs) evaluate their own behavior and change it when the evaluation indicates it is not accomplishing the established goals, or when better functionality or performance is possible. Nowadays these kind of systems actuate in several domains due to the capability to deal with uncertainties that came from dynamic contexts. Despite the relevance they are acquiring and according to our findings, the quality of the adaptive architecture have not been properly taken into account by software engineers and consequently this lack of attention may affect quality attributes such as maintenance and evolution. A possible explanation is that software engineers are not aware of reference models to design ASs or they do not implement them completely which makes arise a type of architectural anomaly called architectural drift that occurs when the Current Architecture (CA) deviates from the Planned Architecture (PA). Although there are several approaches to identify architectural drifts they use a generic vocabulary to specify structural and communication rules that do not reflect the semantics of a particular domain. In more specialized domains, specific abstractions become important and strongly influence how systems are designed. In these cases, systems involve components with very specific and specialized roles that end up guiding how the the architecture must be designed. Therefore to support the Architecture Conformance Checking (ACC) process in ASs we propose REMEDY, a domain-specific approach that allows the specifica- tion of the planned adaptive architecture based on the Monitor, Analyzer, Planner, Executor, Knowledge (MAPE-K) reference model, the recovery of the current adaptive architecture, the conformance checking process and architecture visualizations. To achieve our goals, we investigate the occurrences of architectural drifts in representative ASs. Based on our findings we propose a Domain Specific Language (DSL) that implements the canonical abstractions prescribed by the MAPE-K and others that are not evident in the reference model. Also, our approach provides pre- configured domain rules ready to be checked by software engineers without specifying them from the scratch. We perform two types of evaluation: a controlled experiment to evaluate our DSL and a quality validation of our conformance checking process. In the first one we evaluate productivity in terms of time and errors by using our DSL against to DCL-KDM which is a generic ACC approach. In the second one we evaluate the accuracy of our checking process in two subject systems. The results show that when software engineers design the adaptive part of an AS with our DSL the productivity increased over a generic approach. Also, our approach reached above of 90% of accuracy in terms of precision and recall at time to identify the architectural drifts.
publishDate 2021
dc.date.issued.fl_str_mv 2021-11-12
dc.date.accessioned.fl_str_mv 2022-01-01T13:28:20Z
dc.date.available.fl_str_mv 2022-01-01T13:28:20Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv SANTIBÁNEZ, Daniel Gustavo San Martín. REMEDY: architectural conformance checking for adaptive systems. 2021. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2021. Disponível em: https://repositorio.ufscar.br/handle/ufscar/15421.
dc.identifier.uri.fl_str_mv https://repositorio.ufscar.br/handle/ufscar/15421
identifier_str_mv SANTIBÁNEZ, Daniel Gustavo San Martín. REMEDY: architectural conformance checking for adaptive systems. 2021. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2021. Disponível em: https://repositorio.ufscar.br/handle/ufscar/15421.
url https://repositorio.ufscar.br/handle/ufscar/15421
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de São Carlos
Câmpus São Carlos
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Ciência da Computação - PPGCC
dc.publisher.initials.fl_str_mv UFSCar
publisher.none.fl_str_mv Universidade Federal de São Carlos
Câmpus São Carlos
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFSCAR
instname:Universidade Federal de São Carlos (UFSCAR)
instacron:UFSCAR
instname_str Universidade Federal de São Carlos (UFSCAR)
instacron_str UFSCAR
institution UFSCAR
reponame_str Repositório Institucional da UFSCAR
collection Repositório Institucional da UFSCAR
bitstream.url.fl_str_mv https://repositorio.ufscar.br/bitstream/ufscar/15421/2/TeseDanielSantibanez.pdf
https://repositorio.ufscar.br/bitstream/ufscar/15421/4/Carta%20Autorizacao.pdf
https://repositorio.ufscar.br/bitstream/ufscar/15421/5/license_rdf
https://repositorio.ufscar.br/bitstream/ufscar/15421/6/TeseDanielSantibanez.pdf.txt
https://repositorio.ufscar.br/bitstream/ufscar/15421/8/Carta%20Autorizacao.pdf.txt
https://repositorio.ufscar.br/bitstream/ufscar/15421/7/TeseDanielSantibanez.pdf.jpg
https://repositorio.ufscar.br/bitstream/ufscar/15421/9/Carta%20Autorizacao.pdf.jpg
bitstream.checksum.fl_str_mv 1b1a929ddec82a384397d6a6d7e41206
df9fc5fce4381f561274116f1031f7bf
e39d27027a6cc9cb039ad269a5db8e34
fd669473f828dbf8198fe15cffa28394
701b2c8b2356a0812d8bd8c53b32f987
f86261d36dac5ea1729337bc61aac170
512131d03e10d679a08586da4411c180
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)
repository.mail.fl_str_mv
_version_ 1777472146287624192