Mostrar registro simples

dc.contributor.authorVellone, Fabricio
dc.date.accessioned2023-03-29T13:42:51Z
dc.date.available2023-03-29T13:42:51Z
dc.date.issued2023-03-22
dc.identifier.citationVELLONE, Fabricio. Um estudo sobre consumo de energia em aplicações JavaScript: Identificação dos custos energéticos para a etapa de integração continua. 2023. Trabalho de Conclusão de Curso (Graduação em Engenharia Elétrica) – Universidade Federal de São Carlos, São Carlos, 2023. Disponível em: https://repositorio.ufscar.br/handle/ufscar/17558.*
dc.identifier.urihttps://repositorio.ufscar.br/handle/ufscar/17558
dc.description.abstractGiven the climate context that the world finds itself in, controlling the energy consumption that humans perform on a daily basis is indispensable for the well-being of the planet and sustainability. For software this is no different. This work aimed to analyze the energy consumption in the Continuous Integration process of JavaScript applications. In particular, each step of the process was studied, identifying how energy consumption is distributed, tracing a relationship between the execution time of the steps and energy consumption, in addition to making parallels between these consumptions in the software world and the energy consumption of everyday life. First the energy consumption capture tool perf was selected. Next, JavaScript projects were selected for analysis following some specific criteria, such as the existence of different tests and CI, as well as standardizing all existing nomenclatures in these projects. Finally, the chosen tool was combined with scripts to obtain the raw data and the analysis was performed using spreadsheets. It was possible to verify that the testing stages were the most costly among the stages evaluated. For the relationship between time and energy consumption, it was observed that the energy consumption tends to be linear with time for direct processing, and the non-direct processing tends to present a logarithmic pattern of behavior. Furthermore, it was seen that a project can have, on average, the same energy consumption as a hair dryer and can consume more than a router or an Internet modem. Finally, it was identified that at large scales, these energy consumptions can be significant and attention should be paid to the number of times IC pipelines are run throughout a project development. It can also be observed that the higher the complexity of a test type, the higher its cost in terms of energy, going according to the testing pyramid.eng
dc.description.sponsorshipNão recebi financiamentopor
dc.language.isoporpor
dc.publisherUniversidade Federal de São Carlospor
dc.rightsAttribution 3.0 Brazil*
dc.rights.urihttp://creativecommons.org/licenses/by/3.0/br/*
dc.subjectGreen Computingeng
dc.subjectConsumo de energia em softwarepor
dc.subjectTestes automatizadospor
dc.subjectIntegração Contínuapor
dc.subjectPipelineseng
dc.subjectJavaScripteng
dc.subjectNodejseng
dc.subjectPower consumption in softwareeng
dc.subjectAutomated testingeng
dc.subjectContinuous integrationeng
dc.titleUm estudo sobre consumo de energia em aplicações JavaScript: Identificação dos custos energéticos para a etapa de integração continuapor
dc.title.alternativeA study on energy consumption in JavaScript applications: Identifying energy costs for the continuous integration stageeng
dc.typeTCCpor
dc.contributor.advisor1Endo, Andre Takeshi
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/4221336619791961por
dc.description.resumoDado o contexto climático que o mundo se encontra, controlar o consumo de energia que os seres humanos realizam diariamente é indispensável para o bem-estar do planeta e da sustentabilidade. Para o software isso não é diferente. Este trabalho teve como objetivo analisar o consumo de energia no processo de Integração Contínua de aplicações JavaScript. Particularmente, estudou-se cada etapa do processo, identificando como se distribui o consumo de energia, traçando uma relação entre o tempo de execução das etapas e o consumo energético, em adição a realizar paralelos entre estes consumos no mundo do software e os consumos de energia do dia-a-dia das pessoas. Primeiro selecionou-se a ferramenta de captura de consumo energético perf. Em seguida, foram selecionadas de projetos JavaScript para análise seguindo alguns critérios específicos, como a existência de diferentes testes e CI, além de padronizar todas as nomenclaturas existentes nesses projetos. Por fim, combinou-se a ferramenta escolhida, scripts para obter os dados brutos e realizou-se as análises por meio de planilhas. Foi possível constatar que as etapas de testes foram as mais custosas dentre as etapas avaliadas. Para a relação entre o tempo e o consumo de energia, observou-se que os consumos energéticos tendem a serem lineares com o tempo para processamentos diretos e os não diretos tendem a apresentar um padrão logarítmico de comportamento. Ademais, viu-se que um projeto pode ter, em média, o mesmo consumo de energia que um secador de cabelo e pode consumir mais que um roteador ou um modem de Internet. Por fim, foi identificado que em grandes escalas, estes consumos de energia podem ser significantes e se deve ter atenção com a quantidade de vezes que as pipelines de CI são executadas ao longo de um desenvolvimento de projeto. Também pode-se observar que quanto maior a complexidade de um tipo de testes, maior seu custo em termos de energia, indo de acordo com a pirâmide de testes.por
dc.publisher.initialsUFSCarpor
dc.subject.cnpqENGENHARIAS::ENGENHARIA ELETRICA::MEDIDAS ELETRICAS, MAGNETICAS E ELETRONICAS; INSTRUMENTACAOpor
dc.publisher.addressCâmpus São Carlospor
dc.contributor.authorlatteshttp://lattes.cnpq.br/3743215808709027por
dc.publisher.courseEngenharia Elétrica - EEpor


Arquivos deste item

Thumbnail
Thumbnail

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples

Attribution 3.0 Brazil
Exceto quando indicado o contrário, a licença deste item é descrito como Attribution 3.0 Brazil