The International Arab Journal of Information Technology (IAJIT)

..............................
..............................
..............................


Assessing Impact of Class Change by Mining Class Associations

Data mining plays vital role in data analysis and also encompasses immense potential of mining software engineering data to manage design and maintenance issues. Change impact assessment is one of the crucial issues in software maintenance. In Object Oriented (OO) software system, classes are the core components and changes to the classes are always inevitable. So, OO software system must support the expected changes. In this paper, to assess impact of change in the class, we have proposed changeability measures by mining associations among the classes. These measures estimate a) change propagation by identifying its ripple effect; b) change impact set of the classes; c) changeability rank of the classes and d) class change cost. Further, we have performed the empirically study and evaluation to analysis our results. Our results indicate that by mining associations among the classes, the development team can effectively estimate the probable impact of the class change. These measures can be very helpful to perform changes to the classes while maintaining the software system.


[1] Agrawal R. and Srikant R., “Fast Algorithms for Mining Association Rules,” in Proceedings of the 20th International Conference of Very Large Data Bases, Santiago, pp. 487-499, 1994.

[2] Agrawal R., Imieliński T., and Swami A., “Mining Association Rules Between Sets of Items in Large Databases,” in Proceedings of the ACM SIGMOD International Conference on Management of Data, Washington, pp. 207-216, 1993.

[3] Ammor O., Lachkar A., Slaoui K., and Rais N., “Optimal Fuzzy Clustering in Overlapping Clusters,” The International Arab Journal of Information Technology, vol. 5, no. 4, pp. 146- 152, 2008.

[4] Antonellis, P., Antoniou D., Kanellopoulos Y., Makris C., Theodoridis E., Tjortjis C., and Tsirakis N., “Clustering for Monitoring Software Systems Maintainability Evolution,” Electronic Notes in Theoretical Computer Science, vol. 233, pp. 43-57, 2009.

[5] Arisholm E., Briand L., and Foyen A., “Dynamic Coupling Measurement for Object-Oriented Software,” IEEE Transactions on Software Engineering, vol. 30, no. 8, pp. 491-506, 2004.

[6] Arisholm E., “Empirical Assessment of the Impact of Structural Properties on the Changeability of Object Oriented Software,” Information and Software Technology, vol. 48, no. 11, pp. 1046-1055, 2006.

[7] Benestad H., Anda B., and Arisholm E., “Understanding Cost Drivers of Software Evolution: A Quantitative and Qualitative Investigation of Change Effort in Two Evolving Software Systems,” Empirical Software Engineering, vol. 15, no. 2, pp. 166-203, 2010.

[8] Bhatt P., Shroff G., and Mishra A., “Dynamics of Software Maintenance,” ACM SIGSOFT Software Engineering Notes, vol. 29, no. 4, pp. 1- 5, 2004.

[9] Briand L. and Wust J., “Empirical Studies of Quality Models in Object-Oriented Systems,” Advances in Computers, vol. 56, no. 1, pp. 97- 166, 2002.

[10] Briand L., Daly J., and Wust J., “A Unified Framework for Coupling Measurement in Object-Oriented Systems,” IEEE Transactions on Software Engineering, vol. 25, no. 1, pp. 91-121, 1999.

[11] Briand L., Labiche Y., and Sullivan L., “Impact Analysis and Change Management of UML Models,” in Proceedings of International Conference on Software Maintenance, Amsterdam, pp. 256-265, 2003.

[12] Chidamber S., Darcy D., and Kemerer C., “Managerial Use of Metrics for Object-Oriented Software,” IEEE Transactions on Software Engineering, vol. 24, no. 8, pp. 629-639, 1998.

[13] Cosine Similarity, https://en.wikipedia.org/wiki /Cosine_similarity, Last Visited, 2016.

[14] Fayyad U., Piatetsky-Shapiro G., and Smyth P., “From Data Mining to Knowledge Discovery in Databases,” American Association for Artificial Intelligence Magazine, vol. 17, no. 3, pp. 37-54, 1996.

[15] Fowler M., Beck K., Brant J., Opdyke W., and Roberts D., Refactoring: Improving the Design of Existing Code, Boston: Addison-Wesley, 1999. 106 The International Arab Journal of Information Technology, Vol. 16, No. 1, January 2019

[16] Ghosheh E., Qaddour J., Kuofie M., and Black S., “A Comparative Analysis of Maintainability Approaches for Web Applications,” in Proceedings of the IEEE International Conference on Computer Systems and Applications, Dubai, pp. 1155-1158, 2006.

[17] Gui G. and Scott P., “Ranking Reusability of Software Components Using Coupling Metrics,” Journal of Systems and Software, vol. 80, no. 9, pp. 1450-1459, 2007.

[18] Gupta V. and Chhabra J., “Package Coupling Measurement in Object-Oriented Software,” Journal of Computer Science and Technology, vol. 24, no. 2, pp. 273-283, 2009.

