This article describes ROSA, a software reuse system based on the processing of the natural language descriptions of software artifacts. Lexical, syntactic, and semantic analysis of software descriptions is performed to automatically extract both verbal and nominal phrases from descriptions and to use this information to create frame-based indexing units for software components. Retrieval similarity measures provide good retrieval effectiveness by supporting semantic matching and processing of lexical relationships between terms. Some results from an experiment evaluating retrieval effectiveness are discussed.