Automatic Reusability Appraisal of Software Components using Neuro-fuzzy Approach

Automatic reusability appraisal could be helpful in evaluating the quality of developed or developing reusable software components and in identification of reusable components from existing legacy systems; that can save cost of developing the software from scratch. But the issue of how to identify reusable components from existing systems has remained relatively unexplored. In this paper, we have mentioned two-tier approach by studying the structural attributes as well as usability or relevancy of the component to a particular domain. Latent semantic analysis is used for the feature vector representation of various software domains. It exploits the fact that FeatureVector codes can be seen as documents containing terms -the idenifiers present in the componentsand so text modeling methods that capture co-occurrence information in low-dimensional spaces can be used. Further, we devised NeuroFuzzy hybrid Inference System, which takes structural metric values as input and calculates the reusability of the software component. Decision tree algorithm is used to decide initial set of fuzzy rules for the Neuro-fuzzy system. The results obtained are convincing enough to propose the system for economical identification and retrieval of reusable software components. Keywords— Clustering, ID3, LSA, Neuro-fuzzy System, SVD

[1]  Susan T. Dumais,et al.  LSI meets TREC: A Status Report , 1992, TREC.

[2]  Richard A. Harshman,et al.  Indexing by Latent Semantic Analysis , 1990, J. Am. Soc. Inf. Sci..

[3]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[4]  David Eichmann,et al.  A Neural Network Paradigm for Characterizing Reusable Software , 1993 .

[5]  Barry W. Boehm,et al.  Theory-W Software Project Management: Principles and Examples , 1989, IEEE Trans. Software Eng..

[6]  Jeffrey S. Poulin,et al.  Measuring software reuse - principles, practices, and economic models , 1996 .

[7]  Madjid Merabti,et al.  A multi-tiered classification scheme for component retrieval , 1998, Proceedings. 24th EUROMICRO Conference (Cat. No.98EX204).

[8]  Maurice H. Halstead,et al.  Elements of software science , 1977 .

[9]  Victor R. Basili,et al.  Identifying and qualifying reusable software components , 1991, Computer.

[10]  Wayne C. Lim,et al.  Effects of reuse on quality, productivity, and economics , 1994, IEEE Software.

[11]  Watts S. Humphrey,et al.  Managing the software process , 1989, The SEI series in software engineering.

[12]  Victor R. Basili,et al.  Software development: a paradigm for the future , 1989, [1989] Proceedings of the Thirteenth Annual International Computer Software & Applications Conference.

[13]  Richard W. Selby,et al.  Enabling reuse-based software development of large-scale systems , 2005, IEEE Transactions on Software Engineering.

[14]  Stamatios V. Kartalopoulos,et al.  Understanding neural networks and fuzzy logic , 1995 .

[15]  Stephen R. Schach,et al.  Metrics for targeting candidates for reuse: an experimental approach , 1995, SAC '95.

[16]  Chuen-Tsai Sun,et al.  Neuro-fuzzy modeling and control , 1995, Proc. IEEE.

[17]  Will Tracz,et al.  A conceptual model for megaprogramming , 1991, SOEN.

[18]  Stamatios V. Kartalopoulos,et al.  Understanding neural networks and fuzzy logic - basic concepts and applications , 1997 .

[19]  Ali Mili,et al.  Reusing Software: Issues and Research Directions , 1995, IEEE Trans. Software Eng..

[20]  Susan T. Dumais,et al.  Using Linear Algebra for Intelligent Information Retrieval , 1995, SIAM Rev..