An RPCL-Based Indexing Approach for Software Components Classification


SATHIT NAKKRASAE
Department of Computer Technology, Faculty of Science,
Ramkhamhaeng University, Bangkok, 10240, Thailand

PERAPHON SOPHATSATHIT
Advanced Virtual and Intelligent Computing (AVIC) Center,
Department of Mathematics, Faculty of Science,
Chulalongkorn University, Bangkok, 10330, Thailand

Submitted 28 April 2003
Revised 11 February 2004
Accepted 11 June 2004

Abstract

Software Engineering is not only a technical discipline of its own, but also a problem domain where technologies coming from other disciplines are relevant and can play important roles. One important example is knowledge engineering, a term that is used in a broad sense to encompass artificial intelligence, computational intelligence, knowledge bases, data mining, and machine learning [13]. Many typical software development issues can benefit from these disciplines. For this reason, we will employ computational intelligence approach to classify software component repository into similar component cluster groups with the help of Rival Penalized Competitive Learning algorithm. The center of each cluster will be used to construct the coarse grain classification indexing structure. Subsequent retrieval requirements of software components are compared with all the indexed cluster centers. Any software components belonging to the cluster partition whose center is closest to the required software component will be retrieved and participated in selecting the most suitable software component at the fine grain level. This approach not only is suitable for multi-dimensional data, but also automatically decides the correct model classification.

Keywords: software component classification, knowledge engineering, neural network, and rival penalized competitive learning.