Using model based analysis to improve software energy efficiency

Detalhes bibliográficos
Ano de defesa: 2022
Autor(a) principal: Alves, Danilo da Silva
Orientador(a): Duarte, Lucio Mauro
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Não Informado pela instituição
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Palavras-chave em Inglês:
Link de acesso: http://hdl.handle.net/10183/243186
Resumo: Recentemente, o consumo de energia tornou-se uma preocupação no cenário de desenvolvimento de software. Isso se deve principalmente aos diferentes tipos de plataformas atuais em que o software é executado. Estudos mostram que os usuarios tendem a rejeitar aplicativos móveis que esgotam rapidamente a energia da bateria, apontando o consumo de energia como um aspecto relevante. Apesar desse interesse emergente na métrica de consumo de energia de software, os desenvolvedores ainda carecem de conhecimentos sólidos sobre como projetar, construir e evoluir software considerando a eiieiêneia energética. Com o objetivo de fornecer algum suporte necessário, este trabalho apresenta definições em alto nível de propriedades para a analise do consumo de energia de software durante todas as fases de desenvolvimento de software. Essas propriedades e suas análises dependem de uma abordagem baseada em modelos, que usa Labelled Transition Systems (LTS) com o acréscimo de custos de energia e informações probabilístieas para descrever o comportamento do software. Os resultados da análise das propriedades propostas em um modelo LTS fornecem informações úteis relacionadas à energia, como o custo médio de energia do sistema e a probabilidade de ocorrência da execução mais cara. Demonstramos como implementar, usar e interpretar os resultados das análises dessas propriedades para criar, avaliar e/ou evoluir softwares considerando eficiência energética. Para descrever onde nosso trabalho pode ser aplicado, discutimos experimentos envolvendo a análise das propriedades propostas em diferentes cenários. Alguns experimentos são realizados envolvendo uma análise de um software existente de um único componente, uma evolução de software e um software com composição de componentes, e a eficiência energética é analisada em todos os casos. Considerando os resultados analises das propriedades definidas, são propostas recomendações de possíveis ações para ajustar o consumo de energia em um formato de guia rapido, combinando custos de energia e comportamento probabilístico. Esse suporte de análise de propriedades e recomendações constitui um passo importante para ajudar os desenvolvedores a criarem software com eficiência energética.