Source-to-Source Approach for MISRA-C

Gorde:
Xehetasun bibliografikoak
Argitaratua izan da:PQDT - Global (2025)
Egile nagusia: Gouveia, Milena Luísa Pereira
Argitaratua:
ProQuest Dissertations & Theses
Gaiak:
Sarrera elektronikoa:Citation/Abstract
Full Text - PDF
Etiketak: Etiketa erantsi
Etiketarik gabe, Izan zaitez lehena erregistro honi etiketa jartzen!

MARC

LEADER 00000nab a2200000uu 4500
001 3288163999
003 UK-CbPIL
020 |a 9798265496966 
035 |a 3288163999 
045 2 |b d20250101  |b d20251231 
084 |a 189128  |2 nlm 
100 1 |a Gouveia, Milena Luísa Pereira 
245 1 |a Source-to-Source Approach for MISRA-C 
260 |b ProQuest Dissertations & Theses  |c 2025 
513 |a Dissertation/Thesis 
520 3 |a The C programming language has been used in critical systems, such as aviation, where failures associated with the ambiguous and undefined behavior of the language can cause severe damage. To minimize such errors, standards such as MISRA C establish good programming practices that improve code safety, reliability, readability, and portability of the code. Although there are automated solutions capable of identifying violations, their effective correction still requires manual intervention by programmers. Furthermore, most of these checkers impose restrictions on the development environment, require changes to internal components, and require an understanding of complex technical details.In the context of these problems, this dissertation presents the Clava-MISRA Library, a library developed in Typescript that automates the process of correcting violations of MISRA-C in order to reduce the manual effort involved, the time required, and the occurrence of human errors. To implement this library, we adopted a source-to-source strategy, which is advantageous because it allows us to apply corrections to the source code without intervening in the compiler’s internal implementations and has a low impact on the development workflow. In this case, we use the Clava transpiler, which allows to query and transform code through its Abstract Syntax Tree and then translate it back into source code. In this sense, the Clava-MISRA Library is a complementary module that extends Clava with mechanisms to detect and correct violations of 31 guidelines.When evaluating the effectiveness of the developed library, the results show that our implementation has a stronger ability to detect violations than the considered checkers and significantly reduces the number of MISRA-C violations initially present, which proves the feasibility of automating this process. In addition, we also evaluated the performance of these two functionalities, which allowed us to identify rules with higher processing costs and potential improvements for future work. 
653 |a Readability 
653 |a Violations 
653 |a Programming languages 
653 |a Embedded systems 
653 |a Coding standards 
653 |a Compliance 
653 |a Software reliability 
653 |a Libraries 
653 |a Experiments 
653 |a Human error 
653 |a Efficiency 
653 |a Computer science 
653 |a Computer engineering 
773 0 |t PQDT - Global  |g (2025) 
786 0 |d ProQuest  |t ProQuest Dissertations & Theses Global 
856 4 1 |3 Citation/Abstract  |u https://www.proquest.com/docview/3288163999/abstract/embedded/6A8EOT78XXH2IG52?source=fedsrch 
856 4 0 |3 Full Text - PDF  |u https://www.proquest.com/docview/3288163999/fulltextPDF/embedded/6A8EOT78XXH2IG52?source=fedsrch