A Dashboard for Decision Support in Self-Adaptive Cloud Applications

Detalhes bibliográficos
Autor(a) principal: Ribeiro, João David Marques dos Santos
Data de Publicação: 2022
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10316/102146
Resumo: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
id RCAP_cf60d937d7e05dbb0c1bc7315ea60aed
oai_identifier_str oai:estudogeral.uc.pt:10316/102146
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling A Dashboard for Decision Support in Self-Adaptive Cloud ApplicationsUma Dashboard para Suporte à Decisão em Aplicações Cloud Auto-Adaptativasaplicações Cloudsistemas auto-adaptativosTMAsuporte à decisãomonitorizaçãoCloud applicationsself-adaptive systemsTMAdecision supportmonitoringDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e TecnologiaCloud computing has become so popular and widely adopted that plenty of applications, or parts of it, are hosted in a cloud environment. Furthermore, with emerging technologies like containers that improve the service offered by clouds, systems continue to grow and become larger, more fragmented, and more complex. That complexity requires constant monitoring and adaptation to keep up with demand, and maintain or improve performance without increasing costs unnecessarily.Also, if a system can self-adapt, management activity becomes easier as adaptations no longer require supervisors to manually perform them.Although there are some interesting monitoring solutions, they do not offer automation of the adaptability part. Thus, self-adaptive enabling tools become much more attractive as they offer automation of the whole systems management activity, from monitoring to adaptations. Among self-adaptive enabling tools, there are some disadvantages such as environmental restrictions to cloud providers, the inability to manage more than one system, and the nonexistence of a complete control loop capable of integrating with any type of system. TMA (Trustworthiness Monitoring & Assessment Framework) is a monitoring and management platform that implements a complete control loop capable of providing any system with self-adaptive capabilities. It dispatches adaptations on systems based on quality models, which are weighted trees of metrics representing the requirements of systems. Also, it can manage more than a single system.This work aims at developing a dashboard for TMA, focusing on functionalities related to systems monitoring such as the creation and management of charts, metrics values simulations, and the creation of metrics and quality models. To support this, TMA's API component had to be extended and the Analyze component automated. Additionally, features for managing adaptation rules were created so, TMA's Planning component had its architecture changed and its code extended and altered. The dashboard was implemented upon React's framework, using Semantic UI for styling, while the TMA components were reprogrammed in the same language they were written. The choice of development frameworks for the dashboard was based on multiple factors such as experience, responsiveness, and simplicity. Also, as Maintainability and Usability are attributes the product should have, React was chosen as it suits both properties. Furthermore, it is a trending technology, which means there is a lot of support that should ease the development activity.A computação em nuvem tornou-se tão popular e amplamente adoptada que muitas aplicações, ou partes delas, estão alojadas num ambiente cloud. Além disso, com tecnologias emergentes como os containers que melhoram o serviço oferecido pelas clouds, os sistemas continuam a crescer e a tornar-se maiores, mais fragmentados e mais complexos. Essa complexidade requer constante monitorização e adaptação para lidar com a carga, e manter ou melhorar o desempenho sem aumentar desnecessariamente os custos. Além disso, se um sistema se conseguir auto-adaptar, a tarefa de gestão é facilitada, uma vez que deixa de ser necessário que os supervisores executem as adaptações manualmente.Embora existam algumas soluções de monitorização interessantes, elas não oferecem automatização da parte da adaptação. Assim, ferramentas que permitem auto-adaptação tornam-se muito mais atractivas, uma vez que oferecem automatização de toda a actividade de gestão de sistemas, desde monitorização a adaptações. Entre estas ferramentas existem algumas desvantagens, tais como a restrição ambiental a fornecedores cloud, incapacidade de gerir mais do que um sistema e inexistência de um ciclo de controlo completo capaz de se integrar com qualquer tipo de sistema. O TMA (Trustworthiness Monitoring & Assessment Framework) é uma plataforma de monitorização e gestão que permite auto-adaptação em sistemas. Ele executa adaptações baseando-se em modelos de qualidade, que são árvores de métricas ponderadas que representam os requisitos dos sistemas. Além disso, o TMA pode gerir mais do que um único sistema. Neste trabalho foi desenvolvida uma dashboard para o TMA, focada em funcionalidades de monitorização de sistemas como a criação e gestão de gráficos, simulações de valores de métricas, e criação de métricas e modelos de qualidade. Para isso, a componente API do TMA teve de ser extendida e a componente Analyze de ser automatizada. Adicionalmente, funcionalidades para a gestão das regras de adaptaçãoforam criadas, por isso a arquitetura da componente Planning do TMA foi alterada e o seu código alargado e alterado. A dashboard foi implementada utilizando a framework React, e a framework Semantic UI para estilização, enquanto que as componentes do TMA foram reprogramadas na mesma linguagem em que foram escritas. A escolha das frameworks foi baseada em experiência, responsividade e simplicidade. Além disso, a manutenção e a usabilidade são atributos que o produto deve possuir, daí a escolha do React por ser adequado a ambos. Sobre isso, é uma tecnologia popular, o que significa que há muito suporte e, portanto, a actividade de desenvolvimento deverá ser facilitada.Outro - This work is partially supported by the project TalkConnect - Voice Architecture over Distributed Network (reference POCI-01-0247-FEDER-039676) financed by Fundo Europeu de Desenvolvimento Regional (FEDER) through COMPETE 2020, from Portugal 2020.2022-07-19info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://hdl.handle.net/10316/102146http://hdl.handle.net/10316/102146TID:203062310engRibeiro, João David Marques dos Santosinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2022-09-27T20:41:24Zoai:estudogeral.uc.pt:10316/102146Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T21:19:12.190519Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv A Dashboard for Decision Support in Self-Adaptive Cloud Applications
Uma Dashboard para Suporte à Decisão em Aplicações Cloud Auto-Adaptativas
title A Dashboard for Decision Support in Self-Adaptive Cloud Applications
spellingShingle A Dashboard for Decision Support in Self-Adaptive Cloud Applications
Ribeiro, João David Marques dos Santos
aplicações Cloud
sistemas auto-adaptativos
TMA
suporte à decisão
monitorização
Cloud applications
self-adaptive systems
TMA
decision support
monitoring
title_short A Dashboard for Decision Support in Self-Adaptive Cloud Applications
title_full A Dashboard for Decision Support in Self-Adaptive Cloud Applications
title_fullStr A Dashboard for Decision Support in Self-Adaptive Cloud Applications
title_full_unstemmed A Dashboard for Decision Support in Self-Adaptive Cloud Applications
title_sort A Dashboard for Decision Support in Self-Adaptive Cloud Applications
author Ribeiro, João David Marques dos Santos
author_facet Ribeiro, João David Marques dos Santos
author_role author
dc.contributor.author.fl_str_mv Ribeiro, João David Marques dos Santos
dc.subject.por.fl_str_mv aplicações Cloud
sistemas auto-adaptativos
TMA
suporte à decisão
monitorização
Cloud applications
self-adaptive systems
TMA
decision support
monitoring
topic aplicações Cloud
sistemas auto-adaptativos
TMA
suporte à decisão
monitorização
Cloud applications
self-adaptive systems
TMA
decision support
monitoring
description Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
publishDate 2022
dc.date.none.fl_str_mv 2022-07-19
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10316/102146
http://hdl.handle.net/10316/102146
TID:203062310
url http://hdl.handle.net/10316/102146
identifier_str_mv TID:203062310
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799134086305939456