Skip to main content

A New Metric for Package Cohesion Measurement Based on Complex Network

  • Conference paper
  • First Online:
Complex Networks and Their Applications VIII (COMPLEX NETWORKS 2019)

Part of the book series: Studies in Computational Intelligence ((SCI,volume 881))

Included in the following conference series:

Abstract

With software evolution and code expansion, software structure becomes more and more complex. Refactoring can be used to improve the structure design and decrease the complexity of software. In this paper, we propose a cohesive metric that can be used for package refactoring. It considers not only the dependencies of intra-package and inter-package, but also the backward dependencies of inter-package. After theoretical verification and empirical verification on multiple open source softwares, our metric is proved to effectively measure software structure.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 169.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 219.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Tom, E., Aurum, A., Vidgen, R.: An exploration of technical debt. J. Syst. Softw. 86(6), 1498–1516 (2013)

    Article  Google Scholar 

  2. Wang, L., Yu, P., Wang, Z., Yang, C., Ye, Q.: On the evolution of linux kernels: a complex network perspective. J. softw. Evol. Process 25(5), 439–458 (2013)

    Article  Google Scholar 

  3. Myers, C.R.: Software systems as complex networks: structure, function, and evolvability of software collaboration graphs. Phys. Rev. E 68(4), 046116 (2003)

    Article  MathSciNet  Google Scholar 

  4. Fowler, M.: Refactoring: improving the design of existing code. In: 11th European Conference. Jyväskylä, Finland (1997)

    Google Scholar 

  5. Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20(6), 476–493 (1994)

    Article  Google Scholar 

  6. Harrison, R., Counsell, S.J., Nithi, R.V.: An evaluation of the mood set of object-oriented software metrics. IEEE Trans. Softw. Eng. 24(6), 491–496 (1998)

    Article  Google Scholar 

  7. Bieman, J.M., Kang, B.-K.: Cohesion and reuse in an object-oriented system. In: ACM SIGSOFT Software Engineering Notes, vol. 20, no. SI, pp. 259–262 (1995)

    Google Scholar 

  8. Briand, L.C., Morasca, S., Basili, V.R.: Defining and validating measures for object-based high-level design. IEEE Trans. Softw. Eng. 25(5), 722–743 (1999)

    Article  Google Scholar 

  9. Briand, L.C., Morasca, S., Basili, V.R.: Property-based software engineering measurement. IEEE Trans. Softw. Eng. 22(1), 68–86 (1996)

    Article  Google Scholar 

  10. Counsell, S., Mendes, E., Swift, S.: Comprehension of object-oriented software cohesion: the empirical quagmire. In: Proceedings 10th International Workshop on Program Comprehension, pp. 33–42. IEEE (2002)

    Google Scholar 

  11. Badri, L., Badri, M., Toure, F.: Exploring empirically the relationship between lack of cohesion and testability in object-oriented systems. In: International Conference on Advanced Software Engineering and Its Applications, pp. 78–92. Springer (2010)

    Google Scholar 

  12. Misic, V.B.: Cohesion is structural, coherence is functional: different views, different measures. In: Proceedings of Seventh International Conference on Software Metrics Symposium, METRICS 2001, pp. 135–144. IEEE (2001)

    Google Scholar 

  13. Abdeen, H., Ducasse, S., Sahraoui, H., Alloui, I.: Automatic package coupling and cycle minimization. In: 2009 16th Working Conference on Reverse Engineering, WCRE 2009, pp. 103–112. IEEE (2009)

    Google Scholar 

  14. Gupta, V., Chhabra, J.K.: Package level cohesion measurement in object-oriented software. J. Braz. Comput. Soc. 18(3), 251–266 (2012)

    Article  Google Scholar 

  15. Shen, P., Chen, L.: Complex network analysis in Java application systems. J. East Chin. Normal Univ. 38–51 (2017)

    Google Scholar 

  16. Newman, M.E., Girvan, M.: Finding and evaluating community structure in networks. Phys. Rev. E 69(2), 026113 (2004)

    Article  Google Scholar 

  17. Pan, W., Li, B., Jiang, B., Liu, K.: Recode: software package refactoring via community detection in bipartite software networks. Adv. Complex Syst. 17(07n08), 1450006 (2014)

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Liangyu Chen .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Mi, Y., Zhou, Y., Chen, L. (2020). A New Metric for Package Cohesion Measurement Based on Complex Network. In: Cherifi, H., Gaito, S., Mendes, J., Moro, E., Rocha, L. (eds) Complex Networks and Their Applications VIII. COMPLEX NETWORKS 2019. Studies in Computational Intelligence, vol 881. Springer, Cham. https://doi.org/10.1007/978-3-030-36687-2_20

Download citation

Publish with us

Policies and ethics