Robert Firth said: > Will future software products delivered to the DoD be assessed for > reliability, maintainability, and the other *essential* -ilitites? > I rather think not. I see no evidence that the DoD has any competence > in such assessments, nor much evidence it even realises it *needs* > such competence, and very badly. Emmett Paige said: > THIS ONE IS INSULTING TO A LOT OF SMART,INTELLIGENT FOLKS IN DOD THAT > HAVE AS MUCH EXPERIENCE AS THE EDITOR AND MOST OF THE ADDRESSES. IT > STRESSES THAT THOSE WHO ARE IN DOD FOR WHATEVER REASON ARE IDIOTS WHO DO > NOT EVEN KNOW WHAT WE NEED OR TO TEST WHAT WE BUY. > I REJECT THAT NOTION FROM ANYONE... If anyone should be insulted by Robert Firth's comments, I should. I work at MITRE and am expected to be a technical expert advising the government on exactly those issues. But I am not insulted, and in fact I agree with Robert Firth. Why? I think of it as the problem of the Emperor's New Clothes. A lot of the people on the government side of the table are totally blind to the software engineering issues involved in a procurement. As such this is not a problem, that is what the experts are there for, in this and many other areas. But the area of software engineering is special in that it is not particular subtle aspects of the product that are invisible to the untrained eye, it is the whole garment. Now the people who do make the (final) decisions are intelligent and willing to listen to good advice. But when quality of software engineering is only one of the factors in a procurement, and the only one that the final decision maker cannot see, it gets deprecated relative to other criteria. Even when it doesn't, imagine the plight of a color-blind Emperor whose advisors are discussing the advantages and disadvantage of two robes, one red and one green. He can't avoid getting confused. But it gets worse. I work daily with experts in the area of database technology. One or two of them are able to SEE software engineering issues, but most are not. On the other hand, I rely on them for advice on database issues--I can understand the underlying technology, but there are lots of things immediately obvious to the database experts that are not visible to me. Repeat for real-time, design methodologies, requirements analysis, comm, etc. The world of software development has grown into many specialized fields, and no one person can be expert in all of them. Now let's get back to the decision maker, who IS an expert in program management, or radar or command and control doctrine, but at best is capable of seeing the key issues in one area of software. He convenes his panel of experts, and gets six different opinions, based on honest differences of opinion, and expertise in different domains. He must make the decision, but has no tools to use in evaluating the relative importance of the experts concerns on this project. So he makes the decision by choosing the best bid based on the criteria he does understand. How do we fix this? There is only one way, software engineering must become a profession. I expect that in about two years the Y2K disasters will cause this to happen, just like boiler explosions, dam failures, and elevator accidents caused other engineering professions to emerge. (And lest anyone feel insulted by this--I consider myself a professional, as most of the other readers here are professionals, and in many cases are recognized as such, though often not as professional software engineers.) But until and unless we have customers on large projects who won't buy a system unless a professional software engineer has signed off on the requirements, the design, the development methodology, the maintenance plan, etc., we will continue to have large software system buys that fail, and fail badly. So Secretary Paige, if you really want to solve the problem, and I know that you do, the best solution for the DoD is to select a set of individuals who can sign off on software engineering plans, and delegate to them the authority to make these judgement calls. When their judgement is seen to be flawed, remove them from the list. (And I would make such authority DoD wide. If someone is fool enough to sign a plan that several others have already rejected for good reasons, he or she will be weeded out quickly.) If the government contracts for a road or a bridge or a building there is a clear distinction (at least outside the DoD) between the authority of the contracting officer to select a vendor, and the civil engineer who signs off on the plans. If and when the government buys software the same way it buys bridges, the quality will increase significantly, and both cost and failure rates will decline. Robert I. Eachus with Standard_Disclaimer; use Standard_Disclaimer; function Message (Text: in Clever_Ideas) return Better_Ideas is...