MISRA C és un conjunt de directrius de desenvolupament de programari per al llenguatge de programació C desenvolupat pel Consorci MISRA. Els seus objectius són facilitar la seguretat, la fiabiliat, la portabilitat i la fiabilitat del codi en el context dels sistemes encastats, concretament els sistemes programats a la ISO C /C90/ C99.
Història
Esborrany: 1997In spring 1997 software engineers at the Austin Rover Group (ARG) sent a draft C coding standard to Programming Research Ltd (PRL) for review. The review was performed by PRL's then senior consultant, David Blyth, who proposed replacing the draft with an appreciably stronger set of coding rules. Those rules, with minor changes, formed the basis of the first edition of MISRA C. Primera edició: 1998 (normes, obligatòria/assessorament) Segona edició: 2004 (normes, obligatòria/assessorament) Tercera edició: 2012 (directives; regles, Decidible/Indecidible) Compliment MISRA: 2016, actualitzat 2020
Per a les dues primeres edicions de MISRA-C (1998 i 2004) totes les directrius es van considerar com a normes. Amb la publicació de MISRA C:2012 es va introduir una nova categoria de directrius: la Directiva el compliment de la qual està més obert a la interpretació, o es refereix a qüestions de procés o procediment.
Tot i que originàriament s'adreçava específicament a la indústria de l'automòbil, MISRA C ha evolucionat com un model àmpliament acceptat per a les millors pràctiques per part de desenvolupadors líders en sectors com l'automoció, l'aeroespacial, les telecomunicacions, els dispositius mèdics, la defensa, el ferrocarril i altres. Per exemple:
Els estàndards de codificació C++ del projecte Joint Strike Fighter es basen en MISRA-C:1998. Els estàndards de codificació C del Jet Propulsion Laboratory de la NASA es basen en MISRA-C:2004. La norma ISO 26262 Seguretat funcional - Vehicles de carretera cita MISRA C com un subconjunt adequat del llenguatge C: ISO 26262-6:2011 Part 6: Desenvolupament de productes a nivell de programari cita MISRA-C:2004 i MISRA AC AGC. ISO 26262-6:2018 Part 6: Desenvolupament de productes a nivell de programari cita MISRA C:2012. L'especificació general de programari AUTOSAR (SRS_BSW_00007) també cita MISRA C: L'especificació general de programari AUTOSAR 4.2 requereix que si la implementació del mòdul BSW està escrita en llenguatge C, s'ajustarà a l'estàndard MISRA C:2004. L'especificació general de programari AUTOSAR 4.3 requereix que si la implementació del mòdul BSW està escrita en llenguatge C, s'ajustarà a l'estàndard MISRA C:2012.
Referències
Categoria:Desenvolupament de programari