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

H. E. Jayakuru, H. A. N. Nikeshala · 2025

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.

Read the paper · More papers on PaperTik