Authors: Robert Biddle, Ewan Tempero, Peter Andreae
Source: GZipped PostScript (42kb); Adobe PDF (197kb)
Some recent commentaries have suggested that Object-Oriented Programming has not been successful in increasing the productivity of software engineers. The main argument is that the object structure is not sufficiently reusable in different contexts. Alternative strategies involving ``software components'' have been proposed. In this paper, we explore the connection between object-oriented programming and reusability. We show that object-oriented programming does support design for reusability, but does so in ways that are not well understood. The designer must make careful decisions with reusability in mind, and in particular, must include consideration of reusability in the process of class identification and class organisation.