A Novel Approach for Optimal Grouping of Reusable Software Components for Component Based Software Development Systems

Component Based Software (CBS) development is the assembling of already developed components and preparing for integration. For the last two decades, researchers have been concentrating much on CBS both in industry and academia, because CBS helps in the reduction of manpower, cost, software development time and better system maintainability. The selection of the best component from the large collection of components is a difficult task and only few researchers have addressed this issue so far by using optimization techniques. In this paper, we propose a new methodology to group the components effectively, based on the software architecture, by using fuzzy concepts. Again, Fuzzy Clustering Technique (FCT) is introduced to find the optimal grouping between the reusable components and the software architectures. The proposed model has the following advantages: (i) the proposed Fuzzy Weighted Relational Coefficient (FWRC) is used to measure the fuzzy relational value of the suggested 9 component parameters; (ii) A mathematical model is established to remove all less utility leveled components before grouping; (iii) FCT performs on newly developed similarity coefficient formula; (iv) Zero — One programming (optimization) technique is used to optimize the group; (v) Fuzzy Weighted Approach is used to find the dominant component among the component grouping, and (vi) Optimal grouping is achieved by the property, namely, maximizing the cohesion and minimizing the coupling when compared to other methods. Finally, the validation of the derived methodology is verified with sample Business Enterprise Applications.

[1]  Avinash C. Kak,et al.  API-Based and Information-Theoretic Metrics for Measuring the Quality of Software Modularization , 2007 .

[2]  Jiafu Tang,et al.  An optimization model for software component selection under multiple applications development , 2011, Eur. J. Oper. Res..

[3]  Taghi M. Khoshgoftaar,et al.  Measuring coupling and cohesion of software modules: an information-theory approach , 2001, Proceedings Seventh International Software Metrics Symposium.

[4]  K. S. Ravichandran,et al.  A New Approach to Fuzzy Part-Family Formation in Cellular Manufacturing Systems , 2001 .

[5]  F. Brito e Abreu,et al.  Coupling and cohesion as modularization drivers: are we being over-persuaded? , 2001, Proceedings Fifth European Conference on Software Maintenance and Reengineering.

[6]  Harpreet Singh,et al.  NEURO FUZZY LOGIC MODEL FOR COMPONENT BASED SOFTWARE ENGINEERING , 2011 .

[7]  Vadlamani Ravi,et al.  Software reliability prediction by soft computing techniques , 2008, J. Syst. Softw..

[8]  Arvinder Kaur,et al.  Component Selection for Component based Software Engineering , 2010 .

[9]  Chris Jermaine,et al.  Computing program modularizations using the k-cut method , 1999, Sixth Working Conference on Reverse Engineering (Cat. No.PR00303).

[10]  Yogesh Singh,et al.  Software reusability assessment using soft computing techniques , 2011, SOEN.

[11]  Spiros Mancoridis,et al.  On the automatic modularization of software systems using the Bunch tool , 2006, IEEE Transactions on Software Engineering.

[12]  P. Suresh ANFIS Approach for Optimal Selection of Reusable Components , 2012 .

[13]  N. Chapin,et al.  Entropy-metric for systems with COTS software , 2002, Proceedings Eighth IEEE Symposium on Software Metrics.

[14]  Saeed Parsa,et al.  A Framework to Investigate and Evaluate Genetic Clustering Algorithms for Automatic Modularization of Software Systems , 2004, International Conference on Computational Science.

[15]  Jiafu Tang,et al.  Optimization of software components selection for component-based software system development , 2010, Comput. Ind. Eng..

[16]  Taghi M. Khoshgoftaar,et al.  A multiobjective module-order model for software quality enhancement , 2004, IEEE Transactions on Evolutionary Computation.