Affiliation:
1. Univ Statale di Milano — Poli di Crema, Crema, Italy
2. Politecnico di Milano, Milan, Italy
3. Univ. Statale di Milano, Milan, Italy
Abstract
This article presents a hierarchy-aware classification schema for object-oriented code, where software components are classified according to their
behavioral characteristics
, such as provided services, employed algorithms, and needed data. In the case of reusable application frameworks, these characteristics are constructed from their
model
, i.e., from the description of the abstract classes specifying both the framework structure and purpose. In conventional object libraries, the characteristics are extracted semiautomatically from class interfaces. Characteristics are term pairs, weighted to represent "how well" they describe component behavior. The set of characteristics associated with a given component forms its
software descriptor
. A descriptor base is presented where descriptors are organized on the basis of structured relationships, such as similarity and composition. The classification is supported by a thesaurus acting as a language-independent unified lexicon. The descriptor base is conceived for developers who, besides conventionally browsing the descriptors hierarchy, can query the system, specifying a set of desired functionalities and getting a ranked set of adaptable candidates. User feedback is taken into account in order to progressively ameliorate the quality of the descriptors according to the views of the user community. Feedback is made dependent of the user typology through a
user profile
. Experimental results in terms of recall and precision of the retrieval mechanism against a sample code base are reported.
Publisher
Association for Computing Machinery (ACM)
Cited by
8 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献