Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!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: <112896@linus.mitre.org> Date: 10 Jul 90 17:31:09 GMT References: <39400113@m.cs.uiuc.edu> <112789@linus.mitre.org> Sender: usenet@linus.mitre.org Reply-To: mitchell@community-chest.mitre.org (George Mitchell) Organization: MITRE-McLean Software Engineering Laboratory Lines: 36 In article jwg1@gte.com (James W. Gish) wrote: `In article <112789@linus.mitre.org> mitchell@community-chest.uucp (George Mitchell) writes: `> This emphasis on programming and building reflects much of what I think is `> wrong about the way we usually view reuse. [....] `It is far too difficult as a designer/coder to envision how your `code is going to be used in the future, either its context or the `exact requirements imposed on it. When we write code, we usually do `it with a particular context or application domain and framework (for `example, error handling/reporting) in mind.... ` `So, for the foreseeable future I believe our best hope is in `providing intelligent tools for assisting us in adapting code and `associated artifacts including, for example, documentation and test `cases, to new uses. This comment reflects what I feel is an improper emphasis on implementation. It is partly because of the pervasiveness of this mindset that the appraisal of the "foreseeable future" is probably quite correct. However, if we are able to look at reuse from the total life-cycle, it can be possible [in a domain ANALYSIS] to identify domain specific objects with standardized interfaces. It can also be possible to DESIGN objects that provide the minimum essential functionality which can be extended without object modification. In IMPLEMENTATION it can be possible to create code and documentation that will permit the object to be easily reused and maintained. In MAINTENANCE it can be possible to have a domain wide CM program and provide support to all users. Finally, in the user statement of REQUIREMENTS it can be possible to communicate the requirements for a new system (at least partially) in terms of the previously specified objects that will compose that system. -- 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