Research Article Open Access

Approaches for Categorization of Reusable Software Components

Parvinder Singh Sandhu, Janpreet Singh and Hardeep Singh


Reuse repositories manager manages the reusable software components in different categories and needs to find the category of reusable software components. In this paper, we have used different pure and hybrid approaches to find the domain relevancy of the component to a particular domain. Probabilistic Latent Semantic Analysis (PLSA) approach, LSA, Singular Value Decomposition (SVD) technique, LSA Semi-Discrete Matrix Decomposition (SDD) technique and Naive Bayes Approach purely as well as hybrid, are evaluated to determine the Domain Relevancy of software components. It exploits the fact that Feature Vector codes can be seen as documents containing terms -the identifiers present in the components- and so text modeling methods that capture co-occurrence information in low-dimensional spaces can be used. The FV code representation of clusters or domains is used to find the domain-relevancy of the software components. PLSA has provided better results than LSA retrieval techniques in terms of Precision and Recall but its time complexity is too high. SVD Transformation with Naïve Bayes scheme has outperformed all other approaches and shows better results than the existing approach (LSA) being used by some open source code repositories e.g. Sourceforge. The DR-value determined is close to the manual analysis, used to be performed by the programmers/repository managers. Hence, the tool can also be utilized for the automatic categorization of software components and this kind of automation may improve the productivity and quality of software development.

Journal of Computer Science
Volume 3 No. 5, 2007, 266-273


Submitted On: 23 March 2007 Published On: 31 May 2007

How to Cite: Sandhu, P. S., Singh, J. & Singh, H. (2007). Approaches for Categorization of Reusable Software Components. Journal of Computer Science, 3(5), 266-273.

  • 7 Citations



  • LSA
  • Naïve Bayes
  • PLSA
  • Reusable Components
  • SVD
  • SDD