Hardware-independent firmware development methodology

Detalhes bibliográficos
Ano de defesa: 2024
Autor(a) principal: Farina, Maurício Dall'Oglio
Orientador(a): Freitas, Edison Pignaton de
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
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/282846
Resumo: Ao contrário de outras formas de desenvolvimento, a maneira como o desenvolvi mento de firmware é realizada é um tanto desatualizada. Não é incomum encontrar sis temas inteiros implementados de forma monolítica e com dependências cruzadas. Além disso, o software de muitas implementações é dependente do hardware. Portanto, mudan ças significativas no hardware podem resultar em extensas revisões de implementação de firmware que podem consumir tempo e levar a versões de baixa qualidade, o que pode re presentar um problema importante para aplicações de sistemas embarcados que evoluem com muita frequência. Para lidar com esse problema, este trabalho propõe uma metodolo gia de desenvolvimento de firmware embarcado que permite reutilização e portabilidade, ao mesmo tempo em que melhora o ciclo de vida do desenvolvimento de firmware. Além disso, ao empregar essa metodologia, os erros típicos de um desenvolvedor de software iniciante podem ser reduzidos Além disso, esses desenvolvedores podem ter uma rápida rampa de aprendizagem do projeto e melhorar suas habilidades de desenvolvimento se guindo as diretrizes e arquitetura propostas neste trabalho. A metodologia proposta define funções dos membros da equipe, fluxos de trabalho de desenvolvimento e uma arquitetura modular de várias camadas. Além disso, ele fornece diretrizes, regras, padrões, conven ções e melhores práticas para o desenvolvimento de firmware embarcado. Para avaliar a metodologia proposta, foram conduzidos dois estudos de caso. Primeiro, um projeto sim ples de sistema IoT foi refatorado para este modelo de metodologia e os resultados foram comparados com o projeto legado. Segundo, a comparação entre as métricas da versões legado e novo de um projeto real e mais complexo foram analisadas. Para ambos os ca sos, a comparação demonstrou que a metodologia proposta pode apresentar melhorias substanciais na portabilidade, reutilização, modularidade e outros aspectos do firmware
id URGS_7dea4f5b98d63ea674e9b418cb18c970
oai_identifier_str oai:www.lume.ufrgs.br:10183/282846
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str
spelling Farina, Maurício Dall'OglioFreitas, Edison Pignaton de2024-12-24T06:56:07Z2024http://hdl.handle.net/10183/282846001217176Ao contrário de outras formas de desenvolvimento, a maneira como o desenvolvi mento de firmware é realizada é um tanto desatualizada. Não é incomum encontrar sis temas inteiros implementados de forma monolítica e com dependências cruzadas. Além disso, o software de muitas implementações é dependente do hardware. Portanto, mudan ças significativas no hardware podem resultar em extensas revisões de implementação de firmware que podem consumir tempo e levar a versões de baixa qualidade, o que pode re presentar um problema importante para aplicações de sistemas embarcados que evoluem com muita frequência. Para lidar com esse problema, este trabalho propõe uma metodolo gia de desenvolvimento de firmware embarcado que permite reutilização e portabilidade, ao mesmo tempo em que melhora o ciclo de vida do desenvolvimento de firmware. Além disso, ao empregar essa metodologia, os erros típicos de um desenvolvedor de software iniciante podem ser reduzidos Além disso, esses desenvolvedores podem ter uma rápida rampa de aprendizagem do projeto e melhorar suas habilidades de desenvolvimento se guindo as diretrizes e arquitetura propostas neste trabalho. A metodologia proposta define funções dos membros da equipe, fluxos de trabalho de desenvolvimento e uma arquitetura modular de várias camadas. Além disso, ele fornece diretrizes, regras, padrões, conven ções e melhores práticas para o desenvolvimento de firmware embarcado. Para avaliar a metodologia proposta, foram conduzidos dois estudos de caso. Primeiro, um projeto sim ples de sistema IoT foi refatorado para este modelo de metodologia e os resultados foram comparados com o projeto legado. Segundo, a comparação entre as métricas da versões legado e novo de um projeto real e mais complexo foram analisadas. Para ambos os ca sos, a comparação demonstrou que a metodologia proposta pode apresentar melhorias substanciais na portabilidade, reutilização, modularidade e outros aspectos do firmwareUnlike other forms of development, the way firmware development is designed is somewhat outdated. It is usual to come across whole systems implemented in a cross dependent monolithic way. In addition, the software of many implementations is hardware dependent. Hence, significant hardware changes may result in extensive firmware imple mentation reviews that can be time-consuming and lead to low-quality ports, which may represent an important challenge for embedded system applications that undergo frequent evolution. To address this problem, this work proposes a firmware development method ology that allows reuse and portability while improving the firmware development life cycle. In addition, the typical mistakes of a novice software developer can be reduced by employing this methodology. Moreover, these developers can get up-to-speed with the project and improve their skills much faster by following the guidelines and archi tecture proposed in this work. The proposed methodology defines team member roles, development workflows and a multi-layer modular architecture. Additionally, it provides guidelines, rules, standards, conventions, and best practices for firmware development. To evaluate the proposed methodology, two case studies were conducted. First, a simple IoT system project was refactored for this methodology model and the results were compared with the legacy project. Second, the comparison between legacy and new project met rics of a more complex real-world project were analyzed. In both cases, the comparison demonstrated that the proposed methodology can substantially improve portability, reuse, modularity, and other firmware factorsapplication/pdfengSistemas embarcadosArquitetura de computadoresSoftwareEmbedded systemsEmbedded developmentFirmware architectureDevelopment methodologyHardware-independent firmware development methodologyinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisUniversidade Federal do Rio Grande do SulEscola de EngenhariaPrograma de Pós-Graduação em Engenharia ElétricaPorto Alegre, BR-RS2024mestradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT001217176.pdf.txt001217176.pdf.txtExtracted Texttext/plain236365http://www.lume.ufrgs.br/bitstream/10183/282846/2/001217176.pdf.txt15e7bfc65180f01b619c1057bb66af37MD52ORIGINAL001217176.pdfTexto completo (inglês)application/pdf3631097http://www.lume.ufrgs.br/bitstream/10183/282846/1/001217176.pdf622150848a2f589083f84c36f5f3cdabMD5110183/2828462024-12-25 07:53:09.289613oai:www.lume.ufrgs.br:10183/282846Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532024-12-25T09:53:09Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Hardware-independent firmware development methodology
title Hardware-independent firmware development methodology
spellingShingle Hardware-independent firmware development methodology
Farina, Maurício Dall'Oglio
Sistemas embarcados
Arquitetura de computadores
Software
Embedded systems
Embedded development
Firmware architecture
Development methodology
title_short Hardware-independent firmware development methodology
title_full Hardware-independent firmware development methodology
title_fullStr Hardware-independent firmware development methodology
title_full_unstemmed Hardware-independent firmware development methodology
title_sort Hardware-independent firmware development methodology
author Farina, Maurício Dall'Oglio
author_facet Farina, Maurício Dall'Oglio
author_role author
dc.contributor.author.fl_str_mv Farina, Maurício Dall'Oglio
dc.contributor.advisor1.fl_str_mv Freitas, Edison Pignaton de
contributor_str_mv Freitas, Edison Pignaton de
dc.subject.por.fl_str_mv Sistemas embarcados
Arquitetura de computadores
Software
topic Sistemas embarcados
Arquitetura de computadores
Software
Embedded systems
Embedded development
Firmware architecture
Development methodology
dc.subject.eng.fl_str_mv Embedded systems
Embedded development
Firmware architecture
Development methodology
description Ao contrário de outras formas de desenvolvimento, a maneira como o desenvolvi mento de firmware é realizada é um tanto desatualizada. Não é incomum encontrar sis temas inteiros implementados de forma monolítica e com dependências cruzadas. Além disso, o software de muitas implementações é dependente do hardware. Portanto, mudan ças significativas no hardware podem resultar em extensas revisões de implementação de firmware que podem consumir tempo e levar a versões de baixa qualidade, o que pode re presentar um problema importante para aplicações de sistemas embarcados que evoluem com muita frequência. Para lidar com esse problema, este trabalho propõe uma metodolo gia de desenvolvimento de firmware embarcado que permite reutilização e portabilidade, ao mesmo tempo em que melhora o ciclo de vida do desenvolvimento de firmware. Além disso, ao empregar essa metodologia, os erros típicos de um desenvolvedor de software iniciante podem ser reduzidos Além disso, esses desenvolvedores podem ter uma rápida rampa de aprendizagem do projeto e melhorar suas habilidades de desenvolvimento se guindo as diretrizes e arquitetura propostas neste trabalho. A metodologia proposta define funções dos membros da equipe, fluxos de trabalho de desenvolvimento e uma arquitetura modular de várias camadas. Além disso, ele fornece diretrizes, regras, padrões, conven ções e melhores práticas para o desenvolvimento de firmware embarcado. Para avaliar a metodologia proposta, foram conduzidos dois estudos de caso. Primeiro, um projeto sim ples de sistema IoT foi refatorado para este modelo de metodologia e os resultados foram comparados com o projeto legado. Segundo, a comparação entre as métricas da versões legado e novo de um projeto real e mais complexo foram analisadas. Para ambos os ca sos, a comparação demonstrou que a metodologia proposta pode apresentar melhorias substanciais na portabilidade, reutilização, modularidade e outros aspectos do firmware
publishDate 2024
dc.date.accessioned.fl_str_mv 2024-12-24T06:56:07Z
dc.date.issued.fl_str_mv 2024
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/10183/282846
dc.identifier.nrb.pt_BR.fl_str_mv 001217176
url http://hdl.handle.net/10183/282846
identifier_str_mv 001217176
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.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFRGS
instname:Universidade Federal do Rio Grande do Sul (UFRGS)
instacron:UFRGS
instname_str Universidade Federal do Rio Grande do Sul (UFRGS)
instacron_str UFRGS
institution UFRGS
reponame_str Biblioteca Digital de Teses e Dissertações da UFRGS
collection Biblioteca Digital de Teses e Dissertações da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/282846/2/001217176.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/282846/1/001217176.pdf
bitstream.checksum.fl_str_mv 15e7bfc65180f01b619c1057bb66af37
622150848a2f589083f84c36f5f3cdab
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv lume@ufrgs.br||lume@ufrgs.br
_version_ 1831316192249249792