Overviews
Ada 95 has several advantages over C++, in particular when software costs
are examined over the lifetime of the software system.
This article by Ed Schonberg focuses on details where the philosophies of both languages are
in sharpest contrast.
For another view comparing Ada to C++, see
this 1996 presentation
by Dr. Charles Engle. While some of the details are out of date, the
basic message is unchanged today.
For a critique of C++ in general, see C++? (PDF only),
which argues that many modern programming languages are better choices than C++.
Experience Reports
What savings are possible when using Ada versus use C and C++ for a project? The
following articles try to provide answers to this question.
Vision Systems Ltd. of Australia cut their bug
rates from 1 every 80 lines using C to 1 every 270 lines using Ada, and cut their
testing time from 9 months to less than 4 months.
The seminal comparison of Ada and C projects is Rational
Software's 1995 study (also available as a pdf file).
Verdix (which merged into Rational in 1994) had about 50% of their 3 million lines of code in C and
50% in Ada. The code was maintained by the same developers over the course of 11 years,
yet the Ada code had about half as many defects and the overall development cost was about
35% less for Ada code.
This effect extends to academia as well. John McCormick reports that students in
his course on
real-time embedded software development fared much better using Ada
rather than C. In fact, no one finished the project when using C, even given 60%
of the code. On the other hand, 75% of the class finished the project when using
Ada, even given a much smaller portion of the code (less than 20%).
This 1997 presentation
summarizes as many experiences as possible. It demonstrates that the advantages
of Ada show up in nearly every application area.
|