Skip to main content

Using Clustering for Package Cohesion Measurement in Aspect-Oriented Systems

  • Conference paper
  • First Online:
Information and Communication Technology for Intelligent Systems

Part of the book series: Smart Innovation, Systems and Technologies ((SIST,volume 106))

  • 719 Accesses

Abstract

Packages are basic programme units in any object-oriented system including aspect-oriented systems, which allow the grouping of dependent elements. The cohesion of a package is the degree of encapsulation among the elements in the package. For any software to exhibit high quality, it must have high cohesion. Many metrics have been framed in the past to measure the cohesion in aspect-oriented systems but all metrics are defined at the class level. Most of the research focused on the class of structural cohesion metrics which measures cohesion by software design extracted from the source code. The aim of this paper is to propose an approach to explore the use of hierarchical clustering technique for improving the cohesion of packages in aspect-oriented. The results obtained from our approach are then compared with the already available metrics. The achieved results show that our proposed approach determines the cohesion of packages more accurately.

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
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. Kaur, P.J., Kaushal, S.: Package level metrics for reusability in aspect oriented systems. In: International Conference on Futuristic Trends on Computational Analysis and Knowledge Management (ABLAZE), pp. 364–368. IEEE Amity University, Noida (2015)

    Google Scholar 

  2. Gupta, V., Chhabra, J.K.: Package level cohesion measurement in object oriented software. J. Brazilian Comput. Soc. Springer 18, 251–266 (2012)

    Article  Google Scholar 

  3. Sant’Anna, C., Garcia, A., Chavez, C., Lucena, C., Von Staa, A.: On the reuse and maintenance of aspect oriented software: an assessment framework. In: 17th Brazillian Symposium on Software Engineering (2003)

    Google Scholar 

  4. Wiggerts, T.A.: Using clustering algorithms in legacy systems remodularization. In: Proceedings of the 4th Working Conference on Reverse Engineering, Washington, pp. 33–43 (1997)

    Google Scholar 

  5. Czibula, I.G., Czibula, G., Cojocar, G.S.: Hierarchical clustering for identifying crosscutting concerns in object-oriented software systems. In: Proceedings of the 4th Balkan Conference in Informatics, Thessaloniki, vol 8, no 3, pp. 21–28 (2009)

    Google Scholar 

  6. Anquetil, N., Fourrier, C., Lethbridge, T.: Experiments with hierarchical clustering algorithms as software remodularization methods. In: Proceedings of the Working Conference on Reverse Engineering, Benevento, 23–27 October 1999

    Google Scholar 

  7. Lung, C.-H.: Software architecture recovery and re-structuring through clustering techniques. In: Proceedings of the 3rd International Software Architecture Workshop, Orlando, pp. 101–104 (1999)

    Google Scholar 

  8. Czibula, I.G., Czibula, G.: A partitional clustering algorithm for improving the structure of object-oriented software systems. Studia Universitatis Babes-Bolyai, Series Informatica, vol. 3, no. 2 (2008)

    Google Scholar 

  9. Lung, C., Zaman, M., Nandi, A.: Applications of clustering techniques to software partitioning, recovery and restructuring. J. Syst. Softw. 73(2), 227–244 (2004)

    Article  Google Scholar 

  10. Lung, C.-H., Zaman, M.: Using clustering technique to restructure programs. In: Proceedings of the International Conference on Software Engineering Research and Practice, Las Vegas, pp. 853–860 (2004)

    Google Scholar 

  11. Serban, G., Czibula, I.G.: Restructuring software systems using clustering. In: Proceedings of the 22nd International Symposium on Computer and Information Sciences, Ankara (2007)

    Google Scholar 

  12. Moldovan, G.S., Serban, G.: Aspect mining using a vector space model based clustering approach, pp. 36–40. Proceedings of Linking Aspect Technology and Evolution Workshop, Bonn (2006)

    Google Scholar 

  13. Zhao, J.: Towards a Metric Suite for Aspect Oriented Software. Technical report, SE 136–25, Information Processing Society of Japan (IPSJ) (2002)

    Google Scholar 

  14. Ceccato, M., Tonella, P.: Measuring the effects of software aspectization. In: Proceedings of first workshop on Aspect Reverse Engineering, WARE (2004)

    Google Scholar 

  15. Gelinas, J.F., Badri, M., Badri, L.: A cohesion measure for aspects. J. Object Technol. 5(7), 97–114 (2006)

    Google Scholar 

  16. Kumar, A., Kumar, R., Grover, P.S.: Towards a unified framework for cohesion measurement in aspect-oriented systems. In: IEEE Proceedings of 19th Australian Software Engineering Conference Perth, Western Australia, pp. 57–65 (2008)

    Google Scholar 

  17. Lung, C.H., Xu, X., Zaman, M., Srinivasan, A.: Program restructuring using clustering techniques. J. Syst. Softw. Elsevier 79, 1261–1279 (2006)

    Google Scholar 

  18. Ling, C.-H., Zaman, M., Nandi, A.: Applications of clustering techniques to software partitioning, recovery, and restructuring. J. Syst. Softw. 73(2), 227–244 (2004)

    Google Scholar 

  19. Tzerpos, V., Holt, R.C.: Software botryology automatic clustering of software systems. In: Proceedings of 20th Annual International Conference of the IEEE (1998)

    Google Scholar 

  20. Puneet, Sakshi, Arun, Francesco: A framework for assessing reusability using package cohesion measure in aspect oriented system. Int. J. Parallel Prog. Special Issue on Programming Models and Algorithms for Data Analysis in HPC Systems. Springer, 1–22 (2017)

    Google Scholar 

  21. Lakhotia, A.: A unified framework for expressing software subsystem classification techniques. J. Syst. Softw. 36(3), 211–231 (1997)

    Article  Google Scholar 

  22. Anquetil, N., Fourrier, C., Lethbridge, T.: Experiments with hierarchical clustering algorithms as software remodularization methods. In: Proceedings of Working Conference on Reverse Engineering (1999)

    Google Scholar 

  23. Anquetil, N., Lethbridge, T.C.: Comparative study of clustering algorithms and abstract representations for software remodularisation. In: IEEE Proceedings of Software vol. 150(3), pp. 185–201 (2003)

    Google Scholar 

  24. Kang, B.K., Beiman, J.M.: Using design abstractions to visualize, quantify, and restructure software. J. Syst. Softw. 42(2), 175–187 (1998)

    Article  Google Scholar 

  25. Kang, B.K., Beiman, J.M.: A quantitative framework for software restructuring. J. Softw. Mainten Res. Pract. 11(4), 245–284 (1999)

    Article  Google Scholar 

  26. Kim, H.S., Kwon, Y.R.: Restructuring programs through program slicing. Int. J. Softw. Eng. Knowl. Eng. 4(3), 349–368 (1994)

    Article  MathSciNet  Google Scholar 

  27. Alkhalid, Alshayeb, Mahmoud: Software refactoring at the package level using clustering techniques. IET software 5(3), 274–286 (2011)

    Google Scholar 

  28. Sadaoui, Badri, Badri: Improving class cohesion measurement: towards a novel approach using hierarchical clustering. J. Softw. Eng. Appl. Sci. Res. 5, 449–458 (2012)

    Google Scholar 

  29. 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 

  30. Naseem, Maqbool, Muhammad: Improved similarity measures for software clustering. In: 15th European Conference on Software Maintenance and Reengineering, IEEE, pp. 45–54 (2011)

    Google Scholar 

  31. Kaur, P.J., Kaushal, S.: Cohesion and Coupling measures for Aspect Oriented Systems. AETS/7/590, Elsevier, vol. 7, pp. 784–788 (2013)

    Google Scholar 

  32. http://eclipse.org/aspectj/doc/released/progguide/examples.html

  33. http://abc.comlab.ox.uk/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Puneet Jai Kaur .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Kaur, P.J., Kaushal, S. (2019). Using Clustering for Package Cohesion Measurement in Aspect-Oriented Systems. In: Satapathy, S., Joshi, A. (eds) Information and Communication Technology for Intelligent Systems . Smart Innovation, Systems and Technologies, vol 106. Springer, Singapore. https://doi.org/10.1007/978-981-13-1742-2_26

Download citation

Publish with us

Policies and ethics