Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1007/978-3-031-56852-7_16guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Applying Graph Partitioning-Based Seeding Strategies to Software Modularisation

Published: 21 March 2024 Publication History

Abstract

Software modularisation is a pivotal facet within software engineering, seeking to optimise the arrangement of software components based on their interrelationships. Despite extensive investigations in this domain, particularly concerning evolutionary computation, the research emphasis has transitioned towards solution design and convergence analysis rather than pioneering methodologies. The primary objective is to attain efficient solutions within a pragmatic timeframe. Recent research posits that initial positions in the search space wield minimal influence, given the prevalent trend of methods converging upon akin local optima. This paper delves into this phenomenon comprehensively, employing graph partitioning techniques on dependency graphs to generate initial clustering arrangement seeds. Our empirical discoveries challenge conventional insight, underscoring the pivotal role of seed selection in software modularisation to enhance overall outcomes.

References

[1]
Altman, D.: Skewed distributions. Practical statistics for medical research. London, Chapman & Hall pp. 60–63 (1997)
[2]
Arasteh B Clustered design-model generation from a program source code using chaos-based metaheuristic algorithms Neural Comput. Appl. 2023 35 4 3283-3305
[3]
Arasteh, B., Seyyedabbasi, A., Rasheed, J., M. Abu-Mahfouz, A.: Program source-code re-modularization using a discretized and modified sand cat swarm optimization algorithm. Symmetry 15(2), 401 (2023)
[4]
Arzoky, M., Swift, S., Tucker, A., Cain, J.: Munch: An efficient modularisation strategy to assess the degree of refactoring on sequential source code checkings. In: 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops. pp. 422–429. IEEE (2011)
[5]
Arzoky M, Swift S, Tucker A, and Cain J A seeded search for the modularisation of sequential software versions J. Object Technol. 2012 11 2 6-1
[6]
Brunsfeld, M.: Tree-sitter, https://github.com/tree-sitter/tree-sitter, Accessed on 2023-11-01
[7]
Campbell LR, Dahlberg S, Dorward R, Gerhard J, Grubb T, Purcell C, and Sagan BE Restricted growth function patterns and statistics Adv. Appl. Math. 2018 100 1-42
[8]
Chen YT, Huang CY, and Yang TH Using multi-pattern clustering methods to improve software maintenance quality IET Software 2023 17 1 1-22
[9]
Chung, F.R.: Spectral graph theory, vol. 92. American Mathematical Soc. (1997)
[10]
Corradini, A., König, B., Nolte, D.: Specifying graph languages with type graphs. Journal of Logical and Algebraic Methods in Programming 104, 176–200 (2019)., https://www.sciencedirect.com/science/article/pii/S235222081730233X
[11]
Devroye, L.: Sample-based non-uniform random variate generation. In: Proceedings of the 18th conference on Winter simulation. pp. 260–265 (1986)
[12]
Fiedler M A property of eigenvectors of nonnegative symmetric matrices and its application to graph theory Czechoslov. Math. J. 1975 25 4 619-633
[13]
Fiedler M Laplacian of graphs and algebraic connectivity Banach Center Publ. 1989 1 25 57-70
[14]
GitHub: Github advanced search (2023), https://github.com/search/advanced, Last Accessed on 23-11-01
[15]
GitHub: Octoverse 2022: 10 years of tracking open source (2023), https://github.blog/2022-11-17-octoverse-2022-10-years-of-tracking-open-source/, Last Accessed on 23-11-01
[16]
Gupta N, Kumar S, Gupta V, and Vijh S Novel automatic approach using modified differential evaluation to software module clustering problem SN Computer Science 2023 4 6 816
[17]
Harman, M., Swift, S., Mahdavi, K., Beyer, H.: An empirical study of the robustness of two module clustering fitness functions, pp. 1029–1036. ASSOC COMPUTING MACHINERY (2005), genetic and Evolutionary Computation Conference; Conference date: 25–06-2005 Through 29–06-2005
[18]
Kang, Y., Xie, W., Wang, X., Wang, H., Wang, X., Li, J.: Mopisde: A collaborative multi-objective information-sharing de algorithm for software clustering. Expert Systems with Applications p. 120207 (2023)
[19]
Khan, M.Z., Naseem, R., Anwar, A., Haq, I.U., Alturki, A., Ullah, S.S., Al-Hadhrami, S.A., et al.: A novel approach to automate complex software modularization using a fact extraction system. Journal of Mathematics 2022 (2022)
[20]
L.H., H.: Stirling behaviour is asymptotically normal. The Annals of Mathematical Statistics 3(2), 410–414 (1967)
[21]
Lourenço, H.R., Martin, O.C., Stützle, T.: Iterated local search. In: Handbook of metaheuristics, pp. 320–353. Springer (2003)
[22]
Lu, K.: Practical program modularization with type-based dependence analysis. In: 2023 IEEE Symposium on Security and Privacy (SP). pp. 1256–1270. IEEE (2023)
[23]
Mancoridis, S., Mitchell, B.S., Chen, Y., Gansner, E.R.: Bunch: A clustering tool for the recovery and maintenance of software system structures. In: Proceedings IEEE International Conference on Software Maintenance-1999 (ICSM’99)’.Software Maintenance for Business Change’(Cat. No. 99CB36360). pp. 50–59. IEEE (1999)
[24]
Mancoridis, S., Mitchell, B.S., Rorres, C., Chen, Y., Gansner, E.R.: Using automatic clustering to produce high-level system organizations of source code. In: Proceedings. 6th International Workshop on Program Comprehension. IWPC’98 (Cat. No. 98TB100242). pp. 45–52. IEEE (1998)
[25]
Maramazi, F., Odebode, A., Mann, A., Swift, S., Arzoky, M.: Intelligent systems and applications: Proceedings of the 2024 intelligent systems conference (intellisys) volume 1. In: Lecture Notes in Networks and Systems #822. p. 470. Springer (January 5 2024)
[26]
Mitchell, B.S., Mancoridis, S.: Clustering module dependency graphs of software systems using the bunch tool. Nat. Sci. Found., Alexandria, VA, USA, Tech. Rep (1998)
[27]
Prajapati A, Parashar A, and Rathee A Multi-dimensional information-driven many-objective software remodularization approach Front. Comp. Sci. 2023 17 3
[28]
Ramalhinho-Lourenço, H., Martin, O.C., Stützle, T.: Iterated local search (2000)
[29]
Rand WM Objective criteria for the evaluation of clustering methods J. Am. Stat. Assoc. 1971 66 336 846-850
[30]
Savić M, Rakić G, Budimac Z, and Ivanović M A language-independent approach to the extraction of dependencies between source code entities Inf. Softw. Technol. 2014 56 10 1268-1288
[31]
SciTools: Understand: The software developer’s multi-tool (2023), https://scitools.com/, Accessed on 2023-11-10
[32]
Tan, A.J.J., Chong, C.Y., Aleti, A.: Closing the loop for software remodularisation-rearrange: An effort estimation approach for software clustering-based remodularisation. arXiv preprint arXiv:2303.06283 (2023)
[33]
Temme NM Asymptotic estimates of stirling numbers Stud. Appl. Math. 1993 89 3 233-243
[34]
Tucker, A., Swift, S., Liu, X.: Variable grouping in multivariate time series via correlation. IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics) 31(2), 235–245 (2001)
[35]
Weiss, K., Banse, C.: A language-independent analysis platform for source code. arXiv preprint arXiv:2203.08424 (2022)
[36]
Weisstein, E.W.: Stirling number of the second kind. https://mathworld.wolfram.com/ (2002)
[37]
Yang K, Wang J, Fang Z, Wu P, and Song Z Enhancing software modularization via semantic outliers filtration and label propagation Inf. Softw. Technol. 2022 145

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
Applications of Evolutionary Computation: 27th European Conference, EvoApplications 2024, Held as Part of EvoStar 2024, Aberystwyth, UK, April 3–5, 2024, Proceedings, Part I
Mar 2024
459 pages
ISBN:978-3-031-56851-0
DOI:10.1007/978-3-031-56852-7
  • Editors:
  • Stephen Smith,
  • João Correia,
  • Christian Cintrano

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 21 March 2024

Author Tags

  1. Software Engineering
  2. Heuristic Search
  3. Software Modularisation
  4. Graph Partitioning

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 0
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 28 Jan 2025

Other Metrics

Citations

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media