EBERARD@ADA20.ISI.EDU.UUCP (06/15/87)
Recently, I have had a number of conversations with DoD contractors regarding software reuse. While they all refuse to have their names used, they were very honest with me about their opinions on the future of software reuse within the DoD. Some points you might find interesting are: 1. Software reuse is something which is virtually meaningless to the highest levels of management in most organizations doing business with the U.S. Department of Defense (DoD). When these high-level managers are told about software reuse, they have one primary question: "How does it affect the bottom line?" In other words, is this a concept which will make the company more money? Given the current state of affairs, the answer is "no." 2. One of the reasons that the answer is currently "no," is cost-plus-fixed-fee (CPFF) contracting practices. Specifically, the more people put on a project, the more money a contractor makes. Making reuse of software actually costs the company money. Fixed price contracts, as they currently exist, are not an obvious inducement to reuse software because, as more than one contractor told me, "once we get a fixed price contract, we can always get the government to give us additional money." 3. At a briefing for contractors, an Army general said that "Ada appeared to be "taking off" in the commercial (non-military) sector." "One of the reasons for this," the general continued, "was because of the software reusability benefits that Ada provides. We think that our contractors will also see these same benefits and begin to make software reuse the normal practice." Some of the contractors at the briefing felt that the general was very naive about the ways of government contracting to make such a statement. So what can we learn from the above? The first thing we must realize is that organizations which develop software are run by people whose primary interest is profit. "Ignoring the concepts of ethics and morality," one contractor told me, "it does not seem to be currently in the best interests of a contractor to develop the most cost effective solution for any government software contract." We must also recognize that the commercial sector and the government software sector are two very different animals. In the commercial sector, a developer often pays all the costs for product development, hoping to more than recoup these costs based on sales of the product. With this type of scenario, software reuse makes a great deal of sense, i.e., the lower the development costs, the lower the risks and the greater the potential profit. On the government side, the software developer has little risk. The software developer is being paid to develop a product, not to sell it. The greater the development costs, the more money the contractor makes. If the product fails, or is never completed, the only one who loses is the government. (To add insult to injury, many contractors take the technology they have developed under government contract and turn it into viable commercial products.) "In order for software reusability to take hold in government contracting organizations," another contractor told me, "it must be made meaningful to the highest levels of contractor management." If they are aware of it, software reusability is often only a phrase to the upper levels of contractor management. Since it is the highest levels of management who can most effectively make software reusability a reality, the government must seek ways to make software reusability "real" (and profitable) to these people. -- Ed Berard (301) 695-6960 -------