LDRA Null Defekt Softwareentwicklung
| C Standards | C++ Standards | Ada Standards | Process Standards |
|---|---|---|---|
| MISRA-C:1998 |
JSF++ AV |
SPARK Ada subset | DO-178B |
| MISRA-C:2004 |
High Integrity C++* |
Ravenscar Profile | DO-278 |
| CERT C |
MISRA-C++:2008 |
ISO/DIS 26262 |
|
| HIS |
LM Train Control Program | IEC 61508 |
|
| JPL | IEC 62304 |
||
| GJB | |||
| IPA/SEC C | |||
| Netrino C |
Was ist vorhanden?
Wenn man sich merkt, dass das Ziel von Standards darin besteht, dass entweder Fehler vermieden oder zu einem frühem Zeitpunkt der Entwicklung leicht entdeckt werden sollen, dann legen Standards ein gemeinsames Format für den Quellcode und seiner Kommentare fest. Sie definieren wie Code geschrieben werden soll und wie er auf dem Bildschirm dargestellt werden soll. Natürlicherweise ist die Einhaltung eines Programmierstandards auf eine konsistente Weise sehr viel wichtiger als die einfache Dokumentation eines Programmierstandards und die anschließende Ablage in einem Regal. Der Standard bedeutet nichts wenn die Entwickler sich nicht daran halten, wenn sie ihren Code schreiben.
Was kann man erreichen, wenn Standards eingehalten werden?
Die an der Spitze der Entwicklung, bezüglich Programmierstandards, stehenden Firmen sind diejenigen, die sicherheitskritische Anwendungen implementieren. Wenn Leben durch Softwarefehler bedroht werden kann, dann sind Entwickler gezwungen nachzuweisen, dass ihre Software zu 100% der Zeit funktionsfähig ist. Die Luftfahrtindustrie, das Militär, die Verteidigung und Kernkraftwerke als auch die Automobilindustrie und die Medizingerätetechnik sind Bereiche in denen eine solche Ebene der Zuverlässigkeit der Anwendungen erforderlich ist.
Nunmehr jedoch, da die Frage der Zuverlässigkeit von Software immer drängender wird, sehen sich Firmen aus nicht sicherheitskritischen Sektoren, die in der Vergangenheit nicht notwendigerweise mit komplexen Softwareentwicklungsprozessen konfrontiert waren, gezwungen für ihre aktuell entwickelten Anwendungen ebenfalls sicherheitskritische Analysen und Tests durchzuführen.
Möchten Sie weitere Informationen?
Lesen Sie Programmierstandards: Ruin oder Gewinn?
In diesem Artikel diskutieren wir mehrere Programmierstandards, wie man durch Standardüberprüfung Fehler identifiziert, auch den Nutzen für Firmen, die solche Standards implementieren. Der Artikel schließt mit der Beantwortung der Frage, warum manche Firmen nur minimale oder keine Standardnachweise und keine Qualitätsnachweis durchführen und was sie gewinnen oder verlieren, wenn sie dies tun (Registrierung erforderlich).
* The High-Integrity C++ Coding Standard: © The Programming Research Group
