Complexity Estimator: A Comprehensive Tool for Measuring Software Complexity in Object-Oriented Systems

This paper introduces the Complexity Estimator (CE), a novel tool designed to accurately measure software complexity in object-oriented systems. By integrating seven key factors—inheritance, control structure type and nesting, statement size, threads, compound conditions, and recursion— CE provides a holistic and consistent complexity assessment. The tool addresses the shortcomings of existing complexity measurement methods, offering more reliable and structured analysis. The tool’s robustness is validated through its Java-based implementation using advanced parsing algorithms and visualization components. Empirical evaluations on 20 diverse Java projects demonstrate CE’s superior ability to detect complexity hotspots and its strong correlation with maintainability indicators. Additionally, a comparative study against SonarQube highlights CE’s advantages in granularity, accuracy, and real-world applicability, particularly in handling recursive and multithreaded scenarios. Developer feedback further confirms CE’s practical value in guiding refactoring and technical debt management.

Authors

Publication Details

Published
2025-04-03
DOI
https://doi.org/10.1109/scse65633.2025.11030957
Primary Topic
Software Engineering Research
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Complexity Estimator: A Comprehensive Tool for Measuring Software Complexity in Object-Oriented Systems

H. A. N. Nikeshala, H. E. Jayakuru
Software Engineering Research
article

Complexity Estimator: A Comprehensive Tool for Measuring Software Complexity in Object-Oriented Systems

H. A. N. Nikeshala, H. E. Jayakuru
article en

Abstract

This paper introduces the Complexity Estimator (CE), a novel tool designed to accurately measure software complexity in object-oriented systems. By integrating seven key factors—inheritance, control structure type and nesting, statement size, threads, compound conditions, and recursion— CE provides a holistic and consistent complexity assessment. The tool addresses the shortcomings of existing complexity measurement methods, offering more reliable and structured analysis. The tool’s robustness is validated through its Java-based implementation using advanced parsing algorithms and visualization components. Empirical evaluations on 20 diverse Java projects demonstrate CE’s superior ability to detect complexity hotspots and its strong correlation with maintainability indicators. Additionally, a comparative study against SonarQube highlights CE’s advantages in granularity, accuracy, and real-world applicability, particularly in handling recursive and multithreaded scenarios. Developer feedback further confirms CE’s practical value in guiding refactoring and technical debt management.

Openalex Percentile: Top 81%
Software Engineering Research
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.