[19] Jabangwe R., Borstler J., Smite D., and Wohlin C., “Empirical Evidence on the Link between Object-Oriented Measures and External Quality Attributes: A Systematic Literature Review,” Empirical Software Engineering, vol. 20, no. 3, pp. 640-693, 2015.

[20] Li W. and Henry S., “Object-Oriented Metrics that Predict Maintainability,” Journal of Systems and Software, vol. 23, no. 2, pp. 111-122, 1993.

[21] Luo C., Li Y., and Chung S., “Text Document Clustering Based on Neighbors,” Data and Knowledge Engineering, vol. 68, no. 11, pp. 1271-1288, 2009.

[22] Li B., Sun X., Leung H., and Zhang S., “A Survey of Code-Based Change Impact Analysis Techniques,” Software Testing, Verification and Reliability, vol. 23, no. 8, pp. 613-646, 2013.

[23] MacCormack A., Rusnak J., and Baldwin C., “Exploring the Structure of Complex Software Designs: an Empirical Study of Open Source and Proprietary Code,” Journal of Management Science, vol. 52, no. 7, pp. 1015-1030, 2006.

[24] Parashar A. and Chhabra J., “An Approach for Clustering Class Coupling Metrics To Mine Object Oriented Software Components,” The International Arab Journal of Information Technology, vol. 13, no. 3, pp. 239-248, 2016.

[25] Poshyvanyk D., Marcus A., Ferenc R., and Gyimothy T., “Using Information Retrieval Based Coupling Measures for Impact Analysis,” Empirical Software Engineering, vol. 14, no. 1, pp. 5-32, 2009.

[26] Praditwong K., Harman M., and Yao X., “Software Module Clustering as A Multi- Objective Search Problem,” IEEE Transactions on Software Engineering, vol. 37, no. 2, pp. 264- 282, 2011.

[27] Romanowski C., Nagi R., and Sudi M., “Data Mining In an Engineering Design Environment: or Applications from Graph Matching,” Computers and Operations Research, vol. 33, no. 11, pp. 3150-3160, 2006.

[28] Sun X., Leungc H., Li B., and Li B., “Change Impact Analysis and Changeability Assessment for A Change Proposal: An Empirical Study,” The Journal of Systems and Software, vol. 96, pp. 51-60, 2014.

[29] Vanhilst M., Garg P., and Lo C., “Repository Mining and Six Sigma for Process Improvement,” in Proceedings of International Workshop on Mining Software Repositories, St. Louis, pp. 1-4, 2005.

[30] Vanya A., Premraj R., and Vliet H., “Resolving Unwanted Couplings through Interactive Exploration of Co-Evolving Software Entities-an Experience Report,” Information and Software Technology, vol. 54, no. 4, pp. 347-359, 2012.

[31] Xie T., Acharya M., Thummalapenta S., and Taneja K., “Improving Software Reliability and Productivity via Mining Program Source Code,” in Proceeding of IEEE International Symposium on Parallel and Distributed Processing, Miami, pp. 1-5, 2008.

[32] Zaidman A., Bois B., and Demeyer S., “How Webmining and Coupling Metrics Improve Early Program Comprehension,” in Proceedings of the IEEE International Conference on Program Comprehension, Athens, pp. 74-78, 2006.

[33] Zhong S., Khoshgoftaa T., and Seliya N., “Analyzing Software Measurement Data with Clustering Techniques,” IEEE Intelligent Systems, vol. 9, no. 2, pp. 20-27, 2004. Assessing Impact of Class Change by Mining Class Associations 107 Anshu Parashar pursuing his Ph.D. degree from Department of Computer Engineering, National Institute of Technology, Kurukshetra, INDIA. He did B.Techn (2002) and M.Tech. (2008) in Computer Science and Engineering. He has published more than 28 papers in various International, National Conferences and Journals. He has more than 12 years of teaching experience. His area of interest includes software engineering, data mining and object-oriented systems. Jitender Chhabra working as Professor, Department of Computer Engineering, National Institute of Technology, Kurukshetra, INDIA. He did both his B.Tech and M.Tech. in Computer Engineering from Regional Engineering College Kurukshetra (now National Institute of Technology) as Gold Medalist. He did his PhD in Software Metrics from Delhi. He has published more than 95 papers in various International and National Conferences & Journals including journals of IEEE, ACM, Springer & Elsevier. He has more than 23 years of teaching & research experience. He is author of three books from McGraw Hill including the one Schaum Series International book titled "Programming with C". He is Reviewer of IEEE Transactions, Elsevier, Springer, Wiley & many other Journals. He has worked in collaboration with multinational IT companies HP and TCS in the area of Software Engineering. His area of interest includes software engineering, data mining, soft computing and object-oriented systems.