|
by Jim Rogers
Common wisdom states that software development
time is 10% design, 10% coding, 60% debug and 20% test. Note that
the last 80% of the project is spent trying to find and eliminate
mistakes made in the first 20% of the project. Would you consider
using a tool that changed those numbers to 20% design, 60%
coding, 10% debug, and 10% test, while cutting the entire cycle
time in half?
Studies have shown that Ada produces these kinds
of productivity enhancements when compared with C. Of course, if
you already use C, you have a significant investment in support
tools. You have language sensitive editors, code building tools,
debugging tools, and syntax checking tools. It is hard to justify
investment in new tools when the old tools seem to be working so
well. Of course, it is pretty difficult to cut your overall
development time in half using your current tools.
Ada produces these benefits because it is
designed to support software engineering as a human activity. It
provides unsurpassed expressiveness for defining data. The data
definitions provide information usable by the compiler to perform
correctness checking and, when appropriate, to generate bounds
checking code in your executable. Compare this with C or C++.
Those languages are designed on the assumption that the software
developer knows what he or she is doing and never makes mistakes.
In fact, one of the challenges for C and C++ programming is
developing the expertise to avoid the subtle programming traps
provided by those languages.
A more complete description of how Ada is
designed to be used can be found in the Ada 95
Rationale . A full description of all Ada features can be
found in the Ada
95 Language Reference Manual.
This ends the introuction of this article. Click here
to continue with part one, History of Ada. Or look below at the contents of the article.
|