Presentation cover page EU DO-178C & Object Orientation for Critical Systems www.adacore.com Cyrille Comar    comar@adaco...
DO-178 in 1 slide <ul><ul><li>Prescriptive and Process-based Standard </li></ul></ul><ul><ul><li>Defines between 30 and 70...
Why use OO in Critical Systems ? <ul><li>That’s a very common programming style </li></ul><ul><li>Usual Expected Benefits:...
Potential OO vulnerabilities <ul><li>Reliance on Dynamic memory allocation </li></ul><ul><li>Dynamic Dispatch verification...
The DO-178C OOT Supplement in 1 slide <ul><li>Very few changes related to DO-178B </li></ul><ul><li>Addresses more than pu...
Upcoming SlideShare
Loading in …5
×

DO-178C & Object Orientation for Critical Systems

1,498 views

Published on

This presentation is a brief overview of the proposed OOT supplement in DO-178C and how OO techniques can be applied to the development of safety-critical systems.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,498
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
23
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

DO-178C & Object Orientation for Critical Systems

  1. 1. Presentation cover page EU DO-178C & Object Orientation for Critical Systems www.adacore.com Cyrille Comar  comar@adacore.com The Ada Connections, Edinburgh June 23rd 2011 European Headquarters: 46 rue d’Amsterdam 75009 Paris France +33-1-4970-6716 (voice) +33-1-4970-0552 (FAX) North American Headquarters: 104 Fifth Avenue, 15 th Floor New York, NY 10011 USA +1-212-620-7300 (voice) +1-212-807-0162 (FAX)
  2. 2. DO-178 in 1 slide <ul><ul><li>Prescriptive and Process-based Standard </li></ul></ul><ul><ul><li>Defines between 30 and 70 objectives to be met depending of the criticality of the software </li></ul></ul><ul><ul><li>Objectives cover </li></ul></ul><ul><ul><ul><li>Software Planning Process </li></ul></ul></ul><ul><ul><ul><li>Software Development Process (Requirements, Design, Coding ..) </li></ul></ul></ul><ul><ul><ul><li>Verification, Config Management, Quality Assurance, Certif Liaison </li></ul></ul></ul><ul><ul><li>Requirement Based Testing/Verification </li></ul></ul><ul><ul><li>No explicit objectives related to programming paradigms but many implicit assumptions (simple procedural programming, compiled code, …) </li></ul></ul>
  3. 3. Why use OO in Critical Systems ? <ul><li>That’s a very common programming style </li></ul><ul><li>Usual Expected Benefits: </li></ul><ul><ul><ul><li>modularity, </li></ul></ul></ul><ul><ul><ul><li>flexibility, </li></ul></ul></ul><ul><ul><ul><li>reusability, </li></ul></ul></ul><ul><ul><ul><li>extendability, … </li></ul></ul></ul><ul><li>Works well with Lean/Agile techniques </li></ul><ul><li>Any drawbacks? </li></ul>Are potential vulnerabilities those « expected » by DO-178B ?
  4. 4. Potential OO vulnerabilities <ul><li>Reliance on Dynamic memory allocation </li></ul><ul><li>Dynamic Dispatch verification </li></ul><ul><ul><li>new structural coverage criteria ? </li></ul></ul><ul><li>Worst Case Analysis (Stack and Timing) </li></ul><ul><li>Missed overriding </li></ul><ul><li>Static Binding and Overrding </li></ul><ul><li>Multiple inheritance </li></ul>
  5. 5. The DO-178C OOT Supplement in 1 slide <ul><li>Very few changes related to DO-178B </li></ul><ul><li>Addresses more than pure OOT stuff </li></ul><ul><ul><li>Memory management (e.g. garbage collection) </li></ul></ul><ul><ul><li>Virtualization techniques </li></ul></ul><ul><ul><li>Exception management </li></ul></ul><ul><ul><li>Generics (parametric polymorphism) </li></ul></ul><ul><li>One significant additional objective in chapter 6: </li></ul><ul><ul><li>“ Local Type Consistency Verification” (Liskov) </li></ul></ul><ul><li>Many guidelines </li></ul><ul><ul><li>Can be addressed by proper Design/Coding standards </li></ul></ul>

×