comp.lang.ada
 help / color / mirror / Atom feed
From: Ken Garlington <garlingtonke@lfwc.lockheed.com>
Subject: Re: Ada Core Technologies and Ada95 Standards
Date: 1996/04/04
Date: 1996-04-04T00:00:00+00:00	[thread overview]
Message-ID: <31639EA2.7AE2@lfwc.lockheed.com> (raw)
In-Reply-To: dewar.828601117@schonberg

Robert Dewar wrote:
> 
> Ken, it continues to worry me that you could possibly think that a set
> of black box tests (no code coverage testing, no path testing) could
> possibly be sufficient as proof at any high level of assurance of a
> complex program.

Comsider the assumptions that appear to be buried in this statement:

1. The ACVC is inherently limited to black box testing.

   I could think of several ways to include other types of testing in an
   ACVC, e.g.  a requirement to deliver of source code and supporting
   data to an AVF for analysis, or a requirement that the vendor do some
   specified level of analysis and deliver a summary of the results to
   the AVF as part of the certification process. However, since you've said
   that this is infeasible, I'll assume you're correct.
   
2. The ACVC does sufficient _black box_ testing to _support_ its stated goal
   (presumably, that users should _reasonably_ expect that the compiler
   will meet the language standard.)

   Is there some quantitative or qualitative measure to support this
   assumption? For example, are there requirements for vendors to report
   discoveries of noncompliance, so trending measures can be done?

The ACVC may inherently be _insufficient_ to support the use of these
compilers for critical systems. In fact, as you've noted previously, there's
no known technique or combination of techniques sufficient to "prove" in the
strictest sense that the software is correct. However, once we all agree to
this statement, it seems to me that there are two choices available:

   a. "We can't get there, so we have to live with the way things are."

   b. "We can't get there, but we can continue to improve on where we are."

All I know is, I don't get to build high-assurance systems without choosing
(b).

> Surely you do not mean to tell me that safety critical
> programs that you write are tested only to this extent (or for that
> matter that these programs trust the compiler!)

Absolutely not. And yet, even though we know that we cannot prove correctness
through black-box testing, we continue to not only _do_ black-box testing,
but continue to invest in tools, process changes, etc. to _measure_ and
_improve_ our black-box testing. Why? It's a Beizer thing.

No, we don't trust the compilers, and so we analyze the object code and all
of that. However, when we find only a few errors as a part of that analysis,
we are more confident of the final result than if we find only a few hundred
errors. Why? It's a Musa thing.

As an intelligent man said very recently, the main thing is that the compiler
not be the weakest link!

What's more, I always have this eerie feeling, as we run our various analyses,
that there's some poor guy (maybe Mr. McCabe) running that same analysis on the
same code, and finding the same errors. Just think, if we weren't having to
isolate those errors, and report them to the vendor, and do workarounds in the
code, etc. etc., we'd have more time to find/prevent errors in _our_ code!

> If you are indeed a serious potential customer for GNAT, contact
> support@gnat.com. (or stop by our booth at STC!)

We'll find out in October (assuming the JSF selection schedule holds) if we're
a serious potential customer. Of course, if/when we go to Alpha/VMS on F-22,
we will definitely be a serious potential customer!

I can't go to STC, but I'll ask someone to stop by and request a copy of your
process manual. Better yet, if you're going to the TTCP meeting, maybe you
could bring it with you?

