Feature-Oriented Classification for Software Reuse

It is widely accepted that reuse is a key technology leading to substantial productivity gains in software development. In this paper we introduce FOCS (feature-oriented classification system), a new method and a tool to support (software) reuse. In feature-oriented classification components are described by sets of features. Each feature represents a property or attribute of the component. Storage and retrieval of components is done by means of these features sets. Features can be refined to give them a more precise meaning. We distinguish different kinds of refinement to support feature understanding and structuring. A similarity metric is defined between features to support the retrieval of similar components. The current FOCS prototype supports the organization of features in a classification scheme, the construction of descriptors, as well as the actual storage and retrieval of components.