Path: utzoo!attcan!uunet!mailrus!cs.utexas.edu!know!samsung!xylogics!merk!alliant!linus!community-chest!mitchell From: mitchell@community-chest.uucp (George Mitchell) Newsgroups: comp.software-eng Subject: Re: OOP and software reuse Message-ID: <112789@linus.mitre.org> Date: 9 Jul 90 15:07:02 GMT References: <39400113@m.cs.uiuc.edu> Sender: usenet@linus.mitre.org Reply-To: mitchell@community-chest.mitre.org (George Mitchell) Organization: MITRE-McLean Software Engineering Laboratory Lines: 26 In article <39400113@m.cs.uiuc.edu> johnson@m.cs.uiuc.edu wrote: `.... `The purpose of software reuse is not to eliminate programming but to `eliminate *unnecessary* programming. Although some of what we do `when we design new systems is creative, some of it is routine, simply `regurgitating algorithms and data structures that we have learned `in the past. Software reuse lets us stop regurgitating. In other `words, it will eliminate that part of building software that is `predictable and so emphasize the creative part that is not predictable. `In that sense, object-oriented programming is going to make the problem `that Cliff mentions worse. However, it will greatly decrease the amount `of time that it takes to build software. Managers still won't know how `much time it takes to build software, but they will know that it takes `less time than it used to. This emphasis on programming and building reflects much of what I think is wrong about the way we usually view reuse. The major cost of software is in maintenance, not development. The major cost of development is not in coding. To gain the greatest benefit from reuse, we need to have components that can be incorporated without alteration, without unit test, and without subsequent maintenance. What needs to be available in the component market place is not only code, but test data, warranties, and life cycle support. -- George Mitchell, MITRE, MS Z676, 7525 Colshire Dr, McLean, VA 22102 email: gmitchel@mitre.org [alt: mitchell@community-chest.mitre.org] vmail: 703/883-6029 FAX: 703/883-5519