Of course, that doesn't fully answer the real question. On several occasions,
I've heard people say, "most compiler vendors" do a certain type of testing, or
quality control, or something like that. How is this known? Do vendors share
information on their processes with each other? Is there a minimum set of standards
to which "decent" compiler vendors adhere?




  reply	other threads:[~1996-04-04  0:00 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-03-25  0:00 Ada Core Technologies and Ada95 Standards Kenneth Mays
1996-03-25  0:00 ` Robert Dewar
1996-03-28  0:00   ` John McCabe
1996-03-28  0:00     ` Robert Dewar
1996-03-29  0:00       ` John McCabe
1996-03-29  0:00         ` Robert Dewar
1996-04-01  0:00           ` Ken Garlington
1996-04-01  0:00             ` Robert Dewar
1996-04-02  0:00               ` John McCabe
1996-04-02  0:00               ` Ken Garlington
1996-04-02  0:00                 ` John McCabe
1996-04-02  0:00                   ` Robert Dewar
1996-04-03  0:00                     ` Ken Garlington
1996-04-04  0:00                       ` Robert Dewar
1996-04-04  0:00                         ` Ken Garlington [this message]
1996-04-05  0:00                           ` Robert Dewar
1996-04-10  0:00                             ` Ken Garlington
1996-04-02  0:00                   ` Robert A Duff
1996-04-10  0:00                 ` Robert Dewar
1996-04-10  0:00                   ` Robert Dewar
1996-04-12  0:00                     ` Philip Brashear
1996-04-12  0:00                       ` Robert Dewar
1996-04-15  0:00                     ` Tiring Arguments Around (not about) Two Questions Ken Garlington
1996-04-15  0:00                       ` Gary McKee
1996-04-16  0:00                         ` Ken Garlington
1996-04-17  0:00                       ` Kenneth Almquist
1996-04-18  0:00                     ` Ada Core Technologies and Ada95 Standards John McCabe
1996-04-19  0:00                       ` Robert Dewar
1996-04-22  0:00                         ` Ken Garlington
1996-04-22  0:00                         ` John McCabe
1996-04-23  0:00                           ` Ken Garlington
1996-04-24  0:00                             ` John McCabe
1996-04-24  0:00                               ` Robert Dewar
1996-04-26  0:00                                 ` John McCabe
1996-04-26  0:00                                 ` John McCabe
1996-04-26  0:00                                 ` Ken Garlington
1996-04-25  0:00                               ` Ken Garlington
1996-04-24  0:00                             ` Robert Dewar
1996-04-26  0:00                               ` Ken Garlington
1996-04-24  0:00                           ` Robert Dewar
1996-04-26  0:00                             ` Ken Garlington
1996-04-27  0:00                               ` Robert Dewar
1996-04-15  0:00                   ` Ken Garlington
1996-04-16  0:00                     ` Robert Dewar
1996-04-16  0:00                       ` Ken Garlington
1996-04-16  0:00                         ` Robert Dewar
1996-04-02  0:00             ` John McCabe
1996-04-02  0:00               ` Robert A Duff
1996-04-16  0:00                 ` John McCabe
1996-04-16  0:00                   ` Robert Dewar
1996-04-22  0:00                     ` John McCabe
1996-04-23  0:00                       ` Ken Garlington
1996-04-24  0:00                         ` Robert Dewar
1996-04-26  0:00                           ` Ken Garlington
1996-04-27  0:00                             ` Robert Dewar
1996-04-29  0:00                               ` Cordes MJ
1996-04-29  0:00                                 ` Robert Dewar
1996-05-06  0:00                                   ` John McCabe
1996-05-06  0:00                                     ` Robert Dewar
1996-05-08  0:00                                       ` John McCabe
1996-05-08  0:00                                         ` TARTAN and TI Tom Robinson
1996-05-09  0:00                                           ` Arthur Evans Jr
     [not found]                                         ` <Dr46LG.2FF@world.std.com>
1996-05-09  0:00                                           ` Ada Core Technologies and Ada95 Standards John McCabe
1996-05-07  0:00                                     ` Mike Cordes
1996-05-07  0:00                                     ` Mike Cordes
1996-04-10  0:00             ` Robert Dewar
1996-04-15  0:00               ` Ken Garlington
1996-04-16  0:00                 ` Robert Dewar
1996-04-16  0:00                   ` Ken Garlington
1996-04-16  0:00                     ` Robert Dewar
1996-04-18  0:00                       ` Ken Garlington
1996-03-31  0:00         ` Geert Bosch
1996-04-01  0:00           ` Robert Dewar
1996-04-01  0:00             ` Mike Young
1996-04-03  0:00               ` Robert Dewar
1996-03-29  0:00   ` steved
1996-03-29  0:00     ` Applet Magic works great, sort of Bob Crispen
1996-03-29  0:00   ` Vince Del Vecchio
1996-04-03  0:00   ` Ada Core Technologies and Ada95 Standards Ken Garlington
1996-04-04  0:00     ` Robert Dewar
1996-04-04  0:00       ` John McCabe
1996-04-05  0:00         ` Robert Dewar
1996-04-06  0:00           ` Ada validation is virtually worthless Raj Thomas
1996-04-06  0:00             ` Robert Dewar
1996-04-08  0:00               ` Arthur Evans Jr
1996-04-07  0:00           ` Ada Core Technologies and Ada95 Standards John McCabe
1996-04-03  0:00   ` Robert I. Eachus
1996-04-05  0:00   ` Robert I. Eachus
1996-04-10  0:00     ` Cordes MJ
1996-04-10  0:00       ` Robert Dewar
1996-04-15  0:00         ` Ken Garlington
1996-04-16  0:00           ` Robert Dewar
1996-04-16  0:00             ` Ken Garlington
1996-04-16  0:00               ` Robert Dewar
1996-04-11  0:00   ` Robert I. Eachus
1996-04-11  0:00   ` Robert I. Eachus
1996-04-19  0:00   ` Laurent Guerby
1996-04-25  0:00   ` Tiring Arguments Around (not about) Two Questions [VERY LONG] Laurent Guerby
1996-04-26  0:00   ` Ken Garlington
1996-04-29  0:00     ` Philip Brashear
  -- strict thread matches above, loose matches on Subject: below --
1996-04-01  0:00 Ada Core Technologies and Ada95 Standards Simon Johnston
1996-04-24  0:00 W. Wesley Groleau (Wes)
1996-04-25  0:00 ` Ken Garlington
1996-04-25  0:00 ` Robert Dewar
1996-04-25  0:00   ` Theodore E. Dennison
1996-04-29  0:00 Marin David Condic, 407.796.8997, M/S 731-93
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox