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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
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)
Gupta, V., Chhabra, J.K.: Package level cohesion measurement in object oriented software. J. Brazilian Comput. Soc. Springer 18, 251–266 (2012)
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)
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)
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)
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
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)
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)
Lung, C., Zaman, M., Nandi, A.: Applications of clustering techniques to software partitioning, recovery and restructuring. J. Syst. Softw. 73(2), 227–244 (2004)
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)
Serban, G., Czibula, I.G.: Restructuring software systems using clustering. In: Proceedings of the 22nd International Symposium on Computer and Information Sciences, Ankara (2007)
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)
Zhao, J.: Towards a Metric Suite for Aspect Oriented Software. Technical report, SE 136–25, Information Processing Society of Japan (IPSJ) (2002)
Ceccato, M., Tonella, P.: Measuring the effects of software aspectization. In: Proceedings of first workshop on Aspect Reverse Engineering, WARE (2004)
Gelinas, J.F., Badri, M., Badri, L.: A cohesion measure for aspects. J. Object Technol. 5(7), 97–114 (2006)
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)
Lung, C.H., Xu, X., Zaman, M., Srinivasan, A.: Program restructuring using clustering techniques. J. Syst. Softw. Elsevier 79, 1261–1279 (2006)
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)
Tzerpos, V., Holt, R.C.: Software botryology automatic clustering of software systems. In: Proceedings of 20th Annual International Conference of the IEEE (1998)
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)
Lakhotia, A.: A unified framework for expressing software subsystem classification techniques. J. Syst. Softw. 36(3), 211–231 (1997)
Anquetil, N., Fourrier, C., Lethbridge, T.: Experiments with hierarchical clustering algorithms as software remodularization methods. In: Proceedings of Working Conference on Reverse Engineering (1999)
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)
Kang, B.K., Beiman, J.M.: Using design abstractions to visualize, quantify, and restructure software. J. Syst. Softw. 42(2), 175–187 (1998)
Kang, B.K., Beiman, J.M.: A quantitative framework for software restructuring. J. Softw. Mainten Res. Pract. 11(4), 245–284 (1999)
Kim, H.S., Kwon, Y.R.: Restructuring programs through program slicing. Int. J. Softw. Eng. Knowl. Eng. 4(3), 349–368 (1994)
Alkhalid, Alshayeb, Mahmoud: Software refactoring at the package level using clustering techniques. IET software 5(3), 274–286 (2011)
Sadaoui, Badri, Badri: Improving class cohesion measurement: towards a novel approach using hierarchical clustering. J. Softw. Eng. Appl. Sci. Res. 5, 449–458 (2012)
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20(6), 476–493 (1994)
Naseem, Maqbool, Muhammad: Improved similarity measures for software clustering. In: 15th European Conference on Software Maintenance and Reengineering, IEEE, pp. 45–54 (2011)
Kaur, P.J., Kaushal, S.: Cohesion and Coupling measures for Aspect Oriented Systems. AETS/7/590, Elsevier, vol. 7, pp. 784–788 (2013)
http://eclipse.org/aspectj/doc/released/progguide/examples.html
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Singapore Pte Ltd.
About this paper
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
DOI: https://doi.org/10.1007/978-981-13-1742-2_26
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-13-1741-5
Online ISBN: 978-981-13-1742-2
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)