Total views : 348

Component Reusability of a Software System based on Cohesion and Coupling

Affiliations

  • Chandigarh University, Ajit Singh Nagar – 140413, Punjab, India

Abstract


Background/Objectives: Module based software development provides one of the best ways for the development of big projects. Project can easily be divided into different modules so that the development process is faster. In our approach we are determining the reusable components of a software system and enhancing the accuracy of the methods for determining them. Method/Statistical Analysis: We are using genetic algorithm and fuzzy c mean algorithm to find the cohesion and coupling between the components of a software system on basis of which reusability of the components is determined. Already existing software projects are collected and technique was applied on them to determine the reusable components of those projects and value of f-measure is calculated as a factor of comparison with previous techniques. Finding: In our approach we have found the reusable components of a software system by not only finding the dependencies between the different elements of a single package but also the finding dependencies between the elements of different packages of an already existing project that makes our approach different from existing study. The combination of two algorithms is used for identification and classification of the functions, classes, packages and sub packages in order to find out coupling and cohesion between these elements of a software system and and yields higher accuracy as compared to existing methods.

Keywords

Cohesion, Coupling, Clustering, Interlobular Density, Packages, Software Reusability.

Full Text:

 |  (PDF views: 270)

References


  • Kwong CK, Mu Tang JF, Luo XG. Optimization of software components selection for component-based software system development. Computers and Industrial Engineering. 2010; 58:618–24.
  • Cortellessa V, Marinelli F, Potena P. An optimization framework for build-or-buy decisions in software architecture. Computers and Operations Research. 2008; 35(10):3090– 106
  • Cohesion. 2016. Available from: http://www.merriam-webster.com/dictionary/cohesion
  • Coupling. 2016. Available from: http://whatis.techtarget.com/definition/coupling
  • Capiluppi A, Boldyreff C. Coupling patterns in the effective reuse of open source software. Proceedings of International Conference on Software Engineering; 2007. p. 9.
  • Brito e Abreu F, Goulao M. Coupling and cohesion as modularization drivers: Are we being over-persuaded? Proceedings of the 5th European Conference on Software Maintenance and Reengineering; 2001.
  • Sebastiani F. Machine learning in automated text categorization. Journal of ACM Computing Survey (CSUR). 2002; 34:1-47.
  • Joshi P, Joshi RK. Concept analysis for class cohesion. Proceedings of the 13th European Conference on Software Maintenance and Reengineering. Kaiserslautern, Germany. 2009. p. 237–40.
  • Mahdavi K, Harman M, Hierons RM. A multiple hill climbing approach to software module clustering. IEEE International Conference on Software Maintenance; Los Alamitos, California, USA. 2003 Sep. p. 315–24.
  • Harman M, Mansouri SA, Zhang Y. Search Based software engineering: A comprehensive analysis and review of trends techniques and applications. Department of Computer Science, King’s College London, Technical Report. TR-0903. 2009.
  • Al Dallal J, Briand L. A precise method–method interactionbased cohesion metric for object-oriented classes. TOSEM. 2012; 21(2).
  • Deary IJ, Penke L, Johnson W. The neuroscience of human intelligence differences. Nature Review Neuroscience. 2010; 11:201–11.
  • Jorgensen PC. Software Testing. A Craftsman’s Approach. 3rd edition. Auerbach Publications; 2011.
  • Wu Z, Kwong CK, Tang J, Chan J. Integrated models for software component selection with simultaneous consideration of implementation and verification. Elsevier Computers and Operations Research. 2012; 39:3376–93.
  • Mahdavi K, Harman M, Hierons RM. A multiple hill climbing approach to software module clustering. IEEE International Conference on Software Maintenance; Los Alamitos, California, USA. 2003 Sep. p. 315–24.
  • Wang K, Bai X, Li J, Ding C. A service-based framework for pharmacogenenomics data integration. Enterp Inf Syst. 2010; 4(3):225–45.
  • Lawrence D. Handbook of genetic algorithms. 1991.
  • Boehm BW. Software risk management: Principles and practices. Journal of IEEE Software. 1991; 8(1):32-41.
  • Masoud H, Jalili S, Hasheminejad SMH. Dynamic clustering using combinatorial particle swarm optimization. Applied Intelligence. 2013; 38:289-314.

Refbacks

  • There are currently no refbacks.


Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 License.