Hardware-independent firmware development methodology
Visualizar/abrir
Data
2024Orientador
Nível acadêmico
Mestrado
Tipo
Assunto
Abstract
Unlike 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 underg ...
Unlike 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 factors ...
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 ...
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 ...
Instituição
Universidade Federal do Rio Grande do Sul. Escola de Engenharia. Programa de Pós-Graduação em Engenharia Elétrica.
Coleções
-
Engenharias (7440)Engenharia Elétrica (465)
Este item está licenciado na Creative Commons License