LDRA Zero Defect Software Development


C Standards C++ Standards Ada Standards
MISRA-C:1998
JSF++ AV
SPARK Ada subset
MISRA-C:2004
High Integrity C++*
Ravenscar Profile
CERT C
MISRA-C++:2008
 
HIS
LM Train Control Program  
JPL    
GJB    
SEC C    

What's out there?

Keeping in mind that the goal of standards is to prevent or make error identification easy, standards specify a common format for source code and its comments. They detail how code should be written, not just how it looks on screen. Of course, the ability to adhere to a programming standard in a consistent manner is far more important than simply documenting a programming standard and having it gather dust on the shelf. The standard means nothing if developers are not implementing its rules within their code.

MISRA-C++:2008

What's gained from standards?

The forerunners in standards adherence are the companies whose software is in applications which are deemed safety critical. If people's lives can be affected by a software failure, then developers need to prove that their software will function as it is intended 100% of the time. Aerospace, military and defence, and nuclear power plants are readily recognised as requiring this level of reliability as well as automotive and medical device manufacturers.

However, an ever-increasing reliance on software control has meant that many companies from non-safety-critical business sectors that do not have a traditional requirement for sophisticated software development processes now find themselves compelled to undertake safety-critical and safety-related analysis and testing by the nature of the applications they have under development.

The Cert C Secure Coding Standard

Need more information?

Read Programming Standards: Bane or Benefit?

In this paper we will look at several programming standards, how standards checking identifies errors, as well as the benefits companies gain by implementing such standards. We will then close by examining the question of why some companies persist in minimal or noncompliance to programming standards or quality verification and what they gain or lose from this choice. (Registration required).

* The High-Integrity C++ Coding Standard: © The Programming Research Group