An evolutionary approach to constructing effective software reuse repositories
- 1 April 1997
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Software Engineering and Methodology
- Vol. 6 (2), 111-140
- https://doi.org/10.1145/248233.248242
Abstract
Repositories for software reuse are faced with two interrelated problems: (1) acquiring the knowledge to initially construct the repository and (2) modifying the repository to meet the evolving and dynamic needs of software development organizations. Current software repository methods rely heavily on classification, which exacerbates acquistition and evolution problems by requiring costly classification and domain analysis efforts before a repository can be used effectively, This article outlines an approach that avoids these problems by choosing a retrieval method that utilizes minimal repository structure to effectively support the process of finding software conponents. The approach is demonstrated through a pair of proof-of-concept prototypes: PEEL, a tool to semiautomatically identify reusable components, and CodeFinder, a retrieval system that compensates for the lack of explicit knowledge structures through a spreading activation retrieval process. CodeFinder also allows component representations to be modified while users are searching for information. This mechanism adapts to the changing nature of the information in the repository and incrementally improves the repository while people use it. The combination of these techniques holds potential for designing software repositories that minimize up-front costs, effectively support the search process, and evolve with an organization's changing needs.Keywords
This publication has 45 references indexed in Scilit:
- Information access tools for software reuseJournal of Systems and Software, 1995
- Organization domain modeling (ODM)ACM SIGSOFT Software Engineering Notes, 1995
- An empirical study of representation methods for reusable software componentsIEEE Transactions on Software Engineering, 1994
- Toward megaprogrammingCommunications of the ACM, 1992
- Computing similarity in a reuse library systemACM Transactions on Software Engineering and Methodology, 1992
- Implementing faceted classification for software reuseCommunications of the ACM, 1991
- Surveying current research in object-oriented designCommunications of the ACM, 1990
- ASK FOR INFORMATION RETRIEVAL: PART II. RESULTS OF A DESIGN STUDYJournal of Documentation, 1982
- Index term weightingInformation Storage and Retrieval, 1973
- A STATISTICAL INTERPRETATION OF TERM SPECIFICITY AND ITS APPLICATION IN RETRIEVALJournal of Documentation, 1972