> No, perhaps I did not stress that enough, but I meant not uncertain and/or
> changing requirements, but worse: unknown domain area and no experts near
> You got 3-month schedule and no experts are provided. Or slighly more
> example: your new project is: to extract the text (using speech
> technique) from a *.ram file and convert it to XHTML-Print (using
> for conveying voice variations)... no experts or training courses are
The risk of such kind of projects is very very high and the language you use
do anything with it (but in a case your staff don't know it well the risk is
higer - I agree
that Ada will raise the project risk when you have good C++ programmers
without any knowledge of Ada).
I don't know any language which can fix such kind of bad project management.
As a matter of fact, every day on my work I can see how many problems can
the language (C++)
in the situation when management is not a strong side of a project. It cause
problems, really very serious problems. The problems is ten times bigger
when you have
many "good C++ programmers" (~100). They are more ten times bigger when your
system full of simultaneous processing - such kind of things can't be
on C or ++ the way anybody can manage it and catch all bugs in it during 3
I spent a lot of time with hacking absolutely mad "class hierarchy",
bad include effects, macroses etc.
On my opinion C++ don't suitable to any _predictable_ development. It
work when a risk is source of pleasure, something like alpinism.
How it can reduce
the risk when nobody knows what he or she gets when mix all these
"threads" and infuse for a couple of monthes in conditions very close to a
Using of Ada gives more control. Even if you have a lack in documentation it
will not allow
use objects by wrong way as easily as ++ will. It disciplines.
It calls you to analyze problem instead of wasting time
on generating a sort of hierarchies and entities which nobody can
understand. It gives you better
control and it will not give such number of surprises after successfully
compiling as ++ will.
When a project is on high risk you need more control of it. You need more
of it. You need bigger QA. You need more readable code, after all!