A hierarchy-aware approach to faceted classification of object-oriented components

被引:18
作者
Damiani, E
Fugini, MG
Bellettini, C
机构
[1] Univ Statale Milano Polo di Crema, Crema, CR, Italy
[2] Politecn Milan, Dipartimento Elettron & Informaz, I-20133 Milan, Italy
[3] Univ Statale Milano, Dipartimento Sci Informaz, I-20100 Milan, Italy
关键词
documentation; code analysis; component repositories; component retrieval; software reuse; user feedback;
D O I
10.1145/310663.310665
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:215 / 262
页数:48
相关论文
共 68 条
[1]  
[Anonymous], 1988, AUTOMATIC TEXT PROCE
[2]  
[Anonymous], 1992, NEURAL NETWORKS FUZZ
[3]   REPOSITORY EVALUATION OF SOFTWARE REUSE [J].
BANKER, RD ;
KAUFFMAN, RJ ;
ZWEIG, D .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1993, 19 (04) :379-389
[4]   COMBINATION OF FUZZY NUMBERS REPRESENTING EXPERT OPINIONS [J].
BARDOSSY, A ;
DUCKSTEIN, L ;
BOGARDI, I .
FUZZY SETS AND SYSTEMS, 1993, 57 (02) :173-181
[5]   SUPPORT FOR COMPREHENSIVE REUSE [J].
BASILI, VR ;
ROMBACH, HD .
SOFTWARE ENGINEERING JOURNAL, 1991, 6 (05) :303-316
[6]   STRUCTURING PRIMITIVES FOR A DICTIONARY OF ENTITY-RELATIONSHIP DATA SCHEMAS [J].
BATINI, C ;
DIBATTISTA, G ;
SANTUCCI, G .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1993, 19 (04) :344-365
[7]  
Batory D., 1992, ACM Transactions on Software Engineering and Methodology, V1, P355, DOI 10.1145/136586.136587
[8]  
Baumer D., 1996, ECOOP 96 OBJECT ORIE
[9]  
BAUMER D, 1997, COMMUN ACM, V40, P53
[10]   REUSING SPECIFICATIONS IN OO APPLICATIONS [J].
BELLINZONA, R ;
FUGINI, MG ;
PERNICI, B .
IEEE SOFTWARE, 1995, 12 (02) :65-75